diff options
author | Chris Lattner <sabre@nondot.org> | 2008-03-02 18:05:14 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2008-03-02 18:05:14 +0000 |
commit | ce506689e9d919710041017b0f89c80789089c92 (patch) | |
tree | 9977f9d8435ae3077fdb65f9380702c20a2c1252 /lib/Target/X86/README-SSE.txt | |
parent | 0bf507947652b7dd9a301f0bda436d6f7b8987a3 (diff) | |
download | external_llvm-ce506689e9d919710041017b0f89c80789089c92.zip external_llvm-ce506689e9d919710041017b0f89c80789089c92.tar.gz external_llvm-ce506689e9d919710041017b0f89c80789089c92.tar.bz2 |
Evan implemented these.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47828 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/X86/README-SSE.txt')
-rw-r--r-- | lib/Target/X86/README-SSE.txt | 26 |
1 files changed, 0 insertions, 26 deletions
diff --git a/lib/Target/X86/README-SSE.txt b/lib/Target/X86/README-SSE.txt index 2ccabca..acfe411 100644 --- a/lib/Target/X86/README-SSE.txt +++ b/lib/Target/X86/README-SSE.txt @@ -131,32 +131,6 @@ feasible. //===---------------------------------------------------------------------===// -Teach the coalescer to commute 2-addr instructions, allowing us to eliminate -the reg-reg copy in this example: - -float foo(int *x, float *y, unsigned c) { - float res = 0.0; - unsigned i; - for (i = 0; i < c; i++) { - float xx = (float)x[i]; - xx = xx * y[i]; - xx += res; - res = xx; - } - return res; -} - -LBB_foo_3: # no_exit - cvtsi2ss %XMM0, DWORD PTR [%EDX + 4*%ESI] - mulss %XMM0, DWORD PTR [%EAX + 4*%ESI] - addss %XMM0, %XMM1 - inc %ESI - cmp %ESI, %ECX -**** movaps %XMM1, %XMM0 - jb LBB_foo_3 # no_exit - -//===---------------------------------------------------------------------===// - Codegen: if (copysign(1.0, x) == copysign(1.0, y)) into: |