aboutsummaryrefslogtreecommitdiffstats
path: root/test/Transforms
diff options
context:
space:
mode:
authorDan Gohman <gohman@apple.com>2010-02-23 16:35:41 +0000
committerDan Gohman <gohman@apple.com>2010-02-23 16:35:41 +0000
commitb80a2a686fe76496d71397f8bdda394d5718ab01 (patch)
tree3bc7be4268bf1d153ff66df0d6d2d61e89611511 /test/Transforms
parentc80a1f7721823c081d80afa1345e4dc512cd97d7 (diff)
downloadexternal_llvm-b80a2a686fe76496d71397f8bdda394d5718ab01.zip
external_llvm-b80a2a686fe76496d71397f8bdda394d5718ab01.tar.gz
external_llvm-b80a2a686fe76496d71397f8bdda394d5718ab01.tar.bz2
Remove the code which constant-folded ptrtoint(inttoptr(x)+c) to
getelementptr. Despite only doing so in the case where x is a known array object and c can be converted to an index within range, this could still be invalid if c is actually the address of an object allocated outside of LLVM. Also, SCEVExpander, the original motivation for this code, has since been improved to avoid inttoptr+ptroint in more cases. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@96950 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms')
-rw-r--r--test/Transforms/InstCombine/constant-fold-ptr-casts.ll27
1 files changed, 0 insertions, 27 deletions
diff --git a/test/Transforms/InstCombine/constant-fold-ptr-casts.ll b/test/Transforms/InstCombine/constant-fold-ptr-casts.ll
deleted file mode 100644
index 5095446..0000000
--- a/test/Transforms/InstCombine/constant-fold-ptr-casts.ll
+++ /dev/null
@@ -1,27 +0,0 @@
-; RUN: opt < %s -instcombine -S | grep {ret i32 2143034560} | count 2
-
-; Instcombine should be able to completely fold this code.
-
-target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
-target triple = "i686-apple-darwin8"
-
-@bar = constant [3 x i64] [i64 9220983451228067448, i64 9220983451228067449, i64 9220983450959631991], align 8
-
-define i32 @foo() nounwind {
-entry:
- %tmp87.2 = load i64* inttoptr (i32 add (i32 16, i32 ptrtoint ([3 x i64]* @bar to i32)) to i64*), align 8
- %t0 = bitcast i64 %tmp87.2 to double
- %tmp9192.2 = fptrunc double %t0 to float
- %t1 = bitcast float %tmp9192.2 to i32
- ret i32 %t1
-}
-
-define i32 @goo() nounwind {
-entry:
- %tmp87.2 = load i64* inttoptr (i32 add (i32 ptrtoint ([3 x i64]* @bar to i32), i32 16) to i64*), align 8
- %t0 = bitcast i64 %tmp87.2 to double
- %tmp9192.2 = fptrunc double %t0 to float
- %t1 = bitcast float %tmp9192.2 to i32
- ret i32 %t1
-}
-