summaryrefslogtreecommitdiff
path: root/test/Transforms/SCCP
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2009-11-02 06:06:14 +0000
committerChris Lattner <sabre@nondot.org>2009-11-02 06:06:14 +0000
commit5638dc618acd725d1128e77cd28a6e0ed66185c4 (patch)
tree5e3e3140041bb6a69f075944139f5020f402336b /test/Transforms/SCCP
parent2a0433beea44b63da36fd051c29af69ff2675b38 (diff)
downloadllvm-5638dc618acd725d1128e77cd28a6e0ed66185c4.tar.gz
llvm-5638dc618acd725d1128e77cd28a6e0ed66185c4.tar.bz2
llvm-5638dc618acd725d1128e77cd28a6e0ed66185c4.tar.xz
Use the libanalysis 'ConstantFoldLoadFromConstPtr' function
instead of reinventing SCCP-specific logic. This gives us new powers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@85789 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/SCCP')
-rw-r--r--test/Transforms/SCCP/loadtest.ll11
1 files changed, 9 insertions, 2 deletions
diff --git a/test/Transforms/SCCP/loadtest.ll b/test/Transforms/SCCP/loadtest.ll
index fd82aef821..add2af483f 100644
--- a/test/Transforms/SCCP/loadtest.ll
+++ b/test/Transforms/SCCP/loadtest.ll
@@ -1,5 +1,6 @@
; This test makes sure that these instructions are properly constant propagated.
-;
+
+target datalayout = "e-p:32:32"
; RUN: opt < %s -sccp -S | not grep load
@@ -20,7 +21,13 @@ define float @test2() {
define i32 @test3() {
%A = getelementptr [2 x { i32, float }]* @Y, i64 0, i64 0, i32 0 ; <i32*> [#uses=1]
- %B = load i32* %A ; <i32> [#uses=1]
+ %B = load i32* %A
ret i32 %B
}
+define i8 @test4() {
+ %A = bitcast i32* @X to i8*
+ %B = load i8* %A
+ ret i8 %B
+}
+