aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2008-05-13 19:56:20 +0000
committerChris Lattner <sabre@nondot.org>2008-05-13 19:56:20 +0000
commit0d73b6c09d1c44d2f76b69aebded9cd910d63ffc (patch)
tree1f836ee56ec5e66dcdc63932080b211185f9f635 /lib
parentb3e25ea30de9adaf9c2e4555b9fb8c6564fbf884 (diff)
downloadexternal_llvm-0d73b6c09d1c44d2f76b69aebded9cd910d63ffc.zip
external_llvm-0d73b6c09d1c44d2f76b69aebded9cd910d63ffc.tar.gz
external_llvm-0d73b6c09d1c44d2f76b69aebded9cd910d63ffc.tar.bz2
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51062 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib')
-rw-r--r--lib/Target/X86/README-SSE.txt18
1 files changed, 18 insertions, 0 deletions
diff --git a/lib/Target/X86/README-SSE.txt b/lib/Target/X86/README-SSE.txt
index 5f114a8..6164972 100644
--- a/lib/Target/X86/README-SSE.txt
+++ b/lib/Target/X86/README-SSE.txt
@@ -787,5 +787,23 @@ _foo2:
In sse4 mode, we could use insertps to make both better.
+Here's another testcase that could use insertps [mem]:
+
+#include <xmmintrin.h>
+extern float x2, x3;
+__m128 foo1 (float x1, float x4) {
+ return _mm_set_ps (x2, x1, x3, x4);
+}
+
+gcc mainline compiles it to:
+
+foo1:
+ insertps $0x10, x2(%rip), %xmm0
+ insertps $0x10, x3(%rip), %xmm1
+ movaps %xmm1, %xmm2
+ movlhps %xmm0, %xmm2
+ movaps %xmm2, %xmm0
+ ret
+
//===---------------------------------------------------------------------===//