summaryrefslogtreecommitdiff
path: root/test
diff options
context:
space:
mode:
authorMichael Liao <michael.liao@intel.com>2012-10-24 04:09:32 +0000
committerMichael Liao <michael.liao@intel.com>2012-10-24 04:09:32 +0000
commit991b6a22b6592b56ae890f30c478f835480e7cf5 (patch)
treefe50bdd888096141ff05d8ac4492ff929a67f00a /test
parent2ef5bd3ba685704bc9c0d03654cb0b7fd1b071e6 (diff)
downloadllvm-991b6a22b6592b56ae890f30c478f835480e7cf5.tar.gz
llvm-991b6a22b6592b56ae890f30c478f835480e7cf5.tar.bz2
llvm-991b6a22b6592b56ae890f30c478f835480e7cf5.tar.xz
Add custom conversion from v2u32 to v2f32 in 32-bit mode
- As there's no 64-bit GPRs in 32-bit mode, a custom conversion from v2u32 to v2f32 is added to improve the efficiency of the code generated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@166545 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test')
-rw-r--r--test/CodeGen/X86/cvtv2f32.ll11
1 files changed, 11 insertions, 0 deletions
diff --git a/test/CodeGen/X86/cvtv2f32.ll b/test/CodeGen/X86/cvtv2f32.ll
new file mode 100644
index 0000000000..5a27a48910
--- /dev/null
+++ b/test/CodeGen/X86/cvtv2f32.ll
@@ -0,0 +1,11 @@
+; RUN: llc < %s -mtriple=i686-linux-pc -mcpu=corei7 | FileCheck %s
+
+define <2 x float> @bar(<2 x i32> %in) {
+ %r = uitofp <2 x i32> %in to <2 x float>
+ ret <2 x float> %r
+; CHECK: bar
+; CHECK: or
+; CHECK: subpd
+; CHECK: cvtpd2ps
+; CHECK: ret
+}