diff options
author | Chris Lattner <sabre@nondot.org> | 2008-05-13 19:56:20 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-05-13 19:56:20 +0000 |
commit | 0d73b6c09d1c44d2f76b69aebded9cd910d63ffc (patch) | |
tree | 1f836ee56ec5e66dcdc63932080b211185f9f635 /lib | |
parent | b3e25ea30de9adaf9c2e4555b9fb8c6564fbf884 (diff) | |
download | external_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.txt | 18 |
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 + //===---------------------------------------------------------------------===// |