1 // RUN: %clang_cc1 -triple aarch64-none-linux-gnu -target-feature +sve \ 2 // RUN: -emit-llvm -o - %s 2>&1 | FileCheck %s -check-prefix=CHECK 3 4 // CHECK: @ptr ={{.*}} global ptr null, align 8 5 // CHECK: %s8 = alloca <vscale x 16 x i8>, align 16 6 // CHECK: %s16 = alloca <vscale x 8 x i16>, align 16 7 // CHECK: %s32 = alloca <vscale x 4 x i32>, align 16 8 // CHECK: %s64 = alloca <vscale x 2 x i64>, align 16 9 // CHECK: %u8 = alloca <vscale x 16 x i8>, align 16 10 // CHECK: %u16 = alloca <vscale x 8 x i16>, align 16 11 // CHECK: %u32 = alloca <vscale x 4 x i32>, align 16 12 // CHECK: %u64 = alloca <vscale x 2 x i64>, align 16 13 // CHECK: %f16 = alloca <vscale x 8 x half>, align 16 14 // CHECK: %f32 = alloca <vscale x 4 x float>, align 16 15 // CHECK: %f64 = alloca <vscale x 2 x double>, align 16 16 // CHECK: %mf8 = alloca <vscale x 16 x i8>, align 16 17 // CHECK: %bf16 = alloca <vscale x 8 x bfloat>, align 16 18 // CHECK: %b8 = alloca <vscale x 16 x i1>, align 2 19 20 __SVInt8_t *ptr; 21 22 void test_locals(void) { 23 __SVInt8_t s8; 24 __SVInt16_t s16; 25 __SVInt32_t s32; 26 __SVInt64_t s64; 27 28 __SVUint8_t u8; 29 __SVUint16_t u16; 30 __SVUint32_t u32; 31 __SVUint64_t u64; 32 33 __SVFloat16_t f16; 34 __SVFloat32_t f32; 35 __SVFloat64_t f64; 36 37 __SVMfloat8_t mf8; 38 __SVBfloat16_t bf16; 39 40 __SVBool_t b8; 41 } 42