[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / Frontend / fixed_point_same_fbits.c
blob27762e5ca12a929335cbb9a1d0db06c514d73e96
1 // RUN: %clang -ffixed-point -S -emit-llvm -o - %s | FileCheck %s -check-prefix=DEFAULT
2 // RUN: %clang_cc1 -ffixed-point -fpadding-on-unsigned-fixed-point -S -emit-llvm -o - %s | FileCheck %s -check-prefix=SAME
4 /* The scale for unsigned fixed point types should be the same as that of signed
5 * fixed point types when -fsame-fbits is enabled. */
7 void func(void) {
8 unsigned short _Accum u_short_accum = 0.5uhk;
9 unsigned _Accum u_accum = 0.5uk;
10 unsigned long _Accum u_long_accum = 0.5ulk;
11 unsigned short _Fract u_short_fract = 0.5uhr;
12 unsigned _Fract u_fract = 0.5ur;
13 unsigned long _Fract u_long_fract = 0.5ulr;
15 // DEFAULT: store i16 128, ptr {{.*}}, align 2
16 // DEFAULT: store i32 32768, ptr {{.*}}, align 4
17 // DEFAULT: store i64 2147483648, ptr {{.*}}, align 8
18 // DEFAULT: store i8 -128, ptr {{.*}}, align 1
19 // DEFAULT: store i16 -32768, ptr {{.*}}, align 2
20 // DEFAULT: store i32 -2147483648, ptr {{.*}}, align 4
22 // SAME: store i16 64, ptr {{.*}}, align 2
23 // SAME: store i32 16384, ptr {{.*}}, align 4
24 // SAME: store i64 1073741824, ptr {{.*}}, align 8
25 // SAME: store i8 64, ptr {{.*}}, align 1
26 // SAME: store i16 16384, ptr {{.*}}, align 2
27 // SAME: store i32 1073741824, ptr {{.*}}, align 4