// Copyright (C) 2018-2022 Intel Corporation
// SPDX-License-Identifier: Apache-2.0
//

typedef struct half1  { half s0; }                                                               half1;
typedef struct half5  { half s0; half s1; half s2; half s3; half s4; }                           half5;
typedef struct half6  { half s0; half s1; half s2; half s3; half s4; half s5; }                  half6;
typedef struct half7  { half s0; half s1; half s2; half s3; half s4; half s5; half s6; }         half7;
typedef struct half9  { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8; }                                                               half9;
typedef struct half10 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8; half s9; }                                                      half10;
typedef struct half11 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8; half s9; half sa; }                                             half11;
typedef struct half12 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8;  half s9; half sa; half sb;}                                    half12;
typedef struct half13 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8;  half s9; half sa; half sb; half sc;}                           half13;
typedef struct half14 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                        half s8;  half s9; half sa; half sb; half sc; half se;}                  half14;
typedef struct half15 { half s0; half s1; half s2; half s3; half s4; half s5; half s6; half s7; 
                       half s8;  half s9; half sa; half sb; half sc; half se; half sf;}          half15;
typedef struct half0  { half s0; } half0; //never used but makes compiler happy.

typedef struct float1 { float s0; } float1;
typedef struct float5 { float s0; float s1; float s2; float s3; float s4; } float5;
typedef struct float6 { float s0; float s1; float s2; float s3; float s4; float s5; } float6;
typedef struct float7 { float s0; float s1; float s2; float s3; float s4; float s5; float s6; } float7;
typedef struct float9 { float s0; float s1; float s2; float s3; float s4; float s5; float s6; float s7; float s8; } float9;
typedef struct float10 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9;} float10;
typedef struct float11 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9; float sa;} float11;
typedef struct float12 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9; float sa; float sb; } float12;
typedef struct float13 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9; float sa; float sb; float sc;} float13;
typedef struct float14 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9; float sa; float sb; float sc; float sd; } float14;
typedef struct float15 { float s0; float s1; float s2; float s3; float s4; float s5;
                         float s6; float s7; float s8; float s9; float sa; float sb; float sc; float sd; float se; } float15;
typedef struct float0 { float s0; } float0; //never used but makes compiler happy.
