summaryrefslogtreecommitdiff
path: root/lib/Target/X86/README-SSE.txt
Commit message (Collapse)AuthorAge
* add a noteChris Lattner2008-09-20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@56391 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-08-19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@54964 91177308-0d34-0410-b5e6-96231b3b80d8
* - Fix a x86 vector isel bug: illegal transformation of a vector_shuffle into aEvan Cheng2008-06-25
| | | | | | | | | shift. - Add a readme entry for a missing vector_shuffle optimization that results in awful codegen. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@52740 91177308-0d34-0410-b5e6-96231b3b80d8
* This is done.Evan Cheng2008-05-24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51526 91177308-0d34-0410-b5e6-96231b3b80d8
* Use movlps / movhps to modify low / high half of 16-byet memory location.Evan Cheng2008-05-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51501 91177308-0d34-0410-b5e6-96231b3b80d8
* Elaborate on the entry on integer vector multiplication by constants.Dan Gohman2008-05-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51491 91177308-0d34-0410-b5e6-96231b3b80d8
* New entry.Evan Cheng2008-05-23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51487 91177308-0d34-0410-b5e6-96231b3b80d8
* we compile multiply-by-constant into horrible code. Doesn't sse4 have someChris Lattner2008-05-23
| | | | | | | instruction for doing this? git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51473 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-05-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51062 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-05-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51060 91177308-0d34-0410-b5e6-96231b3b80d8
* Instead of a vector load, shuffle and then extract an element. Load the ↵Evan Cheng2008-05-13
| | | | | | | | | | | | element from address with an offset. pshufd $1, (%rdi), %xmm0 movd %xmm0, %eax => movl 4(%rdi), %eax git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51026 91177308-0d34-0410-b5e6-96231b3b80d8
* On x86, it's safe to treat i32 load anyext as a normal i32 load. Ditto for ↵Evan Cheng2008-05-13
| | | | | | i8 anyext load to i16. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51019 91177308-0d34-0410-b5e6-96231b3b80d8
* Xform bitconvert(build_pair(load a, load b)) to a single load if the load ↵Evan Cheng2008-05-12
| | | | | | locations are at the right offset from each other. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@51008 91177308-0d34-0410-b5e6-96231b3b80d8
* Add noteAnton Korobeynikov2008-05-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@50959 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note, this is actually not too bad to implement.Chris Lattner2008-04-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49466 91177308-0d34-0410-b5e6-96231b3b80d8
* move the x86-32 part of PR2108 here.Chris Lattner2008-04-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@49465 91177308-0d34-0410-b5e6-96231b3b80d8
* Finish implementing a readme entry: when inserting an i64 variableChris Lattner2008-03-09
| | | | | | | | | | | | | | | | | | | | | | | | | | | | into a vector of zeros or undef, and when the top part is obviously zero, we can just use movd + shuffle. This allows us to compile vec_set-B.ll into: _test3: movl $1234567, %eax andl 4(%esp), %eax movd %eax, %xmm0 ret instead of: _test3: subl $28, %esp movl $1234567, %eax andl 32(%esp), %eax movl %eax, (%esp) movl $0, 4(%esp) movq (%esp), %xmm0 addl $28, %esp ret git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48090 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-03-09
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48064 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement a readme entry, compilingChris Lattner2008-03-09
| | | | | | | | | | | | | | | | #include <xmmintrin.h> __m128i doload64(short x) {return _mm_set_epi16(0,0,0,0,0,0,0,1);} into: movl $1, %eax movd %eax, %xmm0 ret instead of a constant pool load. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48063 91177308-0d34-0410-b5e6-96231b3b80d8
* This one looks easy, add a note.Chris Lattner2008-03-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48055 91177308-0d34-0410-b5e6-96231b3b80d8
* move these to the appropriate fileChris Lattner2008-03-08
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@48054 91177308-0d34-0410-b5e6-96231b3b80d8
* evan implemented this.Chris Lattner2008-03-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47948 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-03-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47939 91177308-0d34-0410-b5e6-96231b3b80d8
* Evan implemented these.Chris Lattner2008-03-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47828 91177308-0d34-0410-b5e6-96231b3b80d8
* upgrade some entries, remove stuff that is done.Chris Lattner2008-02-14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47109 91177308-0d34-0410-b5e6-96231b3b80d8
* readme updatesNate Begeman2008-02-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@47051 91177308-0d34-0410-b5e6-96231b3b80d8
* Enable SSE4 codegen and pattern matching.Nate Begeman2008-02-11
| | | | | | | Add some notes to the README. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46949 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2008-01-27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46413 91177308-0d34-0410-b5e6-96231b3b80d8
* Add some notes.Chris Lattner2008-01-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@46405 91177308-0d34-0410-b5e6-96231b3b80d8
* One readme entry is done, one is really easy (Evan, want to investigateChris Lattner2007-12-29
| | | | | | | | | eliminating the llvm.x86.sse2.loadl.pd intrinsic?), one shuffle optzn may be done (if shufps is better than pinsw, Evan, please review), and we already know about LICM of simple instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45407 91177308-0d34-0410-b5e6-96231b3b80d8
* New entry.Evan Cheng2007-12-21
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@45280 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note.Chris Lattner2007-10-29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43444 91177308-0d34-0410-b5e6-96231b3b80d8
* Small label changes.Bill Wendling2007-10-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42549 91177308-0d34-0410-b5e6-96231b3b80d8
* Now with source code.Bill Wendling2007-10-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42548 91177308-0d34-0410-b5e6-96231b3b80d8
* Micro-optimization -- missed LICM opportunity.Bill Wendling2007-10-02
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42542 91177308-0d34-0410-b5e6-96231b3b80d8
* move PR1264 here.Chris Lattner2007-09-26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@42345 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2007-08-24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41359 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note.Chris Lattner2007-08-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@41103 91177308-0d34-0410-b5e6-96231b3b80d8
* another missed SSE optimizationChris Lattner2007-07-12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@39772 91177308-0d34-0410-b5e6-96231b3b80d8
* add a noteChris Lattner2007-07-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@38507 91177308-0d34-0410-b5e6-96231b3b80d8
* Made this into a bug report: PR1286Bill Wendling2007-03-28
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35439 91177308-0d34-0410-b5e6-96231b3b80d8
* Support added for shifts and unpacking MMX instructions.Bill Wendling2007-03-22
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@35266 91177308-0d34-0410-b5e6-96231b3b80d8
* a noteChris Lattner2007-02-27
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34670 91177308-0d34-0410-b5e6-96231b3b80d8
* This is done.Evan Cheng2006-12-15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32591 91177308-0d34-0410-b5e6-96231b3b80d8
* This is done.Evan Cheng2006-12-14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32584 91177308-0d34-0410-b5e6-96231b3b80d8
* Add note.Evan Cheng2006-12-13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32561 91177308-0d34-0410-b5e6-96231b3b80d8
* this is doneChris Lattner2006-12-11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32424 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a perf optzn corresponding to PR1033.Chris Lattner2006-12-05
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@32229 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a note.Evan Cheng2006-11-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31650 91177308-0d34-0410-b5e6-96231b3b80d8
* These are done.Evan Cheng2006-11-10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@31649 91177308-0d34-0410-b5e6-96231b3b80d8