aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Stump <mrs@apple.com>2010-01-22 22:37:17 +0000
committerMike Stump <mrs@apple.com>2010-01-22 22:37:17 +0000
commitf9d3e9bb0052d2605d6b33d7de356d534457c9ac (patch)
tree7a06d4036a08624f768bf6532b7e3e164d620b79
parentf57b820109c7f23b45ab6152a9eefc1f6b14eb38 (diff)
Fixup the rest of the testcases to grep the .ll file instead of the .s
file, and add FIXMEs to the remaining broken tests. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@94238 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r--test/CodeGenCXX/virt.cpp285
1 files changed, 22 insertions, 263 deletions
diff --git a/test/CodeGenCXX/virt.cpp b/test/CodeGenCXX/virt.cpp
index aa35895d47..f2fbe22e4d 100644
--- a/test/CodeGenCXX/virt.cpp
+++ b/test/CodeGenCXX/virt.cpp
@@ -201,77 +201,7 @@ struct test9_D : virtual test9_B1, virtual test9_B21, virtual test9_B31 {
virtual void funcD() { }
};
-// CHECK-LP64: __ZTV7test9_D:
-// CHECK-LP64-NEXT: .quad 168
-// CHECK-LP64-NEXT: .quad 152
-// CHECK-LP64-NEXT: .quad 136
-// CHECK-LP64-NEXT: .quad 120
-// CHECK-LP64-NEXT: .quad 104
-// CHECK-LP64-NEXT: .quad 88
-// CHECK-LP64-NEXT: .quad 72
-// CHECK-LP64-NEXT: .quad 56
-// CHECK-LP64-NEXT: .quad 40
-// CHECK-LP64-NEXT: .quad 24
-// CHECK-LP64-NEXT: .quad 8
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN7test9_D5funcDEv
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN8test9_B16funcB1Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN8test9_B26funcB2Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551576
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN8test9_B36funcB3Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551560
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B217funcB21Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551544
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B227funcB22Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551528
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B237funcB23Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 64
-// CHECK-LP64-NEXT: .quad 48
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551512
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B317funcB31Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551496
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B327funcB32Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551480
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN9test9_B337funcB33Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551464
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN10test9_B2328funcB232Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551448
-// CHECK-LP64-NEXT: .quad __ZTI7test9_D
-// CHECK-LP64-NEXT: .quad __ZN10test9_B2318funcB231Ev
+// CHECK-LPLL64:@_ZTV7test9_D = weak_odr constant [70 x i8*] [i8* inttoptr (i64 168 to i8*), i8* inttoptr (i64 152 to i8*), i8* inttoptr (i64 136 to i8*), i8* inttoptr (i64 120 to i8*), i8* inttoptr (i64 104 to i8*), i8* inttoptr (i64 88 to i8*), i8* inttoptr (i64 72 to i8*), i8* inttoptr (i64 56 to i8*), i8* inttoptr (i64 40 to i8*), i8* inttoptr (i64 24 to i8*), i8* inttoptr (i64 8 to i8*), i8* null, i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test9_D*)* @_ZN7test9_D5funcDEv to i8*), i8* null, i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -8 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test9_B1*)* @_ZN8test9_B16funcB1Ev to i8*), i8* null, i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -24 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN8test9_B26funcB2Ev to i8*), i8* null, i8* inttoptr (i64 -40 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN8test9_B36funcB3Ev to i8*), i8* null, i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -56 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test9_B1*)* @_ZN9test9_B217funcB21Ev to i8*), i8* null, i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -72 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN9test9_B227funcB22Ev to i8*), i8* null, i8* inttoptr (i64 -88 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN9test9_B237funcB23Ev to i8*), i8* null, i8* inttoptr (i64 64 to i8*), i8* inttoptr (i64 48 to i8*), i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -104 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test9_B31*)* @_ZN9test9_B317funcB31Ev to i8*), i8* null, i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -120 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.test9_B1*)* @_ZN9test9_B327funcB32Ev to i8*), i8* null, i8* inttoptr (i64 -136 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN9test9_B337funcB33Ev to i8*), i8* null, i8* inttoptr (i64 -152 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN10test9_B2328funcB232Ev to i8*), i8* null, i8* inttoptr (i64 -168 to i8*), i8* bitcast (%2* @_ZTI7test9_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN10test9_B2318funcB231Ev to i8*)] ; <[70 x i8*]*> [#uses=12]
struct test10_O { int i; };
@@ -300,26 +230,7 @@ class test10_D : test10_B1, test10_B2 {
void ftest10_B2aa() { }
};
-// CHECK-LP64:__ZTV8test10_D:
-// CHECK-LP64-NEXT: .quad 40
-// CHECK-LP64-NEXT: .quad 24
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test10_D
-// CHECK-LP64-NEXT: .quad __ZN9test10_B110ftest10_B1Ev
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 8
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI8test10_D
-// CHECK-LP64-NEXT: .quad __ZN10test10_B2a11ftest10_B2aEv
-// CHECK-LP64-NEXT: .quad __ZN9test10_B210ftest10_B2Ev
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad __ZTI8test10_D
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad 18446744073709551576
-// CHECK-LP64-NEXT: .quad __ZTI8test10_D
+// CHECK-LPLL64:@_ZTV8test10_D = weak_odr constant [19 x i8*] [i8* inttoptr (i64 40 to i8*), i8* inttoptr (i64 24 to i8*), i8* inttoptr (i64 16 to i8*), i8* null, i8* bitcast (%1* @_ZTI8test10_D to i8*), i8* bitcast (void (%struct.test10_B1*)* @_ZN9test10_B110ftest10_B1Ev to i8*), i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 8 to i8*), i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -8 to i8*), i8* bitcast (%1* @_ZTI8test10_D to i8*), i8* bitcast (void (%struct.test10_B2a*)* @_ZN10test10_B2a11ftest10_B2aEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN9test10_B210ftest10_B2Ev to i8*), i8* inttoptr (i64 -8 to i8*), i8* inttoptr (i64 -24 to i8*), i8* bitcast (%1* @_ZTI8test10_D to i8*), i8* inttoptr (i64 -24 to i8*), i8* inttoptr (i64 -40 to i8*), i8* bitcast (%1* @_ZTI8test10_D to i8*)] ; <[19 x i8*]*> [#uses=4]
struct test11_B {
@@ -334,14 +245,8 @@ struct test11_D : test11_B {
virtual void D2() { }
};
-// CHECK-LP64:__ZTV8test11_D:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test11_D
-// CHECK-LP64-NEXT: .quad __ZN8test11_B2B1Ev
-// CHECK-LP64-NEXT: .quad __ZN8test11_D1DEv
-// CHECK-LP64-NEXT: .quad __ZN8test11_B2B2Ev
-// CHECK-LP64-NEXT: .quad __ZN8test11_D2D1Ev
-// CHECK-LP64-NEXT: .quad __ZN8test11_D2D2Ev
+// CHECK-LPLL64:@_ZTV8test11_D = weak_odr constant [7 x i8*] [i8* null, i8* bitcast (%4* @_ZTI8test11_D to i8*), i8* bitcast (void (%class.test14*)* @_ZN8test11_B2B1Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN8test11_D1DEv to i8*), i8* bitcast (void (%class.test14*)* @_ZN8test11_B2B2Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN8test11_D2D1Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN8test11_D2D2Ev to i8*)]
+
struct test13_B {
virtual void B1() { }
@@ -380,46 +285,7 @@ struct test13_D : test13_NV1, virtual test13_B2 {
virtual void fooNV1() { }
};
-// CHECK-LP64:__ZTV8test13_D:
-// CHECK-LP64-NEXT: .quad 24
-// CHECK-LP64-NEXT: .quad 8
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test13_D
-// CHECK-LP64-NEXT: .quad __ZN8test13_D6fooNV1Ev
-// CHECK-LP64-NEXT: .quad __ZN8test13_D1DEv
-// CHECK-LP64-NEXT: .quad __ZN8test13_D2D1Ev
-// CHECK-LP64-NEXT: .quad __ZN8test13_D2DbEv
-// CHECK-LP64-NEXT: .quad __ZN8test13_D2DdEv
-// CHECK-LP64-NEXT: .quad __ZN8test13_D2D2Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI8test13_D
-// CHECK-LP64-NEXT: .quad __ZN9test13_B23B2aEv
-// CHECK-LP64-NEXT: .quad __ZN9test13_B22B2Ev
-// CHECK-LP64-NEXT: .quad __ZTv0_n48_N8test13_D1DEv
-// CHECK-LP64-NEXT: .quad __ZN9test13_B22DaEv
-// CHECK-LP64-NEXT: .quad __ZTv0_n64_N8test13_D2DdEv
-// CHECK-LP64-NEXT: .quad __ZN9test13_B23B2bEv
-// CHECK-LP64-NEXT: .quad 18446744073709551600
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad 18446744073709551600
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551592
-// CHECK-LP64-NEXT: .quad __ZTI8test13_D
-// CHECK-LP64-NEXT: .quad __ZN8test13_B2B1Ev
-// CHECK-LP64-NEXT: .quad __ZTv0_n32_N8test13_D1DEv
-// CHECK-LP64-NEXT: .quad __ZTv0_n40_N9test13_B22DaEv
-// CHECK-LP64-NEXT: .quad __ZTv0_n48_N8test13_D2DbEv
-// CHECK-LP64-NEXT: .quad __ZN8test13_B2DcEv
-// CHECK-LP64-NEXT: .quad __ZTv0_n64_N9test13_B22B2Ev
+// CHECK-LPLL64:@_ZTV8test13_D = weak_odr constant [39 x i8*] [i8* inttoptr (i64 24 to i8*), i8* inttoptr (i64 8 to i8*), i8* null, i8* bitcast (%1* @_ZTI8test13_D to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D6fooNV1Ev to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D1DEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D2D1Ev to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D2DbEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D2DdEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZN8test13_D2D2Ev to i8*), i8* null, i8* inttoptr (i64 -8 to i8*), i8* null, i8* inttoptr (i64 -8 to i8*), i8* null, i8* null, i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -8 to i8*), i8* bitcast (%1* @_ZTI8test13_D to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN9test13_B23B2aEv to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN9test13_B22B2Ev to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZTv0_n48_N8test13_D1DEv to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN9test13_B22DaEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZTv0_n64_N8test13_D2DdEv to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZN9test13_B23B2bEv to i8*), i8* inttoptr (i64 -16 to i8*), i8* null, i8* inttoptr (i64 -24 to i8*), i8* inttoptr (i64 -16 to i8*), i8* inttoptr (i64 -24 to i8*), i8* null, i8* inttoptr (i64 -24 to i8*), i8* bitcast (%1* @_ZTI8test13_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN8test13_B2B1Ev to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZTv0_n32_N8test13_D1DEv to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZTv0_n40_N9test13_B22DaEv to i8*), i8* bitcast (void (%struct.test10_B2*)* @_ZTv0_n48_N8test13_D2DbEv to i8*), i8* bitcast (void (%struct.B*)* @_ZN8test13_B2DcEv to i8*), i8* bitcast (void (%struct.test13_B2*)* @_ZTv0_n64_N9test13_B22B2Ev to i8*)]
class test14 {
@@ -459,30 +325,7 @@ struct test15_D : test15_NV1, virtual test15_B2 {
virtual test15_D *foo1() { return 0; }
};
-// CHECK-LP64:__ZTV8test15_D:
-// CHECK-LP64-NEXT: .quad 32
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test15_D
-// CHECK-LP64-NEXT: .quad __ZN10test15_NV16fooNV1Ev
-// CHECK-LP64-NEXT: .quad __ZN8test15_D4foo1Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551600
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 16
-// CHECK-LP64-NEXT: .quad 18446744073709551600
-// CHECK-LP64-NEXT: .quad __ZTI8test15_D
-// CHECK-LP64-NEXT: .quad __ZN10test15_NV16fooNV1Ev
-// CHECK-LP64-NEXT: .quad __ZTcv0_n40_v0_n24_N8test15_D4foo1Ev
-// CHECK-LP64-NEXT: .quad __ZN9test15_B24foo2Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551600
-// CHECK-LP64-NEXT: .quad 18446744073709551584
-// CHECK-LP64-NEXT: .quad 18446744073709551584
-// CHECK-LP64-NEXT: .quad __ZTI8test15_D
-// CHECK-LP64-NEXT: .quad __ZTcv0_n24_v0_n32_N8test15_D4foo1Ev
-// CHECK-LP64-NEXT: .quad __ZTcv0_n32_v0_n24_N9test15_B24foo2Ev
-// CHECK-LP64-NEXT: .quad __ZN8test15_B4foo3Ev
+// CHECK-LPLL64:@_ZTV8test15_D = weak_odr constant [23 x i8*] [i8* inttoptr (i64 32 to i8*), i8* inttoptr (i64 16 to i8*), i8* null, i8* bitcast (%1* @_ZTI8test15_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN10test15_NV16fooNV1Ev to i8*), i8* bitcast (%struct.test15_D* (%struct.test15_D*)* @_ZN8test15_D4foo1Ev to i8*), i8* null, i8* inttoptr (i64 -16 to i8*), i8* null, i8* inttoptr (i64 16 to i8*), i8* inttoptr (i64 -16 to i8*), i8* bitcast (%1* @_ZTI8test15_D to i8*), i8* bitcast (void (%struct.B*)* @_ZN10test15_NV16fooNV1Ev to i8*), i8* bitcast (%struct.test15_D* (%struct.test15_D*)* @_ZTcv0_n40_v0_n24_N8test15_D4foo1Ev to i8*), i8* bitcast (%struct.test15_B2* (%struct.test15_B2*)* @_ZN9test15_B24foo2Ev to i8*), i8* null, i8* inttoptr (i64 -16 to i8*), i8* inttoptr (i64 -32 to i8*), i8* inttoptr (i64 -32 to i8*), i8* bitcast (%1* @_ZTI8test15_D to i8*), i8* bitcast (%struct.test15_D* (%struct.test15_D*)* @_ZTcv0_n24_v0_n32_N8test15_D4foo1Ev to i8*), i8* bitcast (%struct.test15_B2* (%struct.test15_B2*)* @_ZTcv0_n32_v0_n24_N9test15_B24foo2Ev to i8*), i8* bitcast (%struct.B* (%struct.B*)* @_ZN8test15_B4foo3Ev to i8*)]
struct test16_NV1 {
@@ -518,6 +361,7 @@ struct test16_D : test16_NV1, virtual test16_B2 {
virtual test16_D *foo1() { return 0; }
};
+// FIXME:
// CHECK-LP64: __ZTV8test16_D:
// CHECK-LP64-NEXT: .quad 32
// CHECK-LP64-NEXT: .quad 16
@@ -580,23 +424,11 @@ class test17_D : public test17_B2 {
};
-// CHECK-LP64:__ZTV8test17_D:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test17_D
-// CHECK-LP64-NEXT: .quad __ZN9test17_B23fooEv
-// CHECK-LP64-NEXT: .quad __ZN8test17_D3barEv
+// CHECK-LPLL64:@_ZTV8test17_D = weak_odr constant [4 x i8*] [i8* null, i8* bitcast (%4* @_ZTI8test17_D to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test17_B23fooEv to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN8test17_D3barEv to i8*)]
-// CHECK-LP64:__ZTV9test17_B2:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI9test17_B2
-// CHECK-LP64-NEXT: .quad __ZN9test17_B23fooEv
-// CHECK-LP64-NEXT: .quad ___cxa_pure_virtual
+// CHECK-LPLL64:@_ZTV9test17_B2 = weak_odr constant [4 x i8*] [i8* null, i8* bitcast (%4* @_ZTI9test17_B2 to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test17_B23fooEv to i8*), i8* bitcast (void ()* @__cxa_pure_virtual to i8*)]
-// CHECK-LP64:__ZTV9test17_B1:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI9test17_B1
-// CHECK-LP64-NEXT: .quad ___cxa_pure_virtual
-// CHECK-LP64-NEXT: .quad __ZN9test17_B13barEv
+// CHECK-LPLL64:@_ZTV9test17_B1 = weak_odr constant [4 x i8*] [i8* null, i8* bitcast (%0* @_ZTI9test17_B1 to i8*), i8* bitcast (void ()* @__cxa_pure_virtual to i8*), i8* bitcast (void (%class.test14*)* @_ZN9test17_B13barEv to i8*)]
struct test18_NV1 {
@@ -678,36 +510,9 @@ struct test19_D : virtual test19_B4 {
};
-// CHECK-LP64: __ZTV8test19_D:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test19_D
-// CHECK-LP64-NEXT: .quad __ZN9test19_B13fB1Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B26foB1B2Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B36foB1B3Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B46foB1B4Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B23fB2Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B36foB2B3Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B46foB2B4Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B33fB3Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B46foB3B4Ev
-// CHECK-LP64-NEXT: .quad __ZN9test19_B43fB4Ev
+// CHECK-LPLL64:@_ZTV8test19_D = weak_odr constant [28 x i8*] [i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* null, i8* bitcast (%3* @_ZTI8test19_D to i8*), i8* bitcast (void (%class.test14*)* @_ZN9test19_B13fB1Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B26foB1B2Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B36foB1B3Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B46foB1B4Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B23fB2Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B36foB2B3Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B46foB2B4Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B33fB3Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B46foB3B4Ev to i8*), i8* bitcast (void (%class.test17_B2*)* @_ZN9test19_B43fB4Ev to i8*)]
+// FIXME:
// CHECK-LP64: __ZTT8test19_D:
// CHECK-LP64-NEXT: .quad (__ZTV8test19_D) + 144
// CHECK-LP64-NEXT: .quad (__ZTV8test19_D) + 144
@@ -719,7 +524,6 @@ struct test19_D : virtual test19_B4 {
// CHECK-LP64-NEXT .quad (__ZTC8test19_D0_9test19_B2) + 88
// CHECK-LP64-NEXT .quad (__ZTC8test19_D0_9test19_B1) + 24
-
class test20_V {
virtual void foo1();
};
@@ -733,33 +537,13 @@ class test20_B1 : virtual test20_V1 {
class test20_D : public test20_B, public test20_B1 {
};
-// CHECK-LP64: __ZTV8test20_D:
-// CHECK-LP64-NEXT: .quad 8
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test20_D
-// CHECK-LP64-NEXT: .quad __ZN8test20_V4foo1Ev
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI8test20_D
-// CHECK-LP64-NEXT: .quad __ZN9test20_V14foo2Ev
+// CHECK-LPLL64:@_ZTV8test20_D = weak_odr constant [11 x i8*] [i8* inttoptr (i64 8 to i8*), i8* null, i8* null, i8* null, i8* bitcast (%1* @_ZTI8test20_D to i8*), i8* bitcast (void (%class.test14*)* @_ZN8test20_V4foo1Ev to i8*), i8* null, i8* null, i8* inttoptr (i64 -8 to i8*), i8* bitcast (%1* @_ZTI8test20_D to i8*), i8* bitcast (void (%class.test14*)* @_ZN9test20_V14foo2Ev to i8*)]
-// CHECK-LP64: __ZTC8test20_D0_8test20_B:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test20_B
-// CHECK-LP64-NEXT: .quad __ZN8test20_V4foo1Ev
+// CHECK-LPLL64:@_ZTC8test20_D0_8test20_B = internal constant [5 x i8*] [i8* null, i8* null, i8* null, i8* bitcast (%3* @_ZTI8test20_B to i8*), i8* bitcast (void (%class.test14*)* @_ZN8test20_V4foo1Ev to i8*)]
-// CHECK-LP64: __ZTC8test20_D8_9test20_B1:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI9test20_B1
-// CHECK-LP64-NEXT: .quad __ZN9test20_V14foo2Ev
+// CHECK-LPLL64:@_ZTC8test20_D8_9test20_B1 = internal constant [5 x i8*] [i8* null, i8* null, i8* null, i8* bitcast (%3* @_ZTI9test20_B1 to i8*), i8* bitcast (void (%class.test14*)* @_ZN9test20_V14foo2Ev to i8*)] ; <[5 x i8*]*> [#uses=1]
+// FIXME:
// CHECK-LP64: __ZTT8test20_D:
// CHECK-LP64-NEXT: .quad (__ZTV8test20_D) + 40
// CHECK-LP64-NEXT: .quad (__ZTC8test20_D0_8test20_B) + 32
@@ -785,33 +569,13 @@ class test21_D : public test21_B, public test21_B1 {
void foo() { }
};
-// CHECK-LP64: __ZTV8test21_D:
-// CHECK-LP64-NEXT: .quad 8
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test21_D
-// CHECK-LP64-NEXT: .quad __ZN8test21_D3fooEv
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI8test21_D
-// CHECK-LP64-NEXT: .quad __ZTv0_n24_N8test21_D3fooEv
+// CHECK-LPLL64:@_ZTV8test21_D = weak_odr constant [11 x i8*] [i8* inttoptr (i64 8 to i8*), i8* null, i8* null, i8* null, i8* bitcast (%1* @_ZTI8test21_D to i8*), i8* bitcast (void (%class.test20_D*)* @_ZN8test21_D3fooEv to i8*), i8* null, i8* inttoptr (i64 -8 to i8*), i8* inttoptr (i64 -8 to i8*), i8* bitcast (%1* @_ZTI8test21_D to i8*), i8* bitcast (void (%class.test20_D*)* @_ZTv0_n24_N8test21_D3fooEv to i8*)]
-// CHECK-LP64: __ZTC8test21_D0_8test21_B:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test21_B
-// CHECK-LP64-NEXT: .quad __ZN8test21_V3fooEv
+// CHECK-LPLL64:@_ZTC8test21_D0_8test21_B = internal constant [5 x i8*] [i8* null, i8* null, i8* null, i8* bitcast (%3* @_ZTI8test21_B to i8*), i8* bitcast (void (%class.test14*)* @_ZN8test21_V3fooEv to i8*)]
-// CHECK-LP64: __ZTC8test21_D8_9test21_B1:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI9test21_B1
-// CHECK-LP64-NEXT: .quad __ZN9test21_V13fooEv
+// CHECK-LPLL64:@_ZTC8test21_D8_9test21_B1 = internal constant [5 x i8*] [i8* null, i8* null, i8* null, i8* bitcast (%3* @_ZTI9test21_B1 to i8*), i8* bitcast (void (%class.test14*)* @_ZN9test21_V13fooEv to i8*)] ; <[5 x i8*]*> [#uses=1]
+// FIXME:
// CHECK-LP64: __ZTT8test21_D:
// CHECK-LP64-NEXT: .quad (__ZTV8test21_D) + 40
// CHECK-LP64-NEXT: .quad (__ZTC8test21_D0_8test21_B) + 32
@@ -828,13 +592,7 @@ struct test22_s2 { virtual void dtor() { } };
struct test22_s3 : test22_s1, test22_s2 { virtual void dtor() { } };
struct test22_D : test22_s3 { virtual void dtor() { } };
-// CHECK-LP64: __ZTV8test22_D:
-// CHECK-LP64-NEXT: .quad 0
-// CHECK-LP64-NEXT: .quad __ZTI8test22_D
-// CHECK-LP64-NEXT: .quad __ZN8test22_D4dtorEv
-// CHECK-LP64-NEXT: .quad 18446744073709551608
-// CHECK-LP64-NEXT: .quad __ZTI8test22_D
-// CHECK-LP64-NEXT: .quad __ZThn8_N8test22_D4dtorEv
+// CHECK-LPLL64:@_ZTV8test22_D = weak_odr constant [6 x i8*] [i8* null, i8* bitcast (%4* @_ZTI8test22_D to i8*), i8* bitcast (void (%class.test20_D*)* @_ZN8test22_D4dtorEv to i8*), i8* inttoptr (i64 -8 to i8*), i8* bitcast (%4* @_ZTI8test22_D to i8*), i8* bitcast (void (%class.test20_D*)* @_ZThn8_N8test22_D4dtorEv to i8*)]
class test23_s1 {
@@ -854,6 +612,7 @@ class test23_D: virtual test23_s4 {
};
+// FIXME:
// CHECK-LP64: __ZTV8test23_D:
// CHECK-LP64-NEXT: .quad 0
// CHECK-LP64-NEXT: .quad 8