diff options
Diffstat (limited to 'test/CodeGenCXX/microsoft-abi-vbtables.cpp')
-rw-r--r-- | test/CodeGenCXX/microsoft-abi-vbtables.cpp | 376 |
1 files changed, 188 insertions, 188 deletions
diff --git a/test/CodeGenCXX/microsoft-abi-vbtables.cpp b/test/CodeGenCXX/microsoft-abi-vbtables.cpp index df0689423872c..46e159c628f09 100644 --- a/test/CodeGenCXX/microsoft-abi-vbtables.cpp +++ b/test/CodeGenCXX/microsoft-abi-vbtables.cpp @@ -19,11 +19,11 @@ D d; // Force vbtable emission. // C: vbptr C // int c -// CHECK-DAG: @"\01??_8D@Test1@@7B01@@" = linkonce_odr unnamed_addr constant [4 x i32] [i32 0, i32 8, i32 12, i32 20] -// CHECK-DAG: @"\01??_8D@Test1@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 -4] -// CHECK-DAG: @"\01??_8D@Test1@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 -12] -// CHECK-DAG: @"\01??_8C@Test1@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] -// CHECK-DAG: @"\01??_8B@Test1@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test1@@7B01@@" = linkonce_odr unnamed_addr constant [4 x i32] [i32 0, i32 8, i32 12, i32 20] +// CHECK-DAG: @"??_8D@Test1@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 -4] +// CHECK-DAG: @"??_8D@Test1@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 -12] +// CHECK-DAG: @"??_8C@Test1@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8B@Test1@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] } namespace Test2 { @@ -42,10 +42,10 @@ D d; // Force vbtable emission. // D: int d // A: int a -// CHECK-DAG: @"\01??_8D@Test2@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 20] -// CHECK-DAG: @"\01??_8D@Test2@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8C@Test2@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] -// CHECK-DAG: @"\01??_8B@Test2@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test2@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 20] +// CHECK-DAG: @"??_8D@Test2@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8C@Test2@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8B@Test2@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] } namespace Test3 { @@ -54,7 +54,7 @@ struct B { int b; }; struct C : virtual A, virtual B { int c; }; C c; -// CHECK-DAG: @"\01??_8C@Test3@@7B@" = {{.*}} [3 x i32] [i32 0, i32 8, i32 12] +// CHECK-DAG: @"??_8C@Test3@@7B@" = {{.*}} [3 x i32] [i32 0, i32 8, i32 12] } namespace Test4 { @@ -64,8 +64,8 @@ struct B : virtual A { int b; }; struct C : B, virtual A { int c; }; C c; // Force vbtable emission. -// CHECK-DAG: @"\01??_8C@Test4@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8B@Test4@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8C@Test4@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8B@Test4@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] } namespace Test5 { @@ -77,10 +77,10 @@ struct C : B { int c; }; struct D : B, C { int d; }; D d; // Force vbtable emission. -// CHECK-DAG: @"\01??_8D@Test5@@7BB@1@@" -// CHECK-DAG: @"\01??_8D@Test5@@7BC@1@@" -// CHECK-DAG: @"\01??_8C@Test5@@7B@" -// CHECK-DAG: @"\01??_8B@Test5@@7B@" +// CHECK-DAG: @"??_8D@Test5@@7BB@1@@" +// CHECK-DAG: @"??_8D@Test5@@7BC@1@@" +// CHECK-DAG: @"??_8C@Test5@@7B@" +// CHECK-DAG: @"??_8B@Test5@@7B@" } namespace Test6 { @@ -94,22 +94,22 @@ struct F : E, B, C { int f; }; struct G : F, virtual E { int g; }; G g; -// CHECK-DAG: @"\01??_8G@Test6@@7BB@1@E@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test6@@7BC@1@E@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test6@@7BB@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test6@@7BC@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test6@@7BB@1@E@1@@" = -// CHECK-DAG: @"\01??_8G@Test6@@7BC@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test6@@7BB@1@E@1@@" = {{.*}} [2 x i32] [i32 0, i32 52] -// CHECK-DAG: @"\01??_8F@Test6@@7BC@1@E@1@@" = {{.*}} [2 x i32] [i32 0, i32 44] -// CHECK-DAG: @"\01??_8F@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 24] -// CHECK-DAG: @"\01??_8F@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 16] -// CHECK-DAG: @"\01??_8C@Test6@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8B@Test6@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] -// CHECK-DAG: @"\01??_8E@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 28] -// CHECK-DAG: @"\01??_8E@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 20] -// CHECK-DAG: @"\01??_8D@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 24] -// CHECK-DAG: @"\01??_8D@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 16] +// CHECK-DAG: @"??_8G@Test6@@7BB@1@E@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test6@@7BC@1@E@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test6@@7BB@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test6@@7BC@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test6@@7BB@1@E@1@@" = +// CHECK-DAG: @"??_8G@Test6@@7BC@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test6@@7BB@1@E@1@@" = {{.*}} [2 x i32] [i32 0, i32 52] +// CHECK-DAG: @"??_8F@Test6@@7BC@1@E@1@@" = {{.*}} [2 x i32] [i32 0, i32 44] +// CHECK-DAG: @"??_8F@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 24] +// CHECK-DAG: @"??_8F@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 16] +// CHECK-DAG: @"??_8C@Test6@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8B@Test6@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8E@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 28] +// CHECK-DAG: @"??_8E@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 20] +// CHECK-DAG: @"??_8D@Test6@@7BB@1@@" = {{.*}} [2 x i32] [i32 0, i32 24] +// CHECK-DAG: @"??_8D@Test6@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 16] } namespace Test7 { @@ -121,8 +121,8 @@ struct D : virtual A { int d; }; struct E : B, D, virtual A, virtual C { int e; }; E o; -// CHECK-DAG: @"\01??_8E@Test7@@7B@" = {{.*}} [3 x i32] [i32 0, i32 12, i32 16] -// CHECK-DAG: @"\01??_8D@Test7@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8E@Test7@@7B@" = {{.*}} [3 x i32] [i32 0, i32 12, i32 16] +// CHECK-DAG: @"??_8D@Test7@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] } namespace Test8 { @@ -133,10 +133,10 @@ struct C : B { int c; }; struct D : virtual C { int d; }; D o; -// CHECK-DAG: @"\01??_8D@Test8@@7B01@@" = {{.*}} [3 x i32] [i32 0, i32 8, i32 12] -// CHECK-DAG: @"\01??_8D@Test8@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 -4] -// CHECK-DAG: @"\01??_8C@Test8@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8B@Test8@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test8@@7B01@@" = {{.*}} [3 x i32] [i32 0, i32 8, i32 12] +// CHECK-DAG: @"??_8D@Test8@@7BC@1@@" = {{.*}} [2 x i32] [i32 0, i32 -4] +// CHECK-DAG: @"??_8C@Test8@@7B@" = {{.*}} [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8B@Test8@@7B@" = {{.*}} [2 x i32] [i32 0, i32 8] } namespace Test9 { @@ -150,17 +150,17 @@ struct D : BB, C { int d; }; struct E : virtual D { }; E e; -// CHECK-DAG: @"\01??_8E@Test9@@7B01@@" = -// CHECK-DAG: @"\01??_8E@Test9@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test9@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test9@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test9@@7B@" = -// CHECK-DAG: @"\01??_8D@Test9@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test9@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test9@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test9@@7BB@1@@" = -// CHECK-DAG: @"\01??_8BB@Test9@@7B@" = -// CHECK-DAG: @"\01??_8B@Test9@@7B@" = +// CHECK-DAG: @"??_8E@Test9@@7B01@@" = +// CHECK-DAG: @"??_8E@Test9@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test9@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test9@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test9@@7B@" = +// CHECK-DAG: @"??_8D@Test9@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test9@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test9@@7B01@@" = +// CHECK-DAG: @"??_8C@Test9@@7BB@1@@" = +// CHECK-DAG: @"??_8BB@Test9@@7B@" = +// CHECK-DAG: @"??_8B@Test9@@7B@" = } namespace Test10 { @@ -170,8 +170,8 @@ struct C : virtual A { int c; }; struct D : B, C { int d; }; D d; -// CHECK-DAG: @"\01??_8D@Test10@@7B@" = -// CHECK-DAG: @"\01??_8C@Test10@@7B@" = +// CHECK-DAG: @"??_8D@Test10@@7B@" = +// CHECK-DAG: @"??_8C@Test10@@7B@" = } @@ -185,12 +185,12 @@ struct E : C { int e; }; struct F : D, E { int f; }; F f; -// CHECK-DAG: @"\01??_8F@Test11@@7BD@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 28] -// CHECK-DAG: @"\01??_8F@Test11@@7BE@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 16] -// CHECK-DAG: @"\01??_8E@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8C@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] -// CHECK-DAG: @"\01??_8D@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 12] -// CHECK-DAG: @"\01??_8B@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8F@Test11@@7BD@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 28] +// CHECK-DAG: @"??_8F@Test11@@7BE@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 16] +// CHECK-DAG: @"??_8E@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8C@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 12] +// CHECK-DAG: @"??_8B@Test11@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] } @@ -203,17 +203,17 @@ struct D : C, B { int d; }; struct E : D, C, B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test12@@7BC@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test12@@7BB@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test12@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test12@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test12@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test12@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test12@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test12@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test12@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test12@@7B@" = -// CHECK-DAG: @"\01??_8B@Test12@@7B@" = +// CHECK-DAG: @"??_8E@Test12@@7BC@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test12@@7BB@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test12@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test12@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test12@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test12@@7B01@@" = +// CHECK-DAG: @"??_8C@Test12@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test12@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test12@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test12@@7B@" = +// CHECK-DAG: @"??_8B@Test12@@7B@" = } namespace Test13 { @@ -224,17 +224,17 @@ struct D : virtual C { int d; }; struct E : D, C, B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test13@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test13@@7BC@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test13@@7BB@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test13@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test13@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test13@@7B@" = -// CHECK-DAG: @"\01??_8D@Test13@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test13@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test13@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test13@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test13@@7B@" = +// CHECK-DAG: @"??_8E@Test13@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test13@@7BC@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test13@@7BB@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test13@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test13@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test13@@7B@" = +// CHECK-DAG: @"??_8D@Test13@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test13@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test13@@7B01@@" = +// CHECK-DAG: @"??_8C@Test13@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test13@@7B@" = } namespace Test14 { @@ -245,15 +245,15 @@ struct D : virtual C { int d; }; struct E : D, virtual C, virtual B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test14@@7B@" = -// CHECK-DAG: @"\01??_8E@Test14@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test14@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test14@@7B@" = -// CHECK-DAG: @"\01??_8D@Test14@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test14@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test14@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test14@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test14@@7B@" = +// CHECK-DAG: @"??_8E@Test14@@7B@" = +// CHECK-DAG: @"??_8E@Test14@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test14@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test14@@7B@" = +// CHECK-DAG: @"??_8D@Test14@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test14@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test14@@7B01@@" = +// CHECK-DAG: @"??_8C@Test14@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test14@@7B@" = } namespace Test15 { @@ -264,14 +264,14 @@ struct D : virtual B { int d; }; struct E : D, C, B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test15@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test15@@7BB@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test15@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test15@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test15@@7B@" = -// CHECK-DAG: @"\01??_8D@Test15@@7B01@@" = -// CHECK-DAG: @"\01??_8D@Test15@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test15@@7B@" = +// CHECK-DAG: @"??_8E@Test15@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test15@@7BB@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test15@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test15@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test15@@7B@" = +// CHECK-DAG: @"??_8D@Test15@@7B01@@" = +// CHECK-DAG: @"??_8D@Test15@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test15@@7B@" = } namespace Test16 { @@ -283,23 +283,23 @@ struct E : virtual D { int e; }; // ambig struct F : E, D, C, B { int f; }; // ambig F f; -// CHECK-DAG: @"\01??_8F@Test16@@7BE@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BD@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BC@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BB@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BD@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BC@1@@" = -// CHECK-DAG: @"\01??_8F@Test16@@7BB@1@@" = -// CHECK-DAG: @"\01??_8E@Test16@@7B01@@" = -// CHECK-DAG: @"\01??_8E@Test16@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test16@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test16@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test16@@7B@" = -// CHECK-DAG: @"\01??_8D@Test16@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test16@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test16@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test16@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test16@@7B@" = +// CHECK-DAG: @"??_8F@Test16@@7BE@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BD@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BC@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BB@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BD@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BC@1@@" = +// CHECK-DAG: @"??_8F@Test16@@7BB@1@@" = +// CHECK-DAG: @"??_8E@Test16@@7B01@@" = +// CHECK-DAG: @"??_8E@Test16@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test16@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test16@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test16@@7B@" = +// CHECK-DAG: @"??_8D@Test16@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test16@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test16@@7B01@@" = +// CHECK-DAG: @"??_8C@Test16@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test16@@7B@" = } namespace Test17 { @@ -318,16 +318,16 @@ struct J : virtual I { int j; }; struct K : virtual J { int k; }; // ambig K k; -// CHECK-DAG: @"\01??_8K@Test17@@7B01@@" = -// CHECK-DAG: @"\01??_8J@Test17@@7B@" = -// CHECK-DAG: @"\01??_8I@Test17@@7B01@@" = -// CHECK-DAG: @"\01??_8H@Test17@@7B@" = -// CHECK-DAG: @"\01??_8G@Test17@@7B01@@" = -// CHECK-DAG: @"\01??_8F@Test17@@7B@" = -// CHECK-DAG: @"\01??_8E@Test17@@7B01@@" = -// CHECK-DAG: @"\01??_8D@Test17@@7B@" = -// CHECK-DAG: @"\01??_8C@Test17@@7B01@@" = -// CHECK-DAG: @"\01??_8B@Test17@@7B@" = +// CHECK-DAG: @"??_8K@Test17@@7B01@@" = +// CHECK-DAG: @"??_8J@Test17@@7B@" = +// CHECK-DAG: @"??_8I@Test17@@7B01@@" = +// CHECK-DAG: @"??_8H@Test17@@7B@" = +// CHECK-DAG: @"??_8G@Test17@@7B01@@" = +// CHECK-DAG: @"??_8F@Test17@@7B@" = +// CHECK-DAG: @"??_8E@Test17@@7B01@@" = +// CHECK-DAG: @"??_8D@Test17@@7B@" = +// CHECK-DAG: @"??_8C@Test17@@7B01@@" = +// CHECK-DAG: @"??_8B@Test17@@7B@" = } namespace Test18 { @@ -338,14 +338,14 @@ struct D : C, B { int d; }; struct E : D, C, B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test18@@7BC@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test18@@7BB@1@D@1@@" = -// CHECK-DAG: @"\01??_8E@Test18@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test18@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test18@@7B@" = -// CHECK-DAG: @"\01??_8C@Test18@@7B@" = -// CHECK-DAG: @"\01??_8D@Test18@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test18@@7BB@1@@" = +// CHECK-DAG: @"??_8E@Test18@@7BC@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test18@@7BB@1@D@1@@" = +// CHECK-DAG: @"??_8E@Test18@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test18@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test18@@7B@" = +// CHECK-DAG: @"??_8C@Test18@@7B@" = +// CHECK-DAG: @"??_8D@Test18@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test18@@7BB@1@@" = } namespace Test19 { @@ -356,16 +356,16 @@ struct D : virtual C, virtual B { int d; }; struct E : virtual D, virtual C, virtual B { int e; }; E e; -// CHECK-DAG: @"\01??_8E@Test19@@7B01@@" = -// CHECK-DAG: @"\01??_8E@Test19@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test19@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test19@@7BB@1@@" = -// CHECK-DAG: @"\01??_8D@Test19@@7B@" = -// CHECK-DAG: @"\01??_8D@Test19@@7BC@1@@" = -// CHECK-DAG: @"\01??_8D@Test19@@7BB@1@@" = -// CHECK-DAG: @"\01??_8C@Test19@@7B01@@" = -// CHECK-DAG: @"\01??_8C@Test19@@7BB@1@@" = -// CHECK-DAG: @"\01??_8B@Test19@@7B@" = +// CHECK-DAG: @"??_8E@Test19@@7B01@@" = +// CHECK-DAG: @"??_8E@Test19@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test19@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test19@@7BB@1@@" = +// CHECK-DAG: @"??_8D@Test19@@7B@" = +// CHECK-DAG: @"??_8D@Test19@@7BC@1@@" = +// CHECK-DAG: @"??_8D@Test19@@7BB@1@@" = +// CHECK-DAG: @"??_8C@Test19@@7B01@@" = +// CHECK-DAG: @"??_8C@Test19@@7BB@1@@" = +// CHECK-DAG: @"??_8B@Test19@@7B@" = } namespace Test20 { @@ -377,10 +377,10 @@ struct D : virtual B { int d; }; struct E : C, D { int e; }; E f; -// CHECK-DAG: @"\01??_8E@Test20@@7BC@1@@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 20, i32 24] -// CHECK-DAG: @"\01??_8E@Test20@@7BD@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 16] -// CHECK-DAG: @"\01??_8D@Test20@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] -// CHECK-DAG: @"\01??_8C@Test20@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8E@Test20@@7BC@1@@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 20, i32 24] +// CHECK-DAG: @"??_8E@Test20@@7BD@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 16] +// CHECK-DAG: @"??_8D@Test20@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8C@Test20@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] } namespace Test21 { @@ -394,21 +394,21 @@ struct G : E { int g; }; struct H : F, G { int h; }; H h; -// CHECK-DAG: @"\01??_8H@Test21@@7B@" = -// CHECK-DAG: @"\01??_8H@Test21@@7BC@1@F@1@@" = -// CHECK-DAG: @"\01??_8H@Test21@@7BD@1@F@1@@" = -// CHECK-DAG: @"\01??_8H@Test21@@7BC@1@G@1@@" = -// CHECK-DAG: @"\01??_8H@Test21@@7BD@1@G@1@@" = -// CHECK-DAG: @"\01??_8G@Test21@@7BC@1@@" = -// CHECK-DAG: @"\01??_8G@Test21@@7BD@1@@" = -// CHECK-DAG: @"\01??_8F@Test21@@7B@" = -// CHECK-DAG: @"\01??_8F@Test21@@7BC@1@@" = -// CHECK-DAG: @"\01??_8F@Test21@@7BD@1@@" = -// CHECK-DAG: @"\01??_8E@Test21@@7BC@1@@" = -// CHECK-DAG: @"\01??_8E@Test21@@7BD@1@@" = -// CHECK-DAG: @"\01??_8D@Test21@@7B@" = -// CHECK-DAG: @"\01??_8B@Test21@@7B@" = -// CHECK-DAG: @"\01??_8C@Test21@@7B@" = +// CHECK-DAG: @"??_8H@Test21@@7B@" = +// CHECK-DAG: @"??_8H@Test21@@7BC@1@F@1@@" = +// CHECK-DAG: @"??_8H@Test21@@7BD@1@F@1@@" = +// CHECK-DAG: @"??_8H@Test21@@7BC@1@G@1@@" = +// CHECK-DAG: @"??_8H@Test21@@7BD@1@G@1@@" = +// CHECK-DAG: @"??_8G@Test21@@7BC@1@@" = +// CHECK-DAG: @"??_8G@Test21@@7BD@1@@" = +// CHECK-DAG: @"??_8F@Test21@@7B@" = +// CHECK-DAG: @"??_8F@Test21@@7BC@1@@" = +// CHECK-DAG: @"??_8F@Test21@@7BD@1@@" = +// CHECK-DAG: @"??_8E@Test21@@7BC@1@@" = +// CHECK-DAG: @"??_8E@Test21@@7BD@1@@" = +// CHECK-DAG: @"??_8D@Test21@@7B@" = +// CHECK-DAG: @"??_8B@Test21@@7B@" = +// CHECK-DAG: @"??_8C@Test21@@7B@" = } namespace Test22 { @@ -418,8 +418,8 @@ struct C { int c; }; struct D : B, virtual C { int d; }; D d; -// CHECK-DAG: @"\01??_8D@Test22@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 12, i32 16] -// CHECK-DAG: @"\01??_8B@Test22@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test22@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 12, i32 16] +// CHECK-DAG: @"??_8B@Test22@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] } namespace Test23 { @@ -430,8 +430,8 @@ struct C { int c; }; struct D : virtual C, B { int d; }; D d; -// CHECK-DAG: @"\01??_8D@Test23@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 16, i32 12] -// CHECK-DAG: @"\01??_8B@Test23@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test23@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 16, i32 12] +// CHECK-DAG: @"??_8B@Test23@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] } namespace Test24 { @@ -444,8 +444,8 @@ struct D : virtual C, B { }; D d; -// CHECK-DAG: @"\01??_8D@Test24@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 16, i32 12] -// CHECK-DAG: @"\01??_8B@Test24@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] +// CHECK-DAG: @"??_8D@Test24@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 0, i32 16, i32 12] +// CHECK-DAG: @"??_8B@Test24@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 8] } namespace Test25 { @@ -458,8 +458,8 @@ struct C { int c; }; struct D : virtual C, B { int d; }; D d; -// CHECK-DAG: @"\01??_8D@Test25@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 -4, i32 16, i32 12] -// CHECK-DAG: @"\01??_8B@Test25@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 -4, i32 8] +// CHECK-DAG: @"??_8D@Test25@@7B@" = linkonce_odr unnamed_addr constant [3 x i32] [i32 -4, i32 16, i32 12] +// CHECK-DAG: @"??_8B@Test25@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 -4, i32 8] } namespace Test26 { @@ -474,8 +474,8 @@ struct E : virtual B { struct F: virtual C, D, E { int f; }; F f; // F reuses the D's vbptr, even though D is laid out after E. -// CHECK-DAG: @"\01??_8F@Test26@@7BD@1@@" = linkonce_odr unnamed_addr constant [4 x i32] [i32 0, i32 16, i32 12, i32 20] -// CHECK-DAG: @"\01??_8F@Test26@@7BE@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 -4, i32 28] +// CHECK-DAG: @"??_8F@Test26@@7BD@1@@" = linkonce_odr unnamed_addr constant [4 x i32] [i32 0, i32 16, i32 12, i32 20] +// CHECK-DAG: @"??_8F@Test26@@7BE@1@@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 -4, i32 28] } namespace Test27 { @@ -489,14 +489,14 @@ struct F : C, E {}; struct G : F, D, C, B {}; G x; -// CHECK-DAG: @"\01??_8G@Test27@@7BB@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BB@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BC@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BC@1@D@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BC@1@E@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BC@1@F@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BD@1@@" = -// CHECK-DAG: @"\01??_8G@Test27@@7BF@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BB@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BB@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BC@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BC@1@D@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BC@1@E@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BC@1@F@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BD@1@@" = +// CHECK-DAG: @"??_8G@Test27@@7BF@1@@" = } namespace Test28 { @@ -509,14 +509,14 @@ struct E : C, D {}; struct F : virtual E, virtual D, virtual C {}; F x; -// CHECK-DAG: @"\01??_8F@Test28@@7B01@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BB@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BC@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BC@1@D@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BC@1@D@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BC@1@E@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BD@1@@" = -// CHECK-DAG: @"\01??_8F@Test28@@7BE@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7B01@@" = +// CHECK-DAG: @"??_8F@Test28@@7BB@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BC@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BC@1@D@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BC@1@D@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BC@1@E@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BD@1@@" = +// CHECK-DAG: @"??_8F@Test28@@7BE@1@@" = } namespace Test29 { @@ -526,7 +526,7 @@ struct C : virtual B {}; struct D : C {}; D d; -// CHECK-DAG: @"\01??_8D@Test29@@7BB@1@@" = linkonce_odr unnamed_addr constant [2 x i32] zeroinitializer +// CHECK-DAG: @"??_8D@Test29@@7BB@1@@" = linkonce_odr unnamed_addr constant [2 x i32] zeroinitializer } namespace Test30 { @@ -537,5 +537,5 @@ template <class> struct B : virtual A { extern template class B<int>; template B<int>::B(); -// CHECK-DAG: @"\01??_8?$B@H@Test30@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 4], comdat +// CHECK-DAG: @"??_8?$B@H@Test30@@7B@" = linkonce_odr unnamed_addr constant [2 x i32] [i32 0, i32 4], comdat } |