diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2018-02-23 19:30:48 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2018-02-23 19:30:48 +0000 |
commit | 0e355701be41ad5bc6f83313a7f1ced24336c42d (patch) | |
tree | e6d410c6da69daa13c8ad94d2b32259d58fb976f /test/CodeGenCXX/microsoft-abi-byval-vararg.cpp | |
parent | c036db5904d43222dd47aae0b1a3e5a2e0c44ad6 (diff) |
Bring r325915 back.
The tests that failed on a windows host have been fixed.
Original message:
Start setting dso_local for COFF.
With this there are still some GVs where we don't set dso_local
because setGVProperties is never called. I intend to fix that in
followup commits. This is just the bare minimum to teach
shouldAssumeDSOLocal what it should do for COFF.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@325940 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/CodeGenCXX/microsoft-abi-byval-vararg.cpp')
-rw-r--r-- | test/CodeGenCXX/microsoft-abi-byval-vararg.cpp | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/test/CodeGenCXX/microsoft-abi-byval-vararg.cpp b/test/CodeGenCXX/microsoft-abi-byval-vararg.cpp index 6a0a8601c0..9b3b14465a 100644 --- a/test/CodeGenCXX/microsoft-abi-byval-vararg.cpp +++ b/test/CodeGenCXX/microsoft-abi-byval-vararg.cpp @@ -19,12 +19,12 @@ int foo(A a, ...) { return sum; } -// CHECK-LABEL: define i32 @"\01?foo@@YAHUA@@ZZ"(<{ %struct.A }>* inalloca, ...) +// CHECK-LABEL: define dso_local i32 @"\01?foo@@YAHUA@@ZZ"(<{ %struct.A }>* inalloca, ...) int main() { return foo(A(3), 1, 2, 3); } -// CHECK-LABEL: define i32 @main() +// CHECK-LABEL: define dso_local i32 @main() // CHECK: %[[argmem:[^ ]*]] = alloca inalloca <{ %struct.A, i32, i32, i32 }> // CHECK: call i32 {{.*bitcast.*}}@"\01?foo@@YAHUA@@ZZ"{{.*}}(<{ %struct.A, i32, i32, i32 }>* inalloca %[[argmem]]) @@ -40,13 +40,13 @@ void call_var_args() { varargs_three(1, 2, 3, x); } -// CHECK-LABEL: define void @"\01?call_var_args@@YAXXZ"() +// CHECK-LABEL: define dso_local void @"\01?call_var_args@@YAXXZ"() // CHECK: call void {{.*bitcast.*varargs_zero.*}}(<{ %struct.A }>* inalloca %{{.*}}) // CHECK: call void {{.*bitcast.*varargs_one.*}}(<{ i32, %struct.A }>* inalloca %{{.*}}) // CHECK: call void {{.*bitcast.*varargs_two.*}}(<{ i32, i32, %struct.A }>* inalloca %{{.*}}) // CHECK: call void {{.*bitcast.*varargs_three.*}}(<{ i32, i32, i32, %struct.A }>* inalloca %{{.*}}) -// CHECK-LABEL: declare void @"\01?varargs_zero@@YAXZZ"(...) -// CHECK-LABEL: declare void @"\01?varargs_one@@YAXHZZ"(i32, ...) -// CHECK-LABEL: declare void @"\01?varargs_two@@YAXHHZZ"(i32, i32, ...) -// CHECK-LABEL: declare void @"\01?varargs_three@@YAXHHHZZ"(i32, i32, i32, ...) +// CHECK-LABEL: declare dso_local void @"\01?varargs_zero@@YAXZZ"(...) +// CHECK-LABEL: declare dso_local void @"\01?varargs_one@@YAXHZZ"(i32, ...) +// CHECK-LABEL: declare dso_local void @"\01?varargs_two@@YAXHHZZ"(i32, i32, ...) +// CHECK-LABEL: declare dso_local void @"\01?varargs_three@@YAXHHHZZ"(i32, i32, i32, ...) |