From 953f2d2a5469e2be9846fa48cbbb1ac242aa9a65 Mon Sep 17 00:00:00 2001 From: Igor Laevsky Date: Tue, 17 May 2016 13:54:10 +0000 Subject: [RewriteStatepointsForGC] Remove obsolete assertion This is assertion is no longer necessary since we never record constants in the live set anyway. (They are never recorded in the initial live set, and constant bases are removed near line 2119) Differential Revision: http://reviews.llvm.org/D20293 llvm-svn: 269764 --- .../RewriteStatepointsForGC/constants.ll | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'llvm/test/Transforms/RewriteStatepointsForGC') diff --git a/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll b/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll index 0ae0380c38e..68d6fd13934 100644 --- a/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll +++ b/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll @@ -95,3 +95,25 @@ entry: %res = extractelement <2 x i8 addrspace(1)*> , i32 0 ret i8 addrspace(1)* %res } + +define i8 addrspace(1)* @test6(i64 %arg) gc "statepoint-example" { +entry: + ; Don't fail any assertions and don't record null as a live value + ; CHECK-LABEL: test6 + ; CHECK: gc.statepoint + ; CHECK-NOT: call {{.*}}gc.relocate + %load_addr = getelementptr i8, i8 addrspace(1)* null, i64 %arg + call void @foo() [ "deopt"() ] + ret i8 addrspace(1)* %load_addr +} + +define i8 addrspace(1)* @test7(i64 %arg) gc "statepoint-example" { +entry: + ; Same as test7 but use regular constant instead of a null + ; CHECK-LABEL: test7 + ; CHECK: gc.statepoint + ; CHECK-NOT: call {{.*}}gc.relocate + %load_addr = getelementptr i8, i8 addrspace(1)* inttoptr (i64 15 to i8 addrspace(1)*), i64 %arg + call void @foo() [ "deopt"() ] + ret i8 addrspace(1)* %load_addr +} -- cgit v1.2.3