summaryrefslogtreecommitdiffstats
path: root/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
diff options
context:
space:
mode:
authorTimur Iskhodzhanov <timurrrr@google.com>2013-10-16 11:38:29 +0000
committerTimur Iskhodzhanov <timurrrr@google.com>2013-10-16 11:38:29 +0000
commit8e2d6eaf6f0bb044ed56487d2530c7f0f8d9da92 (patch)
treeda21113e2b1ff7cb80153234267358b667ab5cc3 /clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
parentd8f595edf131b95a88a5099d28a92142698f4352 (diff)
downloadbcm5719-llvm-8e2d6eaf6f0bb044ed56487d2530c7f0f8d9da92.tar.gz
bcm5719-llvm-8e2d6eaf6f0bb044ed56487d2530c7f0f8d9da92.zip
Remove a workaround for PR16406 from the vtables-virtual-inheritance test
llvm-svn: 192786
Diffstat (limited to 'clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp')
-rw-r--r--clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp19
1 files changed, 8 insertions, 11 deletions
diff --git a/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp b/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
index 4a7f5da15ef..a7ddd37d6f8 100644
--- a/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
+++ b/clang/test/CodeGenCXX/microsoft-abi-vtables-virtual-inheritance.cpp
@@ -42,7 +42,6 @@ struct C: virtual A {
// MANGLING-DAG: @"\01??_7C@@6B@"
- ~C(); // Currently required to have correct record layout, see PR16406
virtual void f();
};
@@ -148,7 +147,7 @@ struct X: virtual C {
// TEST4: VFTable for 'A' in 'C' in 'Test4::X' (2 entries).
// TEST4-NEXT: 0 | void C::f()
- // TEST4-NEXT: [this adjustment: 12 non-virtual]
+ // TEST4-NEXT: [this adjustment: 8 non-virtual]
// TEST4-NEXT: 1 | void A::z()
// TEST4-NOT: VFTable indices for 'Test4::X'
@@ -156,7 +155,7 @@ struct X: virtual C {
// MANGLING-DAG: @"\01??_7X@Test4@@6B@"
// Also check the mangling of the thunk.
- // MANGLING-DAG: define weak x86_thiscallcc void @"\01?f@C@@WPPPPPPPE@AEXXZ"
+ // MANGLING-DAG: define weak x86_thiscallcc void @"\01?f@C@@WPPPPPPPI@AEXXZ"
};
X x;
@@ -215,11 +214,11 @@ struct X : C {
struct Y : virtual X {
// TEST7: VFTable for 'A' in 'C' in 'Test7::X' in 'Test7::Y' (2 entries).
// TEST7-NEXT: 0 | void C::f()
- // TEST7-NEXT: [this adjustment: 12 non-virtual]
+ // TEST7-NEXT: [this adjustment: 8 non-virtual]
// TEST7-NEXT: 1 | void A::z()
// TEST7: Thunks for 'void C::f()' (1 entry).
- // TEST7-NEXT: 0 | this adjustment: 12 non-virtual
+ // TEST7-NEXT: 0 | this adjustment: 8 non-virtual
// TEST7-NOT: VFTable indices for 'Test7::Y'
@@ -336,8 +335,6 @@ struct W : Z, D, virtual A, virtual B {
W w;
struct T : Z, D, virtual A, virtual B {
- ~T(); // Currently required to have correct record layout, see PR16406
-
// TEST9-T: VFTable for 'Test9::Y' in 'Test9::Z' in 'Test9::T' (1 entries).
// TEST9-T-NEXT: 0 | void Test9::T::h()
@@ -357,15 +354,15 @@ struct T : Z, D, virtual A, virtual B {
// TEST9-T: VFTable for 'A' in 'D' in 'Test9::T' (2 entries).
// TEST9-T-NEXT: 0 | void Test9::T::f()
- // TEST9-T-NEXT: [this adjustment: -16 non-virtual]
+ // TEST9-T-NEXT: [this adjustment: -8 non-virtual]
// TEST9-T-NEXT: 1 | void Test9::T::z()
- // TEST9-T-NEXT: [this adjustment: -16 non-virtual]
+ // TEST9-T-NEXT: [this adjustment: -8 non-virtual]
// TEST9-T: Thunks for 'void Test9::T::f()' (1 entry).
- // TEST9-T-NEXT: 0 | this adjustment: -16 non-virtual
+ // TEST9-T-NEXT: 0 | this adjustment: -8 non-virtual
// TEST9-T: Thunks for 'void Test9::T::z()' (1 entry).
- // TEST9-T-NEXT: 0 | this adjustment: -16 non-virtual
+ // TEST9-T-NEXT: 0 | this adjustment: -8 non-virtual
// TEST9-T: VFTable indices for 'Test9::T' (4 entries).
// TEST9-T-NEXT: via vfptr at offset 0
OpenPOWER on IntegriCloud