diff options
author | NAKAMURA Takumi <geek4civic@gmail.com> | 2015-12-15 22:42:28 +0000 |
---|---|---|
committer | NAKAMURA Takumi <geek4civic@gmail.com> | 2015-12-15 22:42:28 +0000 |
commit | db87d5dbfdc8fe7322d96984e2b7a0cb242e4c19 (patch) | |
tree | ffa54d51f60807aff030b56ed59399dd6220d57c /clang/test/CodeGen/ms_this.cpp | |
parent | 29dd05e92fec48d1548d5f982a4a5494facdac84 (diff) | |
download | bcm5719-llvm-db87d5dbfdc8fe7322d96984e2b7a0cb242e4c19.tar.gz bcm5719-llvm-db87d5dbfdc8fe7322d96984e2b7a0cb242e4c19.zip |
clang/test/CodeGen/ms_this.cpp: Fix for -Asserts.
llvm-svn: 255690
Diffstat (limited to 'clang/test/CodeGen/ms_this.cpp')
-rw-r--r-- | clang/test/CodeGen/ms_this.cpp | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/clang/test/CodeGen/ms_this.cpp b/clang/test/CodeGen/ms_this.cpp index f169c72d9b8..8647a5bc8b8 100644 --- a/clang/test/CodeGen/ms_this.cpp +++ b/clang/test/CodeGen/ms_this.cpp @@ -13,23 +13,27 @@ public: void runc(); }; +// CHECK: define void @"\01?runc@t2@@ void t2::runc() { double num = 0; __asm { mov rax,[this] - //CHECK: %this.addr = alloca %class.t2* - //CHECK: call void asm sideeffect inteldialect "mov rax,qword ptr $1{{.*}}%class.t2* %this1 + // CHECK: [[THIS_ADDR_T2:%.+]] = alloca %class.t2* + // CHECK: [[THIS1_T2:%.+]] = load %class.t2*, %class.t2** [[THIS_ADDR_T2]], + // CHECK: call void asm sideeffect inteldialect "mov rax,qword ptr $1{{.*}}%class.t2* [[THIS1_T2]] mov rbx,[rax] mov num, rbx }; } +// CHECK: define void @"\01?runc@t1@@ void t1::runc() { double num = 0; __asm { mov rax,[this] - //CHECK: %this.addr = alloca %class.t1* - //CHECK: call void asm sideeffect inteldialect "mov rax,qword ptr $1{{.*}}%class.t1* %this1 + // CHECK: [[THIS_ADDR_T1:%.+]] = alloca %class.t1* + // CHECK: [[THIS1_T1:%.+]] = load %class.t1*, %class.t1** [[THIS_ADDR_T1]], + // CHECK: call void asm sideeffect inteldialect "mov rax,qword ptr $1{{.*}}%class.t1* [[THIS1_T1]] mov rbx,[rax] mov num, rbx }; @@ -37,10 +41,12 @@ void t1::runc() { struct s { int a; + // CHECK: define linkonce_odr void @"\01?func@s@@ void func() { __asm mov rax, [this] - //CHECK: %this.addr = alloca %struct.s* - //CHECK: call void asm sideeffect inteldialect "mov rax, qword ptr $0{{.*}}%struct.s* %this1 + // CHECK: [[THIS_ADDR_S:%.+]] = alloca %struct.s* + // CHECK: [[THIS1_S:%.+]] = load %struct.s*, %struct.s** [[THIS_ADDR_S]], + // CHECK: call void asm sideeffect inteldialect "mov rax, qword ptr $0{{.*}}%struct.s* [[THIS1_S]] } } f3; |