Skip to content
  1. Jul 09, 2009
  2. Jun 23, 2009
    • Bill Wendling's avatar
      "The MMX_MASKMOVQ and MMX_MASKMOVQ64 instructions are labeled as MRMDestMem · f6e8f6b0
      Bill Wendling authored
      instructions, which implies that there is an explicit memory operand.  There is
      (however) no explicit memory operand; although this is a store, the only memory
      operand is implicit, indicated by DS:EDI.  This causes the table-generation code
      for the disassembler to report an error."
      
      Patch by Sean Callanan!
      
      llvm-svn: 73989
      f6e8f6b0
  3. Jun 06, 2009
  4. Jun 04, 2009
  5. Jun 03, 2009
  6. May 28, 2009
  7. Apr 27, 2009
    • Nate Begeman's avatar
      2nd attempt, fixing SSE4.1 issues and implementing feedback from duncan. · 8d6d4b92
      Nate Begeman authored
      PR2957
      
      ISD::VECTOR_SHUFFLE now stores an array of integers representing the shuffle
      mask internal to the node, rather than taking a BUILD_VECTOR of ConstantSDNodes
      as the shuffle mask.  A value of -1 represents UNDEF.
      
      In addition to eliminating the creation of illegal BUILD_VECTORS just to 
      represent shuffle masks, we are better about canonicalizing the shuffle mask,
      resulting in substantially better code for some classes of shuffles.
      
      llvm-svn: 70225
      8d6d4b92
  8. Apr 24, 2009
    • Rafael Espindola's avatar
      Revert 69952. Causes testsuite failures on linux x86-64. · b93db668
      Rafael Espindola authored
      llvm-svn: 69967
      b93db668
    • Nate Begeman's avatar
      PR2957 · bb881d66
      Nate Begeman authored
      ISD::VECTOR_SHUFFLE now stores an array of integers representing the shuffle
      mask internal to the node, rather than taking a BUILD_VECTOR of ConstantSDNodes
      as the shuffle mask.  A value of -1 represents UNDEF.
      
      In addition to eliminating the creation of illegal BUILD_VECTORS just to 
      represent shuffle masks, we are better about canonicalizing the shuffle mask,
      resulting in substantially better code for some classes of shuffles.
      
      A clean up of x86 shuffle code, and some canonicalizing in DAGCombiner is next.
      
      llvm-svn: 69952
      bb881d66
  9. Feb 23, 2009
  10. Dec 12, 2008
  11. Dec 03, 2008
  12. Nov 05, 2008
  13. Aug 27, 2008
  14. Aug 25, 2008
  15. Aug 23, 2008
  16. Jul 25, 2008
  17. Jun 25, 2008
  18. May 29, 2008
  19. May 09, 2008
  20. May 08, 2008
  21. May 03, 2008
  22. Apr 25, 2008
  23. Apr 21, 2008
  24. Apr 16, 2008
  25. Mar 21, 2008
  26. Mar 20, 2008
  27. Mar 15, 2008
  28. Mar 12, 2008
    • Evan Cheng's avatar
      Clean up my own mess. · 99ee78ef
      Evan Cheng authored
      X86 lowering normalize vector 0 to v4i32. However DAGCombine can fold (sub x, x) -> 0 after legalization. It can create a zero vector of a type that's not expected (e.g. v8i16). We don't want to disable the optimization since leaving a (sub x, x) is really bad. Add isel patterns for other types of vector 0 to ensure correctness. It's highly unlikely to happen other than in bugpoint reduced test cases.
      
      llvm-svn: 48279
      99ee78ef
  29. Feb 29, 2008
  30. Feb 19, 2008
    • Evan Cheng's avatar
      - When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should... · 6200c225
      Evan Cheng authored
      - When DAG combiner is folding a bit convert into a BUILD_VECTOR, it should check if it's essentially a SCALAR_TO_VECTOR. Avoid turning (v8i16) <10, u, u, u> to <10, 0, u, u, u, u, u, u>. Instead, simply convert it to a SCALAR_TO_VECTOR of the proper type.
      - X86 now normalize SCALAR_TO_VECTOR to (BIT_CONVERT (v4i32 SCALAR_TO_VECTOR)). Get rid of X86ISD::S2VEC.
      
      llvm-svn: 47290
      6200c225
  31. Jan 10, 2008
  32. Jan 07, 2008
  33. Dec 29, 2007
Loading