diff options
author | David Blaikie <dblaikie@gmail.com> | 2015-02-27 19:18:17 +0000 |
---|---|---|
committer | David Blaikie <dblaikie@gmail.com> | 2015-02-27 19:18:17 +0000 |
commit | 218b78319277e27d8f283c85369f968ab580015b (patch) | |
tree | fd4eb814ec9c7539f83e75e68cfa3368b062be4b /clang/test/CodeGenCXX/catch-undef-behavior.cpp | |
parent | d99b8f3ba8d114ccc8e64f948a90cb867b893a39 (diff) | |
download | bcm5719-llvm-218b78319277e27d8f283c85369f968ab580015b.tar.gz bcm5719-llvm-218b78319277e27d8f283c85369f968ab580015b.zip |
Update Clang tests to handle explicitly typed gep changes in LLVM.
llvm-svn: 230783
Diffstat (limited to 'clang/test/CodeGenCXX/catch-undef-behavior.cpp')
-rw-r--r-- | clang/test/CodeGenCXX/catch-undef-behavior.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/clang/test/CodeGenCXX/catch-undef-behavior.cpp b/clang/test/CodeGenCXX/catch-undef-behavior.cpp index 35b749862d6..160ee58dbd3 100644 --- a/clang/test/CodeGenCXX/catch-undef-behavior.cpp +++ b/clang/test/CodeGenCXX/catch-undef-behavior.cpp @@ -81,7 +81,7 @@ void member_access(S *p) { // Check the hash against the table: // // CHECK-NEXT: %[[IDX:.*]] = and i64 %{{.*}}, 127 - // CHECK-NEXT: getelementptr inbounds [128 x i64]* @__ubsan_vptr_type_cache, i32 0, i64 %[[IDX]] + // CHECK-NEXT: getelementptr inbounds [128 x i64], [128 x i64]* @__ubsan_vptr_type_cache, i32 0, i64 %[[IDX]] // CHECK-NEXT: %[[CACHEVAL:.*]] = load i64* // CHECK-NEXT: icmp eq i64 %[[CACHEVAL]], %[[HASH]] // CHECK-NEXT: br i1 @@ -119,7 +119,7 @@ void member_access(S *p) { // CHECK: load i64* // CHECK-NEXT: xor i64 {{-4030275160588942838|2562089159}}, // [...] - // CHECK: getelementptr inbounds [128 x i64]* @__ubsan_vptr_type_cache, i32 0, i64 % + // CHECK: getelementptr inbounds [128 x i64], [128 x i64]* @__ubsan_vptr_type_cache, i32 0, i64 % // CHECK: br i1 // CHECK: call void @__ubsan_handle_dynamic_type_cache_miss({{.*}}, i64 %{{.*}}, i64 %{{.*}}) // CHECK-NOT: unreachable @@ -363,7 +363,7 @@ class C : public A, public B // align=16 void downcast_pointer(B *b) { (void) static_cast<C*>(b); // Alignment check from EmitTypeCheck(TCK_DowncastPointer, ...) - // CHECK: [[SUB:%[.a-z0-9]*]] = getelementptr i8* {{.*}}, i64 -16 + // CHECK: [[SUB:%[.a-z0-9]*]] = getelementptr i8, i8* {{.*}}, i64 -16 // CHECK-NEXT: [[C:%[0-9]*]] = bitcast i8* [[SUB]] to %class.C* // null check goes here // CHECK: [[FROM_PHI:%[0-9]*]] = phi %class.C* [ [[C]], {{.*}} ], {{.*}} @@ -380,7 +380,7 @@ void downcast_pointer(B *b) { void downcast_reference(B &b) { (void) static_cast<C&>(b); // Alignment check from EmitTypeCheck(TCK_DowncastReference, ...) - // CHECK: [[SUB:%[.a-z0-9]*]] = getelementptr i8* {{.*}}, i64 -16 + // CHECK: [[SUB:%[.a-z0-9]*]] = getelementptr i8, i8* {{.*}}, i64 -16 // CHECK-NEXT: [[C:%[0-9]*]] = bitcast i8* [[SUB]] to %class.C* // Objectsize check goes here // CHECK: [[C_INT:%[0-9]*]] = ptrtoint %class.C* [[C]] to i64 @@ -398,13 +398,13 @@ void indirect_function_call(void (*p)(int)) { // CHECK: [[PTR:%[0-9]*]] = bitcast void (i32)* {{.*}} to <{ i32, i8* }>* // Signature check - // CHECK-NEXT: [[SIGPTR:%[0-9]*]] = getelementptr <{ i32, i8* }>* [[PTR]], i32 0, i32 0 + // CHECK-NEXT: [[SIGPTR:%[0-9]*]] = getelementptr <{ i32, i8* }>, <{ i32, i8* }>* [[PTR]], i32 0, i32 0 // CHECK-NEXT: [[SIG:%[0-9]*]] = load i32* [[SIGPTR]] // CHECK-NEXT: [[SIGCMP:%[0-9]*]] = icmp eq i32 [[SIG]], 1413876459 // CHECK-NEXT: br i1 [[SIGCMP]] // RTTI pointer check - // CHECK: [[RTTIPTR:%[0-9]*]] = getelementptr <{ i32, i8* }>* [[PTR]], i32 0, i32 1 + // CHECK: [[RTTIPTR:%[0-9]*]] = getelementptr <{ i32, i8* }>, <{ i32, i8* }>* [[PTR]], i32 0, i32 1 // CHECK-NEXT: [[RTTI:%[0-9]*]] = load i8** [[RTTIPTR]] // CHECK-NEXT: [[RTTICMP:%[0-9]*]] = icmp eq i8* [[RTTI]], bitcast ({ i8*, i8* }* @_ZTIFviE to i8*) // CHECK-NEXT: br i1 [[RTTICMP]] |