summaryrefslogtreecommitdiff
path: root/test/Transforms/InstCombine/load-cmp.ll
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2010-01-02 08:20:51 +0000
committerChris Lattner <sabre@nondot.org>2010-01-02 08:20:51 +0000
commit34e0c76f939d305a76785daa420f0cde650f17df (patch)
treeda27cc9755d4c2473ea35c94cf019ec8e7af03fc /test/Transforms/InstCombine/load-cmp.ll
parent1f12e44b628679d003e99adc70e1ea0464e1971e (diff)
downloadllvm-34e0c76f939d305a76785daa420f0cde650f17df.tar.gz
llvm-34e0c76f939d305a76785daa420f0cde650f17df.tar.bz2
llvm-34e0c76f939d305a76785daa420f0cde650f17df.tar.xz
enhance the previous optimization to work with fcmp in addition
to icmp. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@92412 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/Transforms/InstCombine/load-cmp.ll')
-rw-r--r--test/Transforms/InstCombine/load-cmp.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/Transforms/InstCombine/load-cmp.ll b/test/Transforms/InstCombine/load-cmp.ll
index f410939e70..eac9ae495d 100644
--- a/test/Transforms/InstCombine/load-cmp.ll
+++ b/test/Transforms/InstCombine/load-cmp.ll
@@ -2,6 +2,7 @@
@G16 = internal constant [10 x i16] [i16 35, i16 82, i16 69, i16 81, i16 85,
i16 73, i16 82, i16 69, i16 68, i16 0]
+@GD = internal constant [3 x double] [double 1.0, double 4.0, double -20.0]
define i1 @test1(i32 %X) {
%P = getelementptr [10 x i16]* @G16, i32 0, i32 %X
@@ -23,3 +24,13 @@ define i1 @test2(i32 %X) {
; CHECK-NEXT: ret i1 %R
}
+define i1 @test3(i32 %X) {
+ %P = getelementptr [3 x double]* @GD, i32 0, i32 %X
+ %Q = load double* %P
+ %R = fcmp oeq double %Q, 1.0
+ ret i1 %R
+; CHECK: @test3
+; CHECK-NEXT: %R = icmp eq i32 %X, 0
+; CHECK-NEXT: ret i1 %R
+}
+