1 // RUN: %clang_cc1 -triple riscv64-none-linux-gnu -target-feature +f -target-feature +d -target-feature +zve64d -mvscale-min=1 -mvscale-max=1 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-64 2 // RUN: %clang_cc1 -triple riscv64-none-linux-gnu -target-feature +f -target-feature +d -target-feature +zve64d -mvscale-min=2 -mvscale-max=2 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-128 3 // RUN: %clang_cc1 -triple riscv64-none-linux-gnu -target-feature +f -target-feature +d -target-feature +zve64d -mvscale-min=4 -mvscale-max=4 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-256 4 // RUN: %clang_cc1 -triple riscv64-none-linux-gnu -target-feature +f -target-feature +d -target-feature +zve64d -mvscale-min=8 -mvscale-max=8 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-512 5 // RUN: %clang_cc1 -triple riscv64-none-linux-gnu -target-feature +f -target-feature +d -target-feature +zve64d -mvscale-min=16 -mvscale-max=16 -emit-llvm -o - %s | FileCheck %s --check-prefix=CHECK-1024 6 7 // REQUIRES: riscv-registered-target 8 9 #include <stdint.h> 10 11 typedef __rvv_bool64_t vbool64_t; 12 typedef __rvv_bool32_t vbool32_t; 13 typedef __rvv_bool16_t vbool16_t; 14 typedef __rvv_bool8_t vbool8_t; 15 typedef __rvv_bool4_t vbool4_t; 16 typedef __rvv_bool2_t vbool2_t; 17 typedef __rvv_bool1_t vbool1_t; 18 19 typedef __rvv_int8mf8_t vint8mf8_t; 20 typedef __rvv_uint8mf8_t vuint8mf8_t; 21 22 typedef __rvv_int8mf4_t vint8mf4_t; 23 typedef __rvv_uint8mf4_t vuint8mf4_t; 24 typedef __rvv_int16mf4_t vint16mf4_t; 25 typedef __rvv_uint16mf4_t vuint16mf4_t; 26 27 typedef __rvv_int8mf2_t vint8mf2_t; 28 typedef __rvv_uint8mf2_t vuint8mf2_t; 29 typedef __rvv_int16mf2_t vint16mf2_t; 30 typedef __rvv_uint16mf2_t vuint16mf2_t; 31 typedef __rvv_int32mf2_t vint32mf2_t; 32 typedef __rvv_uint32mf2_t vuint32mf2_t; 33 typedef __rvv_float32mf2_t vfloat32mf2_t; 34 35 typedef __rvv_int8m1_t vint8m1_t; 36 typedef __rvv_uint8m1_t vuint8m1_t; 37 typedef __rvv_int16m1_t vint16m1_t; 38 typedef __rvv_uint16m1_t vuint16m1_t; 39 typedef __rvv_int32m1_t vint32m1_t; 40 typedef __rvv_uint32m1_t vuint32m1_t; 41 typedef __rvv_int64m1_t vint64m1_t; 42 typedef __rvv_uint64m1_t vuint64m1_t; 43 typedef __rvv_float32m1_t vfloat32m1_t; 44 typedef __rvv_float64m1_t vfloat64m1_t; 45 46 typedef __rvv_int8m2_t vint8m2_t; 47 typedef __rvv_uint8m2_t vuint8m2_t; 48 typedef __rvv_int16m2_t vint16m2_t; 49 typedef __rvv_uint16m2_t vuint16m2_t; 50 typedef __rvv_int32m2_t vint32m2_t; 51 typedef __rvv_uint32m2_t vuint32m2_t; 52 typedef __rvv_int64m2_t vint64m2_t; 53 typedef __rvv_uint64m2_t vuint64m2_t; 54 typedef __rvv_float32m2_t vfloat32m2_t; 55 typedef __rvv_float64m2_t vfloat64m2_t; 56 57 typedef __rvv_int8m4_t vint8m4_t; 58 typedef __rvv_uint8m4_t vuint8m4_t; 59 typedef __rvv_int16m4_t vint16m4_t; 60 typedef __rvv_uint16m4_t vuint16m4_t; 61 typedef __rvv_int32m4_t vint32m4_t; 62 typedef __rvv_uint32m4_t vuint32m4_t; 63 typedef __rvv_int64m4_t vint64m4_t; 64 typedef __rvv_uint64m4_t vuint64m4_t; 65 typedef __rvv_float32m4_t vfloat32m4_t; 66 typedef __rvv_float64m4_t vfloat64m4_t; 67 68 typedef __rvv_int8m8_t vint8m8_t; 69 typedef __rvv_uint8m8_t vuint8m8_t; 70 typedef __rvv_int16m8_t vint16m8_t; 71 typedef __rvv_uint16m8_t vuint16m8_t; 72 typedef __rvv_int32m8_t vint32m8_t; 73 typedef __rvv_uint32m8_t vuint32m8_t; 74 typedef __rvv_int64m8_t vint64m8_t; 75 typedef __rvv_uint64m8_t vuint64m8_t; 76 typedef __rvv_float32m8_t vfloat32m8_t; 77 typedef __rvv_float64m8_t vfloat64m8_t; 78 79 // Define valid fixed-width RVV types 80 typedef vint8mf8_t fixed_int8mf8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 8))); 81 82 typedef vuint8mf8_t fixed_uint8mf8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 8))); 83 84 typedef vint8mf4_t fixed_int8mf4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 4))); 85 typedef vint16mf4_t fixed_int16mf4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 4))); 86 87 typedef vuint8mf4_t fixed_uint8mf4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 4))); 88 typedef vuint16mf4_t fixed_uint16mf4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 4))); 89 90 typedef vint8mf2_t fixed_int8mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 91 typedef vint16mf2_t fixed_int16mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 92 typedef vint32mf2_t fixed_int32mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 93 94 typedef vuint8mf2_t fixed_uint8mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 95 typedef vuint16mf2_t fixed_uint16mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 96 typedef vuint32mf2_t fixed_uint32mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 97 98 typedef vfloat32mf2_t fixed_float32mf2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 99 100 typedef vint8m1_t fixed_int8m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 101 typedef vint16m1_t fixed_int16m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 102 typedef vint32m1_t fixed_int32m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 103 typedef vint64m1_t fixed_int64m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 104 105 typedef vuint8m1_t fixed_uint8m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 106 typedef vuint16m1_t fixed_uint16m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 107 typedef vuint32m1_t fixed_uint32m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 108 typedef vuint64m1_t fixed_uint64m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 109 110 typedef vfloat32m1_t fixed_float32m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 111 typedef vfloat64m1_t fixed_float64m1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 112 113 typedef vint8m2_t fixed_int8m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 114 typedef vint16m2_t fixed_int16m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 115 typedef vint32m2_t fixed_int32m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 116 typedef vint64m2_t fixed_int64m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 117 118 typedef vuint8m2_t fixed_uint8m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 119 typedef vuint16m2_t fixed_uint16m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 120 typedef vuint32m2_t fixed_uint32m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 121 typedef vuint64m2_t fixed_uint64m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 122 123 typedef vfloat32m2_t fixed_float32m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 124 typedef vfloat64m2_t fixed_float64m2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 2))); 125 126 typedef vint8m4_t fixed_int8m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 127 typedef vint16m4_t fixed_int16m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 128 typedef vint32m4_t fixed_int32m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 129 typedef vint64m4_t fixed_int64m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 130 131 typedef vuint8m4_t fixed_uint8m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 132 typedef vuint16m4_t fixed_uint16m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 133 typedef vuint32m4_t fixed_uint32m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 134 typedef vuint64m4_t fixed_uint64m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 135 136 typedef vfloat32m4_t fixed_float32m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 137 typedef vfloat64m4_t fixed_float64m4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 4))); 138 139 typedef vint8m8_t fixed_int8m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 140 typedef vint16m8_t fixed_int16m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 141 typedef vint32m8_t fixed_int32m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 142 typedef vint64m8_t fixed_int64m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 143 144 typedef vuint8m8_t fixed_uint8m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 145 typedef vuint16m8_t fixed_uint16m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 146 typedef vuint32m8_t fixed_uint32m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 147 typedef vuint64m8_t fixed_uint64m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 148 149 typedef vfloat32m8_t fixed_float32m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 150 typedef vfloat64m8_t fixed_float64m8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen * 8))); 151 152 typedef vbool64_t fixed_bool64_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 64))); 153 typedef vbool32_t fixed_bool32_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 32))); 154 typedef vbool16_t fixed_bool16_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 16))); 155 typedef vbool8_t fixed_bool8_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 8))); 156 typedef vbool4_t fixed_bool4_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 4))); 157 typedef vbool2_t fixed_bool2_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen / 2))); 158 typedef vbool1_t fixed_bool1_t __attribute__((riscv_rvv_vector_bits(__riscv_v_fixed_vlen))); 159 160 //===----------------------------------------------------------------------===// 161 // Structs and unions 162 //===----------------------------------------------------------------------===// 163 #define DEFINE_STRUCT(ty) \ 164 struct struct_##ty { \ 165 fixed_##ty##_t x; \ 166 } struct_##ty; 167 168 #define DEFINE_UNION(ty) \ 169 union union_##ty { \ 170 fixed_##ty##_t x; \ 171 } union_##ty; 172 173 DEFINE_STRUCT(int8m1) 174 DEFINE_STRUCT(int16m1) 175 DEFINE_STRUCT(int32m1) 176 DEFINE_STRUCT(int64m1) 177 DEFINE_STRUCT(uint8m1) 178 DEFINE_STRUCT(uint16m1) 179 DEFINE_STRUCT(uint32m1) 180 DEFINE_STRUCT(uint64m1) 181 DEFINE_STRUCT(float32m1) 182 DEFINE_STRUCT(float64m1) 183 184 DEFINE_STRUCT(int8m2) 185 DEFINE_STRUCT(int16m2) 186 DEFINE_STRUCT(int32m2) 187 DEFINE_STRUCT(int64m2) 188 DEFINE_STRUCT(uint8m2) 189 DEFINE_STRUCT(uint16m2) 190 DEFINE_STRUCT(uint32m2) 191 DEFINE_STRUCT(uint64m2) 192 DEFINE_STRUCT(float32m2) 193 DEFINE_STRUCT(float64m2) 194 195 DEFINE_STRUCT(int8m4) 196 DEFINE_STRUCT(int16m4) 197 DEFINE_STRUCT(int32m4) 198 DEFINE_STRUCT(int64m4) 199 DEFINE_STRUCT(uint8m4) 200 DEFINE_STRUCT(uint16m4) 201 DEFINE_STRUCT(uint32m4) 202 DEFINE_STRUCT(uint64m4) 203 DEFINE_STRUCT(float32m4) 204 DEFINE_STRUCT(float64m4) 205 206 DEFINE_STRUCT(int8m8) 207 DEFINE_STRUCT(int16m8) 208 DEFINE_STRUCT(int32m8) 209 DEFINE_STRUCT(int64m8) 210 DEFINE_STRUCT(uint8m8) 211 DEFINE_STRUCT(uint16m8) 212 DEFINE_STRUCT(uint32m8) 213 DEFINE_STRUCT(uint64m8) 214 DEFINE_STRUCT(float32m8) 215 DEFINE_STRUCT(float64m8) 216 217 DEFINE_STRUCT(bool1) 218 DEFINE_STRUCT(bool2) 219 DEFINE_STRUCT(bool4) 220 DEFINE_STRUCT(bool8) 221 DEFINE_STRUCT(bool16) 222 DEFINE_STRUCT(bool32) 223 DEFINE_STRUCT(bool64) 224 225 DEFINE_UNION(int8m1) 226 DEFINE_UNION(int16m1) 227 DEFINE_UNION(int32m1) 228 DEFINE_UNION(int64m1) 229 DEFINE_UNION(uint8m1) 230 DEFINE_UNION(uint16m1) 231 DEFINE_UNION(uint32m1) 232 DEFINE_UNION(uint64m1) 233 DEFINE_UNION(float32m1) 234 DEFINE_UNION(float64m1) 235 236 DEFINE_UNION(int8m2) 237 DEFINE_UNION(int16m2) 238 DEFINE_UNION(int32m2) 239 DEFINE_UNION(int64m2) 240 DEFINE_UNION(uint8m2) 241 DEFINE_UNION(uint16m2) 242 DEFINE_UNION(uint32m2) 243 DEFINE_UNION(uint64m2) 244 DEFINE_UNION(float32m2) 245 DEFINE_UNION(float64m2) 246 247 DEFINE_UNION(int8m4) 248 DEFINE_UNION(int16m4) 249 DEFINE_UNION(int32m4) 250 DEFINE_UNION(int64m4) 251 DEFINE_UNION(uint8m4) 252 DEFINE_UNION(uint16m4) 253 DEFINE_UNION(uint32m4) 254 DEFINE_UNION(uint64m4) 255 DEFINE_UNION(float32m4) 256 DEFINE_UNION(float64m4) 257 258 DEFINE_UNION(int8m8) 259 DEFINE_UNION(int16m8) 260 DEFINE_UNION(int32m8) 261 DEFINE_UNION(int64m8) 262 DEFINE_UNION(uint8m8) 263 DEFINE_UNION(uint16m8) 264 DEFINE_UNION(uint32m8) 265 DEFINE_UNION(uint64m8) 266 DEFINE_UNION(float32m8) 267 DEFINE_UNION(float64m8) 268 269 DEFINE_UNION(bool1) 270 DEFINE_UNION(bool2) 271 DEFINE_UNION(bool4) 272 DEFINE_UNION(bool8) 273 DEFINE_UNION(bool16) 274 DEFINE_UNION(bool32) 275 DEFINE_UNION(bool64) 276 277 //===----------------------------------------------------------------------===// 278 // Global variables 279 //===----------------------------------------------------------------------===// 280 fixed_int8m1_t global_i8; 281 fixed_int16m1_t global_i16; 282 fixed_int32m1_t global_i32; 283 fixed_int64m1_t global_i64; 284 285 fixed_uint8m1_t global_u8; 286 fixed_uint16m1_t global_u16; 287 fixed_uint32m1_t global_u32; 288 fixed_uint64m1_t global_u64; 289 290 fixed_float32m1_t global_f32; 291 fixed_float64m1_t global_f64; 292 293 fixed_int8m2_t global_i8m2; 294 fixed_int16m2_t global_i16m2; 295 fixed_int32m2_t global_i32m2; 296 fixed_int64m2_t global_i64m2; 297 298 fixed_uint8m2_t global_u8m2; 299 fixed_uint16m2_t global_u16m2; 300 fixed_uint32m2_t global_u32m2; 301 fixed_uint64m2_t global_u64m2; 302 303 fixed_float32m2_t global_f32m2; 304 fixed_float64m2_t global_f64m2; 305 306 fixed_int8m4_t global_i8m4; 307 fixed_int16m4_t global_i16m4; 308 fixed_int32m4_t global_i32m4; 309 fixed_int64m4_t global_i64m4; 310 311 fixed_uint8m4_t global_u8m4; 312 fixed_uint16m4_t global_u16m4; 313 fixed_uint32m4_t global_u32m4; 314 fixed_uint64m4_t global_u64m4; 315 316 fixed_float32m4_t global_f32m4; 317 fixed_float64m4_t global_f64m4; 318 319 fixed_int8m8_t global_i8m8; 320 fixed_int16m8_t global_i16m8; 321 fixed_int32m8_t global_i32m8; 322 fixed_int64m8_t global_i64m8; 323 324 fixed_uint8m8_t global_u8m8; 325 fixed_uint16m8_t global_u16m8; 326 fixed_uint32m8_t global_u32m8; 327 fixed_uint64m8_t global_u64m8; 328 329 fixed_float32m8_t global_f32m8; 330 fixed_float64m8_t global_f64m8; 331 332 fixed_bool1_t global_bool1; 333 fixed_bool2_t global_bool2; 334 fixed_bool4_t global_bool4; 335 fixed_bool8_t global_bool8; 336 fixed_bool16_t global_bool16; 337 fixed_bool32_t global_bool32; 338 fixed_bool64_t global_bool64; 339 340 //===----------------------------------------------------------------------===// 341 // Global arrays 342 //===----------------------------------------------------------------------===// 343 fixed_int8m1_t global_arr_i8[3]; 344 fixed_int16m1_t global_arr_i16[3]; 345 fixed_int32m1_t global_arr_i32[3]; 346 fixed_int64m1_t global_arr_i64[3]; 347 348 fixed_uint8m1_t global_arr_u8[3]; 349 fixed_uint16m1_t global_arr_u16[3]; 350 fixed_uint32m1_t global_arr_u32[3]; 351 fixed_uint64m1_t global_arr_u64[3]; 352 353 fixed_float32m1_t global_arr_f32[3]; 354 fixed_float64m1_t global_arr_f64[3]; 355 356 fixed_int8m2_t global_arr_i8m2[3]; 357 fixed_int16m2_t global_arr_i16m2[3]; 358 fixed_int32m2_t global_arr_i32m2[3]; 359 fixed_int64m2_t global_arr_i64m2[3]; 360 361 fixed_uint8m2_t global_arr_u8m2[3]; 362 fixed_uint16m2_t global_arr_u16m2[3]; 363 fixed_uint32m2_t global_arr_u32m2[3]; 364 fixed_uint64m2_t global_arr_u64m2[3]; 365 366 fixed_float32m2_t global_arr_f32m2[3]; 367 fixed_float64m2_t global_arr_f64m2[3]; 368 369 fixed_int8m4_t global_arr_i8m4[3]; 370 fixed_int16m4_t global_arr_i16m4[3]; 371 fixed_int32m4_t global_arr_i32m4[3]; 372 fixed_int64m4_t global_arr_i64m4[3]; 373 374 fixed_uint8m4_t global_arr_u8m4[3]; 375 fixed_uint16m4_t global_arr_u16m4[3]; 376 fixed_uint32m4_t global_arr_u32m4[3]; 377 fixed_uint64m4_t global_arr_u64m4[3]; 378 379 fixed_float32m4_t global_arr_f32m4[3]; 380 fixed_float64m4_t global_arr_f64m4[3]; 381 382 fixed_int8m8_t global_arr_i8m8[3]; 383 fixed_int16m8_t global_arr_i16m8[3]; 384 fixed_int32m8_t global_arr_i32m8[3]; 385 fixed_int64m8_t global_arr_i64m8[3]; 386 387 fixed_uint8m8_t global_arr_u8m8[3]; 388 fixed_uint16m8_t global_arr_u16m8[3]; 389 fixed_uint32m8_t global_arr_u32m8[3]; 390 fixed_uint64m8_t global_arr_u64m8[3]; 391 392 fixed_float32m8_t global_arr_f32m8[3]; 393 fixed_float64m8_t global_arr_f64m8[3]; 394 395 fixed_bool1_t global_arr_bool1[3]; 396 fixed_bool2_t global_arr_bool2[3]; 397 fixed_bool4_t global_arr_bool4[3]; 398 fixed_bool8_t global_arr_bool8[3]; 399 fixed_bool16_t global_arr_bool16[3]; 400 fixed_bool32_t global_arr_bool32[3]; 401 fixed_bool64_t global_arr_bool64[3]; 402 403 //===----------------------------------------------------------------------===// 404 // Locals 405 //===----------------------------------------------------------------------===// 406 void f() { 407 // Variables 408 fixed_int8m1_t local_i8; 409 fixed_int16m1_t local_i16; 410 fixed_int32m1_t local_i32; 411 fixed_int64m1_t local_i64; 412 fixed_uint8m1_t local_u8; 413 fixed_uint16m1_t local_u16; 414 fixed_uint32m1_t local_u32; 415 fixed_uint64m1_t local_u64; 416 fixed_float32m1_t local_f32; 417 fixed_float64m1_t local_f64; 418 419 fixed_int8m2_t local_i8m2; 420 fixed_int16m2_t local_i16m2; 421 fixed_int32m2_t local_i32m2; 422 fixed_int64m2_t local_i64m2; 423 fixed_uint8m2_t local_u8m2; 424 fixed_uint16m2_t local_u16m2; 425 fixed_uint32m2_t local_u32m2; 426 fixed_uint64m2_t local_u64m2; 427 fixed_float32m2_t local_f32m2; 428 fixed_float64m2_t local_f64m2; 429 430 fixed_int8m4_t local_i8m4; 431 fixed_int16m4_t local_i16m4; 432 fixed_int32m4_t local_i32m4; 433 fixed_int64m4_t local_i64m4; 434 fixed_uint8m4_t local_u8m4; 435 fixed_uint16m4_t local_u16m4; 436 fixed_uint32m4_t local_u32m4; 437 fixed_uint64m4_t local_u64m4; 438 fixed_float32m4_t local_f32m4; 439 fixed_float64m4_t local_f64m4; 440 441 fixed_int8m8_t local_i8m8; 442 fixed_int16m8_t local_i16m8; 443 fixed_int32m8_t local_i32m8; 444 fixed_int64m8_t local_i64m8; 445 fixed_uint8m8_t local_u8m8; 446 fixed_uint16m8_t local_u16m8; 447 fixed_uint32m8_t local_u32m8; 448 fixed_uint64m8_t local_u64m8; 449 fixed_float32m8_t local_f32m8; 450 fixed_float64m8_t local_f64m8; 451 452 fixed_bool1_t local_bool1; 453 fixed_bool2_t local_bool2; 454 fixed_bool4_t local_bool4; 455 fixed_bool8_t local_bool8; 456 fixed_bool16_t local_bool16; 457 fixed_bool32_t local_bool32; 458 fixed_bool64_t local_bool64; 459 460 // Arrays 461 fixed_int8m1_t local_arr_i8[3]; 462 fixed_int16m1_t local_arr_i16[3]; 463 fixed_int32m1_t local_arr_i32[3]; 464 fixed_int64m1_t local_arr_i64[3]; 465 fixed_uint8m1_t local_arr_u8[3]; 466 fixed_uint16m1_t local_arr_u16[3]; 467 fixed_uint32m1_t local_arr_u32[3]; 468 fixed_uint64m1_t local_arr_u64[3]; 469 fixed_float32m1_t local_arr_f32[3]; 470 fixed_float64m1_t local_arr_f64[3]; 471 472 fixed_int8m2_t local_arr_i8m2[3]; 473 fixed_int16m2_t local_arr_i16m2[3]; 474 fixed_int32m2_t local_arr_i32m2[3]; 475 fixed_int64m2_t local_arr_i64m2[3]; 476 fixed_uint8m2_t local_arr_u8m2[3]; 477 fixed_uint16m2_t local_arr_u16m2[3]; 478 fixed_uint32m2_t local_arr_u32m2[3]; 479 fixed_uint64m2_t local_arr_u64m2[3]; 480 fixed_float32m2_t local_arr_f32m2[3]; 481 fixed_float64m2_t local_arr_f64m2[3]; 482 483 fixed_int8m4_t local_arr_i8m4[3]; 484 fixed_int16m4_t local_arr_i16m4[3]; 485 fixed_int32m4_t local_arr_i32m4[3]; 486 fixed_int64m4_t local_arr_i64m4[3]; 487 fixed_uint8m4_t local_arr_u8m4[3]; 488 fixed_uint16m4_t local_arr_u16m4[3]; 489 fixed_uint32m4_t local_arr_u32m4[3]; 490 fixed_uint64m4_t local_arr_u64m4[3]; 491 fixed_float32m4_t local_arr_f32m4[3]; 492 fixed_float64m4_t local_arr_f64m4[3]; 493 494 fixed_int8m8_t local_arr_i8m8[3]; 495 fixed_int16m8_t local_arr_i16m8[3]; 496 fixed_int32m8_t local_arr_i32m8[3]; 497 fixed_int64m8_t local_arr_i64m8[3]; 498 fixed_uint8m8_t local_arr_u8m8[3]; 499 fixed_uint16m8_t local_arr_u16m8[3]; 500 fixed_uint32m8_t local_arr_u32m8[3]; 501 fixed_uint64m8_t local_arr_u64m8[3]; 502 fixed_float32m8_t local_arr_f32m8[3]; 503 fixed_float64m8_t local_arr_f64m8[3]; 504 505 fixed_int8mf2_t local_arr_i8mf2[3]; 506 fixed_int16mf2_t local_arr_i16mf2[3]; 507 fixed_int32mf2_t local_arr_i32mf2[3]; 508 fixed_uint8mf2_t local_arr_u8mf2[3]; 509 fixed_uint16mf2_t local_arr_u16mf2[3]; 510 fixed_uint32mf2_t local_arr_u32mf2[3]; 511 fixed_float32mf2_t local_arr_f32mf2[3]; 512 513 fixed_int8mf4_t local_arr_i8mf4[3]; 514 fixed_int16mf4_t local_arr_i16mf4[3]; 515 fixed_uint8mf4_t local_arr_u8mf4[3]; 516 fixed_uint16mf4_t local_arr_u16mf4[3]; 517 518 fixed_int8mf8_t local_arr_i8mf8[3]; 519 fixed_uint8mf8_t local_arr_u8mf8[3]; 520 521 fixed_bool1_t local_arr_bool1[3]; 522 fixed_bool2_t local_arr_bool2[3]; 523 fixed_bool4_t local_arr_bool4[3]; 524 fixed_bool8_t local_arr_bool8[3]; 525 fixed_bool16_t local_arr_bool16[3]; 526 fixed_bool32_t local_arr_bool32[3]; 527 fixed_bool64_t local_arr_bool64[3]; 528 } 529 530 //===----------------------------------------------------------------------===// 531 // Structs and unions 532 //===----------------------------------------------------------------------===// 533 // CHECK-64: %struct.struct_int8m1 = type { <8 x i8> } 534 // CHECK-64-NEXT: %struct.struct_int16m1 = type { <4 x i16> } 535 // CHECK-64-NEXT: %struct.struct_int32m1 = type { <2 x i32> } 536 // CHECK-64-NEXT: %struct.struct_int64m1 = type { <1 x i64> } 537 // CHECK-64-NEXT: %struct.struct_uint8m1 = type { <8 x i8> } 538 // CHECK-64-NEXT: %struct.struct_uint16m1 = type { <4 x i16> } 539 // CHECK-64-NEXT: %struct.struct_uint32m1 = type { <2 x i32> } 540 // CHECK-64-NEXT: %struct.struct_uint64m1 = type { <1 x i64> } 541 // CHECK-64-NEXT: %struct.struct_float32m1 = type { <2 x float> } 542 // CHECK-64-NEXT: %struct.struct_float64m1 = type { <1 x double> } 543 // CHECK-64-NEXT: %struct.struct_int8m2 = type { <16 x i8> } 544 // CHECK-64-NEXT: %struct.struct_int16m2 = type { <8 x i16> } 545 // CHECK-64-NEXT: %struct.struct_int32m2 = type { <4 x i32> } 546 // CHECK-64-NEXT: %struct.struct_int64m2 = type { <2 x i64> } 547 // CHECK-64-NEXT: %struct.struct_uint8m2 = type { <16 x i8> } 548 // CHECK-64-NEXT: %struct.struct_uint16m2 = type { <8 x i16> } 549 // CHECK-64-NEXT: %struct.struct_uint32m2 = type { <4 x i32> } 550 // CHECK-64-NEXT: %struct.struct_uint64m2 = type { <2 x i64> } 551 // CHECK-64-NEXT: %struct.struct_float32m2 = type { <4 x float> } 552 // CHECK-64-NEXT: %struct.struct_float64m2 = type { <2 x double> } 553 // CHECK-64-NEXT: %struct.struct_int8m4 = type { <32 x i8> } 554 // CHECK-64-NEXT: %struct.struct_int16m4 = type { <16 x i16> } 555 // CHECK-64-NEXT: %struct.struct_int32m4 = type { <8 x i32> } 556 // CHECK-64-NEXT: %struct.struct_int64m4 = type { <4 x i64> } 557 // CHECK-64-NEXT: %struct.struct_uint8m4 = type { <32 x i8> } 558 // CHECK-64-NEXT: %struct.struct_uint16m4 = type { <16 x i16> } 559 // CHECK-64-NEXT: %struct.struct_uint32m4 = type { <8 x i32> } 560 // CHECK-64-NEXT: %struct.struct_uint64m4 = type { <4 x i64> } 561 // CHECK-64-NEXT: %struct.struct_float32m4 = type { <8 x float> } 562 // CHECK-64-NEXT: %struct.struct_float64m4 = type { <4 x double> } 563 // CHECK-64-NEXT: %struct.struct_int8m8 = type { <64 x i8> } 564 // CHECK-64-NEXT: %struct.struct_int16m8 = type { <32 x i16> } 565 // CHECK-64-NEXT: %struct.struct_int32m8 = type { <16 x i32> } 566 // CHECK-64-NEXT: %struct.struct_int64m8 = type { <8 x i64> } 567 // CHECK-64-NEXT: %struct.struct_uint8m8 = type { <64 x i8> } 568 // CHECK-64-NEXT: %struct.struct_uint16m8 = type { <32 x i16> } 569 // CHECK-64-NEXT: %struct.struct_uint32m8 = type { <16 x i32> } 570 // CHECK-64-NEXT: %struct.struct_uint64m8 = type { <8 x i64> } 571 // CHECK-64-NEXT: %struct.struct_float32m8 = type { <16 x float> } 572 // CHECK-64-NEXT: %struct.struct_float64m8 = type { <8 x double> } 573 // CHECK-64-NEXT: %struct.struct_bool1 = type { <8 x i8> } 574 // CHECK-64-NEXT: %struct.struct_bool2 = type { <4 x i8> } 575 // CHECK-64-NEXT: %struct.struct_bool4 = type { <2 x i8> } 576 // CHECK-64-NEXT: %struct.struct_bool8 = type { <1 x i8> } 577 // CHECK-64-NEXT: %struct.struct_bool16 = type { <1 x i8> } 578 // CHECK-64-NEXT: %struct.struct_bool32 = type { <1 x i8> } 579 // CHECK-64-NEXT: %struct.struct_bool64 = type { <1 x i8> } 580 581 // CHECK-128: %struct.struct_int8m1 = type { <16 x i8> } 582 // CHECK-128-NEXT: %struct.struct_int16m1 = type { <8 x i16> } 583 // CHECK-128-NEXT: %struct.struct_int32m1 = type { <4 x i32> } 584 // CHECK-128-NEXT: %struct.struct_int64m1 = type { <2 x i64> } 585 // CHECK-128-NEXT: %struct.struct_uint8m1 = type { <16 x i8> } 586 // CHECK-128-NEXT: %struct.struct_uint16m1 = type { <8 x i16> } 587 // CHECK-128-NEXT: %struct.struct_uint32m1 = type { <4 x i32> } 588 // CHECK-128-NEXT: %struct.struct_uint64m1 = type { <2 x i64> } 589 // CHECK-128-NEXT: %struct.struct_float32m1 = type { <4 x float> } 590 // CHECK-128-NEXT: %struct.struct_float64m1 = type { <2 x double> } 591 // CHECK-128-NEXT: %struct.struct_int8m2 = type { <32 x i8> } 592 // CHECK-128-NEXT: %struct.struct_int16m2 = type { <16 x i16> } 593 // CHECK-128-NEXT: %struct.struct_int32m2 = type { <8 x i32> } 594 // CHECK-128-NEXT: %struct.struct_int64m2 = type { <4 x i64> } 595 // CHECK-128-NEXT: %struct.struct_uint8m2 = type { <32 x i8> } 596 // CHECK-128-NEXT: %struct.struct_uint16m2 = type { <16 x i16> } 597 // CHECK-128-NEXT: %struct.struct_uint32m2 = type { <8 x i32> } 598 // CHECK-128-NEXT: %struct.struct_uint64m2 = type { <4 x i64> } 599 // CHECK-128-NEXT: %struct.struct_float32m2 = type { <8 x float> } 600 // CHECK-128-NEXT: %struct.struct_float64m2 = type { <4 x double> } 601 // CHECK-128-NEXT: %struct.struct_int8m4 = type { <64 x i8> } 602 // CHECK-128-NEXT: %struct.struct_int16m4 = type { <32 x i16> } 603 // CHECK-128-NEXT: %struct.struct_int32m4 = type { <16 x i32> } 604 // CHECK-128-NEXT: %struct.struct_int64m4 = type { <8 x i64> } 605 // CHECK-128-NEXT: %struct.struct_uint8m4 = type { <64 x i8> } 606 // CHECK-128-NEXT: %struct.struct_uint16m4 = type { <32 x i16> } 607 // CHECK-128-NEXT: %struct.struct_uint32m4 = type { <16 x i32> } 608 // CHECK-128-NEXT: %struct.struct_uint64m4 = type { <8 x i64> } 609 // CHECK-128-NEXT: %struct.struct_float32m4 = type { <16 x float> } 610 // CHECK-128-NEXT: %struct.struct_float64m4 = type { <8 x double> } 611 // CHECK-128-NEXT: %struct.struct_int8m8 = type { <128 x i8> } 612 // CHECK-128-NEXT: %struct.struct_int16m8 = type { <64 x i16> } 613 // CHECK-128-NEXT: %struct.struct_int32m8 = type { <32 x i32> } 614 // CHECK-128-NEXT: %struct.struct_int64m8 = type { <16 x i64> } 615 // CHECK-128-NEXT: %struct.struct_uint8m8 = type { <128 x i8> } 616 // CHECK-128-NEXT: %struct.struct_uint16m8 = type { <64 x i16> } 617 // CHECK-128-NEXT: %struct.struct_uint32m8 = type { <32 x i32> } 618 // CHECK-128-NEXT: %struct.struct_uint64m8 = type { <16 x i64> } 619 // CHECK-128-NEXT: %struct.struct_float32m8 = type { <32 x float> } 620 // CHECK-128-NEXT: %struct.struct_float64m8 = type { <16 x double> } 621 // CHECK-128-NEXT: %struct.struct_bool1 = type { <16 x i8> } 622 // CHECK-128-NEXT: %struct.struct_bool2 = type { <8 x i8> } 623 // CHECK-128-NEXT: %struct.struct_bool4 = type { <4 x i8> } 624 // CHECK-128-NEXT: %struct.struct_bool8 = type { <2 x i8> } 625 // CHECK-128-NEXT: %struct.struct_bool16 = type { <1 x i8> } 626 // CHECK-128-NEXT: %struct.struct_bool32 = type { <1 x i8> } 627 // CHECK-128-NEXT: %struct.struct_bool64 = type { <1 x i8> } 628 629 // CHECK-256: %struct.struct_int8m1 = type { <32 x i8> } 630 // CHECK-256-NEXT: %struct.struct_int16m1 = type { <16 x i16> } 631 // CHECK-256-NEXT: %struct.struct_int32m1 = type { <8 x i32> } 632 // CHECK-256-NEXT: %struct.struct_int64m1 = type { <4 x i64> } 633 // CHECK-256-NEXT: %struct.struct_uint8m1 = type { <32 x i8> } 634 // CHECK-256-NEXT: %struct.struct_uint16m1 = type { <16 x i16> } 635 // CHECK-256-NEXT: %struct.struct_uint32m1 = type { <8 x i32> } 636 // CHECK-256-NEXT: %struct.struct_uint64m1 = type { <4 x i64> } 637 // CHECK-256-NEXT: %struct.struct_float32m1 = type { <8 x float> } 638 // CHECK-256-NEXT: %struct.struct_float64m1 = type { <4 x double> } 639 // CHECK-256-NEXT: %struct.struct_int8m2 = type { <64 x i8> } 640 // CHECK-256-NEXT: %struct.struct_int16m2 = type { <32 x i16> } 641 // CHECK-256-NEXT: %struct.struct_int32m2 = type { <16 x i32> } 642 // CHECK-256-NEXT: %struct.struct_int64m2 = type { <8 x i64> } 643 // CHECK-256-NEXT: %struct.struct_uint8m2 = type { <64 x i8> } 644 // CHECK-256-NEXT: %struct.struct_uint16m2 = type { <32 x i16> } 645 // CHECK-256-NEXT: %struct.struct_uint32m2 = type { <16 x i32> } 646 // CHECK-256-NEXT: %struct.struct_uint64m2 = type { <8 x i64> } 647 // CHECK-256-NEXT: %struct.struct_float32m2 = type { <16 x float> } 648 // CHECK-256-NEXT: %struct.struct_float64m2 = type { <8 x double> } 649 // CHECK-256-NEXT: %struct.struct_int8m4 = type { <128 x i8> } 650 // CHECK-256-NEXT: %struct.struct_int16m4 = type { <64 x i16> } 651 // CHECK-256-NEXT: %struct.struct_int32m4 = type { <32 x i32> } 652 // CHECK-256-NEXT: %struct.struct_int64m4 = type { <16 x i64> } 653 // CHECK-256-NEXT: %struct.struct_uint8m4 = type { <128 x i8> } 654 // CHECK-256-NEXT: %struct.struct_uint16m4 = type { <64 x i16> } 655 // CHECK-256-NEXT: %struct.struct_uint32m4 = type { <32 x i32> } 656 // CHECK-256-NEXT: %struct.struct_uint64m4 = type { <16 x i64> } 657 // CHECK-256-NEXT: %struct.struct_float32m4 = type { <32 x float> } 658 // CHECK-256-NEXT: %struct.struct_float64m4 = type { <16 x double> } 659 // CHECK-256-NEXT: %struct.struct_int8m8 = type { <256 x i8> } 660 // CHECK-256-NEXT: %struct.struct_int16m8 = type { <128 x i16> } 661 // CHECK-256-NEXT: %struct.struct_int32m8 = type { <64 x i32> } 662 // CHECK-256-NEXT: %struct.struct_int64m8 = type { <32 x i64> } 663 // CHECK-256-NEXT: %struct.struct_uint8m8 = type { <256 x i8> } 664 // CHECK-256-NEXT: %struct.struct_uint16m8 = type { <128 x i16> } 665 // CHECK-256-NEXT: %struct.struct_uint32m8 = type { <64 x i32> } 666 // CHECK-256-NEXT: %struct.struct_uint64m8 = type { <32 x i64> } 667 // CHECK-256-NEXT: %struct.struct_float32m8 = type { <64 x float> } 668 // CHECK-256-NEXT: %struct.struct_float64m8 = type { <32 x double> } 669 // CHECK-256-NEXT: %struct.struct_bool1 = type { <32 x i8> } 670 // CHECK-256-NEXT: %struct.struct_bool2 = type { <16 x i8> } 671 // CHECK-256-NEXT: %struct.struct_bool4 = type { <8 x i8> } 672 // CHECK-256-NEXT: %struct.struct_bool8 = type { <4 x i8> } 673 // CHECK-256-NEXT: %struct.struct_bool16 = type { <2 x i8> } 674 // CHECK-256-NEXT: %struct.struct_bool32 = type { <1 x i8> } 675 // CHECK-256-NEXT: %struct.struct_bool64 = type { <1 x i8> } 676 677 // CHECK-512: %struct.struct_int8m1 = type { <64 x i8> } 678 // CHECK-512-NEXT: %struct.struct_int16m1 = type { <32 x i16> } 679 // CHECK-512-NEXT: %struct.struct_int32m1 = type { <16 x i32> } 680 // CHECK-512-NEXT: %struct.struct_int64m1 = type { <8 x i64> } 681 // CHECK-512-NEXT: %struct.struct_uint8m1 = type { <64 x i8> } 682 // CHECK-512-NEXT: %struct.struct_uint16m1 = type { <32 x i16> } 683 // CHECK-512-NEXT: %struct.struct_uint32m1 = type { <16 x i32> } 684 // CHECK-512-NEXT: %struct.struct_uint64m1 = type { <8 x i64> } 685 // CHECK-512-NEXT: %struct.struct_float32m1 = type { <16 x float> } 686 // CHECK-512-NEXT: %struct.struct_float64m1 = type { <8 x double> } 687 // CHECK-512-NEXT: %struct.struct_int8m2 = type { <128 x i8> } 688 // CHECK-512-NEXT: %struct.struct_int16m2 = type { <64 x i16> } 689 // CHECK-512-NEXT: %struct.struct_int32m2 = type { <32 x i32> } 690 // CHECK-512-NEXT: %struct.struct_int64m2 = type { <16 x i64> } 691 // CHECK-512-NEXT: %struct.struct_uint8m2 = type { <128 x i8> } 692 // CHECK-512-NEXT: %struct.struct_uint16m2 = type { <64 x i16> } 693 // CHECK-512-NEXT: %struct.struct_uint32m2 = type { <32 x i32> } 694 // CHECK-512-NEXT: %struct.struct_uint64m2 = type { <16 x i64> } 695 // CHECK-512-NEXT: %struct.struct_float32m2 = type { <32 x float> } 696 // CHECK-512-NEXT: %struct.struct_float64m2 = type { <16 x double> } 697 // CHECK-512-NEXT: %struct.struct_int8m4 = type { <256 x i8> } 698 // CHECK-512-NEXT: %struct.struct_int16m4 = type { <128 x i16> } 699 // CHECK-512-NEXT: %struct.struct_int32m4 = type { <64 x i32> } 700 // CHECK-512-NEXT: %struct.struct_int64m4 = type { <32 x i64> } 701 // CHECK-512-NEXT: %struct.struct_uint8m4 = type { <256 x i8> } 702 // CHECK-512-NEXT: %struct.struct_uint16m4 = type { <128 x i16> } 703 // CHECK-512-NEXT: %struct.struct_uint32m4 = type { <64 x i32> } 704 // CHECK-512-NEXT: %struct.struct_uint64m4 = type { <32 x i64> } 705 // CHECK-512-NEXT: %struct.struct_float32m4 = type { <64 x float> } 706 // CHECK-512-NEXT: %struct.struct_float64m4 = type { <32 x double> } 707 // CHECK-512-NEXT: %struct.struct_int8m8 = type { <512 x i8> } 708 // CHECK-512-NEXT: %struct.struct_int16m8 = type { <256 x i16> } 709 // CHECK-512-NEXT: %struct.struct_int32m8 = type { <128 x i32> } 710 // CHECK-512-NEXT: %struct.struct_int64m8 = type { <64 x i64> } 711 // CHECK-512-NEXT: %struct.struct_uint8m8 = type { <512 x i8> } 712 // CHECK-512-NEXT: %struct.struct_uint16m8 = type { <256 x i16> } 713 // CHECK-512-NEXT: %struct.struct_uint32m8 = type { <128 x i32> } 714 // CHECK-512-NEXT: %struct.struct_uint64m8 = type { <64 x i64> } 715 // CHECK-512-NEXT: %struct.struct_float32m8 = type { <128 x float> } 716 // CHECK-512-NEXT: %struct.struct_float64m8 = type { <64 x double> } 717 // CHECK-512-NEXT: %struct.struct_bool1 = type { <64 x i8> } 718 // CHECK-512-NEXT: %struct.struct_bool2 = type { <32 x i8> } 719 // CHECK-512-NEXT: %struct.struct_bool4 = type { <16 x i8> } 720 // CHECK-512-NEXT: %struct.struct_bool8 = type { <8 x i8> } 721 // CHECK-512-NEXT: %struct.struct_bool16 = type { <4 x i8> } 722 // CHECK-512-NEXT: %struct.struct_bool32 = type { <2 x i8> } 723 // CHECK-512-NEXT: %struct.struct_bool64 = type { <1 x i8> } 724 725 // CHECK-1024: %struct.struct_int8m1 = type { <128 x i8> } 726 // CHECK-1024-NEXT: %struct.struct_int16m1 = type { <64 x i16> } 727 // CHECK-1024-NEXT: %struct.struct_int32m1 = type { <32 x i32> } 728 // CHECK-1024-NEXT: %struct.struct_int64m1 = type { <16 x i64> } 729 // CHECK-1024-NEXT: %struct.struct_uint8m1 = type { <128 x i8> } 730 // CHECK-1024-NEXT: %struct.struct_uint16m1 = type { <64 x i16> } 731 // CHECK-1024-NEXT: %struct.struct_uint32m1 = type { <32 x i32> } 732 // CHECK-1024-NEXT: %struct.struct_uint64m1 = type { <16 x i64> } 733 // CHECK-1024-NEXT: %struct.struct_float32m1 = type { <32 x float> } 734 // CHECK-1024-NEXT: %struct.struct_float64m1 = type { <16 x double> } 735 // CHECK-1024-NEXT: %struct.struct_int8m2 = type { <256 x i8> } 736 // CHECK-1024-NEXT: %struct.struct_int16m2 = type { <128 x i16> } 737 // CHECK-1024-NEXT: %struct.struct_int32m2 = type { <64 x i32> } 738 // CHECK-1024-NEXT: %struct.struct_int64m2 = type { <32 x i64> } 739 // CHECK-1024-NEXT: %struct.struct_uint8m2 = type { <256 x i8> } 740 // CHECK-1024-NEXT: %struct.struct_uint16m2 = type { <128 x i16> } 741 // CHECK-1024-NEXT: %struct.struct_uint32m2 = type { <64 x i32> } 742 // CHECK-1024-NEXT: %struct.struct_uint64m2 = type { <32 x i64> } 743 // CHECK-1024-NEXT: %struct.struct_float32m2 = type { <64 x float> } 744 // CHECK-1024-NEXT: %struct.struct_float64m2 = type { <32 x double> } 745 // CHECK-1024-NEXT: %struct.struct_int8m4 = type { <512 x i8> } 746 // CHECK-1024-NEXT: %struct.struct_int16m4 = type { <256 x i16> } 747 // CHECK-1024-NEXT: %struct.struct_int32m4 = type { <128 x i32> } 748 // CHECK-1024-NEXT: %struct.struct_int64m4 = type { <64 x i64> } 749 // CHECK-1024-NEXT: %struct.struct_uint8m4 = type { <512 x i8> } 750 // CHECK-1024-NEXT: %struct.struct_uint16m4 = type { <256 x i16> } 751 // CHECK-1024-NEXT: %struct.struct_uint32m4 = type { <128 x i32> } 752 // CHECK-1024-NEXT: %struct.struct_uint64m4 = type { <64 x i64> } 753 // CHECK-1024-NEXT: %struct.struct_float32m4 = type { <128 x float> } 754 // CHECK-1024-NEXT: %struct.struct_float64m4 = type { <64 x double> } 755 // CHECK-1024-NEXT: %struct.struct_int8m8 = type { <1024 x i8> } 756 // CHECK-1024-NEXT: %struct.struct_int16m8 = type { <512 x i16> } 757 // CHECK-1024-NEXT: %struct.struct_int32m8 = type { <256 x i32> } 758 // CHECK-1024-NEXT: %struct.struct_int64m8 = type { <128 x i64> } 759 // CHECK-1024-NEXT: %struct.struct_uint8m8 = type { <1024 x i8> } 760 // CHECK-1024-NEXT: %struct.struct_uint16m8 = type { <512 x i16> } 761 // CHECK-1024-NEXT: %struct.struct_uint32m8 = type { <256 x i32> } 762 // CHECK-1024-NEXT: %struct.struct_uint64m8 = type { <128 x i64> } 763 // CHECK-1024-NEXT: %struct.struct_float32m8 = type { <256 x float> } 764 // CHECK-1024-NEXT: %struct.struct_float64m8 = type { <128 x double> } 765 // CHECK-1024-NEXT: %struct.struct_bool1 = type { <128 x i8> } 766 // CHECK-1024-NEXT: %struct.struct_bool2 = type { <64 x i8> } 767 // CHECK-1024-NEXT: %struct.struct_bool4 = type { <32 x i8> } 768 // CHECK-1024-NEXT: %struct.struct_bool8 = type { <16 x i8> } 769 // CHECK-1024-NEXT: %struct.struct_bool16 = type { <8 x i8> } 770 // CHECK-1024-NEXT: %struct.struct_bool32 = type { <4 x i8> } 771 // CHECK-1024-NEXT: %struct.struct_bool64 = type { <2 x i8> } 772 773 // CHECK-64: %union.union_int8m1 = type { <8 x i8> } 774 // CHECK-64-NEXT: %union.union_int16m1 = type { <4 x i16> } 775 // CHECK-64-NEXT: %union.union_int32m1 = type { <2 x i32> } 776 // CHECK-64-NEXT: %union.union_int64m1 = type { <1 x i64> } 777 // CHECK-64-NEXT: %union.union_uint8m1 = type { <8 x i8> } 778 // CHECK-64-NEXT: %union.union_uint16m1 = type { <4 x i16> } 779 // CHECK-64-NEXT: %union.union_uint32m1 = type { <2 x i32> } 780 // CHECK-64-NEXT: %union.union_uint64m1 = type { <1 x i64> } 781 // CHECK-64-NEXT: %union.union_float32m1 = type { <2 x float> } 782 // CHECK-64-NEXT: %union.union_float64m1 = type { <1 x double> } 783 // CHECK-64-NEXT: %union.union_int8m2 = type { <16 x i8> } 784 // CHECK-64-NEXT: %union.union_int16m2 = type { <8 x i16> } 785 // CHECK-64-NEXT: %union.union_int32m2 = type { <4 x i32> } 786 // CHECK-64-NEXT: %union.union_int64m2 = type { <2 x i64> } 787 // CHECK-64-NEXT: %union.union_uint8m2 = type { <16 x i8> } 788 // CHECK-64-NEXT: %union.union_uint16m2 = type { <8 x i16> } 789 // CHECK-64-NEXT: %union.union_uint32m2 = type { <4 x i32> } 790 // CHECK-64-NEXT: %union.union_uint64m2 = type { <2 x i64> } 791 // CHECK-64-NEXT: %union.union_float32m2 = type { <4 x float> } 792 // CHECK-64-NEXT: %union.union_float64m2 = type { <2 x double> } 793 // CHECK-64-NEXT: %union.union_int8m4 = type { <32 x i8> } 794 // CHECK-64-NEXT: %union.union_int16m4 = type { <16 x i16> } 795 // CHECK-64-NEXT: %union.union_int32m4 = type { <8 x i32> } 796 // CHECK-64-NEXT: %union.union_int64m4 = type { <4 x i64> } 797 // CHECK-64-NEXT: %union.union_uint8m4 = type { <32 x i8> } 798 // CHECK-64-NEXT: %union.union_uint16m4 = type { <16 x i16> } 799 // CHECK-64-NEXT: %union.union_uint32m4 = type { <8 x i32> } 800 // CHECK-64-NEXT: %union.union_uint64m4 = type { <4 x i64> } 801 // CHECK-64-NEXT: %union.union_float32m4 = type { <8 x float> } 802 // CHECK-64-NEXT: %union.union_float64m4 = type { <4 x double> } 803 // CHECK-64-NEXT: %union.union_int8m8 = type { <64 x i8> } 804 // CHECK-64-NEXT: %union.union_int16m8 = type { <32 x i16> } 805 // CHECK-64-NEXT: %union.union_int32m8 = type { <16 x i32> } 806 // CHECK-64-NEXT: %union.union_int64m8 = type { <8 x i64> } 807 // CHECK-64-NEXT: %union.union_uint8m8 = type { <64 x i8> } 808 // CHECK-64-NEXT: %union.union_uint16m8 = type { <32 x i16> } 809 // CHECK-64-NEXT: %union.union_uint32m8 = type { <16 x i32> } 810 // CHECK-64-NEXT: %union.union_uint64m8 = type { <8 x i64> } 811 // CHECK-64-NEXT: %union.union_float32m8 = type { <16 x float> } 812 // CHECK-64-NEXT: %union.union_float64m8 = type { <8 x double> } 813 // CHECK-64-NEXT: %union.union_bool1 = type { <8 x i8> } 814 // CHECK-64-NEXT: %union.union_bool2 = type { <4 x i8> } 815 // CHECK-64-NEXT: %union.union_bool4 = type { <2 x i8> } 816 // CHECK-64-NEXT: %union.union_bool8 = type { <1 x i8> } 817 // CHECK-64-NEXT: %union.union_bool16 = type { <1 x i8> } 818 // CHECK-64-NEXT: %union.union_bool32 = type { <1 x i8> } 819 // CHECK-64-NEXT: %union.union_bool64 = type { <1 x i8> } 820 821 // CHECK-128: %union.union_int8m1 = type { <16 x i8> } 822 // CHECK-128-NEXT: %union.union_int16m1 = type { <8 x i16> } 823 // CHECK-128-NEXT: %union.union_int32m1 = type { <4 x i32> } 824 // CHECK-128-NEXT: %union.union_int64m1 = type { <2 x i64> } 825 // CHECK-128-NEXT: %union.union_uint8m1 = type { <16 x i8> } 826 // CHECK-128-NEXT: %union.union_uint16m1 = type { <8 x i16> } 827 // CHECK-128-NEXT: %union.union_uint32m1 = type { <4 x i32> } 828 // CHECK-128-NEXT: %union.union_uint64m1 = type { <2 x i64> } 829 // CHECK-128-NEXT: %union.union_float32m1 = type { <4 x float> } 830 // CHECK-128-NEXT: %union.union_float64m1 = type { <2 x double> } 831 // CHECK-128-NEXT: %union.union_int8m2 = type { <32 x i8> } 832 // CHECK-128-NEXT: %union.union_int16m2 = type { <16 x i16> } 833 // CHECK-128-NEXT: %union.union_int32m2 = type { <8 x i32> } 834 // CHECK-128-NEXT: %union.union_int64m2 = type { <4 x i64> } 835 // CHECK-128-NEXT: %union.union_uint8m2 = type { <32 x i8> } 836 // CHECK-128-NEXT: %union.union_uint16m2 = type { <16 x i16> } 837 // CHECK-128-NEXT: %union.union_uint32m2 = type { <8 x i32> } 838 // CHECK-128-NEXT: %union.union_uint64m2 = type { <4 x i64> } 839 // CHECK-128-NEXT: %union.union_float32m2 = type { <8 x float> } 840 // CHECK-128-NEXT: %union.union_float64m2 = type { <4 x double> } 841 // CHECK-128-NEXT: %union.union_int8m4 = type { <64 x i8> } 842 // CHECK-128-NEXT: %union.union_int16m4 = type { <32 x i16> } 843 // CHECK-128-NEXT: %union.union_int32m4 = type { <16 x i32> } 844 // CHECK-128-NEXT: %union.union_int64m4 = type { <8 x i64> } 845 // CHECK-128-NEXT: %union.union_uint8m4 = type { <64 x i8> } 846 // CHECK-128-NEXT: %union.union_uint16m4 = type { <32 x i16> } 847 // CHECK-128-NEXT: %union.union_uint32m4 = type { <16 x i32> } 848 // CHECK-128-NEXT: %union.union_uint64m4 = type { <8 x i64> } 849 // CHECK-128-NEXT: %union.union_float32m4 = type { <16 x float> } 850 // CHECK-128-NEXT: %union.union_float64m4 = type { <8 x double> } 851 // CHECK-128-NEXT: %union.union_int8m8 = type { <128 x i8> } 852 // CHECK-128-NEXT: %union.union_int16m8 = type { <64 x i16> } 853 // CHECK-128-NEXT: %union.union_int32m8 = type { <32 x i32> } 854 // CHECK-128-NEXT: %union.union_int64m8 = type { <16 x i64> } 855 // CHECK-128-NEXT: %union.union_uint8m8 = type { <128 x i8> } 856 // CHECK-128-NEXT: %union.union_uint16m8 = type { <64 x i16> } 857 // CHECK-128-NEXT: %union.union_uint32m8 = type { <32 x i32> } 858 // CHECK-128-NEXT: %union.union_uint64m8 = type { <16 x i64> } 859 // CHECK-128-NEXT: %union.union_float32m8 = type { <32 x float> } 860 // CHECK-128-NEXT: %union.union_float64m8 = type { <16 x double> } 861 // CHECK-128-NEXT: %union.union_bool1 = type { <16 x i8> } 862 // CHECK-128-NEXT: %union.union_bool2 = type { <8 x i8> } 863 // CHECK-128-NEXT: %union.union_bool4 = type { <4 x i8> } 864 // CHECK-128-NEXT: %union.union_bool8 = type { <2 x i8> } 865 // CHECK-128-NEXT: %union.union_bool16 = type { <1 x i8> } 866 // CHECK-128-NEXT: %union.union_bool32 = type { <1 x i8> } 867 // CHECK-128-NEXT: %union.union_bool64 = type { <1 x i8> } 868 869 // CHECK-256: %union.union_int8m1 = type { <32 x i8> } 870 // CHECK-256-NEXT: %union.union_int16m1 = type { <16 x i16> } 871 // CHECK-256-NEXT: %union.union_int32m1 = type { <8 x i32> } 872 // CHECK-256-NEXT: %union.union_int64m1 = type { <4 x i64> } 873 // CHECK-256-NEXT: %union.union_uint8m1 = type { <32 x i8> } 874 // CHECK-256-NEXT: %union.union_uint16m1 = type { <16 x i16> } 875 // CHECK-256-NEXT: %union.union_uint32m1 = type { <8 x i32> } 876 // CHECK-256-NEXT: %union.union_uint64m1 = type { <4 x i64> } 877 // CHECK-256-NEXT: %union.union_float32m1 = type { <8 x float> } 878 // CHECK-256-NEXT: %union.union_float64m1 = type { <4 x double> } 879 // CHECK-256-NEXT: %union.union_int8m2 = type { <64 x i8> } 880 // CHECK-256-NEXT: %union.union_int16m2 = type { <32 x i16> } 881 // CHECK-256-NEXT: %union.union_int32m2 = type { <16 x i32> } 882 // CHECK-256-NEXT: %union.union_int64m2 = type { <8 x i64> } 883 // CHECK-256-NEXT: %union.union_uint8m2 = type { <64 x i8> } 884 // CHECK-256-NEXT: %union.union_uint16m2 = type { <32 x i16> } 885 // CHECK-256-NEXT: %union.union_uint32m2 = type { <16 x i32> } 886 // CHECK-256-NEXT: %union.union_uint64m2 = type { <8 x i64> } 887 // CHECK-256-NEXT: %union.union_float32m2 = type { <16 x float> } 888 // CHECK-256-NEXT: %union.union_float64m2 = type { <8 x double> } 889 // CHECK-256-NEXT: %union.union_int8m4 = type { <128 x i8> } 890 // CHECK-256-NEXT: %union.union_int16m4 = type { <64 x i16> } 891 // CHECK-256-NEXT: %union.union_int32m4 = type { <32 x i32> } 892 // CHECK-256-NEXT: %union.union_int64m4 = type { <16 x i64> } 893 // CHECK-256-NEXT: %union.union_uint8m4 = type { <128 x i8> } 894 // CHECK-256-NEXT: %union.union_uint16m4 = type { <64 x i16> } 895 // CHECK-256-NEXT: %union.union_uint32m4 = type { <32 x i32> } 896 // CHECK-256-NEXT: %union.union_uint64m4 = type { <16 x i64> } 897 // CHECK-256-NEXT: %union.union_float32m4 = type { <32 x float> } 898 // CHECK-256-NEXT: %union.union_float64m4 = type { <16 x double> } 899 // CHECK-256-NEXT: %union.union_int8m8 = type { <256 x i8> } 900 // CHECK-256-NEXT: %union.union_int16m8 = type { <128 x i16> } 901 // CHECK-256-NEXT: %union.union_int32m8 = type { <64 x i32> } 902 // CHECK-256-NEXT: %union.union_int64m8 = type { <32 x i64> } 903 // CHECK-256-NEXT: %union.union_uint8m8 = type { <256 x i8> } 904 // CHECK-256-NEXT: %union.union_uint16m8 = type { <128 x i16> } 905 // CHECK-256-NEXT: %union.union_uint32m8 = type { <64 x i32> } 906 // CHECK-256-NEXT: %union.union_uint64m8 = type { <32 x i64> } 907 // CHECK-256-NEXT: %union.union_float32m8 = type { <64 x float> } 908 // CHECK-256-NEXT: %union.union_float64m8 = type { <32 x double> } 909 // CHECK-256-NEXT: %union.union_bool1 = type { <32 x i8> } 910 // CHECK-256-NEXT: %union.union_bool2 = type { <16 x i8> } 911 // CHECK-256-NEXT: %union.union_bool4 = type { <8 x i8> } 912 // CHECK-256-NEXT: %union.union_bool8 = type { <4 x i8> } 913 // CHECK-256-NEXT: %union.union_bool16 = type { <2 x i8> } 914 // CHECK-256-NEXT: %union.union_bool32 = type { <1 x i8> } 915 // CHECK-256-NEXT: %union.union_bool64 = type { <1 x i8> } 916 917 // CHECK-512: %union.union_int8m1 = type { <64 x i8> } 918 // CHECK-512-NEXT: %union.union_int16m1 = type { <32 x i16> } 919 // CHECK-512-NEXT: %union.union_int32m1 = type { <16 x i32> } 920 // CHECK-512-NEXT: %union.union_int64m1 = type { <8 x i64> } 921 // CHECK-512-NEXT: %union.union_uint8m1 = type { <64 x i8> } 922 // CHECK-512-NEXT: %union.union_uint16m1 = type { <32 x i16> } 923 // CHECK-512-NEXT: %union.union_uint32m1 = type { <16 x i32> } 924 // CHECK-512-NEXT: %union.union_uint64m1 = type { <8 x i64> } 925 // CHECK-512-NEXT: %union.union_float32m1 = type { <16 x float> } 926 // CHECK-512-NEXT: %union.union_float64m1 = type { <8 x double> } 927 // CHECK-512-NEXT: %union.union_int8m2 = type { <128 x i8> } 928 // CHECK-512-NEXT: %union.union_int16m2 = type { <64 x i16> } 929 // CHECK-512-NEXT: %union.union_int32m2 = type { <32 x i32> } 930 // CHECK-512-NEXT: %union.union_int64m2 = type { <16 x i64> } 931 // CHECK-512-NEXT: %union.union_uint8m2 = type { <128 x i8> } 932 // CHECK-512-NEXT: %union.union_uint16m2 = type { <64 x i16> } 933 // CHECK-512-NEXT: %union.union_uint32m2 = type { <32 x i32> } 934 // CHECK-512-NEXT: %union.union_uint64m2 = type { <16 x i64> } 935 // CHECK-512-NEXT: %union.union_float32m2 = type { <32 x float> } 936 // CHECK-512-NEXT: %union.union_float64m2 = type { <16 x double> } 937 // CHECK-512-NEXT: %union.union_int8m4 = type { <256 x i8> } 938 // CHECK-512-NEXT: %union.union_int16m4 = type { <128 x i16> } 939 // CHECK-512-NEXT: %union.union_int32m4 = type { <64 x i32> } 940 // CHECK-512-NEXT: %union.union_int64m4 = type { <32 x i64> } 941 // CHECK-512-NEXT: %union.union_uint8m4 = type { <256 x i8> } 942 // CHECK-512-NEXT: %union.union_uint16m4 = type { <128 x i16> } 943 // CHECK-512-NEXT: %union.union_uint32m4 = type { <64 x i32> } 944 // CHECK-512-NEXT: %union.union_uint64m4 = type { <32 x i64> } 945 // CHECK-512-NEXT: %union.union_float32m4 = type { <64 x float> } 946 // CHECK-512-NEXT: %union.union_float64m4 = type { <32 x double> } 947 // CHECK-512-NEXT: %union.union_int8m8 = type { <512 x i8> } 948 // CHECK-512-NEXT: %union.union_int16m8 = type { <256 x i16> } 949 // CHECK-512-NEXT: %union.union_int32m8 = type { <128 x i32> } 950 // CHECK-512-NEXT: %union.union_int64m8 = type { <64 x i64> } 951 // CHECK-512-NEXT: %union.union_uint8m8 = type { <512 x i8> } 952 // CHECK-512-NEXT: %union.union_uint16m8 = type { <256 x i16> } 953 // CHECK-512-NEXT: %union.union_uint32m8 = type { <128 x i32> } 954 // CHECK-512-NEXT: %union.union_uint64m8 = type { <64 x i64> } 955 // CHECK-512-NEXT: %union.union_float32m8 = type { <128 x float> } 956 // CHECK-512-NEXT: %union.union_float64m8 = type { <64 x double> } 957 // CHECK-512-NEXT: %union.union_bool1 = type { <64 x i8> } 958 // CHECK-512-NEXT: %union.union_bool2 = type { <32 x i8> } 959 // CHECK-512-NEXT: %union.union_bool4 = type { <16 x i8> } 960 // CHECK-512-NEXT: %union.union_bool8 = type { <8 x i8> } 961 // CHECK-512-NEXT: %union.union_bool16 = type { <4 x i8> } 962 // CHECK-512-NEXT: %union.union_bool32 = type { <2 x i8> } 963 // CHECK-512-NEXT: %union.union_bool64 = type { <1 x i8> } 964 965 // CHECK-1024: %union.union_int8m1 = type { <128 x i8> } 966 // CHECK-1024-NEXT: %union.union_int16m1 = type { <64 x i16> } 967 // CHECK-1024-NEXT: %union.union_int32m1 = type { <32 x i32> } 968 // CHECK-1024-NEXT: %union.union_int64m1 = type { <16 x i64> } 969 // CHECK-1024-NEXT: %union.union_uint8m1 = type { <128 x i8> } 970 // CHECK-1024-NEXT: %union.union_uint16m1 = type { <64 x i16> } 971 // CHECK-1024-NEXT: %union.union_uint32m1 = type { <32 x i32> } 972 // CHECK-1024-NEXT: %union.union_uint64m1 = type { <16 x i64> } 973 // CHECK-1024-NEXT: %union.union_float32m1 = type { <32 x float> } 974 // CHECK-1024-NEXT: %union.union_float64m1 = type { <16 x double> } 975 // CHECK-1024-NEXT: %union.union_int8m2 = type { <256 x i8> } 976 // CHECK-1024-NEXT: %union.union_int16m2 = type { <128 x i16> } 977 // CHECK-1024-NEXT: %union.union_int32m2 = type { <64 x i32> } 978 // CHECK-1024-NEXT: %union.union_int64m2 = type { <32 x i64> } 979 // CHECK-1024-NEXT: %union.union_uint8m2 = type { <256 x i8> } 980 // CHECK-1024-NEXT: %union.union_uint16m2 = type { <128 x i16> } 981 // CHECK-1024-NEXT: %union.union_uint32m2 = type { <64 x i32> } 982 // CHECK-1024-NEXT: %union.union_uint64m2 = type { <32 x i64> } 983 // CHECK-1024-NEXT: %union.union_float32m2 = type { <64 x float> } 984 // CHECK-1024-NEXT: %union.union_float64m2 = type { <32 x double> } 985 // CHECK-1024-NEXT: %union.union_int8m4 = type { <512 x i8> } 986 // CHECK-1024-NEXT: %union.union_int16m4 = type { <256 x i16> } 987 // CHECK-1024-NEXT: %union.union_int32m4 = type { <128 x i32> } 988 // CHECK-1024-NEXT: %union.union_int64m4 = type { <64 x i64> } 989 // CHECK-1024-NEXT: %union.union_uint8m4 = type { <512 x i8> } 990 // CHECK-1024-NEXT: %union.union_uint16m4 = type { <256 x i16> } 991 // CHECK-1024-NEXT: %union.union_uint32m4 = type { <128 x i32> } 992 // CHECK-1024-NEXT: %union.union_uint64m4 = type { <64 x i64> } 993 // CHECK-1024-NEXT: %union.union_float32m4 = type { <128 x float> } 994 // CHECK-1024-NEXT: %union.union_float64m4 = type { <64 x double> } 995 // CHECK-1024-NEXT: %union.union_int8m8 = type { <1024 x i8> } 996 // CHECK-1024-NEXT: %union.union_int16m8 = type { <512 x i16> } 997 // CHECK-1024-NEXT: %union.union_int32m8 = type { <256 x i32> } 998 // CHECK-1024-NEXT: %union.union_int64m8 = type { <128 x i64> } 999 // CHECK-1024-NEXT: %union.union_uint8m8 = type { <1024 x i8> } 1000 // CHECK-1024-NEXT: %union.union_uint16m8 = type { <512 x i16> } 1001 // CHECK-1024-NEXT: %union.union_uint32m8 = type { <256 x i32> } 1002 // CHECK-1024-NEXT: %union.union_uint64m8 = type { <128 x i64> } 1003 // CHECK-1024-NEXT: %union.union_float32m8 = type { <256 x float> } 1004 // CHECK-1024-NEXT: %union.union_float64m8 = type { <128 x double> } 1005 // CHECK-1024-NEXT: %union.union_bool1 = type { <128 x i8> } 1006 // CHECK-1024-NEXT: %union.union_bool2 = type { <64 x i8> } 1007 // CHECK-1024-NEXT: %union.union_bool4 = type { <32 x i8> } 1008 // CHECK-1024-NEXT: %union.union_bool8 = type { <16 x i8> } 1009 // CHECK-1024-NEXT: %union.union_bool16 = type { <8 x i8> } 1010 // CHECK-1024-NEXT: %union.union_bool32 = type { <4 x i8> } 1011 // CHECK-1024-NEXT: %union.union_bool64 = type { <2 x i8> } 1012 1013 //===----------------------------------------------------------------------===// 1014 // Global variables 1015 //===----------------------------------------------------------------------===// 1016 // CHECK-64: @global_i8 ={{.*}} global <8 x i8> zeroinitializer, align 8 1017 // CHECK-64-NEXT: @global_i16 ={{.*}} global <4 x i16> zeroinitializer, align 8 1018 // CHECK-64-NEXT: @global_i32 ={{.*}} global <2 x i32> zeroinitializer, align 8 1019 // CHECK-64-NEXT: @global_i64 ={{.*}} global <1 x i64> zeroinitializer, align 8 1020 // CHECK-64-NEXT: @global_u8 ={{.*}} global <8 x i8> zeroinitializer, align 8 1021 // CHECK-64-NEXT: @global_u16 ={{.*}} global <4 x i16> zeroinitializer, align 8 1022 // CHECK-64-NEXT: @global_u32 ={{.*}} global <2 x i32> zeroinitializer, align 8 1023 // CHECK-64-NEXT: @global_u64 ={{.*}} global <1 x i64> zeroinitializer, align 8 1024 // CHECK-64-NEXT: @global_f32 ={{.*}} global <2 x float> zeroinitializer, align 8 1025 // CHECK-64-NEXT: @global_f64 ={{.*}} global <1 x double> zeroinitializer, align 8 1026 // CHECK-64-NEXT: @global_i8m2 ={{.*}} global <16 x i8> zeroinitializer, align 8 1027 // CHECK-64-NEXT: @global_i16m2 ={{.*}} global <8 x i16> zeroinitializer, align 8 1028 // CHECK-64-NEXT: @global_i32m2 ={{.*}} global <4 x i32> zeroinitializer, align 8 1029 // CHECK-64-NEXT: @global_i64m2 ={{.*}} global <2 x i64> zeroinitializer, align 8 1030 // CHECK-64-NEXT: @global_u8m2 ={{.*}} global <16 x i8> zeroinitializer, align 8 1031 // CHECK-64-NEXT: @global_u16m2 ={{.*}} global <8 x i16> zeroinitializer, align 8 1032 // CHECK-64-NEXT: @global_u32m2 ={{.*}} global <4 x i32> zeroinitializer, align 8 1033 // CHECK-64-NEXT: @global_u64m2 ={{.*}} global <2 x i64> zeroinitializer, align 8 1034 // CHECK-64-NEXT: @global_f32m2 ={{.*}} global <4 x float> zeroinitializer, align 8 1035 // CHECK-64-NEXT: @global_f64m2 ={{.*}} global <2 x double> zeroinitializer, align 8 1036 // CHECK-64-NEXT: @global_i8m4 ={{.*}} global <32 x i8> zeroinitializer, align 8 1037 // CHECK-64-NEXT: @global_i16m4 ={{.*}} global <16 x i16> zeroinitializer, align 8 1038 // CHECK-64-NEXT: @global_i32m4 ={{.*}} global <8 x i32> zeroinitializer, align 8 1039 // CHECK-64-NEXT: @global_i64m4 ={{.*}} global <4 x i64> zeroinitializer, align 8 1040 // CHECK-64-NEXT: @global_u8m4 ={{.*}} global <32 x i8> zeroinitializer, align 8 1041 // CHECK-64-NEXT: @global_u16m4 ={{.*}} global <16 x i16> zeroinitializer, align 8 1042 // CHECK-64-NEXT: @global_u32m4 ={{.*}} global <8 x i32> zeroinitializer, align 8 1043 // CHECK-64-NEXT: @global_u64m4 ={{.*}} global <4 x i64> zeroinitializer, align 8 1044 // CHECK-64-NEXT: @global_f32m4 ={{.*}} global <8 x float> zeroinitializer, align 8 1045 // CHECK-64-NEXT: @global_f64m4 ={{.*}} global <4 x double> zeroinitializer, align 8 1046 // CHECK-64-NEXT: @global_i8m8 ={{.*}} global <64 x i8> zeroinitializer, align 8 1047 // CHECK-64-NEXT: @global_i16m8 ={{.*}} global <32 x i16> zeroinitializer, align 8 1048 // CHECK-64-NEXT: @global_i32m8 ={{.*}} global <16 x i32> zeroinitializer, align 8 1049 // CHECK-64-NEXT: @global_i64m8 ={{.*}} global <8 x i64> zeroinitializer, align 8 1050 // CHECK-64-NEXT: @global_u8m8 ={{.*}} global <64 x i8> zeroinitializer, align 8 1051 // CHECK-64-NEXT: @global_u16m8 ={{.*}} global <32 x i16> zeroinitializer, align 8 1052 // CHECK-64-NEXT: @global_u32m8 ={{.*}} global <16 x i32> zeroinitializer, align 8 1053 // CHECK-64-NEXT: @global_u64m8 ={{.*}} global <8 x i64> zeroinitializer, align 8 1054 // CHECK-64-NEXT: @global_f32m8 ={{.*}} global <16 x float> zeroinitializer, align 8 1055 // CHECK-64-NEXT: @global_f64m8 ={{.*}} global <8 x double> zeroinitializer, align 8 1056 // CHECK-64-NEXT: @global_bool1 ={{.*}} global <8 x i8> zeroinitializer, align 8 1057 // CHECK-64-NEXT: @global_bool2 ={{.*}} global <4 x i8> zeroinitializer, align 4 1058 // CHECK-64-NEXT: @global_bool4 ={{.*}} global <2 x i8> zeroinitializer, align 2 1059 // CHECK-64-NEXT: @global_bool8 ={{.*}} global <1 x i8> zeroinitializer, align 1 1060 // CHECK-64-NEXT: @global_bool16 ={{.*}} global <1 x i8> zeroinitializer, align 1 1061 // CHECK-64-NEXT: @global_bool32 ={{.*}} global <1 x i8> zeroinitializer, align 1 1062 // CHECK-64-NEXT: @global_bool64 ={{.*}} global <1 x i8> zeroinitializer, align 1 1063 1064 // CHECK-128: @global_i8 ={{.*}} global <16 x i8> zeroinitializer, align 8 1065 // CHECK-128-NEXT: @global_i16 ={{.*}} global <8 x i16> zeroinitializer, align 8 1066 // CHECK-128-NEXT: @global_i32 ={{.*}} global <4 x i32> zeroinitializer, align 8 1067 // CHECK-128-NEXT: @global_i64 ={{.*}} global <2 x i64> zeroinitializer, align 8 1068 // CHECK-128-NEXT: @global_u8 ={{.*}} global <16 x i8> zeroinitializer, align 8 1069 // CHECK-128-NEXT: @global_u16 ={{.*}} global <8 x i16> zeroinitializer, align 8 1070 // CHECK-128-NEXT: @global_u32 ={{.*}} global <4 x i32> zeroinitializer, align 8 1071 // CHECK-128-NEXT: @global_u64 ={{.*}} global <2 x i64> zeroinitializer, align 8 1072 // CHECK-128-NEXT: @global_f32 ={{.*}} global <4 x float> zeroinitializer, align 8 1073 // CHECK-128-NEXT: @global_f64 ={{.*}} global <2 x double> zeroinitializer, align 8 1074 // CHECK-128-NEXT: @global_i8m2 ={{.*}} global <32 x i8> zeroinitializer, align 8 1075 // CHECK-128-NEXT: @global_i16m2 ={{.*}} global <16 x i16> zeroinitializer, align 8 1076 // CHECK-128-NEXT: @global_i32m2 ={{.*}} global <8 x i32> zeroinitializer, align 8 1077 // CHECK-128-NEXT: @global_i64m2 ={{.*}} global <4 x i64> zeroinitializer, align 8 1078 // CHECK-128-NEXT: @global_u8m2 ={{.*}} global <32 x i8> zeroinitializer, align 8 1079 // CHECK-128-NEXT: @global_u16m2 ={{.*}} global <16 x i16> zeroinitializer, align 8 1080 // CHECK-128-NEXT: @global_u32m2 ={{.*}} global <8 x i32> zeroinitializer, align 8 1081 // CHECK-128-NEXT: @global_u64m2 ={{.*}} global <4 x i64> zeroinitializer, align 8 1082 // CHECK-128-NEXT: @global_f32m2 ={{.*}} global <8 x float> zeroinitializer, align 8 1083 // CHECK-128-NEXT: @global_f64m2 ={{.*}} global <4 x double> zeroinitializer, align 8 1084 // CHECK-128-NEXT: @global_i8m4 ={{.*}} global <64 x i8> zeroinitializer, align 8 1085 // CHECK-128-NEXT: @global_i16m4 ={{.*}} global <32 x i16> zeroinitializer, align 8 1086 // CHECK-128-NEXT: @global_i32m4 ={{.*}} global <16 x i32> zeroinitializer, align 8 1087 // CHECK-128-NEXT: @global_i64m4 ={{.*}} global <8 x i64> zeroinitializer, align 8 1088 // CHECK-128-NEXT: @global_u8m4 ={{.*}} global <64 x i8> zeroinitializer, align 8 1089 // CHECK-128-NEXT: @global_u16m4 ={{.*}} global <32 x i16> zeroinitializer, align 8 1090 // CHECK-128-NEXT: @global_u32m4 ={{.*}} global <16 x i32> zeroinitializer, align 8 1091 // CHECK-128-NEXT: @global_u64m4 ={{.*}} global <8 x i64> zeroinitializer, align 8 1092 // CHECK-128-NEXT: @global_f32m4 ={{.*}} global <16 x float> zeroinitializer, align 8 1093 // CHECK-128-NEXT: @global_f64m4 ={{.*}} global <8 x double> zeroinitializer, align 8 1094 // CHECK-128-NEXT: @global_i8m8 ={{.*}} global <128 x i8> zeroinitializer, align 8 1095 // CHECK-128-NEXT: @global_i16m8 ={{.*}} global <64 x i16> zeroinitializer, align 8 1096 // CHECK-128-NEXT: @global_i32m8 ={{.*}} global <32 x i32> zeroinitializer, align 8 1097 // CHECK-128-NEXT: @global_i64m8 ={{.*}} global <16 x i64> zeroinitializer, align 8 1098 // CHECK-128-NEXT: @global_u8m8 ={{.*}} global <128 x i8> zeroinitializer, align 8 1099 // CHECK-128-NEXT: @global_u16m8 ={{.*}} global <64 x i16> zeroinitializer, align 8 1100 // CHECK-128-NEXT: @global_u32m8 ={{.*}} global <32 x i32> zeroinitializer, align 8 1101 // CHECK-128-NEXT: @global_u64m8 ={{.*}} global <16 x i64> zeroinitializer, align 8 1102 // CHECK-128-NEXT: @global_f32m8 ={{.*}} global <32 x float> zeroinitializer, align 8 1103 // CHECK-128-NEXT: @global_f64m8 ={{.*}} global <16 x double> zeroinitializer, align 8 1104 // CHECK-128-NEXT: @global_bool1 ={{.*}} global <16 x i8> zeroinitializer, align 8 1105 // CHECK-128-NEXT: @global_bool2 ={{.*}} global <8 x i8> zeroinitializer, align 8 1106 // CHECK-128-NEXT: @global_bool4 ={{.*}} global <4 x i8> zeroinitializer, align 4 1107 // CHECK-128-NEXT: @global_bool8 ={{.*}} global <2 x i8> zeroinitializer, align 2 1108 // CHECK-128-NEXT: @global_bool16 ={{.*}} global <1 x i8> zeroinitializer, align 1 1109 // CHECK-128-NEXT: @global_bool32 ={{.*}} global <1 x i8> zeroinitializer, align 1 1110 // CHECK-128-NEXT: @global_bool64 ={{.*}} global <1 x i8> zeroinitializer, align 1 1111 1112 // CHECK-256: @global_i8 ={{.*}} global <32 x i8> zeroinitializer, align 8 1113 // CHECK-256-NEXT: @global_i16 ={{.*}} global <16 x i16> zeroinitializer, align 8 1114 // CHECK-256-NEXT: @global_i32 ={{.*}} global <8 x i32> zeroinitializer, align 8 1115 // CHECK-256-NEXT: @global_i64 ={{.*}} global <4 x i64> zeroinitializer, align 8 1116 // CHECK-256-NEXT: @global_u8 ={{.*}} global <32 x i8> zeroinitializer, align 8 1117 // CHECK-256-NEXT: @global_u16 ={{.*}} global <16 x i16> zeroinitializer, align 8 1118 // CHECK-256-NEXT: @global_u32 ={{.*}} global <8 x i32> zeroinitializer, align 8 1119 // CHECK-256-NEXT: @global_u64 ={{.*}} global <4 x i64> zeroinitializer, align 8 1120 // CHECK-256-NEXT: @global_f32 ={{.*}} global <8 x float> zeroinitializer, align 8 1121 // CHECK-256-NEXT: @global_f64 ={{.*}} global <4 x double> zeroinitializer, align 8 1122 // CHECK-256-NEXT: @global_i8m2 ={{.*}} global <64 x i8> zeroinitializer, align 8 1123 // CHECK-256-NEXT: @global_i16m2 ={{.*}} global <32 x i16> zeroinitializer, align 8 1124 // CHECK-256-NEXT: @global_i32m2 ={{.*}} global <16 x i32> zeroinitializer, align 8 1125 // CHECK-256-NEXT: @global_i64m2 ={{.*}} global <8 x i64> zeroinitializer, align 8 1126 // CHECK-256-NEXT: @global_u8m2 ={{.*}} global <64 x i8> zeroinitializer, align 8 1127 // CHECK-256-NEXT: @global_u16m2 ={{.*}} global <32 x i16> zeroinitializer, align 8 1128 // CHECK-256-NEXT: @global_u32m2 ={{.*}} global <16 x i32> zeroinitializer, align 8 1129 // CHECK-256-NEXT: @global_u64m2 ={{.*}} global <8 x i64> zeroinitializer, align 8 1130 // CHECK-256-NEXT: @global_f32m2 ={{.*}} global <16 x float> zeroinitializer, align 8 1131 // CHECK-256-NEXT: @global_f64m2 ={{.*}} global <8 x double> zeroinitializer, align 8 1132 // CHECK-256-NEXT: @global_i8m4 ={{.*}} global <128 x i8> zeroinitializer, align 8 1133 // CHECK-256-NEXT: @global_i16m4 ={{.*}} global <64 x i16> zeroinitializer, align 8 1134 // CHECK-256-NEXT: @global_i32m4 ={{.*}} global <32 x i32> zeroinitializer, align 8 1135 // CHECK-256-NEXT: @global_i64m4 ={{.*}} global <16 x i64> zeroinitializer, align 8 1136 // CHECK-256-NEXT: @global_u8m4 ={{.*}} global <128 x i8> zeroinitializer, align 8 1137 // CHECK-256-NEXT: @global_u16m4 ={{.*}} global <64 x i16> zeroinitializer, align 8 1138 // CHECK-256-NEXT: @global_u32m4 ={{.*}} global <32 x i32> zeroinitializer, align 8 1139 // CHECK-256-NEXT: @global_u64m4 ={{.*}} global <16 x i64> zeroinitializer, align 8 1140 // CHECK-256-NEXT: @global_f32m4 ={{.*}} global <32 x float> zeroinitializer, align 8 1141 // CHECK-256-NEXT: @global_f64m4 ={{.*}} global <16 x double> zeroinitializer, align 8 1142 // CHECK-256-NEXT: @global_i8m8 ={{.*}} global <256 x i8> zeroinitializer, align 8 1143 // CHECK-256-NEXT: @global_i16m8 ={{.*}} global <128 x i16> zeroinitializer, align 8 1144 // CHECK-256-NEXT: @global_i32m8 ={{.*}} global <64 x i32> zeroinitializer, align 8 1145 // CHECK-256-NEXT: @global_i64m8 ={{.*}} global <32 x i64> zeroinitializer, align 8 1146 // CHECK-256-NEXT: @global_u8m8 ={{.*}} global <256 x i8> zeroinitializer, align 8 1147 // CHECK-256-NEXT: @global_u16m8 ={{.*}} global <128 x i16> zeroinitializer, align 8 1148 // CHECK-256-NEXT: @global_u32m8 ={{.*}} global <64 x i32> zeroinitializer, align 8 1149 // CHECK-256-NEXT: @global_u64m8 ={{.*}} global <32 x i64> zeroinitializer, align 8 1150 // CHECK-256-NEXT: @global_f32m8 ={{.*}} global <64 x float> zeroinitializer, align 8 1151 // CHECK-256-NEXT: @global_f64m8 ={{.*}} global <32 x double> zeroinitializer, align 8 1152 // CHECK-256-NEXT: @global_bool1 ={{.*}} global <32 x i8> zeroinitializer, align 8 1153 // CHECK-256-NEXT: @global_bool2 ={{.*}} global <16 x i8> zeroinitializer, align 8 1154 // CHECK-256-NEXT: @global_bool4 ={{.*}} global <8 x i8> zeroinitializer, align 8 1155 // CHECK-256-NEXT: @global_bool8 ={{.*}} global <4 x i8> zeroinitializer, align 4 1156 // CHECK-256-NEXT: @global_bool16 ={{.*}} global <2 x i8> zeroinitializer, align 2 1157 // CHECK-256-NEXT: @global_bool32 ={{.*}} global <1 x i8> zeroinitializer, align 1 1158 // CHECK-256-NEXT: @global_bool64 ={{.*}} global <1 x i8> zeroinitializer, align 1 1159 1160 // CHECK-512: @global_i8 ={{.*}} global <64 x i8> zeroinitializer, align 8 1161 // CHECK-512-NEXT: @global_i16 ={{.*}} global <32 x i16> zeroinitializer, align 8 1162 // CHECK-512-NEXT: @global_i32 ={{.*}} global <16 x i32> zeroinitializer, align 8 1163 // CHECK-512-NEXT: @global_i64 ={{.*}} global <8 x i64> zeroinitializer, align 8 1164 // CHECK-512-NEXT: @global_u8 ={{.*}} global <64 x i8> zeroinitializer, align 8 1165 // CHECK-512-NEXT: @global_u16 ={{.*}} global <32 x i16> zeroinitializer, align 8 1166 // CHECK-512-NEXT: @global_u32 ={{.*}} global <16 x i32> zeroinitializer, align 8 1167 // CHECK-512-NEXT: @global_u64 ={{.*}} global <8 x i64> zeroinitializer, align 8 1168 // CHECK-512-NEXT: @global_f32 ={{.*}} global <16 x float> zeroinitializer, align 8 1169 // CHECK-512-NEXT: @global_f64 ={{.*}} global <8 x double> zeroinitializer, align 8 1170 // CHECK-512-NEXT: @global_i8m2 ={{.*}} global <128 x i8> zeroinitializer, align 8 1171 // CHECK-512-NEXT: @global_i16m2 ={{.*}} global <64 x i16> zeroinitializer, align 8 1172 // CHECK-512-NEXT: @global_i32m2 ={{.*}} global <32 x i32> zeroinitializer, align 8 1173 // CHECK-512-NEXT: @global_i64m2 ={{.*}} global <16 x i64> zeroinitializer, align 8 1174 // CHECK-512-NEXT: @global_u8m2 ={{.*}} global <128 x i8> zeroinitializer, align 8 1175 // CHECK-512-NEXT: @global_u16m2 ={{.*}} global <64 x i16> zeroinitializer, align 8 1176 // CHECK-512-NEXT: @global_u32m2 ={{.*}} global <32 x i32> zeroinitializer, align 8 1177 // CHECK-512-NEXT: @global_u64m2 ={{.*}} global <16 x i64> zeroinitializer, align 8 1178 // CHECK-512-NEXT: @global_f32m2 ={{.*}} global <32 x float> zeroinitializer, align 8 1179 // CHECK-512-NEXT: @global_f64m2 ={{.*}} global <16 x double> zeroinitializer, align 8 1180 // CHECK-512-NEXT: @global_i8m4 ={{.*}} global <256 x i8> zeroinitializer, align 8 1181 // CHECK-512-NEXT: @global_i16m4 ={{.*}} global <128 x i16> zeroinitializer, align 8 1182 // CHECK-512-NEXT: @global_i32m4 ={{.*}} global <64 x i32> zeroinitializer, align 8 1183 // CHECK-512-NEXT: @global_i64m4 ={{.*}} global <32 x i64> zeroinitializer, align 8 1184 // CHECK-512-NEXT: @global_u8m4 ={{.*}} global <256 x i8> zeroinitializer, align 8 1185 // CHECK-512-NEXT: @global_u16m4 ={{.*}} global <128 x i16> zeroinitializer, align 8 1186 // CHECK-512-NEXT: @global_u32m4 ={{.*}} global <64 x i32> zeroinitializer, align 8 1187 // CHECK-512-NEXT: @global_u64m4 ={{.*}} global <32 x i64> zeroinitializer, align 8 1188 // CHECK-512-NEXT: @global_f32m4 ={{.*}} global <64 x float> zeroinitializer, align 8 1189 // CHECK-512-NEXT: @global_f64m4 ={{.*}} global <32 x double> zeroinitializer, align 8 1190 // CHECK-512-NEXT: @global_i8m8 ={{.*}} global <512 x i8> zeroinitializer, align 8 1191 // CHECK-512-NEXT: @global_i16m8 ={{.*}} global <256 x i16> zeroinitializer, align 8 1192 // CHECK-512-NEXT: @global_i32m8 ={{.*}} global <128 x i32> zeroinitializer, align 8 1193 // CHECK-512-NEXT: @global_i64m8 ={{.*}} global <64 x i64> zeroinitializer, align 8 1194 // CHECK-512-NEXT: @global_u8m8 ={{.*}} global <512 x i8> zeroinitializer, align 8 1195 // CHECK-512-NEXT: @global_u16m8 ={{.*}} global <256 x i16> zeroinitializer, align 8 1196 // CHECK-512-NEXT: @global_u32m8 ={{.*}} global <128 x i32> zeroinitializer, align 8 1197 // CHECK-512-NEXT: @global_u64m8 ={{.*}} global <64 x i64> zeroinitializer, align 8 1198 // CHECK-512-NEXT: @global_f32m8 ={{.*}} global <128 x float> zeroinitializer, align 8 1199 // CHECK-512-NEXT: @global_f64m8 ={{.*}} global <64 x double> zeroinitializer, align 8 1200 // CHECK-512-NEXT: @global_bool1 ={{.*}} global <64 x i8> zeroinitializer, align 8 1201 // CHECK-512-NEXT: @global_bool2 ={{.*}} global <32 x i8> zeroinitializer, align 8 1202 // CHECK-512-NEXT: @global_bool4 ={{.*}} global <16 x i8> zeroinitializer, align 8 1203 // CHECK-512-NEXT: @global_bool8 ={{.*}} global <8 x i8> zeroinitializer, align 8 1204 // CHECK-512-NEXT: @global_bool16 ={{.*}} global <4 x i8> zeroinitializer, align 4 1205 // CHECK-512-NEXT: @global_bool32 ={{.*}} global <2 x i8> zeroinitializer, align 2 1206 // CHECK-512-NEXT: @global_bool64 ={{.*}} global <1 x i8> zeroinitializer, align 1 1207 1208 // CHECK-1024: @global_i8 ={{.*}} global <128 x i8> zeroinitializer, align 8 1209 // CHECK-1024-NEXT: @global_i16 ={{.*}} global <64 x i16> zeroinitializer, align 8 1210 // CHECK-1024-NEXT: @global_i32 ={{.*}} global <32 x i32> zeroinitializer, align 8 1211 // CHECK-1024-NEXT: @global_i64 ={{.*}} global <16 x i64> zeroinitializer, align 8 1212 // CHECK-1024-NEXT: @global_u8 ={{.*}} global <128 x i8> zeroinitializer, align 8 1213 // CHECK-1024-NEXT: @global_u16 ={{.*}} global <64 x i16> zeroinitializer, align 8 1214 // CHECK-1024-NEXT: @global_u32 ={{.*}} global <32 x i32> zeroinitializer, align 8 1215 // CHECK-1024-NEXT: @global_u64 ={{.*}} global <16 x i64> zeroinitializer, align 8 1216 // CHECK-1024-NEXT: @global_f32 ={{.*}} global <32 x float> zeroinitializer, align 8 1217 // CHECK-1024-NEXT: @global_f64 ={{.*}} global <16 x double> zeroinitializer, align 8 1218 // CHECK-1024-NEXT: @global_i8m2 ={{.*}} global <256 x i8> zeroinitializer, align 8 1219 // CHECK-1024-NEXT: @global_i16m2 ={{.*}} global <128 x i16> zeroinitializer, align 8 1220 // CHECK-1024-NEXT: @global_i32m2 ={{.*}} global <64 x i32> zeroinitializer, align 8 1221 // CHECK-1024-NEXT: @global_i64m2 ={{.*}} global <32 x i64> zeroinitializer, align 8 1222 // CHECK-1024-NEXT: @global_u8m2 ={{.*}} global <256 x i8> zeroinitializer, align 8 1223 // CHECK-1024-NEXT: @global_u16m2 ={{.*}} global <128 x i16> zeroinitializer, align 8 1224 // CHECK-1024-NEXT: @global_u32m2 ={{.*}} global <64 x i32> zeroinitializer, align 8 1225 // CHECK-1024-NEXT: @global_u64m2 ={{.*}} global <32 x i64> zeroinitializer, align 8 1226 // CHECK-1024-NEXT: @global_f32m2 ={{.*}} global <64 x float> zeroinitializer, align 8 1227 // CHECK-1024-NEXT: @global_f64m2 ={{.*}} global <32 x double> zeroinitializer, align 8 1228 // CHECK-1024-NEXT: @global_i8m4 ={{.*}} global <512 x i8> zeroinitializer, align 8 1229 // CHECK-1024-NEXT: @global_i16m4 ={{.*}} global <256 x i16> zeroinitializer, align 8 1230 // CHECK-1024-NEXT: @global_i32m4 ={{.*}} global <128 x i32> zeroinitializer, align 8 1231 // CHECK-1024-NEXT: @global_i64m4 ={{.*}} global <64 x i64> zeroinitializer, align 8 1232 // CHECK-1024-NEXT: @global_u8m4 ={{.*}} global <512 x i8> zeroinitializer, align 8 1233 // CHECK-1024-NEXT: @global_u16m4 ={{.*}} global <256 x i16> zeroinitializer, align 8 1234 // CHECK-1024-NEXT: @global_u32m4 ={{.*}} global <128 x i32> zeroinitializer, align 8 1235 // CHECK-1024-NEXT: @global_u64m4 ={{.*}} global <64 x i64> zeroinitializer, align 8 1236 // CHECK-1024-NEXT: @global_f32m4 ={{.*}} global <128 x float> zeroinitializer, align 8 1237 // CHECK-1024-NEXT: @global_f64m4 ={{.*}} global <64 x double> zeroinitializer, align 8 1238 // CHECK-1024-NEXT: @global_i8m8 ={{.*}} global <1024 x i8> zeroinitializer, align 8 1239 // CHECK-1024-NEXT: @global_i16m8 ={{.*}} global <512 x i16> zeroinitializer, align 8 1240 // CHECK-1024-NEXT: @global_i32m8 ={{.*}} global <256 x i32> zeroinitializer, align 8 1241 // CHECK-1024-NEXT: @global_i64m8 ={{.*}} global <128 x i64> zeroinitializer, align 8 1242 // CHECK-1024-NEXT: @global_u8m8 ={{.*}} global <1024 x i8> zeroinitializer, align 8 1243 // CHECK-1024-NEXT: @global_u16m8 ={{.*}} global <512 x i16> zeroinitializer, align 8 1244 // CHECK-1024-NEXT: @global_u32m8 ={{.*}} global <256 x i32> zeroinitializer, align 8 1245 // CHECK-1024-NEXT: @global_u64m8 ={{.*}} global <128 x i64> zeroinitializer, align 8 1246 // CHECK-1024-NEXT: @global_f32m8 ={{.*}} global <256 x float> zeroinitializer, align 8 1247 // CHECK-1024-NEXT: @global_f64m8 ={{.*}} global <128 x double> zeroinitializer, align 8 1248 // CHECK-1024-NEXT: @global_bool1 ={{.*}} global <128 x i8> zeroinitializer, align 8 1249 // CHECK-1024-NEXT: @global_bool2 ={{.*}} global <64 x i8> zeroinitializer, align 8 1250 // CHECK-1024-NEXT: @global_bool4 ={{.*}} global <32 x i8> zeroinitializer, align 8 1251 // CHECK-1024-NEXT: @global_bool8 ={{.*}} global <16 x i8> zeroinitializer, align 8 1252 // CHECK-1024-NEXT: @global_bool16 ={{.*}} global <8 x i8> zeroinitializer, align 8 1253 // CHECK-1024-NEXT: @global_bool32 ={{.*}} global <4 x i8> zeroinitializer, align 4 1254 // CHECK-1024-NEXT: @global_bool64 ={{.*}} global <2 x i8> zeroinitializer, align 2 1255 1256 //===----------------------------------------------------------------------===// 1257 // Global arrays 1258 //===----------------------------------------------------------------------===// 1259 // CHECK-64: @global_arr_i8 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1260 // CHECK-64-NEXT: @global_arr_i16 ={{.*}} global [3 x <4 x i16>] zeroinitializer, align 8 1261 // CHECK-64-NEXT: @global_arr_i32 ={{.*}} global [3 x <2 x i32>] zeroinitializer, align 8 1262 // CHECK-64-NEXT: @global_arr_i64 ={{.*}} global [3 x <1 x i64>] zeroinitializer, align 8 1263 // CHECK-64-NEXT: @global_arr_u8 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1264 // CHECK-64-NEXT: @global_arr_u16 ={{.*}} global [3 x <4 x i16>] zeroinitializer, align 8 1265 // CHECK-64-NEXT: @global_arr_u32 ={{.*}} global [3 x <2 x i32>] zeroinitializer, align 8 1266 // CHECK-64-NEXT: @global_arr_u64 ={{.*}} global [3 x <1 x i64>] zeroinitializer, align 8 1267 // CHECK-64-NEXT: @global_arr_f32 ={{.*}} global [3 x <2 x float>] zeroinitializer, align 8 1268 // CHECK-64-NEXT: @global_arr_f64 ={{.*}} global [3 x <1 x double>] zeroinitializer, align 8 1269 // CHECK-64-NEXT: @global_arr_i8m2 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1270 // CHECK-64-NEXT: @global_arr_i16m2 ={{.*}} global [3 x <8 x i16>] zeroinitializer, align 8 1271 // CHECK-64-NEXT: @global_arr_i32m2 ={{.*}} global [3 x <4 x i32>] zeroinitializer, align 8 1272 // CHECK-64-NEXT: @global_arr_i64m2 ={{.*}} global [3 x <2 x i64>] zeroinitializer, align 8 1273 // CHECK-64-NEXT: @global_arr_u8m2 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1274 // CHECK-64-NEXT: @global_arr_u16m2 ={{.*}} global [3 x <8 x i16>] zeroinitializer, align 8 1275 // CHECK-64-NEXT: @global_arr_u32m2 ={{.*}} global [3 x <4 x i32>] zeroinitializer, align 8 1276 // CHECK-64-NEXT: @global_arr_u64m2 ={{.*}} global [3 x <2 x i64>] zeroinitializer, align 8 1277 // CHECK-64-NEXT: @global_arr_f32m2 ={{.*}} global [3 x <4 x float>] zeroinitializer, align 8 1278 // CHECK-64-NEXT: @global_arr_f64m2 ={{.*}} global [3 x <2 x double>] zeroinitializer, align 8 1279 // CHECK-64-NEXT: @global_arr_i8m4 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1280 // CHECK-64-NEXT: @global_arr_i16m4 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1281 // CHECK-64-NEXT: @global_arr_i32m4 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1282 // CHECK-64-NEXT: @global_arr_i64m4 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1283 // CHECK-64-NEXT: @global_arr_u8m4 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1284 // CHECK-64-NEXT: @global_arr_u16m4 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1285 // CHECK-64-NEXT: @global_arr_u32m4 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1286 // CHECK-64-NEXT: @global_arr_u64m4 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1287 // CHECK-64-NEXT: @global_arr_f32m4 ={{.*}} global [3 x <8 x float>] zeroinitializer, align 8 1288 // CHECK-64-NEXT: @global_arr_f64m4 ={{.*}} global [3 x <4 x double>] zeroinitializer, align 8 1289 // CHECK-64-NEXT: @global_arr_i8m8 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1290 // CHECK-64-NEXT: @global_arr_i16m8 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1291 // CHECK-64-NEXT: @global_arr_i32m8 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1292 // CHECK-64-NEXT: @global_arr_i64m8 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1293 // CHECK-64-NEXT: @global_arr_u8m8 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1294 // CHECK-64-NEXT: @global_arr_u16m8 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1295 // CHECK-64-NEXT: @global_arr_u32m8 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1296 // CHECK-64-NEXT: @global_arr_u64m8 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1297 // CHECK-64-NEXT: @global_arr_f32m8 ={{.*}} global [3 x <16 x float>] zeroinitializer, align 8 1298 // CHECK-64-NEXT: @global_arr_f64m8 ={{.*}} global [3 x <8 x double>] zeroinitializer, align 8 1299 // CHECK-64-NEXT: @global_arr_bool1 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1300 // CHECK-64-NEXT: @global_arr_bool2 ={{.*}} global [3 x <4 x i8>] zeroinitializer, align 4 1301 // CHECK-64-NEXT: @global_arr_bool4 ={{.*}} global [3 x <2 x i8>] zeroinitializer, align 2 1302 // CHECK-64-NEXT: @global_arr_bool8 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1303 // CHECK-64-NEXT: @global_arr_bool16 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1304 // CHECK-64-NEXT: @global_arr_bool32 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1305 // CHECK-64-NEXT: @global_arr_bool64 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1306 1307 // CHECK-128: @global_arr_i8 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1308 // CHECK-128-NEXT: @global_arr_i16 ={{.*}} global [3 x <8 x i16>] zeroinitializer, align 8 1309 // CHECK-128-NEXT: @global_arr_i32 ={{.*}} global [3 x <4 x i32>] zeroinitializer, align 8 1310 // CHECK-128-NEXT: @global_arr_i64 ={{.*}} global [3 x <2 x i64>] zeroinitializer, align 8 1311 // CHECK-128-NEXT: @global_arr_u8 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1312 // CHECK-128-NEXT: @global_arr_u16 ={{.*}} global [3 x <8 x i16>] zeroinitializer, align 8 1313 // CHECK-128-NEXT: @global_arr_u32 ={{.*}} global [3 x <4 x i32>] zeroinitializer, align 8 1314 // CHECK-128-NEXT: @global_arr_u64 ={{.*}} global [3 x <2 x i64>] zeroinitializer, align 8 1315 // CHECK-128-NEXT: @global_arr_f32 ={{.*}} global [3 x <4 x float>] zeroinitializer, align 8 1316 // CHECK-128-NEXT: @global_arr_f64 ={{.*}} global [3 x <2 x double>] zeroinitializer, align 8 1317 // CHECK-128-NEXT: @global_arr_i8m2 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1318 // CHECK-128-NEXT: @global_arr_i16m2 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1319 // CHECK-128-NEXT: @global_arr_i32m2 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1320 // CHECK-128-NEXT: @global_arr_i64m2 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1321 // CHECK-128-NEXT: @global_arr_u8m2 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1322 // CHECK-128-NEXT: @global_arr_u16m2 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1323 // CHECK-128-NEXT: @global_arr_u32m2 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1324 // CHECK-128-NEXT: @global_arr_u64m2 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1325 // CHECK-128-NEXT: @global_arr_f32m2 ={{.*}} global [3 x <8 x float>] zeroinitializer, align 8 1326 // CHECK-128-NEXT: @global_arr_f64m2 ={{.*}} global [3 x <4 x double>] zeroinitializer, align 8 1327 // CHECK-128-NEXT: @global_arr_i8m4 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1328 // CHECK-128-NEXT: @global_arr_i16m4 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1329 // CHECK-128-NEXT: @global_arr_i32m4 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1330 // CHECK-128-NEXT: @global_arr_i64m4 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1331 // CHECK-128-NEXT: @global_arr_u8m4 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1332 // CHECK-128-NEXT: @global_arr_u16m4 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1333 // CHECK-128-NEXT: @global_arr_u32m4 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1334 // CHECK-128-NEXT: @global_arr_u64m4 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1335 // CHECK-128-NEXT: @global_arr_f32m4 ={{.*}} global [3 x <16 x float>] zeroinitializer, align 8 1336 // CHECK-128-NEXT: @global_arr_f64m4 ={{.*}} global [3 x <8 x double>] zeroinitializer, align 8 1337 // CHECK-128-NEXT: @global_arr_i8m8 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1338 // CHECK-128-NEXT: @global_arr_i16m8 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1339 // CHECK-128-NEXT: @global_arr_i32m8 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1340 // CHECK-128-NEXT: @global_arr_i64m8 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1341 // CHECK-128-NEXT: @global_arr_u8m8 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1342 // CHECK-128-NEXT: @global_arr_u16m8 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1343 // CHECK-128-NEXT: @global_arr_u32m8 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1344 // CHECK-128-NEXT: @global_arr_u64m8 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1345 // CHECK-128-NEXT: @global_arr_f32m8 ={{.*}} global [3 x <32 x float>] zeroinitializer, align 8 1346 // CHECK-128-NEXT: @global_arr_f64m8 ={{.*}} global [3 x <16 x double>] zeroinitializer, align 8 1347 // CHECK-128-NEXT: @global_arr_bool1 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1348 // CHECK-128-NEXT: @global_arr_bool2 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1349 // CHECK-128-NEXT: @global_arr_bool4 ={{.*}} global [3 x <4 x i8>] zeroinitializer, align 4 1350 // CHECK-128-NEXT: @global_arr_bool8 ={{.*}} global [3 x <2 x i8>] zeroinitializer, align 2 1351 // CHECK-128-NEXT: @global_arr_bool16 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1352 // CHECK-128-NEXT: @global_arr_bool32 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1353 // CHECK-128-NEXT: @global_arr_bool64 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1354 1355 // CHECK-256: @global_arr_i8 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1356 // CHECK-256-NEXT: @global_arr_i16 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1357 // CHECK-256-NEXT: @global_arr_i32 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1358 // CHECK-256-NEXT: @global_arr_i64 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1359 // CHECK-256-NEXT: @global_arr_u8 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1360 // CHECK-256-NEXT: @global_arr_u16 ={{.*}} global [3 x <16 x i16>] zeroinitializer, align 8 1361 // CHECK-256-NEXT: @global_arr_u32 ={{.*}} global [3 x <8 x i32>] zeroinitializer, align 8 1362 // CHECK-256-NEXT: @global_arr_u64 ={{.*}} global [3 x <4 x i64>] zeroinitializer, align 8 1363 // CHECK-256-NEXT: @global_arr_f32 ={{.*}} global [3 x <8 x float>] zeroinitializer, align 8 1364 // CHECK-256-NEXT: @global_arr_f64 ={{.*}} global [3 x <4 x double>] zeroinitializer, align 8 1365 // CHECK-256-NEXT: @global_arr_i8m2 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1366 // CHECK-256-NEXT: @global_arr_i16m2 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1367 // CHECK-256-NEXT: @global_arr_i32m2 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1368 // CHECK-256-NEXT: @global_arr_i64m2 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1369 // CHECK-256-NEXT: @global_arr_u8m2 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1370 // CHECK-256-NEXT: @global_arr_u16m2 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1371 // CHECK-256-NEXT: @global_arr_u32m2 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1372 // CHECK-256-NEXT: @global_arr_u64m2 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1373 // CHECK-256-NEXT: @global_arr_f32m2 ={{.*}} global [3 x <16 x float>] zeroinitializer, align 8 1374 // CHECK-256-NEXT: @global_arr_f64m2 ={{.*}} global [3 x <8 x double>] zeroinitializer, align 8 1375 // CHECK-256-NEXT: @global_arr_i8m4 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1376 // CHECK-256-NEXT: @global_arr_i16m4 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1377 // CHECK-256-NEXT: @global_arr_i32m4 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1378 // CHECK-256-NEXT: @global_arr_i64m4 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1379 // CHECK-256-NEXT: @global_arr_u8m4 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1380 // CHECK-256-NEXT: @global_arr_u16m4 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1381 // CHECK-256-NEXT: @global_arr_u32m4 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1382 // CHECK-256-NEXT: @global_arr_u64m4 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1383 // CHECK-256-NEXT: @global_arr_f32m4 ={{.*}} global [3 x <32 x float>] zeroinitializer, align 8 1384 // CHECK-256-NEXT: @global_arr_f64m4 ={{.*}} global [3 x <16 x double>] zeroinitializer, align 8 1385 // CHECK-256-NEXT: @global_arr_i8m8 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1386 // CHECK-256-NEXT: @global_arr_i16m8 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1387 // CHECK-256-NEXT: @global_arr_i32m8 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1388 // CHECK-256-NEXT: @global_arr_i64m8 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1389 // CHECK-256-NEXT: @global_arr_u8m8 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1390 // CHECK-256-NEXT: @global_arr_u16m8 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1391 // CHECK-256-NEXT: @global_arr_u32m8 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1392 // CHECK-256-NEXT: @global_arr_u64m8 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1393 // CHECK-256-NEXT: @global_arr_f32m8 ={{.*}} global [3 x <64 x float>] zeroinitializer, align 8 1394 // CHECK-256-NEXT: @global_arr_f64m8 ={{.*}} global [3 x <32 x double>] zeroinitializer, align 8 1395 // CHECK-256-NEXT: @global_arr_bool1 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1396 // CHECK-256-NEXT: @global_arr_bool2 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1397 // CHECK-256-NEXT: @global_arr_bool4 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1398 // CHECK-256-NEXT: @global_arr_bool8 ={{.*}} global [3 x <4 x i8>] zeroinitializer, align 4 1399 // CHECK-256-NEXT: @global_arr_bool16 ={{.*}} global [3 x <2 x i8>] zeroinitializer, align 2 1400 // CHECK-256-NEXT: @global_arr_bool32 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1401 // CHECK-256-NEXT: @global_arr_bool64 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1402 1403 // CHECK-512: @global_arr_i8 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1404 // CHECK-512-NEXT: @global_arr_i16 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1405 // CHECK-512-NEXT: @global_arr_i32 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1406 // CHECK-512-NEXT: @global_arr_i64 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1407 // CHECK-512-NEXT: @global_arr_u8 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1408 // CHECK-512-NEXT: @global_arr_u16 ={{.*}} global [3 x <32 x i16>] zeroinitializer, align 8 1409 // CHECK-512-NEXT: @global_arr_u32 ={{.*}} global [3 x <16 x i32>] zeroinitializer, align 8 1410 // CHECK-512-NEXT: @global_arr_u64 ={{.*}} global [3 x <8 x i64>] zeroinitializer, align 8 1411 // CHECK-512-NEXT: @global_arr_f32 ={{.*}} global [3 x <16 x float>] zeroinitializer, align 8 1412 // CHECK-512-NEXT: @global_arr_f64 ={{.*}} global [3 x <8 x double>] zeroinitializer, align 8 1413 // CHECK-512-NEXT: @global_arr_i8m2 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1414 // CHECK-512-NEXT: @global_arr_i16m2 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1415 // CHECK-512-NEXT: @global_arr_i32m2 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1416 // CHECK-512-NEXT: @global_arr_i64m2 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1417 // CHECK-512-NEXT: @global_arr_u8m2 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1418 // CHECK-512-NEXT: @global_arr_u16m2 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1419 // CHECK-512-NEXT: @global_arr_u32m2 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1420 // CHECK-512-NEXT: @global_arr_u64m2 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1421 // CHECK-512-NEXT: @global_arr_f32m2 ={{.*}} global [3 x <32 x float>] zeroinitializer, align 8 1422 // CHECK-512-NEXT: @global_arr_f64m2 ={{.*}} global [3 x <16 x double>] zeroinitializer, align 8 1423 // CHECK-512-NEXT: @global_arr_i8m4 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1424 // CHECK-512-NEXT: @global_arr_i16m4 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1425 // CHECK-512-NEXT: @global_arr_i32m4 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1426 // CHECK-512-NEXT: @global_arr_i64m4 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1427 // CHECK-512-NEXT: @global_arr_u8m4 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1428 // CHECK-512-NEXT: @global_arr_u16m4 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1429 // CHECK-512-NEXT: @global_arr_u32m4 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1430 // CHECK-512-NEXT: @global_arr_u64m4 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1431 // CHECK-512-NEXT: @global_arr_f32m4 ={{.*}} global [3 x <64 x float>] zeroinitializer, align 8 1432 // CHECK-512-NEXT: @global_arr_f64m4 ={{.*}} global [3 x <32 x double>] zeroinitializer, align 8 1433 // CHECK-512-NEXT: @global_arr_i8m8 ={{.*}} global [3 x <512 x i8>] zeroinitializer, align 8 1434 // CHECK-512-NEXT: @global_arr_i16m8 ={{.*}} global [3 x <256 x i16>] zeroinitializer, align 8 1435 // CHECK-512-NEXT: @global_arr_i32m8 ={{.*}} global [3 x <128 x i32>] zeroinitializer, align 8 1436 // CHECK-512-NEXT: @global_arr_i64m8 ={{.*}} global [3 x <64 x i64>] zeroinitializer, align 8 1437 // CHECK-512-NEXT: @global_arr_u8m8 ={{.*}} global [3 x <512 x i8>] zeroinitializer, align 8 1438 // CHECK-512-NEXT: @global_arr_u16m8 ={{.*}} global [3 x <256 x i16>] zeroinitializer, align 8 1439 // CHECK-512-NEXT: @global_arr_u32m8 ={{.*}} global [3 x <128 x i32>] zeroinitializer, align 8 1440 // CHECK-512-NEXT: @global_arr_u64m8 ={{.*}} global [3 x <64 x i64>] zeroinitializer, align 8 1441 // CHECK-512-NEXT: @global_arr_f32m8 ={{.*}} global [3 x <128 x float>] zeroinitializer, align 8 1442 // CHECK-512-NEXT: @global_arr_f64m8 ={{.*}} global [3 x <64 x double>] zeroinitializer, align 8 1443 // CHECK-512-NEXT: @global_arr_bool1 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1444 // CHECK-512-NEXT: @global_arr_bool2 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1445 // CHECK-512-NEXT: @global_arr_bool4 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1446 // CHECK-512-NEXT: @global_arr_bool8 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1447 // CHECK-512-NEXT: @global_arr_bool16 ={{.*}} global [3 x <4 x i8>] zeroinitializer, align 4 1448 // CHECK-512-NEXT: @global_arr_bool32 ={{.*}} global [3 x <2 x i8>] zeroinitializer, align 2 1449 // CHECK-512-NEXT: @global_arr_bool64 ={{.*}} global [3 x <1 x i8>] zeroinitializer, align 1 1450 1451 // CHECK-1024: @global_arr_i8 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1452 // CHECK-1024-NEXT: @global_arr_i16 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1453 // CHECK-1024-NEXT: @global_arr_i32 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1454 // CHECK-1024-NEXT: @global_arr_i64 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1455 // CHECK-1024-NEXT: @global_arr_u8 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1456 // CHECK-1024-NEXT: @global_arr_u16 ={{.*}} global [3 x <64 x i16>] zeroinitializer, align 8 1457 // CHECK-1024-NEXT: @global_arr_u32 ={{.*}} global [3 x <32 x i32>] zeroinitializer, align 8 1458 // CHECK-1024-NEXT: @global_arr_u64 ={{.*}} global [3 x <16 x i64>] zeroinitializer, align 8 1459 // CHECK-1024-NEXT: @global_arr_f32 ={{.*}} global [3 x <32 x float>] zeroinitializer, align 8 1460 // CHECK-1024-NEXT: @global_arr_f64 ={{.*}} global [3 x <16 x double>] zeroinitializer, align 8 1461 // CHECK-1024-NEXT: @global_arr_i8m2 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1462 // CHECK-1024-NEXT: @global_arr_i16m2 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1463 // CHECK-1024-NEXT: @global_arr_i32m2 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1464 // CHECK-1024-NEXT: @global_arr_i64m2 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1465 // CHECK-1024-NEXT: @global_arr_u8m2 ={{.*}} global [3 x <256 x i8>] zeroinitializer, align 8 1466 // CHECK-1024-NEXT: @global_arr_u16m2 ={{.*}} global [3 x <128 x i16>] zeroinitializer, align 8 1467 // CHECK-1024-NEXT: @global_arr_u32m2 ={{.*}} global [3 x <64 x i32>] zeroinitializer, align 8 1468 // CHECK-1024-NEXT: @global_arr_u64m2 ={{.*}} global [3 x <32 x i64>] zeroinitializer, align 8 1469 // CHECK-1024-NEXT: @global_arr_f32m2 ={{.*}} global [3 x <64 x float>] zeroinitializer, align 8 1470 // CHECK-1024-NEXT: @global_arr_f64m2 ={{.*}} global [3 x <32 x double>] zeroinitializer, align 8 1471 // CHECK-1024-NEXT: @global_arr_i8m4 ={{.*}} global [3 x <512 x i8>] zeroinitializer, align 8 1472 // CHECK-1024-NEXT: @global_arr_i16m4 ={{.*}} global [3 x <256 x i16>] zeroinitializer, align 8 1473 // CHECK-1024-NEXT: @global_arr_i32m4 ={{.*}} global [3 x <128 x i32>] zeroinitializer, align 8 1474 // CHECK-1024-NEXT: @global_arr_i64m4 ={{.*}} global [3 x <64 x i64>] zeroinitializer, align 8 1475 // CHECK-1024-NEXT: @global_arr_u8m4 ={{.*}} global [3 x <512 x i8>] zeroinitializer, align 8 1476 // CHECK-1024-NEXT: @global_arr_u16m4 ={{.*}} global [3 x <256 x i16>] zeroinitializer, align 8 1477 // CHECK-1024-NEXT: @global_arr_u32m4 ={{.*}} global [3 x <128 x i32>] zeroinitializer, align 8 1478 // CHECK-1024-NEXT: @global_arr_u64m4 ={{.*}} global [3 x <64 x i64>] zeroinitializer, align 8 1479 // CHECK-1024-NEXT: @global_arr_f32m4 ={{.*}} global [3 x <128 x float>] zeroinitializer, align 8 1480 // CHECK-1024-NEXT: @global_arr_f64m4 ={{.*}} global [3 x <64 x double>] zeroinitializer, align 8 1481 // CHECK-1024-NEXT: @global_arr_i8m8 ={{.*}} global [3 x <1024 x i8>] zeroinitializer, align 8 1482 // CHECK-1024-NEXT: @global_arr_i16m8 ={{.*}} global [3 x <512 x i16>] zeroinitializer, align 8 1483 // CHECK-1024-NEXT: @global_arr_i32m8 ={{.*}} global [3 x <256 x i32>] zeroinitializer, align 8 1484 // CHECK-1024-NEXT: @global_arr_i64m8 ={{.*}} global [3 x <128 x i64>] zeroinitializer, align 8 1485 // CHECK-1024-NEXT: @global_arr_u8m8 ={{.*}} global [3 x <1024 x i8>] zeroinitializer, align 8 1486 // CHECK-1024-NEXT: @global_arr_u16m8 ={{.*}} global [3 x <512 x i16>] zeroinitializer, align 8 1487 // CHECK-1024-NEXT: @global_arr_u32m8 ={{.*}} global [3 x <256 x i32>] zeroinitializer, align 8 1488 // CHECK-1024-NEXT: @global_arr_u64m8 ={{.*}} global [3 x <128 x i64>] zeroinitializer, align 8 1489 // CHECK-1024-NEXT: @global_arr_f32m8 ={{.*}} global [3 x <256 x float>] zeroinitializer, align 8 1490 // CHECK-1024-NEXT: @global_arr_f64m8 ={{.*}} global [3 x <128 x double>] zeroinitializer, align 8 1491 // CHECK-1024-NEXT: @global_arr_bool1 ={{.*}} global [3 x <128 x i8>] zeroinitializer, align 8 1492 // CHECK-1024-NEXT: @global_arr_bool2 ={{.*}} global [3 x <64 x i8>] zeroinitializer, align 8 1493 // CHECK-1024-NEXT: @global_arr_bool4 ={{.*}} global [3 x <32 x i8>] zeroinitializer, align 8 1494 // CHECK-1024-NEXT: @global_arr_bool8 ={{.*}} global [3 x <16 x i8>] zeroinitializer, align 8 1495 // CHECK-1024-NEXT: @global_arr_bool16 ={{.*}} global [3 x <8 x i8>] zeroinitializer, align 8 1496 // CHECK-1024-NEXT: @global_arr_bool32 ={{.*}} global [3 x <4 x i8>] zeroinitializer, align 4 1497 // CHECK-1024-NEXT: @global_arr_bool64 ={{.*}} global [3 x <2 x i8>] zeroinitializer, align 2 1498 1499 //===----------------------------------------------------------------------===// 1500 // Local variables 1501 //===----------------------------------------------------------------------===// 1502 // CHECK-64: %local_i8 = alloca <8 x i8>, align 8 1503 // CHECK-64-NEXT: %local_i16 = alloca <4 x i16>, align 8 1504 // CHECK-64-NEXT: %local_i32 = alloca <2 x i32>, align 8 1505 // CHECK-64-NEXT: %local_i64 = alloca <1 x i64>, align 8 1506 // CHECK-64-NEXT: %local_u8 = alloca <8 x i8>, align 8 1507 // CHECK-64-NEXT: %local_u16 = alloca <4 x i16>, align 8 1508 // CHECK-64-NEXT: %local_u32 = alloca <2 x i32>, align 8 1509 // CHECK-64-NEXT: %local_u64 = alloca <1 x i64>, align 8 1510 // CHECK-64-NEXT: %local_f32 = alloca <2 x float>, align 8 1511 // CHECK-64-NEXT: %local_f64 = alloca <1 x double>, align 8 1512 // CHECK-64-NEXT: %local_i8m2 = alloca <16 x i8>, align 8 1513 // CHECK-64-NEXT: %local_i16m2 = alloca <8 x i16>, align 8 1514 // CHECK-64-NEXT: %local_i32m2 = alloca <4 x i32>, align 8 1515 // CHECK-64-NEXT: %local_i64m2 = alloca <2 x i64>, align 8 1516 // CHECK-64-NEXT: %local_u8m2 = alloca <16 x i8>, align 8 1517 // CHECK-64-NEXT: %local_u16m2 = alloca <8 x i16>, align 8 1518 // CHECK-64-NEXT: %local_u32m2 = alloca <4 x i32>, align 8 1519 // CHECK-64-NEXT: %local_u64m2 = alloca <2 x i64>, align 8 1520 // CHECK-64-NEXT: %local_f32m2 = alloca <4 x float>, align 8 1521 // CHECK-64-NEXT: %local_f64m2 = alloca <2 x double>, align 8 1522 // CHECK-64-NEXT: %local_i8m4 = alloca <32 x i8>, align 8 1523 // CHECK-64-NEXT: %local_i16m4 = alloca <16 x i16>, align 8 1524 // CHECK-64-NEXT: %local_i32m4 = alloca <8 x i32>, align 8 1525 // CHECK-64-NEXT: %local_i64m4 = alloca <4 x i64>, align 8 1526 // CHECK-64-NEXT: %local_u8m4 = alloca <32 x i8>, align 8 1527 // CHECK-64-NEXT: %local_u16m4 = alloca <16 x i16>, align 8 1528 // CHECK-64-NEXT: %local_u32m4 = alloca <8 x i32>, align 8 1529 // CHECK-64-NEXT: %local_u64m4 = alloca <4 x i64>, align 8 1530 // CHECK-64-NEXT: %local_f32m4 = alloca <8 x float>, align 8 1531 // CHECK-64-NEXT: %local_f64m4 = alloca <4 x double>, align 8 1532 // CHECK-64-NEXT: %local_i8m8 = alloca <64 x i8>, align 8 1533 // CHECK-64-NEXT: %local_i16m8 = alloca <32 x i16>, align 8 1534 // CHECK-64-NEXT: %local_i32m8 = alloca <16 x i32>, align 8 1535 // CHECK-64-NEXT: %local_i64m8 = alloca <8 x i64>, align 8 1536 // CHECK-64-NEXT: %local_u8m8 = alloca <64 x i8>, align 8 1537 // CHECK-64-NEXT: %local_u16m8 = alloca <32 x i16>, align 8 1538 // CHECK-64-NEXT: %local_u32m8 = alloca <16 x i32>, align 8 1539 // CHECK-64-NEXT: %local_u64m8 = alloca <8 x i64>, align 8 1540 // CHECK-64-NEXT: %local_f32m8 = alloca <16 x float>, align 8 1541 // CHECK-64-NEXT: %local_f64m8 = alloca <8 x double>, align 8 1542 // CHECK-64-NEXT: %local_bool1 = alloca <8 x i8>, align 8 1543 // CHECK-64-NEXT: %local_bool2 = alloca <4 x i8>, align 4 1544 // CHECK-64-NEXT: %local_bool4 = alloca <2 x i8>, align 2 1545 // CHECK-64-NEXT: %local_bool8 = alloca <1 x i8>, align 1 1546 // CHECK-64-NEXT: %local_bool16 = alloca <1 x i8>, align 1 1547 // CHECK-64-NEXT: %local_bool32 = alloca <1 x i8>, align 1 1548 // CHECK-64-NEXT: %local_bool64 = alloca <1 x i8>, align 1 1549 1550 // CHECK-128: %local_i8 = alloca <16 x i8>, align 8 1551 // CHECK-128-NEXT: %local_i16 = alloca <8 x i16>, align 8 1552 // CHECK-128-NEXT: %local_i32 = alloca <4 x i32>, align 8 1553 // CHECK-128-NEXT: %local_i64 = alloca <2 x i64>, align 8 1554 // CHECK-128-NEXT: %local_u8 = alloca <16 x i8>, align 8 1555 // CHECK-128-NEXT: %local_u16 = alloca <8 x i16>, align 8 1556 // CHECK-128-NEXT: %local_u32 = alloca <4 x i32>, align 8 1557 // CHECK-128-NEXT: %local_u64 = alloca <2 x i64>, align 8 1558 // CHECK-128-NEXT: %local_f32 = alloca <4 x float>, align 8 1559 // CHECK-128-NEXT: %local_f64 = alloca <2 x double>, align 8 1560 // CHECK-128-NEXT: %local_i8m2 = alloca <32 x i8>, align 8 1561 // CHECK-128-NEXT: %local_i16m2 = alloca <16 x i16>, align 8 1562 // CHECK-128-NEXT: %local_i32m2 = alloca <8 x i32>, align 8 1563 // CHECK-128-NEXT: %local_i64m2 = alloca <4 x i64>, align 8 1564 // CHECK-128-NEXT: %local_u8m2 = alloca <32 x i8>, align 8 1565 // CHECK-128-NEXT: %local_u16m2 = alloca <16 x i16>, align 8 1566 // CHECK-128-NEXT: %local_u32m2 = alloca <8 x i32>, align 8 1567 // CHECK-128-NEXT: %local_u64m2 = alloca <4 x i64>, align 8 1568 // CHECK-128-NEXT: %local_f32m2 = alloca <8 x float>, align 8 1569 // CHECK-128-NEXT: %local_f64m2 = alloca <4 x double>, align 8 1570 // CHECK-128-NEXT: %local_i8m4 = alloca <64 x i8>, align 8 1571 // CHECK-128-NEXT: %local_i16m4 = alloca <32 x i16>, align 8 1572 // CHECK-128-NEXT: %local_i32m4 = alloca <16 x i32>, align 8 1573 // CHECK-128-NEXT: %local_i64m4 = alloca <8 x i64>, align 8 1574 // CHECK-128-NEXT: %local_u8m4 = alloca <64 x i8>, align 8 1575 // CHECK-128-NEXT: %local_u16m4 = alloca <32 x i16>, align 8 1576 // CHECK-128-NEXT: %local_u32m4 = alloca <16 x i32>, align 8 1577 // CHECK-128-NEXT: %local_u64m4 = alloca <8 x i64>, align 8 1578 // CHECK-128-NEXT: %local_f32m4 = alloca <16 x float>, align 8 1579 // CHECK-128-NEXT: %local_f64m4 = alloca <8 x double>, align 8 1580 // CHECK-128-NEXT: %local_i8m8 = alloca <128 x i8>, align 8 1581 // CHECK-128-NEXT: %local_i16m8 = alloca <64 x i16>, align 8 1582 // CHECK-128-NEXT: %local_i32m8 = alloca <32 x i32>, align 8 1583 // CHECK-128-NEXT: %local_i64m8 = alloca <16 x i64>, align 8 1584 // CHECK-128-NEXT: %local_u8m8 = alloca <128 x i8>, align 8 1585 // CHECK-128-NEXT: %local_u16m8 = alloca <64 x i16>, align 8 1586 // CHECK-128-NEXT: %local_u32m8 = alloca <32 x i32>, align 8 1587 // CHECK-128-NEXT: %local_u64m8 = alloca <16 x i64>, align 8 1588 // CHECK-128-NEXT: %local_f32m8 = alloca <32 x float>, align 8 1589 // CHECK-128-NEXT: %local_f64m8 = alloca <16 x double>, align 8 1590 // CHECK-128-NEXT: %local_bool1 = alloca <16 x i8>, align 8 1591 // CHECK-128-NEXT: %local_bool2 = alloca <8 x i8>, align 8 1592 // CHECK-128-NEXT: %local_bool4 = alloca <4 x i8>, align 4 1593 // CHECK-128-NEXT: %local_bool8 = alloca <2 x i8>, align 2 1594 // CHECK-128-NEXT: %local_bool16 = alloca <1 x i8>, align 1 1595 // CHECK-128-NEXT: %local_bool32 = alloca <1 x i8>, align 1 1596 // CHECK-128-NEXT: %local_bool64 = alloca <1 x i8>, align 1 1597 1598 // CHECK-256: %local_i8 = alloca <32 x i8>, align 8 1599 // CHECK-256-NEXT: %local_i16 = alloca <16 x i16>, align 8 1600 // CHECK-256-NEXT: %local_i32 = alloca <8 x i32>, align 8 1601 // CHECK-256-NEXT: %local_i64 = alloca <4 x i64>, align 8 1602 // CHECK-256-NEXT: %local_u8 = alloca <32 x i8>, align 8 1603 // CHECK-256-NEXT: %local_u16 = alloca <16 x i16>, align 8 1604 // CHECK-256-NEXT: %local_u32 = alloca <8 x i32>, align 8 1605 // CHECK-256-NEXT: %local_u64 = alloca <4 x i64>, align 8 1606 // CHECK-256-NEXT: %local_f32 = alloca <8 x float>, align 8 1607 // CHECK-256-NEXT: %local_f64 = alloca <4 x double>, align 8 1608 // CHECK-256-NEXT: %local_i8m2 = alloca <64 x i8>, align 8 1609 // CHECK-256-NEXT: %local_i16m2 = alloca <32 x i16>, align 8 1610 // CHECK-256-NEXT: %local_i32m2 = alloca <16 x i32>, align 8 1611 // CHECK-256-NEXT: %local_i64m2 = alloca <8 x i64>, align 8 1612 // CHECK-256-NEXT: %local_u8m2 = alloca <64 x i8>, align 8 1613 // CHECK-256-NEXT: %local_u16m2 = alloca <32 x i16>, align 8 1614 // CHECK-256-NEXT: %local_u32m2 = alloca <16 x i32>, align 8 1615 // CHECK-256-NEXT: %local_u64m2 = alloca <8 x i64>, align 8 1616 // CHECK-256-NEXT: %local_f32m2 = alloca <16 x float>, align 8 1617 // CHECK-256-NEXT: %local_f64m2 = alloca <8 x double>, align 8 1618 // CHECK-256-NEXT: %local_i8m4 = alloca <128 x i8>, align 8 1619 // CHECK-256-NEXT: %local_i16m4 = alloca <64 x i16>, align 8 1620 // CHECK-256-NEXT: %local_i32m4 = alloca <32 x i32>, align 8 1621 // CHECK-256-NEXT: %local_i64m4 = alloca <16 x i64>, align 8 1622 // CHECK-256-NEXT: %local_u8m4 = alloca <128 x i8>, align 8 1623 // CHECK-256-NEXT: %local_u16m4 = alloca <64 x i16>, align 8 1624 // CHECK-256-NEXT: %local_u32m4 = alloca <32 x i32>, align 8 1625 // CHECK-256-NEXT: %local_u64m4 = alloca <16 x i64>, align 8 1626 // CHECK-256-NEXT: %local_f32m4 = alloca <32 x float>, align 8 1627 // CHECK-256-NEXT: %local_f64m4 = alloca <16 x double>, align 8 1628 // CHECK-256-NEXT: %local_i8m8 = alloca <256 x i8>, align 8 1629 // CHECK-256-NEXT: %local_i16m8 = alloca <128 x i16>, align 8 1630 // CHECK-256-NEXT: %local_i32m8 = alloca <64 x i32>, align 8 1631 // CHECK-256-NEXT: %local_i64m8 = alloca <32 x i64>, align 8 1632 // CHECK-256-NEXT: %local_u8m8 = alloca <256 x i8>, align 8 1633 // CHECK-256-NEXT: %local_u16m8 = alloca <128 x i16>, align 8 1634 // CHECK-256-NEXT: %local_u32m8 = alloca <64 x i32>, align 8 1635 // CHECK-256-NEXT: %local_u64m8 = alloca <32 x i64>, align 8 1636 // CHECK-256-NEXT: %local_f32m8 = alloca <64 x float>, align 8 1637 // CHECK-256-NEXT: %local_f64m8 = alloca <32 x double>, align 8 1638 // CHECK-256-NEXT: %local_bool1 = alloca <32 x i8>, align 8 1639 // CHECK-256-NEXT: %local_bool2 = alloca <16 x i8>, align 8 1640 // CHECK-256-NEXT: %local_bool4 = alloca <8 x i8>, align 8 1641 // CHECK-256-NEXT: %local_bool8 = alloca <4 x i8>, align 4 1642 // CHECK-256-NEXT: %local_bool16 = alloca <2 x i8>, align 2 1643 // CHECK-256-NEXT: %local_bool32 = alloca <1 x i8>, align 1 1644 // CHECK-256-NEXT: %local_bool64 = alloca <1 x i8>, align 1 1645 1646 // CHECK-512: %local_i8 = alloca <64 x i8>, align 8 1647 // CHECK-512-NEXT: %local_i16 = alloca <32 x i16>, align 8 1648 // CHECK-512-NEXT: %local_i32 = alloca <16 x i32>, align 8 1649 // CHECK-512-NEXT: %local_i64 = alloca <8 x i64>, align 8 1650 // CHECK-512-NEXT: %local_u8 = alloca <64 x i8>, align 8 1651 // CHECK-512-NEXT: %local_u16 = alloca <32 x i16>, align 8 1652 // CHECK-512-NEXT: %local_u32 = alloca <16 x i32>, align 8 1653 // CHECK-512-NEXT: %local_u64 = alloca <8 x i64>, align 8 1654 // CHECK-512-NEXT: %local_f32 = alloca <16 x float>, align 8 1655 // CHECK-512-NEXT: %local_f64 = alloca <8 x double>, align 8 1656 // CHECK-512-NEXT: %local_i8m2 = alloca <128 x i8>, align 8 1657 // CHECK-512-NEXT: %local_i16m2 = alloca <64 x i16>, align 8 1658 // CHECK-512-NEXT: %local_i32m2 = alloca <32 x i32>, align 8 1659 // CHECK-512-NEXT: %local_i64m2 = alloca <16 x i64>, align 8 1660 // CHECK-512-NEXT: %local_u8m2 = alloca <128 x i8>, align 8 1661 // CHECK-512-NEXT: %local_u16m2 = alloca <64 x i16>, align 8 1662 // CHECK-512-NEXT: %local_u32m2 = alloca <32 x i32>, align 8 1663 // CHECK-512-NEXT: %local_u64m2 = alloca <16 x i64>, align 8 1664 // CHECK-512-NEXT: %local_f32m2 = alloca <32 x float>, align 8 1665 // CHECK-512-NEXT: %local_f64m2 = alloca <16 x double>, align 8 1666 // CHECK-512-NEXT: %local_i8m4 = alloca <256 x i8>, align 8 1667 // CHECK-512-NEXT: %local_i16m4 = alloca <128 x i16>, align 8 1668 // CHECK-512-NEXT: %local_i32m4 = alloca <64 x i32>, align 8 1669 // CHECK-512-NEXT: %local_i64m4 = alloca <32 x i64>, align 8 1670 // CHECK-512-NEXT: %local_u8m4 = alloca <256 x i8>, align 8 1671 // CHECK-512-NEXT: %local_u16m4 = alloca <128 x i16>, align 8 1672 // CHECK-512-NEXT: %local_u32m4 = alloca <64 x i32>, align 8 1673 // CHECK-512-NEXT: %local_u64m4 = alloca <32 x i64>, align 8 1674 // CHECK-512-NEXT: %local_f32m4 = alloca <64 x float>, align 8 1675 // CHECK-512-NEXT: %local_f64m4 = alloca <32 x double>, align 8 1676 // CHECK-512-NEXT: %local_i8m8 = alloca <512 x i8>, align 8 1677 // CHECK-512-NEXT: %local_i16m8 = alloca <256 x i16>, align 8 1678 // CHECK-512-NEXT: %local_i32m8 = alloca <128 x i32>, align 8 1679 // CHECK-512-NEXT: %local_i64m8 = alloca <64 x i64>, align 8 1680 // CHECK-512-NEXT: %local_u8m8 = alloca <512 x i8>, align 8 1681 // CHECK-512-NEXT: %local_u16m8 = alloca <256 x i16>, align 8 1682 // CHECK-512-NEXT: %local_u32m8 = alloca <128 x i32>, align 8 1683 // CHECK-512-NEXT: %local_u64m8 = alloca <64 x i64>, align 8 1684 // CHECK-512-NEXT: %local_f32m8 = alloca <128 x float>, align 8 1685 // CHECK-512-NEXT: %local_f64m8 = alloca <64 x double>, align 8 1686 // CHECK-512-NEXT: %local_bool1 = alloca <64 x i8>, align 8 1687 // CHECK-512-NEXT: %local_bool2 = alloca <32 x i8>, align 8 1688 // CHECK-512-NEXT: %local_bool4 = alloca <16 x i8>, align 8 1689 // CHECK-512-NEXT: %local_bool8 = alloca <8 x i8>, align 8 1690 // CHECK-512-NEXT: %local_bool16 = alloca <4 x i8>, align 4 1691 // CHECK-512-NEXT: %local_bool32 = alloca <2 x i8>, align 2 1692 // CHECK-512-NEXT: %local_bool64 = alloca <1 x i8>, align 1 1693 1694 // CHECK-1024: %local_i8 = alloca <128 x i8>, align 8 1695 // CHECK-1024-NEXT: %local_i16 = alloca <64 x i16>, align 8 1696 // CHECK-1024-NEXT: %local_i32 = alloca <32 x i32>, align 8 1697 // CHECK-1024-NEXT: %local_i64 = alloca <16 x i64>, align 8 1698 // CHECK-1024-NEXT: %local_u8 = alloca <128 x i8>, align 8 1699 // CHECK-1024-NEXT: %local_u16 = alloca <64 x i16>, align 8 1700 // CHECK-1024-NEXT: %local_u32 = alloca <32 x i32>, align 8 1701 // CHECK-1024-NEXT: %local_u64 = alloca <16 x i64>, align 8 1702 // CHECK-1024-NEXT: %local_f32 = alloca <32 x float>, align 8 1703 // CHECK-1024-NEXT: %local_f64 = alloca <16 x double>, align 8 1704 // CHECK-1024-NEXT: %local_i8m2 = alloca <256 x i8>, align 8 1705 // CHECK-1024-NEXT: %local_i16m2 = alloca <128 x i16>, align 8 1706 // CHECK-1024-NEXT: %local_i32m2 = alloca <64 x i32>, align 8 1707 // CHECK-1024-NEXT: %local_i64m2 = alloca <32 x i64>, align 8 1708 // CHECK-1024-NEXT: %local_u8m2 = alloca <256 x i8>, align 8 1709 // CHECK-1024-NEXT: %local_u16m2 = alloca <128 x i16>, align 8 1710 // CHECK-1024-NEXT: %local_u32m2 = alloca <64 x i32>, align 8 1711 // CHECK-1024-NEXT: %local_u64m2 = alloca <32 x i64>, align 8 1712 // CHECK-1024-NEXT: %local_f32m2 = alloca <64 x float>, align 8 1713 // CHECK-1024-NEXT: %local_f64m2 = alloca <32 x double>, align 8 1714 // CHECK-1024-NEXT: %local_i8m4 = alloca <512 x i8>, align 8 1715 // CHECK-1024-NEXT: %local_i16m4 = alloca <256 x i16>, align 8 1716 // CHECK-1024-NEXT: %local_i32m4 = alloca <128 x i32>, align 8 1717 // CHECK-1024-NEXT: %local_i64m4 = alloca <64 x i64>, align 8 1718 // CHECK-1024-NEXT: %local_u8m4 = alloca <512 x i8>, align 8 1719 // CHECK-1024-NEXT: %local_u16m4 = alloca <256 x i16>, align 8 1720 // CHECK-1024-NEXT: %local_u32m4 = alloca <128 x i32>, align 8 1721 // CHECK-1024-NEXT: %local_u64m4 = alloca <64 x i64>, align 8 1722 // CHECK-1024-NEXT: %local_f32m4 = alloca <128 x float>, align 8 1723 // CHECK-1024-NEXT: %local_f64m4 = alloca <64 x double>, align 8 1724 // CHECK-1024-NEXT: %local_i8m8 = alloca <1024 x i8>, align 8 1725 // CHECK-1024-NEXT: %local_i16m8 = alloca <512 x i16>, align 8 1726 // CHECK-1024-NEXT: %local_i32m8 = alloca <256 x i32>, align 8 1727 // CHECK-1024-NEXT: %local_i64m8 = alloca <128 x i64>, align 8 1728 // CHECK-1024-NEXT: %local_u8m8 = alloca <1024 x i8>, align 8 1729 // CHECK-1024-NEXT: %local_u16m8 = alloca <512 x i16>, align 8 1730 // CHECK-1024-NEXT: %local_u32m8 = alloca <256 x i32>, align 8 1731 // CHECK-1024-NEXT: %local_u64m8 = alloca <128 x i64>, align 8 1732 // CHECK-1024-NEXT: %local_f32m8 = alloca <256 x float>, align 8 1733 // CHECK-1024-NEXT: %local_f64m8 = alloca <128 x double>, align 8 1734 // CHECK-1024-NEXT: %local_bool1 = alloca <128 x i8>, align 8 1735 // CHECK-1024-NEXT: %local_bool2 = alloca <64 x i8>, align 8 1736 // CHECK-1024-NEXT: %local_bool4 = alloca <32 x i8>, align 8 1737 // CHECK-1024-NEXT: %local_bool8 = alloca <16 x i8>, align 8 1738 // CHECK-1024-NEXT: %local_bool16 = alloca <8 x i8>, align 8 1739 // CHECK-1024-NEXT: %local_bool32 = alloca <4 x i8>, align 4 1740 // CHECK-1024-NEXT: %local_bool64 = alloca <2 x i8>, align 2 1741 1742 //===----------------------------------------------------------------------===// 1743 // Local arrays 1744 //===----------------------------------------------------------------------===// 1745 // CHECK-64: %local_arr_i8 = alloca [3 x <8 x i8>], align 8 1746 // CHECK-64-NEXT: %local_arr_i16 = alloca [3 x <4 x i16>], align 8 1747 // CHECK-64-NEXT: %local_arr_i32 = alloca [3 x <2 x i32>], align 8 1748 // CHECK-64-NEXT: %local_arr_i64 = alloca [3 x <1 x i64>], align 8 1749 // CHECK-64-NEXT: %local_arr_u8 = alloca [3 x <8 x i8>], align 8 1750 // CHECK-64-NEXT: %local_arr_u16 = alloca [3 x <4 x i16>], align 8 1751 // CHECK-64-NEXT: %local_arr_u32 = alloca [3 x <2 x i32>], align 8 1752 // CHECK-64-NEXT: %local_arr_u64 = alloca [3 x <1 x i64>], align 8 1753 // CHECK-64-NEXT: %local_arr_f32 = alloca [3 x <2 x float>], align 8 1754 // CHECK-64-NEXT: %local_arr_f64 = alloca [3 x <1 x double>], align 8 1755 // CHECK-64-NEXT: %local_arr_i8m2 = alloca [3 x <16 x i8>], align 8 1756 // CHECK-64-NEXT: %local_arr_i16m2 = alloca [3 x <8 x i16>], align 8 1757 // CHECK-64-NEXT: %local_arr_i32m2 = alloca [3 x <4 x i32>], align 8 1758 // CHECK-64-NEXT: %local_arr_i64m2 = alloca [3 x <2 x i64>], align 8 1759 // CHECK-64-NEXT: %local_arr_u8m2 = alloca [3 x <16 x i8>], align 8 1760 // CHECK-64-NEXT: %local_arr_u16m2 = alloca [3 x <8 x i16>], align 8 1761 // CHECK-64-NEXT: %local_arr_u32m2 = alloca [3 x <4 x i32>], align 8 1762 // CHECK-64-NEXT: %local_arr_u64m2 = alloca [3 x <2 x i64>], align 8 1763 // CHECK-64-NEXT: %local_arr_f32m2 = alloca [3 x <4 x float>], align 8 1764 // CHECK-64-NEXT: %local_arr_f64m2 = alloca [3 x <2 x double>], align 8 1765 // CHECK-64-NEXT: %local_arr_i8m4 = alloca [3 x <32 x i8>], align 8 1766 // CHECK-64-NEXT: %local_arr_i16m4 = alloca [3 x <16 x i16>], align 8 1767 // CHECK-64-NEXT: %local_arr_i32m4 = alloca [3 x <8 x i32>], align 8 1768 // CHECK-64-NEXT: %local_arr_i64m4 = alloca [3 x <4 x i64>], align 8 1769 // CHECK-64-NEXT: %local_arr_u8m4 = alloca [3 x <32 x i8>], align 8 1770 // CHECK-64-NEXT: %local_arr_u16m4 = alloca [3 x <16 x i16>], align 8 1771 // CHECK-64-NEXT: %local_arr_u32m4 = alloca [3 x <8 x i32>], align 8 1772 // CHECK-64-NEXT: %local_arr_u64m4 = alloca [3 x <4 x i64>], align 8 1773 // CHECK-64-NEXT: %local_arr_f32m4 = alloca [3 x <8 x float>], align 8 1774 // CHECK-64-NEXT: %local_arr_f64m4 = alloca [3 x <4 x double>], align 8 1775 // CHECK-64-NEXT: %local_arr_i8m8 = alloca [3 x <64 x i8>], align 8 1776 // CHECK-64-NEXT: %local_arr_i16m8 = alloca [3 x <32 x i16>], align 8 1777 // CHECK-64-NEXT: %local_arr_i32m8 = alloca [3 x <16 x i32>], align 8 1778 // CHECK-64-NEXT: %local_arr_i64m8 = alloca [3 x <8 x i64>], align 8 1779 // CHECK-64-NEXT: %local_arr_u8m8 = alloca [3 x <64 x i8>], align 8 1780 // CHECK-64-NEXT: %local_arr_u16m8 = alloca [3 x <32 x i16>], align 8 1781 // CHECK-64-NEXT: %local_arr_u32m8 = alloca [3 x <16 x i32>], align 8 1782 // CHECK-64-NEXT: %local_arr_u64m8 = alloca [3 x <8 x i64>], align 8 1783 // CHECK-64-NEXT: %local_arr_f32m8 = alloca [3 x <16 x float>], align 8 1784 // CHECK-64-NEXT: %local_arr_f64m8 = alloca [3 x <8 x double>], align 8 1785 // CHECK-64-NEXT: %local_arr_i8mf2 = alloca [3 x <4 x i8>], align 4 1786 // CHECK-64-NEXT: %local_arr_i16mf2 = alloca [3 x <2 x i16>], align 4 1787 // CHECK-64-NEXT: %local_arr_i32mf2 = alloca [3 x <1 x i32>], align 4 1788 // CHECK-64-NEXT: %local_arr_u8mf2 = alloca [3 x <4 x i8>], align 4 1789 // CHECK-64-NEXT: %local_arr_u16mf2 = alloca [3 x <2 x i16>], align 4 1790 // CHECK-64-NEXT: %local_arr_u32mf2 = alloca [3 x <1 x i32>], align 4 1791 // CHECK-64-NEXT: %local_arr_f32mf2 = alloca [3 x <1 x float>], align 4 1792 // CHECK-64-NEXT: %local_arr_i8mf4 = alloca [3 x <2 x i8>], align 2 1793 // CHECK-64-NEXT: %local_arr_i16mf4 = alloca [3 x <1 x i16>], align 2 1794 // CHECK-64-NEXT: %local_arr_u8mf4 = alloca [3 x <2 x i8>], align 2 1795 // CHECK-64-NEXT: %local_arr_u16mf4 = alloca [3 x <1 x i16>], align 2 1796 // CHECK-64-NEXT: %local_arr_i8mf8 = alloca [3 x <1 x i8>], align 1 1797 // CHECK-64-NEXT: %local_arr_u8mf8 = alloca [3 x <1 x i8>], align 1 1798 // CHECK-64-NEXT: %local_arr_bool1 = alloca [3 x <8 x i8>], align 8 1799 // CHECK-64-NEXT: %local_arr_bool2 = alloca [3 x <4 x i8>], align 4 1800 // CHECK-64-NEXT: %local_arr_bool4 = alloca [3 x <2 x i8>], align 2 1801 // CHECK-64-NEXT: %local_arr_bool8 = alloca [3 x <1 x i8>], align 1 1802 // CHECK-64-NEXT: %local_arr_bool16 = alloca [3 x <1 x i8>], align 1 1803 // CHECK-64-NEXT: %local_arr_bool32 = alloca [3 x <1 x i8>], align 1 1804 // CHECK-64-NEXT: %local_arr_bool64 = alloca [3 x <1 x i8>], align 1 1805 1806 // CHECK-128: %local_arr_i8 = alloca [3 x <16 x i8>], align 8 1807 // CHECK-128-NEXT: %local_arr_i16 = alloca [3 x <8 x i16>], align 8 1808 // CHECK-128-NEXT: %local_arr_i32 = alloca [3 x <4 x i32>], align 8 1809 // CHECK-128-NEXT: %local_arr_i64 = alloca [3 x <2 x i64>], align 8 1810 // CHECK-128-NEXT: %local_arr_u8 = alloca [3 x <16 x i8>], align 8 1811 // CHECK-128-NEXT: %local_arr_u16 = alloca [3 x <8 x i16>], align 8 1812 // CHECK-128-NEXT: %local_arr_u32 = alloca [3 x <4 x i32>], align 8 1813 // CHECK-128-NEXT: %local_arr_u64 = alloca [3 x <2 x i64>], align 8 1814 // CHECK-128-NEXT: %local_arr_f32 = alloca [3 x <4 x float>], align 8 1815 // CHECK-128-NEXT: %local_arr_f64 = alloca [3 x <2 x double>], align 8 1816 // CHECK-128-NEXT: %local_arr_i8m2 = alloca [3 x <32 x i8>], align 8 1817 // CHECK-128-NEXT: %local_arr_i16m2 = alloca [3 x <16 x i16>], align 8 1818 // CHECK-128-NEXT: %local_arr_i32m2 = alloca [3 x <8 x i32>], align 8 1819 // CHECK-128-NEXT: %local_arr_i64m2 = alloca [3 x <4 x i64>], align 8 1820 // CHECK-128-NEXT: %local_arr_u8m2 = alloca [3 x <32 x i8>], align 8 1821 // CHECK-128-NEXT: %local_arr_u16m2 = alloca [3 x <16 x i16>], align 8 1822 // CHECK-128-NEXT: %local_arr_u32m2 = alloca [3 x <8 x i32>], align 8 1823 // CHECK-128-NEXT: %local_arr_u64m2 = alloca [3 x <4 x i64>], align 8 1824 // CHECK-128-NEXT: %local_arr_f32m2 = alloca [3 x <8 x float>], align 8 1825 // CHECK-128-NEXT: %local_arr_f64m2 = alloca [3 x <4 x double>], align 8 1826 // CHECK-128-NEXT: %local_arr_i8m4 = alloca [3 x <64 x i8>], align 8 1827 // CHECK-128-NEXT: %local_arr_i16m4 = alloca [3 x <32 x i16>], align 8 1828 // CHECK-128-NEXT: %local_arr_i32m4 = alloca [3 x <16 x i32>], align 8 1829 // CHECK-128-NEXT: %local_arr_i64m4 = alloca [3 x <8 x i64>], align 8 1830 // CHECK-128-NEXT: %local_arr_u8m4 = alloca [3 x <64 x i8>], align 8 1831 // CHECK-128-NEXT: %local_arr_u16m4 = alloca [3 x <32 x i16>], align 8 1832 // CHECK-128-NEXT: %local_arr_u32m4 = alloca [3 x <16 x i32>], align 8 1833 // CHECK-128-NEXT: %local_arr_u64m4 = alloca [3 x <8 x i64>], align 8 1834 // CHECK-128-NEXT: %local_arr_f32m4 = alloca [3 x <16 x float>], align 8 1835 // CHECK-128-NEXT: %local_arr_f64m4 = alloca [3 x <8 x double>], align 8 1836 // CHECK-128-NEXT: %local_arr_i8m8 = alloca [3 x <128 x i8>], align 8 1837 // CHECK-128-NEXT: %local_arr_i16m8 = alloca [3 x <64 x i16>], align 8 1838 // CHECK-128-NEXT: %local_arr_i32m8 = alloca [3 x <32 x i32>], align 8 1839 // CHECK-128-NEXT: %local_arr_i64m8 = alloca [3 x <16 x i64>], align 8 1840 // CHECK-128-NEXT: %local_arr_u8m8 = alloca [3 x <128 x i8>], align 8 1841 // CHECK-128-NEXT: %local_arr_u16m8 = alloca [3 x <64 x i16>], align 8 1842 // CHECK-128-NEXT: %local_arr_u32m8 = alloca [3 x <32 x i32>], align 8 1843 // CHECK-128-NEXT: %local_arr_u64m8 = alloca [3 x <16 x i64>], align 8 1844 // CHECK-128-NEXT: %local_arr_f32m8 = alloca [3 x <32 x float>], align 8 1845 // CHECK-128-NEXT: %local_arr_f64m8 = alloca [3 x <16 x double>], align 8 1846 // CHECK-128-NEXT: %local_arr_i8mf2 = alloca [3 x <8 x i8>], align 8 1847 // CHECK-128-NEXT: %local_arr_i16mf2 = alloca [3 x <4 x i16>], align 8 1848 // CHECK-128-NEXT: %local_arr_i32mf2 = alloca [3 x <2 x i32>], align 8 1849 // CHECK-128-NEXT: %local_arr_u8mf2 = alloca [3 x <8 x i8>], align 8 1850 // CHECK-128-NEXT: %local_arr_u16mf2 = alloca [3 x <4 x i16>], align 8 1851 // CHECK-128-NEXT: %local_arr_u32mf2 = alloca [3 x <2 x i32>], align 8 1852 // CHECK-128-NEXT: %local_arr_f32mf2 = alloca [3 x <2 x float>], align 8 1853 // CHECK-128-NEXT: %local_arr_i8mf4 = alloca [3 x <4 x i8>], align 4 1854 // CHECK-128-NEXT: %local_arr_i16mf4 = alloca [3 x <2 x i16>], align 4 1855 // CHECK-128-NEXT: %local_arr_u8mf4 = alloca [3 x <4 x i8>], align 4 1856 // CHECK-128-NEXT: %local_arr_u16mf4 = alloca [3 x <2 x i16>], align 4 1857 // CHECK-128-NEXT: %local_arr_i8mf8 = alloca [3 x <2 x i8>], align 2 1858 // CHECK-128-NEXT: %local_arr_u8mf8 = alloca [3 x <2 x i8>], align 2 1859 // CHECK-128-NEXT: %local_arr_bool1 = alloca [3 x <16 x i8>], align 8 1860 // CHECK-128-NEXT: %local_arr_bool2 = alloca [3 x <8 x i8>], align 8 1861 // CHECK-128-NEXT: %local_arr_bool4 = alloca [3 x <4 x i8>], align 4 1862 // CHECK-128-NEXT: %local_arr_bool8 = alloca [3 x <2 x i8>], align 2 1863 // CHECK-128-NEXT: %local_arr_bool16 = alloca [3 x <1 x i8>], align 1 1864 // CHECK-128-NEXT: %local_arr_bool32 = alloca [3 x <1 x i8>], align 1 1865 // CHECK-128-NEXT: %local_arr_bool64 = alloca [3 x <1 x i8>], align 1 1866 1867 // CHECK-256: %local_arr_i8 = alloca [3 x <32 x i8>], align 8 1868 // CHECK-256-NEXT: %local_arr_i16 = alloca [3 x <16 x i16>], align 8 1869 // CHECK-256-NEXT: %local_arr_i32 = alloca [3 x <8 x i32>], align 8 1870 // CHECK-256-NEXT: %local_arr_i64 = alloca [3 x <4 x i64>], align 8 1871 // CHECK-256-NEXT: %local_arr_u8 = alloca [3 x <32 x i8>], align 8 1872 // CHECK-256-NEXT: %local_arr_u16 = alloca [3 x <16 x i16>], align 8 1873 // CHECK-256-NEXT: %local_arr_u32 = alloca [3 x <8 x i32>], align 8 1874 // CHECK-256-NEXT: %local_arr_u64 = alloca [3 x <4 x i64>], align 8 1875 // CHECK-256-NEXT: %local_arr_f32 = alloca [3 x <8 x float>], align 8 1876 // CHECK-256-NEXT: %local_arr_f64 = alloca [3 x <4 x double>], align 8 1877 // CHECK-256-NEXT: %local_arr_i8m2 = alloca [3 x <64 x i8>], align 8 1878 // CHECK-256-NEXT: %local_arr_i16m2 = alloca [3 x <32 x i16>], align 8 1879 // CHECK-256-NEXT: %local_arr_i32m2 = alloca [3 x <16 x i32>], align 8 1880 // CHECK-256-NEXT: %local_arr_i64m2 = alloca [3 x <8 x i64>], align 8 1881 // CHECK-256-NEXT: %local_arr_u8m2 = alloca [3 x <64 x i8>], align 8 1882 // CHECK-256-NEXT: %local_arr_u16m2 = alloca [3 x <32 x i16>], align 8 1883 // CHECK-256-NEXT: %local_arr_u32m2 = alloca [3 x <16 x i32>], align 8 1884 // CHECK-256-NEXT: %local_arr_u64m2 = alloca [3 x <8 x i64>], align 8 1885 // CHECK-256-NEXT: %local_arr_f32m2 = alloca [3 x <16 x float>], align 8 1886 // CHECK-256-NEXT: %local_arr_f64m2 = alloca [3 x <8 x double>], align 8 1887 // CHECK-256-NEXT: %local_arr_i8m4 = alloca [3 x <128 x i8>], align 8 1888 // CHECK-256-NEXT: %local_arr_i16m4 = alloca [3 x <64 x i16>], align 8 1889 // CHECK-256-NEXT: %local_arr_i32m4 = alloca [3 x <32 x i32>], align 8 1890 // CHECK-256-NEXT: %local_arr_i64m4 = alloca [3 x <16 x i64>], align 8 1891 // CHECK-256-NEXT: %local_arr_u8m4 = alloca [3 x <128 x i8>], align 8 1892 // CHECK-256-NEXT: %local_arr_u16m4 = alloca [3 x <64 x i16>], align 8 1893 // CHECK-256-NEXT: %local_arr_u32m4 = alloca [3 x <32 x i32>], align 8 1894 // CHECK-256-NEXT: %local_arr_u64m4 = alloca [3 x <16 x i64>], align 8 1895 // CHECK-256-NEXT: %local_arr_f32m4 = alloca [3 x <32 x float>], align 8 1896 // CHECK-256-NEXT: %local_arr_f64m4 = alloca [3 x <16 x double>], align 8 1897 // CHECK-256-NEXT: %local_arr_i8m8 = alloca [3 x <256 x i8>], align 8 1898 // CHECK-256-NEXT: %local_arr_i16m8 = alloca [3 x <128 x i16>], align 8 1899 // CHECK-256-NEXT: %local_arr_i32m8 = alloca [3 x <64 x i32>], align 8 1900 // CHECK-256-NEXT: %local_arr_i64m8 = alloca [3 x <32 x i64>], align 8 1901 // CHECK-256-NEXT: %local_arr_u8m8 = alloca [3 x <256 x i8>], align 8 1902 // CHECK-256-NEXT: %local_arr_u16m8 = alloca [3 x <128 x i16>], align 8 1903 // CHECK-256-NEXT: %local_arr_u32m8 = alloca [3 x <64 x i32>], align 8 1904 // CHECK-256-NEXT: %local_arr_u64m8 = alloca [3 x <32 x i64>], align 8 1905 // CHECK-256-NEXT: %local_arr_f32m8 = alloca [3 x <64 x float>], align 8 1906 // CHECK-256-NEXT: %local_arr_f64m8 = alloca [3 x <32 x double>], align 8 1907 // CHECK-256-NEXT: %local_arr_i8mf2 = alloca [3 x <16 x i8>], align 8 1908 // CHECK-256-NEXT: %local_arr_i16mf2 = alloca [3 x <8 x i16>], align 8 1909 // CHECK-256-NEXT: %local_arr_i32mf2 = alloca [3 x <4 x i32>], align 8 1910 // CHECK-256-NEXT: %local_arr_u8mf2 = alloca [3 x <16 x i8>], align 8 1911 // CHECK-256-NEXT: %local_arr_u16mf2 = alloca [3 x <8 x i16>], align 8 1912 // CHECK-256-NEXT: %local_arr_u32mf2 = alloca [3 x <4 x i32>], align 8 1913 // CHECK-256-NEXT: %local_arr_f32mf2 = alloca [3 x <4 x float>], align 8 1914 // CHECK-256-NEXT: %local_arr_i8mf4 = alloca [3 x <8 x i8>], align 8 1915 // CHECK-256-NEXT: %local_arr_i16mf4 = alloca [3 x <4 x i16>], align 8 1916 // CHECK-256-NEXT: %local_arr_u8mf4 = alloca [3 x <8 x i8>], align 8 1917 // CHECK-256-NEXT: %local_arr_u16mf4 = alloca [3 x <4 x i16>], align 8 1918 // CHECK-256-NEXT: %local_arr_i8mf8 = alloca [3 x <4 x i8>], align 4 1919 // CHECK-256-NEXT: %local_arr_u8mf8 = alloca [3 x <4 x i8>], align 4 1920 // CHECK-256-NEXT: %local_arr_bool1 = alloca [3 x <32 x i8>], align 8 1921 // CHECK-256-NEXT: %local_arr_bool2 = alloca [3 x <16 x i8>], align 8 1922 // CHECK-256-NEXT: %local_arr_bool4 = alloca [3 x <8 x i8>], align 8 1923 // CHECK-256-NEXT: %local_arr_bool8 = alloca [3 x <4 x i8>], align 4 1924 // CHECK-256-NEXT: %local_arr_bool16 = alloca [3 x <2 x i8>], align 2 1925 // CHECK-256-NEXT: %local_arr_bool32 = alloca [3 x <1 x i8>], align 1 1926 // CHECK-256-NEXT: %local_arr_bool64 = alloca [3 x <1 x i8>], align 1 1927 1928 // CHECK-512: %local_arr_i8 = alloca [3 x <64 x i8>], align 8 1929 // CHECK-512-NEXT: %local_arr_i16 = alloca [3 x <32 x i16>], align 8 1930 // CHECK-512-NEXT: %local_arr_i32 = alloca [3 x <16 x i32>], align 8 1931 // CHECK-512-NEXT: %local_arr_i64 = alloca [3 x <8 x i64>], align 8 1932 // CHECK-512-NEXT: %local_arr_u8 = alloca [3 x <64 x i8>], align 8 1933 // CHECK-512-NEXT: %local_arr_u16 = alloca [3 x <32 x i16>], align 8 1934 // CHECK-512-NEXT: %local_arr_u32 = alloca [3 x <16 x i32>], align 8 1935 // CHECK-512-NEXT: %local_arr_u64 = alloca [3 x <8 x i64>], align 8 1936 // CHECK-512-NEXT: %local_arr_f32 = alloca [3 x <16 x float>], align 8 1937 // CHECK-512-NEXT: %local_arr_f64 = alloca [3 x <8 x double>], align 8 1938 // CHECK-512-NEXT: %local_arr_i8m2 = alloca [3 x <128 x i8>], align 8 1939 // CHECK-512-NEXT: %local_arr_i16m2 = alloca [3 x <64 x i16>], align 8 1940 // CHECK-512-NEXT: %local_arr_i32m2 = alloca [3 x <32 x i32>], align 8 1941 // CHECK-512-NEXT: %local_arr_i64m2 = alloca [3 x <16 x i64>], align 8 1942 // CHECK-512-NEXT: %local_arr_u8m2 = alloca [3 x <128 x i8>], align 8 1943 // CHECK-512-NEXT: %local_arr_u16m2 = alloca [3 x <64 x i16>], align 8 1944 // CHECK-512-NEXT: %local_arr_u32m2 = alloca [3 x <32 x i32>], align 8 1945 // CHECK-512-NEXT: %local_arr_u64m2 = alloca [3 x <16 x i64>], align 8 1946 // CHECK-512-NEXT: %local_arr_f32m2 = alloca [3 x <32 x float>], align 8 1947 // CHECK-512-NEXT: %local_arr_f64m2 = alloca [3 x <16 x double>], align 8 1948 // CHECK-512-NEXT: %local_arr_i8m4 = alloca [3 x <256 x i8>], align 8 1949 // CHECK-512-NEXT: %local_arr_i16m4 = alloca [3 x <128 x i16>], align 8 1950 // CHECK-512-NEXT: %local_arr_i32m4 = alloca [3 x <64 x i32>], align 8 1951 // CHECK-512-NEXT: %local_arr_i64m4 = alloca [3 x <32 x i64>], align 8 1952 // CHECK-512-NEXT: %local_arr_u8m4 = alloca [3 x <256 x i8>], align 8 1953 // CHECK-512-NEXT: %local_arr_u16m4 = alloca [3 x <128 x i16>], align 8 1954 // CHECK-512-NEXT: %local_arr_u32m4 = alloca [3 x <64 x i32>], align 8 1955 // CHECK-512-NEXT: %local_arr_u64m4 = alloca [3 x <32 x i64>], align 8 1956 // CHECK-512-NEXT: %local_arr_f32m4 = alloca [3 x <64 x float>], align 8 1957 // CHECK-512-NEXT: %local_arr_f64m4 = alloca [3 x <32 x double>], align 8 1958 // CHECK-512-NEXT: %local_arr_i8m8 = alloca [3 x <512 x i8>], align 8 1959 // CHECK-512-NEXT: %local_arr_i16m8 = alloca [3 x <256 x i16>], align 8 1960 // CHECK-512-NEXT: %local_arr_i32m8 = alloca [3 x <128 x i32>], align 8 1961 // CHECK-512-NEXT: %local_arr_i64m8 = alloca [3 x <64 x i64>], align 8 1962 // CHECK-512-NEXT: %local_arr_u8m8 = alloca [3 x <512 x i8>], align 8 1963 // CHECK-512-NEXT: %local_arr_u16m8 = alloca [3 x <256 x i16>], align 8 1964 // CHECK-512-NEXT: %local_arr_u32m8 = alloca [3 x <128 x i32>], align 8 1965 // CHECK-512-NEXT: %local_arr_u64m8 = alloca [3 x <64 x i64>], align 8 1966 // CHECK-512-NEXT: %local_arr_f32m8 = alloca [3 x <128 x float>], align 8 1967 // CHECK-512-NEXT: %local_arr_f64m8 = alloca [3 x <64 x double>], align 8 1968 // CHECK-512-NEXT: %local_arr_i8mf2 = alloca [3 x <32 x i8>], align 8 1969 // CHECK-512-NEXT: %local_arr_i16mf2 = alloca [3 x <16 x i16>], align 8 1970 // CHECK-512-NEXT: %local_arr_i32mf2 = alloca [3 x <8 x i32>], align 8 1971 // CHECK-512-NEXT: %local_arr_u8mf2 = alloca [3 x <32 x i8>], align 8 1972 // CHECK-512-NEXT: %local_arr_u16mf2 = alloca [3 x <16 x i16>], align 8 1973 // CHECK-512-NEXT: %local_arr_u32mf2 = alloca [3 x <8 x i32>], align 8 1974 // CHECK-512-NEXT: %local_arr_f32mf2 = alloca [3 x <8 x float>], align 8 1975 // CHECK-512-NEXT: %local_arr_i8mf4 = alloca [3 x <16 x i8>], align 8 1976 // CHECK-512-NEXT: %local_arr_i16mf4 = alloca [3 x <8 x i16>], align 8 1977 // CHECK-512-NEXT: %local_arr_u8mf4 = alloca [3 x <16 x i8>], align 8 1978 // CHECK-512-NEXT: %local_arr_u16mf4 = alloca [3 x <8 x i16>], align 8 1979 // CHECK-512-NEXT: %local_arr_i8mf8 = alloca [3 x <8 x i8>], align 8 1980 // CHECK-512-NEXT: %local_arr_u8mf8 = alloca [3 x <8 x i8>], align 8 1981 // CHECK-512-NEXT: %local_arr_bool1 = alloca [3 x <64 x i8>], align 8 1982 // CHECK-512-NEXT: %local_arr_bool2 = alloca [3 x <32 x i8>], align 8 1983 // CHECK-512-NEXT: %local_arr_bool4 = alloca [3 x <16 x i8>], align 8 1984 // CHECK-512-NEXT: %local_arr_bool8 = alloca [3 x <8 x i8>], align 8 1985 // CHECK-512-NEXT: %local_arr_bool16 = alloca [3 x <4 x i8>], align 4 1986 // CHECK-512-NEXT: %local_arr_bool32 = alloca [3 x <2 x i8>], align 2 1987 // CHECK-512-NEXT: %local_arr_bool64 = alloca [3 x <1 x i8>], align 1 1988 1989 // CHECK-1024: %local_arr_i8 = alloca [3 x <128 x i8>], align 8 1990 // CHECK-1024-NEXT: %local_arr_i16 = alloca [3 x <64 x i16>], align 8 1991 // CHECK-1024-NEXT: %local_arr_i32 = alloca [3 x <32 x i32>], align 8 1992 // CHECK-1024-NEXT: %local_arr_i64 = alloca [3 x <16 x i64>], align 8 1993 // CHECK-1024-NEXT: %local_arr_u8 = alloca [3 x <128 x i8>], align 8 1994 // CHECK-1024-NEXT: %local_arr_u16 = alloca [3 x <64 x i16>], align 8 1995 // CHECK-1024-NEXT: %local_arr_u32 = alloca [3 x <32 x i32>], align 8 1996 // CHECK-1024-NEXT: %local_arr_u64 = alloca [3 x <16 x i64>], align 8 1997 // CHECK-1024-NEXT: %local_arr_f32 = alloca [3 x <32 x float>], align 8 1998 // CHECK-1024-NEXT: %local_arr_f64 = alloca [3 x <16 x double>], align 8 1999 // CHECK-1024-NEXT: %local_arr_i8m2 = alloca [3 x <256 x i8>], align 8 2000 // CHECK-1024-NEXT: %local_arr_i16m2 = alloca [3 x <128 x i16>], align 8 2001 // CHECK-1024-NEXT: %local_arr_i32m2 = alloca [3 x <64 x i32>], align 8 2002 // CHECK-1024-NEXT: %local_arr_i64m2 = alloca [3 x <32 x i64>], align 8 2003 // CHECK-1024-NEXT: %local_arr_u8m2 = alloca [3 x <256 x i8>], align 8 2004 // CHECK-1024-NEXT: %local_arr_u16m2 = alloca [3 x <128 x i16>], align 8 2005 // CHECK-1024-NEXT: %local_arr_u32m2 = alloca [3 x <64 x i32>], align 8 2006 // CHECK-1024-NEXT: %local_arr_u64m2 = alloca [3 x <32 x i64>], align 8 2007 // CHECK-1024-NEXT: %local_arr_f32m2 = alloca [3 x <64 x float>], align 8 2008 // CHECK-1024-NEXT: %local_arr_f64m2 = alloca [3 x <32 x double>], align 8 2009 // CHECK-1024-NEXT: %local_arr_i8m4 = alloca [3 x <512 x i8>], align 8 2010 // CHECK-1024-NEXT: %local_arr_i16m4 = alloca [3 x <256 x i16>], align 8 2011 // CHECK-1024-NEXT: %local_arr_i32m4 = alloca [3 x <128 x i32>], align 8 2012 // CHECK-1024-NEXT: %local_arr_i64m4 = alloca [3 x <64 x i64>], align 8 2013 // CHECK-1024-NEXT: %local_arr_u8m4 = alloca [3 x <512 x i8>], align 8 2014 // CHECK-1024-NEXT: %local_arr_u16m4 = alloca [3 x <256 x i16>], align 8 2015 // CHECK-1024-NEXT: %local_arr_u32m4 = alloca [3 x <128 x i32>], align 8 2016 // CHECK-1024-NEXT: %local_arr_u64m4 = alloca [3 x <64 x i64>], align 8 2017 // CHECK-1024-NEXT: %local_arr_f32m4 = alloca [3 x <128 x float>], align 8 2018 // CHECK-1024-NEXT: %local_arr_f64m4 = alloca [3 x <64 x double>], align 8 2019 // CHECK-1024-NEXT: %local_arr_i8m8 = alloca [3 x <1024 x i8>], align 8 2020 // CHECK-1024-NEXT: %local_arr_i16m8 = alloca [3 x <512 x i16>], align 8 2021 // CHECK-1024-NEXT: %local_arr_i32m8 = alloca [3 x <256 x i32>], align 8 2022 // CHECK-1024-NEXT: %local_arr_i64m8 = alloca [3 x <128 x i64>], align 8 2023 // CHECK-1024-NEXT: %local_arr_u8m8 = alloca [3 x <1024 x i8>], align 8 2024 // CHECK-1024-NEXT: %local_arr_u16m8 = alloca [3 x <512 x i16>], align 8 2025 // CHECK-1024-NEXT: %local_arr_u32m8 = alloca [3 x <256 x i32>], align 8 2026 // CHECK-1024-NEXT: %local_arr_u64m8 = alloca [3 x <128 x i64>], align 8 2027 // CHECK-1024-NEXT: %local_arr_f32m8 = alloca [3 x <256 x float>], align 8 2028 // CHECK-1024-NEXT: %local_arr_f64m8 = alloca [3 x <128 x double>], align 8 2029 // CHECK-1024-NEXT: %local_arr_i8mf2 = alloca [3 x <64 x i8>], align 8 2030 // CHECK-1024-NEXT: %local_arr_i16mf2 = alloca [3 x <32 x i16>], align 8 2031 // CHECK-1024-NEXT: %local_arr_i32mf2 = alloca [3 x <16 x i32>], align 8 2032 // CHECK-1024-NEXT: %local_arr_u8mf2 = alloca [3 x <64 x i8>], align 8 2033 // CHECK-1024-NEXT: %local_arr_u16mf2 = alloca [3 x <32 x i16>], align 8 2034 // CHECK-1024-NEXT: %local_arr_u32mf2 = alloca [3 x <16 x i32>], align 8 2035 // CHECK-1024-NEXT: %local_arr_f32mf2 = alloca [3 x <16 x float>], align 8 2036 // CHECK-1024-NEXT: %local_arr_i8mf4 = alloca [3 x <32 x i8>], align 8 2037 // CHECK-1024-NEXT: %local_arr_i16mf4 = alloca [3 x <16 x i16>], align 8 2038 // CHECK-1024-NEXT: %local_arr_u8mf4 = alloca [3 x <32 x i8>], align 8 2039 // CHECK-1024-NEXT: %local_arr_u16mf4 = alloca [3 x <16 x i16>], align 8 2040 // CHECK-1024-NEXT: %local_arr_i8mf8 = alloca [3 x <16 x i8>], align 8 2041 // CHECK-1024-NEXT: %local_arr_u8mf8 = alloca [3 x <16 x i8>], align 8 2042 // CHECK-1024-NEXT: %local_arr_bool1 = alloca [3 x <128 x i8>], align 8 2043 // CHECK-1024-NEXT: %local_arr_bool2 = alloca [3 x <64 x i8>], align 8 2044 // CHECK-1024-NEXT: %local_arr_bool4 = alloca [3 x <32 x i8>], align 8 2045 // CHECK-1024-NEXT: %local_arr_bool8 = alloca [3 x <16 x i8>], align 8 2046 // CHECK-1024-NEXT: %local_arr_bool16 = alloca [3 x <8 x i8>], align 8 2047 // CHECK-1024-NEXT: %local_arr_bool32 = alloca [3 x <4 x i8>], align 4 2048 // CHECK-1024-NEXT: %local_arr_bool64 = alloca [3 x <2 x i8>], align 2 2049