From: Daniel Dunbar Date: Wed, 11 Nov 2009 03:48:26 +0000 (+0000) Subject: Fix some tests in -Asserts mode. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=47d1e828674a2d9c020db9f9ec45f27025a39e35;p=clang Fix some tests in -Asserts mode. - FileCheck is a *huuuuge* improvement here. - Still feels like we could use a better tool for this though, either teach llvm-dis to spit out the FileCheck syntax, or provide another tool to turn a .ll into a "matchable" input. - Also on my Christmas list is better FileCheck diagnostics with missing variables or mismatches. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@86800 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/CodeGen/2008-07-29-override-alias-decl.c b/test/CodeGen/2008-07-29-override-alias-decl.c index 8729500296..18e8982832 100644 --- a/test/CodeGen/2008-07-29-override-alias-decl.c +++ b/test/CodeGen/2008-07-29-override-alias-decl.c @@ -2,10 +2,10 @@ int x() { return 1; } -// CHECK: %retval = alloca i32 -// CHECK: store i32 1, i32* %retval -// CHECK: %0 = load i32* %retval -// CHECK: ret i32 %0 +// CHECK: [[retval:%.*]] = alloca i32 +// CHECK: store i32 1, i32* [[retval]] +// CHECK: [[load:%.*]] = load i32* [[retval]] +// CHECK: ret i32 [[load]] int f() __attribute__((weak, alias("x"))); @@ -17,9 +17,9 @@ int h() { return f(); } -// CHECK: %retval = alloca i32 -// CHECK: %call = call i32 (...)* @f() -// CHECK: store i32 %call, i32* %retval -// CHECK: %0 = load i32* %retval -// CHECK: ret i32 %0 +// CHECK: [[retval:%.*]] = alloca i32 +// CHECK: [[call:%.*]] = call i32 (...)* @f() +// CHECK: store i32 [[call]], i32* [[retval]] +// CHECK: [[load:%.*]] = load i32* [[retval]] +// CHECK: ret i32 [[load]] diff --git a/test/CodeGen/address-space-field1.c b/test/CodeGen/address-space-field1.c index f8ec83ca71..b041cf55d0 100644 --- a/test/CodeGen/address-space-field1.c +++ b/test/CodeGen/address-space-field1.c @@ -1,23 +1,22 @@ // RUN: clang-cc -emit-llvm < %s -o - | FileCheck %s // CHECK:%struct.S = type { i32, i32 } // CHECK:define void @test_addrspace(%struct.S addrspace(1)* %p1, %struct.S addrspace(2)* %p2) nounwind -// CHECK:entry: -// CHECK: %p1.addr = alloca %struct.S addrspace(1)* ; <%struct.S addrspace(1)**> [#uses=3] -// CHECK: %p2.addr = alloca %struct.S addrspace(2)* ; <%struct.S addrspace(2)**> [#uses=3] -// CHECK: store %struct.S addrspace(1)* %p1, %struct.S addrspace(1)** %p1.addr -// CHECK: store %struct.S addrspace(2)* %p2, %struct.S addrspace(2)** %p2.addr -// CHECK: %tmp = load %struct.S addrspace(2)** %p2.addr ; <%struct.S addrspace(2)*> [#uses=1] -// CHECK: %tmp1 = getelementptr inbounds %struct.S addrspace(2)* %tmp, i32 0, i32 1 ; [#uses=1] -// CHECK: %tmp2 = load i32 addrspace(2)* %tmp1 ; [#uses=1] -// CHECK: %tmp3 = load %struct.S addrspace(1)** %p1.addr ; <%struct.S addrspace(1)*> [#uses=1] -// CHECK: %tmp4 = getelementptr inbounds %struct.S addrspace(1)* %tmp3, i32 0, i32 0 ; [#uses=1] -// CHECK: store i32 %tmp2, i32 addrspace(1)* %tmp4 -// CHECK: %tmp5 = load %struct.S addrspace(2)** %p2.addr ; <%struct.S addrspace(2)*> [#uses=1] -// CHECK: %tmp6 = getelementptr inbounds %struct.S addrspace(2)* %tmp5, i32 0, i32 0 ; [#uses=1] -// CHECK: %tmp7 = load i32 addrspace(2)* %tmp6 ; [#uses=1] -// CHECK: %tmp8 = load %struct.S addrspace(1)** %p1.addr ; <%struct.S addrspace(1)*> [#uses=1] -// CHECK: %tmp9 = getelementptr inbounds %struct.S addrspace(1)* %tmp8, i32 0, i32 1 ; [#uses=1] -// CHECK: store i32 %tmp7, i32 addrspace(1)* %tmp9 +// CHECK: [[p1addr:%.*]] = alloca %struct.S addrspace(1)* ; <%struct.S addrspace(1)**> [#uses=3] +// CHECK: [[p2addr:%.*]] = alloca %struct.S addrspace(2)* ; <%struct.S addrspace(2)**> [#uses=3] +// CHECK: store %struct.S addrspace(1)* %p1, %struct.S addrspace(1)** [[p1addr]] +// CHECK: store %struct.S addrspace(2)* %p2, %struct.S addrspace(2)** [[p2addr]] +// CHECK: [[t0:%.*]] = load %struct.S addrspace(2)** [[p2addr]] ; <%struct.S addrspace(2)*> [#uses=1] +// CHECK: [[t1:%.*]] = getelementptr inbounds %struct.S addrspace(2)* [[t0]], i32 0, i32 1 ; [#uses=1] +// CHECK: [[t2:%.*]] = load i32 addrspace(2)* [[t1]] ; [#uses=1] +// CHECK: [[t3:%.*]] = load %struct.S addrspace(1)** [[p1addr]] ; <%struct.S addrspace(1)*> [#uses=1] +// CHECK: [[t4:%.*]] = getelementptr inbounds %struct.S addrspace(1)* [[t3]], i32 0, i32 0 ; [#uses=1] +// CHECK: store i32 [[t2]], i32 addrspace(1)* [[t4]] +// CHECK: [[t5:%.*]] = load %struct.S addrspace(2)** [[p2addr]] ; <%struct.S addrspace(2)*> [#uses=1] +// CHECK: [[t6:%.*]] = getelementptr inbounds %struct.S addrspace(2)* [[t5]], i32 0, i32 0 ; [#uses=1] +// CHECK: [[t7:%.*]] = load i32 addrspace(2)* [[t6]] ; [#uses=1] +// CHECK: [[t8:%.*]] = load %struct.S addrspace(1)** [[p1addr]] ; <%struct.S addrspace(1)*> [#uses=1] +// CHECK: [[t9:%.*]] = getelementptr inbounds %struct.S addrspace(1)* [[t8]], i32 0, i32 1 ; [#uses=1] +// CHECK: store i32 [[t7]], i32 addrspace(1)* [[t9]] // CHECK: ret void // CHECK:} diff --git a/test/CodeGen/attributes.c b/test/CodeGen/attributes.c index c3e159e173..a9b86bc88a 100644 --- a/test/CodeGen/attributes.c +++ b/test/CodeGen/attributes.c @@ -69,7 +69,6 @@ int t19(void) { } // CHECK:define void @t20() nounwind { -// CHECK-NEXT:entry: // CHECK-NEXT: call void @abort() // CHECK-NEXT: unreachable void t20(void) { diff --git a/test/CodeGenCXX/member-function-pointers.cpp b/test/CodeGenCXX/member-function-pointers.cpp index a7c21133d0..7792560e06 100644 --- a/test/CodeGenCXX/member-function-pointers.cpp +++ b/test/CodeGenCXX/member-function-pointers.cpp @@ -30,8 +30,8 @@ void f() { // CHECK: volatile store i64 0, i64* getelementptr inbounds (%0* @vpa, i32 0, i32 1) vpa = 0; - // CHECK: store i64 %0, i64* getelementptr inbounds (%0* @pc, i32 0, i32 0) - // CHECK: [[ADJ:%[a-zA-Z0-9\.]+]] = add i64 %1, 16 + // CHECK: store i64 {{.*}}, i64* getelementptr inbounds (%0* @pc, i32 0, i32 0) + // CHECK: [[ADJ:%[a-zA-Z0-9\.]+]] = add i64 {{.*}}, 16 // CHECK: store i64 [[ADJ]], i64* getelementptr inbounds (%0* @pc, i32 0, i32 1) pc = pa; } @@ -46,7 +46,7 @@ void f2() { // CHECK: [[pa3ptr:%[a-zA-Z0-9\.]+]] = getelementptr inbounds %0* %pa3, i32 0, i32 0 // CHECK: store i64 1, i64* [[pa3ptr]] // CHECK: [[pa3adj:%[a-zA-Z0-9\.]+]] = getelementptr inbounds %0* %pa3, i32 0, i32 1 - // CHECK: store i64 0, i64* [[pa2adj]] + // CHECK: store i64 0, i64* [[pa3adj]] void (A::*pa3)() = &A::vf; }