aboutsummaryrefslogtreecommitdiff
path: root/lib/Target
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2007-04-14 23:06:09 +0000
committerChris Lattner <sabre@nondot.org>2007-04-14 23:06:09 +0000
commit7c162645ae4c33474df6e2b25412387ed94e421b (patch)
treea16acb6b269619c41c3b2d247e225275f0ec2b7b /lib/Target
parent4953e92ad03bc1030eeca5d5c1c89885e2e347aa (diff)
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36028 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target')
-rw-r--r--lib/Target/X86/README.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Target/X86/README.txt b/lib/Target/X86/README.txt
index 7c27428060..0ed1e30f76 100644
--- a/lib/Target/X86/README.txt
+++ b/lib/Target/X86/README.txt
@@ -1049,3 +1049,21 @@ int decode_byte (const decode_t* decode) {
//===---------------------------------------------------------------------===//
+This:
+#include <xmmintrin.h>
+unsigned test(float f) {
+ return _mm_cvtsi128_si32( (__m128i) _mm_set_ss( f ));
+}
+
+Compiles to:
+_test:
+ movss 4(%esp), %xmm0
+ movd %xmm0, %eax
+ ret
+
+it should compile to a move from the stack slot directly into eax. DAGCombine
+has this xform, but it is currently disabled until the alignment fields of
+the load/store nodes are trustworthy.
+
+
+