aboutsummaryrefslogtreecommitdiffstats
path: root/test
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
commit37dfcfeca7844143eab68b53839ed1f656ef8888 (patch)
treeda27cc9755d4c2473ea35c94cf019ec8e7af03fc /test
parent78264d83269eb1415fa6182529d3e0cfc752b8ce (diff)
downloadexternal_llvm-37dfcfeca7844143eab68b53839ed1f656ef8888.zip
external_llvm-37dfcfeca7844143eab68b53839ed1f656ef8888.tar.gz
external_llvm-37dfcfeca7844143eab68b53839ed1f656ef8888.tar.bz2
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')
-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 f410939..eac9ae4 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
+}
+