1da0c48c4Sopenharmony_cisigned char fun_char (void) { return 5; } 2da0c48c4Sopenharmony_cishort fun_short (void) { return 6; } 3da0c48c4Sopenharmony_ciint fun_int (void) { return 7; } 4da0c48c4Sopenharmony_civoid *fun_ptr (void) { return &fun_ptr; } 5da0c48c4Sopenharmony_ciint fun_iptr (void) { return 8; } 6da0c48c4Sopenharmony_cilong fun_long (void) { return 9; } 7da0c48c4Sopenharmony_ci__int128 fun_int128 (void) { return 10; } 8da0c48c4Sopenharmony_ci 9da0c48c4Sopenharmony_citypedef struct { int i[10]; } large_struct1_t; 10da0c48c4Sopenharmony_cilarge_struct1_t fun_large_struct1 (void) { 11da0c48c4Sopenharmony_ci large_struct1_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 } }; 12da0c48c4Sopenharmony_ci return ret; 13da0c48c4Sopenharmony_ci} 14da0c48c4Sopenharmony_ci 15da0c48c4Sopenharmony_citypedef struct { int i1; int i2; int i3; int i4; int i5; 16da0c48c4Sopenharmony_ci int i6; int i7; int i8; int i9; int i10; } large_struct2_t; 17da0c48c4Sopenharmony_cilarge_struct2_t fun_large_struct2 (void) { 18da0c48c4Sopenharmony_ci large_struct2_t ret = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 }; 19da0c48c4Sopenharmony_ci return ret; 20da0c48c4Sopenharmony_ci} 21da0c48c4Sopenharmony_ci 22da0c48c4Sopenharmony_cifloat fun_float (void) { return 1.5; } 23da0c48c4Sopenharmony_cifloat _Complex fun_float_complex (void) { return 1.5 + 2.5i; } 24da0c48c4Sopenharmony_ci 25da0c48c4Sopenharmony_cidouble fun_double (void) { return 2.5; } 26da0c48c4Sopenharmony_cidouble _Complex fun_double_complex (void) { return 2.5 + 3.5i; } 27da0c48c4Sopenharmony_ci 28da0c48c4Sopenharmony_cilong double fun_long_double (void) { return 3.5; } 29da0c48c4Sopenharmony_cilong double _Complex fun_long_double_complex (void) { return 4.5 + 5.5i; } 30da0c48c4Sopenharmony_ci 31da0c48c4Sopenharmony_ci#ifdef FLOAT128 32da0c48c4Sopenharmony_ci__float128 fun_float128 (void) { return 3.5; } 33da0c48c4Sopenharmony_ci#endif 34da0c48c4Sopenharmony_ci 35da0c48c4Sopenharmony_ci// 8 byte vectors. 36da0c48c4Sopenharmony_ci 37da0c48c4Sopenharmony_citypedef signed char __attribute__ ((vector_size (8))) vec_char_8_t; 38da0c48c4Sopenharmony_civec_char_8_t fun_vec_char_8 (void) { 39da0c48c4Sopenharmony_ci vec_char_8_t ret = { 1, 2, 3, 4, 5, 6, 7, 8 }; 40da0c48c4Sopenharmony_ci return ret; 41da0c48c4Sopenharmony_ci} 42da0c48c4Sopenharmony_ci 43da0c48c4Sopenharmony_citypedef short __attribute__ ((vector_size (8))) vec_short_8_t; 44da0c48c4Sopenharmony_civec_short_8_t fun_vec_short_8 (void) { 45da0c48c4Sopenharmony_ci vec_short_8_t ret = { 2, 3, 4, 5 }; 46da0c48c4Sopenharmony_ci return ret; 47da0c48c4Sopenharmony_ci} 48da0c48c4Sopenharmony_ci 49da0c48c4Sopenharmony_citypedef int __attribute__ ((vector_size (8))) vec_int_8_t; 50da0c48c4Sopenharmony_civec_int_8_t fun_vec_int_8 (void) { 51da0c48c4Sopenharmony_ci vec_int_8_t ret = { 3, 4 }; 52da0c48c4Sopenharmony_ci return ret; 53da0c48c4Sopenharmony_ci} 54da0c48c4Sopenharmony_ci 55da0c48c4Sopenharmony_citypedef long __attribute__ ((vector_size (8))) vec_long_8_t; 56da0c48c4Sopenharmony_civec_long_8_t fun_vec_long_8 (void) { 57da0c48c4Sopenharmony_ci vec_long_8_t ret = { 5 }; 58da0c48c4Sopenharmony_ci return ret; 59da0c48c4Sopenharmony_ci} 60da0c48c4Sopenharmony_ci 61da0c48c4Sopenharmony_citypedef float __attribute__ ((vector_size (8))) vec_float_8_t; 62da0c48c4Sopenharmony_civec_float_8_t fun_vec_float_8 (void) { 63da0c48c4Sopenharmony_ci vec_float_8_t ret = { 1.5, 2.5 }; 64da0c48c4Sopenharmony_ci return ret; 65da0c48c4Sopenharmony_ci} 66da0c48c4Sopenharmony_ci 67da0c48c4Sopenharmony_citypedef double __attribute__ ((vector_size (8))) vec_double_8_t; 68da0c48c4Sopenharmony_ci#ifndef AARCH64_BUG_1032854 69da0c48c4Sopenharmony_ci// https://bugzilla.redhat.com/show_bug.cgi?id=1032854 70da0c48c4Sopenharmony_civec_double_8_t fun_vec_double_8 (void) { 71da0c48c4Sopenharmony_ci vec_double_8_t ret = { 3.5 }; 72da0c48c4Sopenharmony_ci return ret; 73da0c48c4Sopenharmony_ci} 74da0c48c4Sopenharmony_ci#endif 75da0c48c4Sopenharmony_ci 76da0c48c4Sopenharmony_ci// 16 byte vectors. 77da0c48c4Sopenharmony_ci 78da0c48c4Sopenharmony_citypedef signed char __attribute__ ((vector_size (16))) vec_char_16_t; 79da0c48c4Sopenharmony_civec_char_16_t fun_vec_char_16 (void) { 80da0c48c4Sopenharmony_ci vec_char_16_t ret = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }; 81da0c48c4Sopenharmony_ci return ret; 82da0c48c4Sopenharmony_ci} 83da0c48c4Sopenharmony_ci 84da0c48c4Sopenharmony_citypedef short __attribute__ ((vector_size (16))) vec_short_16_t; 85da0c48c4Sopenharmony_civec_short_16_t fun_vec_short_16 (void) { 86da0c48c4Sopenharmony_ci vec_short_16_t ret = { 2, 3, 4, 5, 6, 7, 8 }; 87da0c48c4Sopenharmony_ci return ret; 88da0c48c4Sopenharmony_ci} 89da0c48c4Sopenharmony_ci 90da0c48c4Sopenharmony_citypedef int __attribute__ ((vector_size (16))) vec_int_16_t; 91da0c48c4Sopenharmony_civec_int_16_t fun_vec_int_16 (void) { 92da0c48c4Sopenharmony_ci vec_int_16_t ret = { 2, 3, 4 }; 93da0c48c4Sopenharmony_ci return ret; 94da0c48c4Sopenharmony_ci} 95da0c48c4Sopenharmony_ci 96da0c48c4Sopenharmony_citypedef long __attribute__ ((vector_size (16))) vec_long_16_t; 97da0c48c4Sopenharmony_civec_long_16_t fun_vec_long_16 (void) { 98da0c48c4Sopenharmony_ci vec_long_16_t ret = { 3, 4 }; 99da0c48c4Sopenharmony_ci return ret; 100da0c48c4Sopenharmony_ci} 101da0c48c4Sopenharmony_ci 102da0c48c4Sopenharmony_citypedef __int128 __attribute__ ((vector_size (16))) vec_int128_16_t; 103da0c48c4Sopenharmony_civec_int128_16_t fun_vec_int128_16 (void) { 104da0c48c4Sopenharmony_ci vec_int128_16_t ret = { 999 }; 105da0c48c4Sopenharmony_ci return ret; 106da0c48c4Sopenharmony_ci} 107da0c48c4Sopenharmony_ci 108da0c48c4Sopenharmony_citypedef float __attribute__ ((vector_size (16))) vec_float_16_t; 109da0c48c4Sopenharmony_civec_float_16_t fun_vec_float_16 (void) { 110da0c48c4Sopenharmony_ci vec_float_16_t ret = { 1.5, 2.5, 3.5, 4.5 }; 111da0c48c4Sopenharmony_ci return ret; 112da0c48c4Sopenharmony_ci} 113da0c48c4Sopenharmony_ci 114da0c48c4Sopenharmony_citypedef double __attribute__ ((vector_size (16))) vec_double_16_t; 115da0c48c4Sopenharmony_civec_double_16_t fun_vec_double_16 (void) { 116da0c48c4Sopenharmony_ci vec_double_16_t ret = { 2.5, 5 }; 117da0c48c4Sopenharmony_ci return ret; 118da0c48c4Sopenharmony_ci} 119da0c48c4Sopenharmony_ci 120da0c48c4Sopenharmony_ci#ifdef FLOAT128 121da0c48c4Sopenharmony_citypedef __float128 __attribute__ ((vector_size (16))) vec_float128_16_t; 122da0c48c4Sopenharmony_civec_float128_16_t fun_vec_float128_16 (void) { 123da0c48c4Sopenharmony_ci vec_float128_16_t ret = { 7.5 }; 124da0c48c4Sopenharmony_ci return ret; 125da0c48c4Sopenharmony_ci} 126da0c48c4Sopenharmony_ci#endif 127da0c48c4Sopenharmony_ci 128da0c48c4Sopenharmony_ci// Homogeneous floating-point aggregates. 129da0c48c4Sopenharmony_ci 130da0c48c4Sopenharmony_citypedef struct { float f; } hfa1_float_t; 131da0c48c4Sopenharmony_cihfa1_float_t fun_hfa1_float (void) { 132da0c48c4Sopenharmony_ci hfa1_float_t ret = { 1.5 }; 133da0c48c4Sopenharmony_ci return ret; 134da0c48c4Sopenharmony_ci} 135da0c48c4Sopenharmony_ci 136da0c48c4Sopenharmony_citypedef struct { double f; } hfa1_double_t; 137da0c48c4Sopenharmony_cihfa1_double_t fun_hfa1_double (void) { 138da0c48c4Sopenharmony_ci hfa1_double_t ret = { 3.0 }; 139da0c48c4Sopenharmony_ci return ret; 140da0c48c4Sopenharmony_ci} 141da0c48c4Sopenharmony_ci 142da0c48c4Sopenharmony_citypedef struct { long double f; } hfa1_long_double_t; 143da0c48c4Sopenharmony_cihfa1_long_double_t fun_hfa1_long_double (void) { 144da0c48c4Sopenharmony_ci hfa1_long_double_t ret = { 3.0 }; 145da0c48c4Sopenharmony_ci return ret; 146da0c48c4Sopenharmony_ci} 147da0c48c4Sopenharmony_ci 148da0c48c4Sopenharmony_citypedef struct { float f[1]; } hfa1_float_a_t; 149da0c48c4Sopenharmony_cihfa1_float_a_t fun_hfa1_float_a (void) { 150da0c48c4Sopenharmony_ci hfa1_float_a_t ret = { { 1.5 } }; 151da0c48c4Sopenharmony_ci return ret; 152da0c48c4Sopenharmony_ci} 153da0c48c4Sopenharmony_ci 154da0c48c4Sopenharmony_citypedef struct { double f[1]; } hfa1_double_a_t; 155da0c48c4Sopenharmony_cihfa1_double_a_t fun_hfa1_double_a (void) { 156da0c48c4Sopenharmony_ci hfa1_double_a_t ret = { { 3.0 } }; 157da0c48c4Sopenharmony_ci return ret; 158da0c48c4Sopenharmony_ci} 159da0c48c4Sopenharmony_ci 160da0c48c4Sopenharmony_citypedef struct { long double f[1]; } hfa1_long_double_a_t; 161da0c48c4Sopenharmony_cihfa1_long_double_a_t fun_hfa1_long_double_a (void) { 162da0c48c4Sopenharmony_ci hfa1_long_double_a_t ret = { { 3.0 } }; 163da0c48c4Sopenharmony_ci return ret; 164da0c48c4Sopenharmony_ci} 165da0c48c4Sopenharmony_ci 166da0c48c4Sopenharmony_citypedef struct { float f; float g; } hfa2_float_t; 167da0c48c4Sopenharmony_cihfa2_float_t fun_hfa2_float (void) { 168da0c48c4Sopenharmony_ci hfa2_float_t ret = { 1.5, 3.0 }; 169da0c48c4Sopenharmony_ci return ret; 170da0c48c4Sopenharmony_ci} 171da0c48c4Sopenharmony_ci 172da0c48c4Sopenharmony_citypedef struct { double f; double g; } hfa2_double_t; 173da0c48c4Sopenharmony_cihfa2_double_t fun_hfa2_double (void) { 174da0c48c4Sopenharmony_ci hfa2_double_t ret = { 3.0, 4.5 }; 175da0c48c4Sopenharmony_ci return ret; 176da0c48c4Sopenharmony_ci} 177da0c48c4Sopenharmony_ci 178da0c48c4Sopenharmony_citypedef struct { long double f; long double g; } hfa2_long_double_t; 179da0c48c4Sopenharmony_cihfa2_long_double_t fun_hfa2_long_double (void) { 180da0c48c4Sopenharmony_ci hfa2_long_double_t ret = { 3.0, 4.5 }; 181da0c48c4Sopenharmony_ci return ret; 182da0c48c4Sopenharmony_ci} 183da0c48c4Sopenharmony_ci 184da0c48c4Sopenharmony_citypedef struct { float f[2]; } hfa2_float_a_t; 185da0c48c4Sopenharmony_cihfa2_float_a_t fun_hfa2_float_a (void) { 186da0c48c4Sopenharmony_ci hfa2_float_a_t ret = { { 2.5, 3.5 } }; 187da0c48c4Sopenharmony_ci return ret; 188da0c48c4Sopenharmony_ci} 189da0c48c4Sopenharmony_ci 190da0c48c4Sopenharmony_citypedef struct { double f[2]; } hfa2_double_a_t; 191da0c48c4Sopenharmony_cihfa2_double_a_t fun_hfa2_double_a (void) { 192da0c48c4Sopenharmony_ci hfa2_double_a_t ret = { { 3.0, 3.5 } }; 193da0c48c4Sopenharmony_ci return ret; 194da0c48c4Sopenharmony_ci} 195da0c48c4Sopenharmony_ci 196da0c48c4Sopenharmony_citypedef struct { long double f[2]; } hfa2_long_double_a_t; 197da0c48c4Sopenharmony_cihfa2_long_double_a_t fun_hfa2_long_double_a (void) { 198da0c48c4Sopenharmony_ci hfa2_long_double_a_t ret = { { 3.0, 4.0 } }; 199da0c48c4Sopenharmony_ci return ret; 200da0c48c4Sopenharmony_ci} 201da0c48c4Sopenharmony_ci 202da0c48c4Sopenharmony_citypedef struct { float f; float g; float h; } hfa3_float_t; 203da0c48c4Sopenharmony_cihfa3_float_t fun_hfa3_float (void) { 204da0c48c4Sopenharmony_ci hfa3_float_t ret = { 1.5, 3.0, 4.5 }; 205da0c48c4Sopenharmony_ci return ret; 206da0c48c4Sopenharmony_ci} 207da0c48c4Sopenharmony_ci 208da0c48c4Sopenharmony_citypedef struct { double f; double g; double h; } hfa3_double_t; 209da0c48c4Sopenharmony_cihfa3_double_t fun_hfa3_double (void) { 210da0c48c4Sopenharmony_ci hfa3_double_t ret = { 3.0, 4.5, 9.5 }; 211da0c48c4Sopenharmony_ci return ret; 212da0c48c4Sopenharmony_ci} 213da0c48c4Sopenharmony_ci 214da0c48c4Sopenharmony_citypedef struct { long double f; long double g; long double h; } hfa3_long_double_t; 215da0c48c4Sopenharmony_cihfa3_long_double_t fun_hfa3_long_double (void) { 216da0c48c4Sopenharmony_ci hfa3_long_double_t ret = { 3.0, 4.5, 9.5 }; 217da0c48c4Sopenharmony_ci return ret; 218da0c48c4Sopenharmony_ci} 219da0c48c4Sopenharmony_ci 220da0c48c4Sopenharmony_citypedef struct { float f[3]; } hfa3_float_a_t; 221da0c48c4Sopenharmony_cihfa3_float_a_t fun_hfa3_float_a (void) { 222da0c48c4Sopenharmony_ci hfa3_float_a_t ret = { { 3.5, 4.5, 5.5 } }; 223da0c48c4Sopenharmony_ci return ret; 224da0c48c4Sopenharmony_ci} 225da0c48c4Sopenharmony_ci 226da0c48c4Sopenharmony_citypedef struct { double f[3]; } hfa3_double_a_t; 227da0c48c4Sopenharmony_cihfa3_double_a_t fun_hfa3_double_a (void) { 228da0c48c4Sopenharmony_ci hfa3_double_a_t ret = { { 3.0, 3.5, 4.0 } }; 229da0c48c4Sopenharmony_ci return ret; 230da0c48c4Sopenharmony_ci} 231da0c48c4Sopenharmony_ci 232da0c48c4Sopenharmony_citypedef struct { long double f[3]; } hfa3_long_double_a_t; 233da0c48c4Sopenharmony_cihfa3_long_double_a_t fun_hfa3_long_double_a (void) { 234da0c48c4Sopenharmony_ci hfa3_long_double_a_t ret = { { 3.0, 4.0, 5.0 } }; 235da0c48c4Sopenharmony_ci return ret; 236da0c48c4Sopenharmony_ci} 237da0c48c4Sopenharmony_ci 238da0c48c4Sopenharmony_citypedef struct { float f; float g; float h; float i; } hfa4_float_t; 239da0c48c4Sopenharmony_cihfa4_float_t fun_hfa4_float (void) { 240da0c48c4Sopenharmony_ci hfa4_float_t ret = { 1.5, 3.5, 4.5, 9.5 }; 241da0c48c4Sopenharmony_ci return ret; 242da0c48c4Sopenharmony_ci} 243da0c48c4Sopenharmony_ci 244da0c48c4Sopenharmony_citypedef struct { double f; double g; double h; double i; } hfa4_double_t; 245da0c48c4Sopenharmony_cihfa4_double_t fun_hfa4_double (void) { 246da0c48c4Sopenharmony_ci hfa4_double_t ret = { 3.5, 4.5, 9.5, 1.5 }; 247da0c48c4Sopenharmony_ci return ret; 248da0c48c4Sopenharmony_ci} 249da0c48c4Sopenharmony_ci 250da0c48c4Sopenharmony_citypedef struct { long double f; long double g; long double h; long double i; } hfa4_long_double_t; 251da0c48c4Sopenharmony_cihfa4_long_double_t fun_hfa4_long_double (void) { 252da0c48c4Sopenharmony_ci hfa4_long_double_t ret = { 3.5, 4.5, 9.5, 1.5 }; 253da0c48c4Sopenharmony_ci return ret; 254da0c48c4Sopenharmony_ci} 255da0c48c4Sopenharmony_ci 256da0c48c4Sopenharmony_citypedef struct { float f[4]; } hfa4_float_a_t; 257da0c48c4Sopenharmony_cihfa4_float_a_t fun_hfa4_float_a (void) { 258da0c48c4Sopenharmony_ci hfa4_float_a_t ret = { { 4.5, 5.5, 6.5, 7.5 } }; 259da0c48c4Sopenharmony_ci return ret; 260da0c48c4Sopenharmony_ci} 261da0c48c4Sopenharmony_ci 262da0c48c4Sopenharmony_citypedef struct { double f[4]; } hfa4_double_a_t; 263da0c48c4Sopenharmony_cihfa4_double_a_t fun_hfa4_double_a (void) { 264da0c48c4Sopenharmony_ci hfa4_double_a_t ret = { { 3.0, 4.5, 5.0, 5.5 } }; 265da0c48c4Sopenharmony_ci return ret; 266da0c48c4Sopenharmony_ci} 267da0c48c4Sopenharmony_ci 268da0c48c4Sopenharmony_citypedef struct { long double f[4]; } hfa4_long_double_a_t; 269da0c48c4Sopenharmony_cihfa4_long_double_a_t fun_hfa4_long_double_a (void) { 270da0c48c4Sopenharmony_ci hfa4_long_double_a_t ret = { { 3.0, 4.0, 5.0, 6.0 } }; 271da0c48c4Sopenharmony_ci return ret; 272da0c48c4Sopenharmony_ci} 273da0c48c4Sopenharmony_ci 274da0c48c4Sopenharmony_citypedef struct { float f; float g; float h; float i; float j; } nfa5_float_t; 275da0c48c4Sopenharmony_cinfa5_float_t fun_nfa5_float (void) { 276da0c48c4Sopenharmony_ci nfa5_float_t ret = { 1.5, 3.5, 4.5, 9.5, 10.5 }; 277da0c48c4Sopenharmony_ci return ret; 278da0c48c4Sopenharmony_ci} 279da0c48c4Sopenharmony_ci 280da0c48c4Sopenharmony_citypedef struct { double f; double g; double h; double i; double j; } nfa5_double_t; 281da0c48c4Sopenharmony_cinfa5_double_t fun_nfa5_double (void) { 282da0c48c4Sopenharmony_ci nfa5_double_t ret = { 3.5, 4.5, 9.5, 1.5, 2.5 }; 283da0c48c4Sopenharmony_ci return ret; 284da0c48c4Sopenharmony_ci} 285da0c48c4Sopenharmony_ci 286da0c48c4Sopenharmony_citypedef struct { long double f; long double g; long double h; long double i; long double j; } nfa5_long_double_t; 287da0c48c4Sopenharmony_cinfa5_long_double_t fun_nfa5_long_double (void) { 288da0c48c4Sopenharmony_ci nfa5_long_double_t ret = { 3.5, 4.5, 9.5, 1.5, 2.5 }; 289da0c48c4Sopenharmony_ci return ret; 290da0c48c4Sopenharmony_ci} 291da0c48c4Sopenharmony_ci 292da0c48c4Sopenharmony_citypedef struct { float f[5]; } nfa5_float_a_t; 293da0c48c4Sopenharmony_cinfa5_float_a_t fun_nfa5_float_a (void) { 294da0c48c4Sopenharmony_ci nfa5_float_a_t ret = { { 4.5, 5.5, 6.5, 7.5, 9.5 } }; 295da0c48c4Sopenharmony_ci return ret; 296da0c48c4Sopenharmony_ci} 297da0c48c4Sopenharmony_ci 298da0c48c4Sopenharmony_citypedef struct { double f[5]; } nfa5_double_a_t; 299da0c48c4Sopenharmony_cinfa5_double_a_t fun_nfa5_double_a (void) { 300da0c48c4Sopenharmony_ci nfa5_double_a_t ret = { { 3.0, 4.5, 5.0, 5.5, 6.5 } }; 301da0c48c4Sopenharmony_ci return ret; 302da0c48c4Sopenharmony_ci} 303da0c48c4Sopenharmony_ci 304da0c48c4Sopenharmony_citypedef struct { long double f[5]; } nfa5_long_double_a_t; 305da0c48c4Sopenharmony_cinfa5_long_double_a_t fun_nfa5_long_double_a (void) { 306da0c48c4Sopenharmony_ci nfa5_long_double_a_t ret = { { 3.0, 4.0, 5.0, 6.0, 7.0 } }; 307da0c48c4Sopenharmony_ci return ret; 308da0c48c4Sopenharmony_ci} 309da0c48c4Sopenharmony_ci 310da0c48c4Sopenharmony_ci#ifdef FLOAT128 311da0c48c4Sopenharmony_citypedef struct { __float128 f; } hfa1_float128_t; 312da0c48c4Sopenharmony_cihfa1_float128_t fun_hfa1_float128 (void) { 313da0c48c4Sopenharmony_ci hfa1_float128_t ret = { 4.5 }; 314da0c48c4Sopenharmony_ci return ret; 315da0c48c4Sopenharmony_ci} 316da0c48c4Sopenharmony_ci 317da0c48c4Sopenharmony_citypedef struct { __float128 f; __float128 g; } hfa2_float128_t; 318da0c48c4Sopenharmony_cihfa2_float128_t fun_hfa2_float128 (void) { 319da0c48c4Sopenharmony_ci hfa2_float128_t ret = { 4.5, 9.5 }; 320da0c48c4Sopenharmony_ci return ret; 321da0c48c4Sopenharmony_ci} 322da0c48c4Sopenharmony_ci 323da0c48c4Sopenharmony_citypedef struct { __float128 f; __float128 g; __float128 h; } hfa3_float128_t; 324da0c48c4Sopenharmony_cihfa3_float128_t fun_hfa3_float128 (void) { 325da0c48c4Sopenharmony_ci hfa3_float128_t ret = { 4.5, 9.5, 12.5 }; 326da0c48c4Sopenharmony_ci return ret; 327da0c48c4Sopenharmony_ci} 328da0c48c4Sopenharmony_ci 329da0c48c4Sopenharmony_citypedef struct { __float128 f; __float128 g; __float128 h; __float128 i; } hfa4_float128_t; 330da0c48c4Sopenharmony_cihfa4_float128_t fun_hfa4_float128 (void) { 331da0c48c4Sopenharmony_ci hfa4_float128_t ret = { 4.5, 9.5, 3.5, 1.5 }; 332da0c48c4Sopenharmony_ci return ret; 333da0c48c4Sopenharmony_ci} 334da0c48c4Sopenharmony_ci#endif 335da0c48c4Sopenharmony_ci 336da0c48c4Sopenharmony_ci// Homogeneous vector aggregates of 1 element. 337da0c48c4Sopenharmony_ci 338da0c48c4Sopenharmony_citypedef struct { vec_char_8_t a; } hva1_vec_char_8_t; 339da0c48c4Sopenharmony_cihva1_vec_char_8_t fun_hva1_vec_char_8 (void) { 340da0c48c4Sopenharmony_ci hva1_vec_char_8_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8 } }; 341da0c48c4Sopenharmony_ci return ret; 342da0c48c4Sopenharmony_ci} 343da0c48c4Sopenharmony_ci 344da0c48c4Sopenharmony_citypedef struct { vec_short_8_t a; } hva1_vec_short_8_t; 345da0c48c4Sopenharmony_cihva1_vec_short_8_t fun_hva1_vec_short_8 (void) { 346da0c48c4Sopenharmony_ci hva1_vec_short_8_t ret = { { 2, 3, 4, 5 } }; 347da0c48c4Sopenharmony_ci return ret; 348da0c48c4Sopenharmony_ci} 349da0c48c4Sopenharmony_ci 350da0c48c4Sopenharmony_citypedef struct { vec_int_8_t a; } hva1_vec_int_8_t; 351da0c48c4Sopenharmony_cihva1_vec_int_8_t fun_hva1_vec_int_8 (void) { 352da0c48c4Sopenharmony_ci hva1_vec_int_8_t ret = { { 3, 4 } }; 353da0c48c4Sopenharmony_ci return ret; 354da0c48c4Sopenharmony_ci} 355da0c48c4Sopenharmony_ci 356da0c48c4Sopenharmony_citypedef struct { vec_long_8_t a; } hva1_vec_long_8_t; 357da0c48c4Sopenharmony_cihva1_vec_long_8_t fun_hva1_vec_long_8 (void) { 358da0c48c4Sopenharmony_ci hva1_vec_long_8_t ret = { { 5 } }; 359da0c48c4Sopenharmony_ci return ret; 360da0c48c4Sopenharmony_ci} 361da0c48c4Sopenharmony_ci 362da0c48c4Sopenharmony_citypedef struct { vec_float_8_t a; } hva1_vec_float_8_t; 363da0c48c4Sopenharmony_cihva1_vec_float_8_t fun_hva1_vec_float_8 (void) { 364da0c48c4Sopenharmony_ci hva1_vec_float_8_t ret = { { 1.5, 2.5 } }; 365da0c48c4Sopenharmony_ci return ret; 366da0c48c4Sopenharmony_ci} 367da0c48c4Sopenharmony_ci 368da0c48c4Sopenharmony_citypedef struct { vec_double_8_t a; } hva1_vec_double_8_t; 369da0c48c4Sopenharmony_cihva1_vec_double_8_t fun_hva1_vec_double_8 (void) { 370da0c48c4Sopenharmony_ci hva1_vec_double_8_t ret = { { 3.5 } }; 371da0c48c4Sopenharmony_ci return ret; 372da0c48c4Sopenharmony_ci} 373da0c48c4Sopenharmony_ci 374da0c48c4Sopenharmony_citypedef struct { vec_char_16_t a; } hva1_vec_char_16_t; 375da0c48c4Sopenharmony_cihva1_vec_char_16_t fun_hva1_vec_char_16_t (void) { 376da0c48c4Sopenharmony_ci hva1_vec_char_16_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8, 377da0c48c4Sopenharmony_ci 9, 10, 11, 12, 13, 14, 15, 16 } }; 378da0c48c4Sopenharmony_ci return ret; 379da0c48c4Sopenharmony_ci} 380da0c48c4Sopenharmony_ci 381da0c48c4Sopenharmony_citypedef struct { vec_short_16_t a; } hva1_vec_short_16_t; 382da0c48c4Sopenharmony_cihva1_vec_short_16_t fun_hva1_vec_short_16_t (void) { 383da0c48c4Sopenharmony_ci hva1_vec_short_16_t ret = { { 2, 3, 4, 5, 6, 7, 8, 9 } }; 384da0c48c4Sopenharmony_ci return ret; 385da0c48c4Sopenharmony_ci} 386da0c48c4Sopenharmony_ci 387da0c48c4Sopenharmony_citypedef struct { vec_int_16_t a; } hva1_vec_int_16_t; 388da0c48c4Sopenharmony_cihva1_vec_int_16_t fun_hva1_vec_int_16_t (void) { 389da0c48c4Sopenharmony_ci hva1_vec_int_16_t ret = { { 3, 4, 5, 6 } }; 390da0c48c4Sopenharmony_ci return ret; 391da0c48c4Sopenharmony_ci} 392da0c48c4Sopenharmony_ci 393da0c48c4Sopenharmony_citypedef struct { vec_long_16_t a; } hva1_vec_long_16_t; 394da0c48c4Sopenharmony_cihva1_vec_long_16_t fun_hva1_vec_long_16_t (void) { 395da0c48c4Sopenharmony_ci hva1_vec_long_16_t ret = { { 4, 5 } }; 396da0c48c4Sopenharmony_ci return ret; 397da0c48c4Sopenharmony_ci} 398da0c48c4Sopenharmony_ci 399da0c48c4Sopenharmony_citypedef struct { vec_int128_16_t a; } hva1_vec_int128_16_t; 400da0c48c4Sopenharmony_cihva1_vec_int128_16_t fun_hva1_vec_int128_16_t (void) { 401da0c48c4Sopenharmony_ci hva1_vec_int128_16_t ret = { { 6 } }; 402da0c48c4Sopenharmony_ci return ret; 403da0c48c4Sopenharmony_ci} 404da0c48c4Sopenharmony_ci 405da0c48c4Sopenharmony_citypedef struct { vec_float_16_t a; } hva1_vec_float_16_t; 406da0c48c4Sopenharmony_cihva1_vec_float_16_t fun_hva1_vec_float_16_t (void) { 407da0c48c4Sopenharmony_ci hva1_vec_float_16_t ret = { { 1.5, 2.5, 3.5, 4.5 } }; 408da0c48c4Sopenharmony_ci return ret; 409da0c48c4Sopenharmony_ci} 410da0c48c4Sopenharmony_ci 411da0c48c4Sopenharmony_citypedef struct { vec_double_16_t a; } hva1_vec_double_16_t; 412da0c48c4Sopenharmony_cihva1_vec_double_16_t fun_hva1_vec_double_16_t (void) { 413da0c48c4Sopenharmony_ci hva1_vec_double_16_t ret = { { 2.5, 3.5 } }; 414da0c48c4Sopenharmony_ci return ret; 415da0c48c4Sopenharmony_ci} 416da0c48c4Sopenharmony_ci 417da0c48c4Sopenharmony_ci#ifdef FLOAT128 418da0c48c4Sopenharmony_citypedef struct { vec_float128_16_t a; } hva1_vec_float128_16_t; 419da0c48c4Sopenharmony_cihva1_vec_float128_16_t fun_hva1_vec_float128_16_t (void) { 420da0c48c4Sopenharmony_ci hva1_vec_float128_16_t ret = { { 4.5 } }; 421da0c48c4Sopenharmony_ci return ret; 422da0c48c4Sopenharmony_ci} 423da0c48c4Sopenharmony_ci#endif 424da0c48c4Sopenharmony_ci 425da0c48c4Sopenharmony_ci// Homogeneous vector aggregates of 2 elements. 426da0c48c4Sopenharmony_ci 427da0c48c4Sopenharmony_citypedef struct { vec_char_8_t a; vec_char_8_t b; } hva2_vec_char_8_t; 428da0c48c4Sopenharmony_cihva2_vec_char_8_t fun_hva2_vec_char_8 (void) { 429da0c48c4Sopenharmony_ci hva2_vec_char_8_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8 }, 430da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9 } }; 431da0c48c4Sopenharmony_ci return ret; 432da0c48c4Sopenharmony_ci} 433da0c48c4Sopenharmony_ci 434da0c48c4Sopenharmony_citypedef struct { vec_short_8_t a; vec_short_8_t b; } hva2_vec_short_8_t; 435da0c48c4Sopenharmony_cihva2_vec_short_8_t fun_hva2_vec_short_8 (void) { 436da0c48c4Sopenharmony_ci hva2_vec_short_8_t ret = { { 2, 3, 4, 5 }, 437da0c48c4Sopenharmony_ci { 3, 4, 5, 6 } }; 438da0c48c4Sopenharmony_ci return ret; 439da0c48c4Sopenharmony_ci} 440da0c48c4Sopenharmony_ci 441da0c48c4Sopenharmony_citypedef struct { vec_int_8_t a; vec_int_8_t b; } hva2_vec_int_8_t; 442da0c48c4Sopenharmony_cihva2_vec_int_8_t fun_hva2_vec_int_8 (void) { 443da0c48c4Sopenharmony_ci hva2_vec_int_8_t ret = { { 3, 4 }, 444da0c48c4Sopenharmony_ci { 4, 5 } }; 445da0c48c4Sopenharmony_ci return ret; 446da0c48c4Sopenharmony_ci} 447da0c48c4Sopenharmony_ci 448da0c48c4Sopenharmony_citypedef struct { vec_long_8_t a; vec_long_8_t b; } hva2_vec_long_8_t; 449da0c48c4Sopenharmony_cihva2_vec_long_8_t fun_hva2_vec_long_8 (void) { 450da0c48c4Sopenharmony_ci hva2_vec_long_8_t ret = { { 5 }, 451da0c48c4Sopenharmony_ci { 6 } }; 452da0c48c4Sopenharmony_ci return ret; 453da0c48c4Sopenharmony_ci} 454da0c48c4Sopenharmony_ci 455da0c48c4Sopenharmony_citypedef struct { vec_float_8_t a; vec_float_8_t b; } hva2_vec_float_8_t; 456da0c48c4Sopenharmony_cihva2_vec_float_8_t fun_hva2_vec_float_8 (void) { 457da0c48c4Sopenharmony_ci hva2_vec_float_8_t ret = { { 1.5, 2.5 }, 458da0c48c4Sopenharmony_ci { 2.5, 3.5 } }; 459da0c48c4Sopenharmony_ci return ret; 460da0c48c4Sopenharmony_ci} 461da0c48c4Sopenharmony_ci 462da0c48c4Sopenharmony_citypedef struct { vec_double_8_t a; vec_double_8_t b; } hva2_vec_double_8_t; 463da0c48c4Sopenharmony_cihva2_vec_double_8_t fun_hva2_vec_double_8 (void) { 464da0c48c4Sopenharmony_ci hva2_vec_double_8_t ret = { { 3.5 }, 465da0c48c4Sopenharmony_ci { 4.5 } }; 466da0c48c4Sopenharmony_ci return ret; 467da0c48c4Sopenharmony_ci} 468da0c48c4Sopenharmony_ci 469da0c48c4Sopenharmony_citypedef struct { vec_char_16_t a; vec_char_16_t b; } hva2_vec_char_16_t; 470da0c48c4Sopenharmony_cihva2_vec_char_16_t fun_hva2_vec_char_16_t (void) { 471da0c48c4Sopenharmony_ci hva2_vec_char_16_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8, 472da0c48c4Sopenharmony_ci 9, 10, 11, 12, 13, 14, 15, 16 }, 473da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9, 474da0c48c4Sopenharmony_ci 10, 11, 12, 13, 14, 15, 16, 17 } }; 475da0c48c4Sopenharmony_ci return ret; 476da0c48c4Sopenharmony_ci} 477da0c48c4Sopenharmony_ci 478da0c48c4Sopenharmony_citypedef struct { vec_short_16_t a; vec_short_16_t b; } hva2_vec_short_16_t; 479da0c48c4Sopenharmony_cihva2_vec_short_16_t fun_hva2_vec_short_16_t (void) { 480da0c48c4Sopenharmony_ci hva2_vec_short_16_t ret = { { 2, 3, 4, 5, 6, 7, 8, 9 }, 481da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10 } }; 482da0c48c4Sopenharmony_ci return ret; 483da0c48c4Sopenharmony_ci} 484da0c48c4Sopenharmony_ci 485da0c48c4Sopenharmony_citypedef struct { vec_int_16_t a; vec_int_16_t b; } hva2_vec_int_16_t; 486da0c48c4Sopenharmony_cihva2_vec_int_16_t fun_hva2_vec_int_16_t (void) { 487da0c48c4Sopenharmony_ci hva2_vec_int_16_t ret = { { 3, 4, 5, 6 }, 488da0c48c4Sopenharmony_ci { 4, 5, 6, 7 } }; 489da0c48c4Sopenharmony_ci return ret; 490da0c48c4Sopenharmony_ci} 491da0c48c4Sopenharmony_ci 492da0c48c4Sopenharmony_citypedef struct { vec_long_16_t a; vec_long_16_t b; } hva2_vec_long_16_t; 493da0c48c4Sopenharmony_cihva2_vec_long_16_t fun_hva2_vec_long_16_t (void) { 494da0c48c4Sopenharmony_ci hva2_vec_long_16_t ret = { { 4, 5 }, 495da0c48c4Sopenharmony_ci { 5, 6 } }; 496da0c48c4Sopenharmony_ci return ret; 497da0c48c4Sopenharmony_ci} 498da0c48c4Sopenharmony_ci 499da0c48c4Sopenharmony_citypedef struct { vec_int128_16_t a; vec_int128_16_t b; } hva2_vec_int128_16_t; 500da0c48c4Sopenharmony_cihva2_vec_int128_16_t fun_hva2_vec_int128_16_t (void) { 501da0c48c4Sopenharmony_ci hva2_vec_int128_16_t ret = { { 6 }, 502da0c48c4Sopenharmony_ci { 7 } }; 503da0c48c4Sopenharmony_ci return ret; 504da0c48c4Sopenharmony_ci} 505da0c48c4Sopenharmony_ci 506da0c48c4Sopenharmony_citypedef struct { vec_float_16_t a; vec_float_16_t b; } hva2_vec_float_16_t; 507da0c48c4Sopenharmony_cihva2_vec_float_16_t fun_hva2_vec_float_16_t (void) { 508da0c48c4Sopenharmony_ci hva2_vec_float_16_t ret = { { 1.5, 2.5, 3.5, 4.5 }, 509da0c48c4Sopenharmony_ci { 2.5, 3.5, 4.5, 5.5 } }; 510da0c48c4Sopenharmony_ci return ret; 511da0c48c4Sopenharmony_ci} 512da0c48c4Sopenharmony_ci 513da0c48c4Sopenharmony_citypedef struct { vec_double_16_t a; vec_double_16_t b; } hva2_vec_double_16_t; 514da0c48c4Sopenharmony_cihva2_vec_double_16_t fun_hva2_vec_double_16_t (void) { 515da0c48c4Sopenharmony_ci hva2_vec_double_16_t ret = { { 2.5, 3.5 }, 516da0c48c4Sopenharmony_ci { 3.5, 4.5 } }; 517da0c48c4Sopenharmony_ci return ret; 518da0c48c4Sopenharmony_ci} 519da0c48c4Sopenharmony_ci 520da0c48c4Sopenharmony_ci#ifdef FLOAT128 521da0c48c4Sopenharmony_citypedef struct { vec_float128_16_t a; vec_float128_16_t b; } hva2_vec_float128_16_t; 522da0c48c4Sopenharmony_cihva2_vec_float128_16_t fun_hva2_vec_float128_16_t (void) { 523da0c48c4Sopenharmony_ci hva2_vec_float128_16_t ret = { { 4.5 }, 524da0c48c4Sopenharmony_ci { 5.5 } }; 525da0c48c4Sopenharmony_ci return ret; 526da0c48c4Sopenharmony_ci} 527da0c48c4Sopenharmony_ci#endif 528da0c48c4Sopenharmony_ci 529da0c48c4Sopenharmony_ci// Homogeneous vector aggregates of 3 elements. 530da0c48c4Sopenharmony_ci 531da0c48c4Sopenharmony_citypedef struct { vec_char_8_t a; vec_char_8_t b; vec_char_8_t c; } hva3_vec_char_8_t; 532da0c48c4Sopenharmony_cihva3_vec_char_8_t fun_hva3_vec_char_8 (void) { 533da0c48c4Sopenharmony_ci hva3_vec_char_8_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8 }, 534da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9 }, 535da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10 } }; 536da0c48c4Sopenharmony_ci return ret; 537da0c48c4Sopenharmony_ci} 538da0c48c4Sopenharmony_ci 539da0c48c4Sopenharmony_citypedef struct { vec_short_8_t a; vec_short_8_t b; vec_short_8_t c; } hva3_vec_short_8_t; 540da0c48c4Sopenharmony_cihva3_vec_short_8_t fun_hva3_vec_short_8 (void) { 541da0c48c4Sopenharmony_ci hva3_vec_short_8_t ret = { { 2, 3, 4, 5 }, 542da0c48c4Sopenharmony_ci { 3, 4, 5, 6 }, 543da0c48c4Sopenharmony_ci { 4, 5, 6, 7 } }; 544da0c48c4Sopenharmony_ci return ret; 545da0c48c4Sopenharmony_ci} 546da0c48c4Sopenharmony_ci 547da0c48c4Sopenharmony_citypedef struct { vec_int_8_t a; vec_int_8_t b; vec_int_8_t c; } hva3_vec_int_8_t; 548da0c48c4Sopenharmony_cihva3_vec_int_8_t fun_hva3_vec_int_8 (void) { 549da0c48c4Sopenharmony_ci hva3_vec_int_8_t ret = { { 3, 4 }, 550da0c48c4Sopenharmony_ci { 4, 5 }, 551da0c48c4Sopenharmony_ci { 5, 6 } }; 552da0c48c4Sopenharmony_ci return ret; 553da0c48c4Sopenharmony_ci} 554da0c48c4Sopenharmony_ci 555da0c48c4Sopenharmony_citypedef struct { vec_long_8_t a; vec_long_8_t b; vec_long_8_t c; } hva3_vec_long_8_t; 556da0c48c4Sopenharmony_cihva3_vec_long_8_t fun_hva3_vec_long_8 (void) { 557da0c48c4Sopenharmony_ci hva3_vec_long_8_t ret = { { 5 }, 558da0c48c4Sopenharmony_ci { 6 }, 559da0c48c4Sopenharmony_ci { 7 } }; 560da0c48c4Sopenharmony_ci return ret; 561da0c48c4Sopenharmony_ci} 562da0c48c4Sopenharmony_ci 563da0c48c4Sopenharmony_citypedef struct { vec_float_8_t a; vec_float_8_t b; vec_float_8_t c; } hva3_vec_float_8_t; 564da0c48c4Sopenharmony_cihva3_vec_float_8_t fun_hva3_vec_float_8 (void) { 565da0c48c4Sopenharmony_ci hva3_vec_float_8_t ret = { { 1.5, 2.5 }, 566da0c48c4Sopenharmony_ci { 2.5, 3.5 }, 567da0c48c4Sopenharmony_ci { 3.5, 4.5 } }; 568da0c48c4Sopenharmony_ci return ret; 569da0c48c4Sopenharmony_ci} 570da0c48c4Sopenharmony_ci 571da0c48c4Sopenharmony_citypedef struct { vec_double_8_t a; vec_double_8_t b; vec_double_8_t c; } hva3_vec_double_8_t; 572da0c48c4Sopenharmony_cihva3_vec_double_8_t fun_hva3_vec_double_8 (void) { 573da0c48c4Sopenharmony_ci hva3_vec_double_8_t ret = { { 3.5 }, 574da0c48c4Sopenharmony_ci { 4.5 }, 575da0c48c4Sopenharmony_ci { 5.5 } }; 576da0c48c4Sopenharmony_ci return ret; 577da0c48c4Sopenharmony_ci} 578da0c48c4Sopenharmony_ci 579da0c48c4Sopenharmony_citypedef struct { vec_char_16_t a; vec_char_16_t b; vec_char_16_t c; } hva3_vec_char_16_t; 580da0c48c4Sopenharmony_cihva3_vec_char_16_t fun_hva3_vec_char_16_t (void) { 581da0c48c4Sopenharmony_ci hva3_vec_char_16_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8, 582da0c48c4Sopenharmony_ci 9, 10, 11, 12, 13, 14, 15, 16 }, 583da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9, 584da0c48c4Sopenharmony_ci 10, 11, 12, 13, 14, 15, 16, 17 }, 585da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10, 586da0c48c4Sopenharmony_ci 11, 12, 13, 14, 15, 16, 17, 18 } }; 587da0c48c4Sopenharmony_ci return ret; 588da0c48c4Sopenharmony_ci} 589da0c48c4Sopenharmony_ci 590da0c48c4Sopenharmony_citypedef struct { vec_short_16_t a; vec_short_16_t b; vec_short_16_t c; } hva3_vec_short_16_t; 591da0c48c4Sopenharmony_cihva3_vec_short_16_t fun_hva3_vec_short_16_t (void) { 592da0c48c4Sopenharmony_ci hva3_vec_short_16_t ret = { { 2, 3, 4, 5, 6, 7, 8, 9 }, 593da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10 }, 594da0c48c4Sopenharmony_ci { 4, 5, 6, 7, 8, 9, 10, 11 } }; 595da0c48c4Sopenharmony_ci return ret; 596da0c48c4Sopenharmony_ci} 597da0c48c4Sopenharmony_ci 598da0c48c4Sopenharmony_citypedef struct { vec_int_16_t a; vec_int_16_t b; vec_int_16_t c; } hva3_vec_int_16_t; 599da0c48c4Sopenharmony_cihva3_vec_int_16_t fun_hva3_vec_int_16_t (void) { 600da0c48c4Sopenharmony_ci hva3_vec_int_16_t ret = { { 3, 4, 5, 6 }, 601da0c48c4Sopenharmony_ci { 4, 5, 6, 7 }, 602da0c48c4Sopenharmony_ci { 5, 6, 7, 8 } }; 603da0c48c4Sopenharmony_ci return ret; 604da0c48c4Sopenharmony_ci} 605da0c48c4Sopenharmony_ci 606da0c48c4Sopenharmony_citypedef struct { vec_long_16_t a; vec_long_16_t b; vec_long_16_t c; } hva3_vec_long_16_t; 607da0c48c4Sopenharmony_cihva3_vec_long_16_t fun_hva3_vec_long_16_t (void) { 608da0c48c4Sopenharmony_ci hva3_vec_long_16_t ret = { { 3, 4 }, 609da0c48c4Sopenharmony_ci { 4, 5 }, 610da0c48c4Sopenharmony_ci { 5, 6 } }; 611da0c48c4Sopenharmony_ci return ret; 612da0c48c4Sopenharmony_ci} 613da0c48c4Sopenharmony_ci 614da0c48c4Sopenharmony_citypedef struct { vec_int128_16_t a; vec_int128_16_t b; vec_int128_16_t c; } hva3_vec_int128_16_t; 615da0c48c4Sopenharmony_cihva3_vec_int128_16_t fun_hva3_vec_int128_16_t (void) { 616da0c48c4Sopenharmony_ci hva3_vec_int128_16_t ret = { { 6 }, 617da0c48c4Sopenharmony_ci { 7 }, 618da0c48c4Sopenharmony_ci { 8 } }; 619da0c48c4Sopenharmony_ci return ret; 620da0c48c4Sopenharmony_ci} 621da0c48c4Sopenharmony_ci 622da0c48c4Sopenharmony_citypedef struct { vec_float_16_t a; vec_float_16_t b; vec_float_16_t c; } hva3_vec_float_16_t; 623da0c48c4Sopenharmony_cihva3_vec_float_16_t fun_hva3_vec_float_16_t (void) { 624da0c48c4Sopenharmony_ci hva3_vec_float_16_t ret = { { 1.5, 2.5, 3.5, 4.5 }, 625da0c48c4Sopenharmony_ci { 2.5, 3.5, 4.5, 5.5 }, 626da0c48c4Sopenharmony_ci { 3.5, 4.5, 5.5, 6.5 } }; 627da0c48c4Sopenharmony_ci return ret; 628da0c48c4Sopenharmony_ci} 629da0c48c4Sopenharmony_ci 630da0c48c4Sopenharmony_citypedef struct { vec_double_16_t a; vec_double_16_t b; vec_double_16_t c; } hva3_vec_double_16_t; 631da0c48c4Sopenharmony_cihva3_vec_double_16_t fun_hva3_vec_double_16_t (void) { 632da0c48c4Sopenharmony_ci hva3_vec_double_16_t ret = { { 2.5, 3.5 }, 633da0c48c4Sopenharmony_ci { 3.5, 4.5 }, 634da0c48c4Sopenharmony_ci { 4.5, 5.5 } }; 635da0c48c4Sopenharmony_ci return ret; 636da0c48c4Sopenharmony_ci} 637da0c48c4Sopenharmony_ci 638da0c48c4Sopenharmony_ci#ifdef FLOAT128 639da0c48c4Sopenharmony_citypedef struct { vec_float128_16_t a; vec_float128_16_t b; vec_float128_16_t c; } hva3_vec_float128_16_t; 640da0c48c4Sopenharmony_cihva3_vec_float128_16_t fun_hva3_vec_float128_16_t (void) { 641da0c48c4Sopenharmony_ci hva3_vec_float128_16_t ret = { { 4.5 }, 642da0c48c4Sopenharmony_ci { 5.5 }, 643da0c48c4Sopenharmony_ci { 6.5 } }; 644da0c48c4Sopenharmony_ci return ret; 645da0c48c4Sopenharmony_ci} 646da0c48c4Sopenharmony_ci#endif 647da0c48c4Sopenharmony_ci 648da0c48c4Sopenharmony_ci// Homogeneous vector aggregates of 3 elements. 649da0c48c4Sopenharmony_ci 650da0c48c4Sopenharmony_citypedef struct { vec_char_8_t a; vec_char_8_t b; vec_char_8_t c; vec_char_8_t d; } hva4_vec_char_8_t; 651da0c48c4Sopenharmony_cihva4_vec_char_8_t fun_hva4_vec_char_8 (void) { 652da0c48c4Sopenharmony_ci hva4_vec_char_8_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8 }, 653da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9 }, 654da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10 }, 655da0c48c4Sopenharmony_ci { 4, 5, 6, 7, 8, 9, 10, 11 } }; 656da0c48c4Sopenharmony_ci return ret; 657da0c48c4Sopenharmony_ci} 658da0c48c4Sopenharmony_ci 659da0c48c4Sopenharmony_citypedef struct { vec_short_8_t a; vec_short_8_t b; vec_short_8_t c; vec_short_8_t d; } hva4_vec_short_8_t; 660da0c48c4Sopenharmony_cihva4_vec_short_8_t fun_hva4_vec_short_8 (void) { 661da0c48c4Sopenharmony_ci hva4_vec_short_8_t ret = { { 2, 3, 4, 5 }, 662da0c48c4Sopenharmony_ci { 3, 4, 5, 6 }, 663da0c48c4Sopenharmony_ci { 4, 5, 6, 7 }, 664da0c48c4Sopenharmony_ci { 5, 6, 7, 8 } }; 665da0c48c4Sopenharmony_ci return ret; 666da0c48c4Sopenharmony_ci} 667da0c48c4Sopenharmony_ci 668da0c48c4Sopenharmony_citypedef struct { vec_int_8_t a; vec_int_8_t b; vec_int_8_t c; vec_int_8_t d; } hva4_vec_int_8_t; 669da0c48c4Sopenharmony_cihva4_vec_int_8_t fun_hva4_vec_int_8 (void) { 670da0c48c4Sopenharmony_ci hva4_vec_int_8_t ret = { { 3, 4 }, 671da0c48c4Sopenharmony_ci { 4, 5 }, 672da0c48c4Sopenharmony_ci { 5, 6 }, 673da0c48c4Sopenharmony_ci { 6, 7 } }; 674da0c48c4Sopenharmony_ci return ret; 675da0c48c4Sopenharmony_ci} 676da0c48c4Sopenharmony_ci 677da0c48c4Sopenharmony_citypedef struct { vec_long_8_t a; vec_long_8_t b; vec_long_8_t c; vec_long_8_t d; } hva4_vec_long_8_t; 678da0c48c4Sopenharmony_cihva4_vec_long_8_t fun_hva4_vec_long_8 (void) { 679da0c48c4Sopenharmony_ci hva4_vec_long_8_t ret = { { 5 }, 680da0c48c4Sopenharmony_ci { 6 }, 681da0c48c4Sopenharmony_ci { 7 }, 682da0c48c4Sopenharmony_ci { 8 } }; 683da0c48c4Sopenharmony_ci return ret; 684da0c48c4Sopenharmony_ci} 685da0c48c4Sopenharmony_ci 686da0c48c4Sopenharmony_citypedef struct { vec_float_8_t a; vec_float_8_t b; vec_float_8_t c; vec_float_8_t d; } hva4_vec_float_8_t; 687da0c48c4Sopenharmony_cihva4_vec_float_8_t fun_hva4_vec_float_8 (void) { 688da0c48c4Sopenharmony_ci hva4_vec_float_8_t ret = { { 1.5, 2.5 }, 689da0c48c4Sopenharmony_ci { 2.5, 3.5 }, 690da0c48c4Sopenharmony_ci { 3.5, 4.5 }, 691da0c48c4Sopenharmony_ci { 4.5, 5.5 } }; 692da0c48c4Sopenharmony_ci return ret; 693da0c48c4Sopenharmony_ci} 694da0c48c4Sopenharmony_ci 695da0c48c4Sopenharmony_citypedef struct { vec_double_8_t a; vec_double_8_t b; vec_double_8_t c; vec_double_8_t d; } hva4_vec_double_8_t; 696da0c48c4Sopenharmony_cihva4_vec_double_8_t fun_hva4_vec_double_8 (void) { 697da0c48c4Sopenharmony_ci hva4_vec_double_8_t ret = { { 3.5 }, 698da0c48c4Sopenharmony_ci { 4.5 }, 699da0c48c4Sopenharmony_ci { 5.5 }, 700da0c48c4Sopenharmony_ci { 6.5 } }; 701da0c48c4Sopenharmony_ci return ret; 702da0c48c4Sopenharmony_ci} 703da0c48c4Sopenharmony_ci 704da0c48c4Sopenharmony_citypedef struct { vec_char_16_t a; vec_char_16_t b; vec_char_16_t c; vec_char_16_t d; } hva4_vec_char_16_t; 705da0c48c4Sopenharmony_cihva4_vec_char_16_t fun_hva4_vec_char_16_t (void) { 706da0c48c4Sopenharmony_ci hva4_vec_char_16_t ret = { { 1, 2, 3, 4, 5, 6, 7, 8, 707da0c48c4Sopenharmony_ci 9, 10, 11, 12, 13, 14, 15, 16 }, 708da0c48c4Sopenharmony_ci { 2, 3, 4, 5, 6, 7, 8, 9, 709da0c48c4Sopenharmony_ci 10, 11, 12, 13, 14, 15, 16, 17 }, 710da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10, 711da0c48c4Sopenharmony_ci 11, 12, 13, 14, 15, 16, 17, 18 }, 712da0c48c4Sopenharmony_ci { 4, 5, 6, 7, 8, 9, 10, 11, 713da0c48c4Sopenharmony_ci 12, 13, 14, 15, 16, 17, 18, 19 } }; 714da0c48c4Sopenharmony_ci return ret; 715da0c48c4Sopenharmony_ci} 716da0c48c4Sopenharmony_ci 717da0c48c4Sopenharmony_citypedef struct { vec_short_16_t a; vec_short_16_t b; vec_short_16_t c; vec_short_16_t d; } hva4_vec_short_16_t; 718da0c48c4Sopenharmony_cihva4_vec_short_16_t fun_hva4_vec_short_16_t (void) { 719da0c48c4Sopenharmony_ci hva4_vec_short_16_t ret = { { 2, 3, 4, 5, 6, 7, 8, 9 }, 720da0c48c4Sopenharmony_ci { 3, 4, 5, 6, 7, 8, 9, 10 }, 721da0c48c4Sopenharmony_ci { 4, 5, 6, 7, 8, 9, 10, 11 }, 722da0c48c4Sopenharmony_ci { 5, 6, 7, 8, 9, 10, 11, 12 } }; 723da0c48c4Sopenharmony_ci return ret; 724da0c48c4Sopenharmony_ci} 725da0c48c4Sopenharmony_ci 726da0c48c4Sopenharmony_citypedef struct { vec_int_16_t a; vec_int_16_t b; vec_int_16_t c; vec_int_16_t d; } hva4_vec_int_16_t; 727da0c48c4Sopenharmony_cihva4_vec_int_16_t fun_hva4_vec_int_16_t (void) { 728da0c48c4Sopenharmony_ci hva4_vec_int_16_t ret = { { 3, 4, 5, 6 }, 729da0c48c4Sopenharmony_ci { 4, 5, 6, 7 }, 730da0c48c4Sopenharmony_ci { 5, 6, 7, 8 }, 731da0c48c4Sopenharmony_ci { 6, 7, 8, 9 } }; 732da0c48c4Sopenharmony_ci return ret; 733da0c48c4Sopenharmony_ci} 734da0c48c4Sopenharmony_ci 735da0c48c4Sopenharmony_citypedef struct { vec_long_16_t a; vec_long_16_t b; vec_long_16_t c; vec_long_16_t d; } hva4_vec_long_16_t; 736da0c48c4Sopenharmony_cihva4_vec_long_16_t fun_hva4_vec_long_16_t (void) { 737da0c48c4Sopenharmony_ci hva4_vec_long_16_t ret = { { 3, 4 }, 738da0c48c4Sopenharmony_ci { 4, 5 }, 739da0c48c4Sopenharmony_ci { 5, 6 }, 740da0c48c4Sopenharmony_ci { 6, 7 } }; 741da0c48c4Sopenharmony_ci return ret; 742da0c48c4Sopenharmony_ci} 743da0c48c4Sopenharmony_ci 744da0c48c4Sopenharmony_citypedef struct { vec_int128_16_t a; vec_int128_16_t b; vec_int128_16_t c; vec_int128_16_t d; } hva4_vec_int128_16_t; 745da0c48c4Sopenharmony_cihva4_vec_int128_16_t fun_hva4_vec_int128_16_t (void) { 746da0c48c4Sopenharmony_ci hva4_vec_int128_16_t ret = { { 6 }, 747da0c48c4Sopenharmony_ci { 7 }, 748da0c48c4Sopenharmony_ci { 8 }, 749da0c48c4Sopenharmony_ci { 9 } }; 750da0c48c4Sopenharmony_ci return ret; 751da0c48c4Sopenharmony_ci} 752da0c48c4Sopenharmony_ci 753da0c48c4Sopenharmony_citypedef struct { vec_float_16_t a; vec_float_16_t b; vec_float_16_t c; vec_float_16_t d; } hva4_vec_float_16_t; 754da0c48c4Sopenharmony_cihva4_vec_float_16_t fun_hva4_vec_float_16_t (void) { 755da0c48c4Sopenharmony_ci hva4_vec_float_16_t ret = { { 1.5, 2.5, 3.5, 4.5 }, 756da0c48c4Sopenharmony_ci { 2.5, 3.5, 4.5, 5.5 }, 757da0c48c4Sopenharmony_ci { 3.5, 4.5, 5.5, 6.5 }, 758da0c48c4Sopenharmony_ci { 4.5, 5.5, 6.5, 7.5 } }; 759da0c48c4Sopenharmony_ci return ret; 760da0c48c4Sopenharmony_ci} 761da0c48c4Sopenharmony_ci 762da0c48c4Sopenharmony_citypedef struct { vec_double_16_t a; vec_double_16_t b; vec_double_16_t c; vec_double_16_t d; } hva4_vec_double_16_t; 763da0c48c4Sopenharmony_cihva4_vec_double_16_t fun_hva4_vec_double_16_t (void) { 764da0c48c4Sopenharmony_ci hva4_vec_double_16_t ret = { { 2.5, 3.5 }, 765da0c48c4Sopenharmony_ci { 3.5, 4.5 }, 766da0c48c4Sopenharmony_ci { 4.5, 5.5 }, 767da0c48c4Sopenharmony_ci { 5.5, 6.5 } }; 768da0c48c4Sopenharmony_ci return ret; 769da0c48c4Sopenharmony_ci} 770da0c48c4Sopenharmony_ci 771da0c48c4Sopenharmony_ci#ifdef FLOAT128 772da0c48c4Sopenharmony_citypedef struct { vec_float128_16_t a; vec_float128_16_t b; vec_float128_16_t c; vec_float128_16_t d; } hva4_vec_float128_16_t; 773da0c48c4Sopenharmony_cihva4_vec_float128_16_t fun_hva4_vec_float128_16_t (void) { 774da0c48c4Sopenharmony_ci hva4_vec_float128_16_t ret = { { 4.5 }, 775da0c48c4Sopenharmony_ci { 5.5 }, 776da0c48c4Sopenharmony_ci { 6.5 }, 777da0c48c4Sopenharmony_ci { 7.5 } }; 778da0c48c4Sopenharmony_ci return ret; 779da0c48c4Sopenharmony_ci} 780da0c48c4Sopenharmony_ci#endif 781da0c48c4Sopenharmony_ci 782da0c48c4Sopenharmony_ci// Mixed HFA. 783da0c48c4Sopenharmony_citypedef struct { float _Complex a; float b; } mixed_hfa3_cff_t; 784da0c48c4Sopenharmony_cimixed_hfa3_cff_t fun_mixed_hfa3_cff (void) { 785da0c48c4Sopenharmony_ci mixed_hfa3_cff_t ret = { 1.5 + 2.5i, 3.5 }; 786da0c48c4Sopenharmony_ci return ret; 787da0c48c4Sopenharmony_ci} 788da0c48c4Sopenharmony_ci 789da0c48c4Sopenharmony_citypedef struct { double _Complex a; double b; } mixed_hfa3_cdd_t; 790da0c48c4Sopenharmony_cimixed_hfa3_cdd_t fun_mixed_hfa3_cdd (void) { 791da0c48c4Sopenharmony_ci mixed_hfa3_cdd_t ret = { 1.5 + 2.5i, 3.5 }; 792da0c48c4Sopenharmony_ci return ret; 793da0c48c4Sopenharmony_ci} 794da0c48c4Sopenharmony_ci 795da0c48c4Sopenharmony_citypedef struct { long double _Complex a; long double b; } mixed_hfa3_cldld_t; 796da0c48c4Sopenharmony_cimixed_hfa3_cldld_t fun_mixed_hfa3_cldld (void) { 797da0c48c4Sopenharmony_ci mixed_hfa3_cldld_t ret = { 1.5 + 2.5i, 3.5 }; 798da0c48c4Sopenharmony_ci return ret; 799da0c48c4Sopenharmony_ci} 800da0c48c4Sopenharmony_ci 801da0c48c4Sopenharmony_citypedef struct { float b; float _Complex a; } mixed_hfa3_fcf_t; 802da0c48c4Sopenharmony_cimixed_hfa3_fcf_t fun_mixed_hfa3_fcf (void) { 803da0c48c4Sopenharmony_ci mixed_hfa3_fcf_t ret = { 3.5, 1.5 + 2.5i }; 804da0c48c4Sopenharmony_ci return ret; 805da0c48c4Sopenharmony_ci} 806da0c48c4Sopenharmony_ci 807da0c48c4Sopenharmony_citypedef struct { double b; double _Complex a; } mixed_hfa3_dcd_t; 808da0c48c4Sopenharmony_cimixed_hfa3_dcd_t fun_mixed_hfa3_dcd (void) { 809da0c48c4Sopenharmony_ci mixed_hfa3_dcd_t ret = { 3.5, 1.5 + 2.5i }; 810da0c48c4Sopenharmony_ci return ret; 811da0c48c4Sopenharmony_ci} 812da0c48c4Sopenharmony_ci 813da0c48c4Sopenharmony_citypedef struct { long double b; long double _Complex a; } mixed_hfa3_ldcld_t; 814da0c48c4Sopenharmony_cimixed_hfa3_ldcld_t fun_mixed_hfa3_ldcld (void) { 815da0c48c4Sopenharmony_ci mixed_hfa3_ldcld_t ret = { 3.5, 1.5 + 2.5i }; 816da0c48c4Sopenharmony_ci return ret; 817da0c48c4Sopenharmony_ci} 818da0c48c4Sopenharmony_ci 819da0c48c4Sopenharmony_citypedef struct { vec_float_8_t a; vec_short_8_t b; } mixed_hfa2_fltsht_t; 820da0c48c4Sopenharmony_cimixed_hfa2_fltsht_t fun_mixed_hfa2_fltsht_t (void) { 821da0c48c4Sopenharmony_ci mixed_hfa2_fltsht_t ret = { { 3.5, 4.5 }, { 1, 2, 3, 4 } }; 822da0c48c4Sopenharmony_ci return ret; 823da0c48c4Sopenharmony_ci} 824da0c48c4Sopenharmony_ci 825da0c48c4Sopenharmony_ciint main(int argc, char *argv[]) 826da0c48c4Sopenharmony_ci{ 827da0c48c4Sopenharmony_ci return 0; 828da0c48c4Sopenharmony_ci} 829