Skip to content
  1. Nov 12, 2007
  2. Oct 19, 2007
    • Evan Cheng's avatar
      Local spiller optimization: · 35ff7937
      Evan Cheng authored
      Turn a store folding instruction into a load folding instruction. e.g.
           xorl  %edi, %eax
           movl  %eax, -32(%ebp)
           movl  -36(%ebp), %eax
           orl   %eax, -32(%ebp)
      =>
           xorl  %edi, %eax
           orl   -36(%ebp), %eax
           mov   %eax, -32(%ebp)
      This enables the unfolding optimization for a subsequent instruction which will
      also eliminate the newly introduced store instruction.
      
      llvm-svn: 43192
      35ff7937
  3. Oct 12, 2007
  4. Oct 11, 2007
  5. Oct 06, 2007
  6. Oct 05, 2007
  7. Sep 29, 2007
  8. Sep 28, 2007
  9. Sep 26, 2007
  10. Sep 25, 2007
  11. Sep 24, 2007
  12. Sep 23, 2007
    • Dale Johannesen's avatar
      Fix PR 1681. When X86 target uses +sse -sse2, · e36c4002
      Dale Johannesen authored
      keep f32 in SSE registers and f64 in x87.  This
      is effectively a new codegen mode.
      Change addLegalFPImmediate to permit float and
      double variants to do different things.
      Adjust callers.
      
      llvm-svn: 42246
      e36c4002
  13. Sep 14, 2007
  14. Sep 11, 2007
  15. Sep 08, 2007
  16. Sep 07, 2007
  17. Aug 30, 2007
  18. Aug 05, 2007
  19. Aug 02, 2007
  20. Aug 01, 2007
  21. Jul 31, 2007
  22. Jul 29, 2007
  23. Jul 26, 2007
  24. Jul 21, 2007
  25. Jul 19, 2007
    • Evan Cheng's avatar
      Change instruction description to split OperandList into OutOperandList and · 94b5a80b
      Evan Cheng authored
      InOperandList. This gives one piece of important information: # of results
      produced by an instruction.
      An example of the change:
      def ADD32rr  : I<0x01, MRMDestReg, (ops GR32:$dst, GR32:$src1, GR32:$src2),
                       "add{l} {$src2, $dst|$dst, $src2}",
                       [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>;
      =>
      def ADD32rr  : I<0x01, MRMDestReg, (outs GR32:$dst), (ins GR32:$src1, GR32:$src2),
                       "add{l} {$src2, $dst|$dst, $src2}",
                       [(set GR32:$dst, (add GR32:$src1, GR32:$src2))]>;
      
      llvm-svn: 40033
      94b5a80b
  26. Jul 14, 2007
    • Anton Korobeynikov's avatar
      Long live the exception handling! · 383a3247
      Anton Korobeynikov authored
      This patch fills the last necessary bits to enable exceptions
      handling in LLVM. Currently only on x86-32/linux.
      
      In fact, this patch adds necessary intrinsics (and their lowering) which
      represent really weird target-specific gcc builtins used inside unwinder.
      
      After corresponding llvm-gcc patch will land (easy) exceptions should be
      more or less workable. However, exceptions handling support should not be 
      thought as 'finished': I expect many small and not so small glitches
      everywhere.
      
      llvm-svn: 39855
      383a3247
  27. Jun 26, 2007
  28. Jun 19, 2007
    • Dan Gohman's avatar
      Replace M_REMATERIALIZIBLE and the newly-added isOtherReMaterializableLoad · 9e820649
      Dan Gohman authored
      with a general target hook to identify rematerializable instructions. Some
      instructions are only rematerializable with specific operands, such as loads
      from constant pools, while others are always rematerializable. This hook
      allows both to be identified as being rematerializable with the same
      mechanism.
      
      llvm-svn: 37644
      9e820649
  29. May 06, 2007
  30. Apr 25, 2007
  31. Apr 23, 2007
  32. Apr 20, 2007
  33. Apr 17, 2007
  34. Apr 11, 2007
Loading