diff options
author | Manuel Jacob <me@manueljacob.de> | 2016-01-09 04:02:16 +0000 |
---|---|---|
committer | Manuel Jacob <me@manueljacob.de> | 2016-01-09 04:02:16 +0000 |
commit | 734e73342de24e74ff8705703f644d2ca66a8db2 (patch) | |
tree | cc90201b6d3e0977f3bb9fab6cd158c50802aa25 /llvm/test/Transforms/RewriteStatepointsForGC | |
parent | 1f9c40db1df864352fe6933ed3721cc8fe856d85 (diff) | |
download | bcm5719-llvm-734e73342de24e74ff8705703f644d2ca66a8db2.tar.gz bcm5719-llvm-734e73342de24e74ff8705703f644d2ca66a8db2.zip |
[RS4GC] Update and simplify handling of Constants in findBaseDefiningValueOfVector().
Summary:
This is analogous to r256079, which removed an overly strong assertion, and
r256812, which simplified the code by replacing three conditionals by one.
Reviewers: reames
Subscribers: sanjoy, llvm-commits
Differential Revision: http://reviews.llvm.org/D16019
llvm-svn: 257250
Diffstat (limited to 'llvm/test/Transforms/RewriteStatepointsForGC')
-rw-r--r-- | llvm/test/Transforms/RewriteStatepointsForGC/constants.ll | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll b/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll index b30f64beba0..0f600f21571 100644 --- a/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll +++ b/llvm/test/Transforms/RewriteStatepointsForGC/constants.ll @@ -92,4 +92,13 @@ use: ret i8 addrspace(1)* %res } - +; Globals don't move and thus don't get relocated +define i8 addrspace(1)* @test5(i1 %always_true) gc "statepoint-example" { +; CHECK-LABEL: @test5 +; CHECK: gc.statepoint +; CHECK-NEXT: %res = extractelement <2 x i8 addrspace(1)*> <i8 addrspace(1)* @G, i8 addrspace(1)* @G>, i32 0 +entry: + call token (i64, i32, void ()*, i32, i32, ...) @llvm.experimental.gc.statepoint.p0f_isVoidf(i64 0, i32 0, void ()* @foo, i32 0, i32 0, i32 0, i32 0) + %res = extractelement <2 x i8 addrspace(1)*> <i8 addrspace(1)* @G, i8 addrspace(1)* @G>, i32 0 + ret i8 addrspace(1)* %res +} |