summaryrefslogtreecommitdiffstats
path: root/llvm/test
diff options
context:
space:
mode:
authorRafael Espindola <rafael.espindola@gmail.com>2015-02-19 16:08:20 +0000
committerRafael Espindola <rafael.espindola@gmail.com>2015-02-19 16:08:20 +0000
commit8c97e19124ba160eafd7f188102bf088d54eb68a (patch)
tree780b33c0ee2f840e5ca9b1424ee010c7f999786f /llvm/test
parent354aa515878cf0b456701f3a0f6db27bdf561e86 (diff)
downloadbcm5719-llvm-8c97e19124ba160eafd7f188102bf088d54eb68a.tar.gz
bcm5719-llvm-8c97e19124ba160eafd7f188102bf088d54eb68a.zip
Avoid conversion to float when creating ConstantDataArray/ConstantDataVector.
Patch by Raoux, Thomas F! llvm-svn: 229864
Diffstat (limited to 'llvm/test')
-rw-r--r--llvm/test/Transforms/ConstProp/InsertElement.ll12
-rw-r--r--llvm/test/Transforms/ConstProp/insertvalue.ll9
2 files changed, 21 insertions, 0 deletions
diff --git a/llvm/test/Transforms/ConstProp/InsertElement.ll b/llvm/test/Transforms/ConstProp/InsertElement.ll
new file mode 100644
index 00000000000..d249c2eb1c5
--- /dev/null
+++ b/llvm/test/Transforms/ConstProp/InsertElement.ll
@@ -0,0 +1,12 @@
+; RUN: opt < %s -constprop -S | FileCheck %s
+
+define i32 @test1() {
+ %A = bitcast i32 2139171423 to float
+ %B = insertelement <1 x float> undef, float %A, i32 0
+ %C = extractelement <1 x float> %B, i32 0
+ %D = bitcast float %C to i32
+ ret i32 %D
+; CHECK: @test1
+; CHECK: ret i32 2139171423
+}
+
diff --git a/llvm/test/Transforms/ConstProp/insertvalue.ll b/llvm/test/Transforms/ConstProp/insertvalue.ll
index 0d288b3841d..dce2b728b93 100644
--- a/llvm/test/Transforms/ConstProp/insertvalue.ll
+++ b/llvm/test/Transforms/ConstProp/insertvalue.ll
@@ -65,3 +65,12 @@ define [3 x %struct] @undef-test3() {
; CHECK: ret [3 x %struct] [%struct undef, %struct { i32 0, [4 x i8] undef }, %struct undef]
}
+define i32 @test-float-Nan() {
+ %A = bitcast i32 2139171423 to float
+ %B = insertvalue [1 x float] undef, float %A, 0
+ %C = extractvalue [1 x float] %B, 0
+ %D = bitcast float %C to i32
+ ret i32 %D
+; CHECK: @test-float-Nan
+; CHECK: ret i32 2139171423
+}
OpenPOWER on IntegriCloud