File tree Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Expand file tree Collapse file tree 1 file changed +20
-0
lines changed Original file line number Diff line number Diff line change
1
+ // RUN: %clang_cc1 -triple x86_64-windows-gnu -emit-llvm -o - %s \
2
+ // RUN: | FileCheck %s --check-prefix=GNU64
3
+ // __float128 is unsupported on MSVC
4
+
5
+ __float128 fp128_ret (void ) { return 0 ; }
6
+ // GNU64: define dso_local fp128 @fp128_ret()
7
+
8
+ __float128 fp128_args (__float128 a , __float128 b ) { return a * b ; }
9
+ // GNU64: define dso_local fp128 @fp128_args(fp128 noundef %a, fp128 noundef %b)
10
+
11
+ void fp128_vararg (int a , ...) {
12
+ // GNU64-LABEL: define dso_local void @fp128_vararg
13
+ __builtin_va_list ap ;
14
+ __builtin_va_start (ap , a );
15
+ __float128 i = __builtin_va_arg (ap , __float128 );
16
+ // movaps xmm0, xmmword ptr [rax]
17
+ // GNU64: load ptr, ptr
18
+ // GNU64: load fp128, ptr
19
+ __builtin_va_end (ap );
20
+ }
You can’t perform that action at this time.
0 commit comments