Skip to content
  1. Jul 01, 2008
  2. Jun 06, 2008
  3. Jun 04, 2008
  4. Jun 03, 2008
  5. May 31, 2008
  6. Apr 23, 2008
  7. Apr 02, 2008
    • Dale Johannesen's avatar
      Recommitting EH patch; this should answer most of the · fd967cf3
      Dale Johannesen authored
      review feedback.
      -enable-eh is still accepted but doesn't do anything.
      EH intrinsics use Dwarf EH if the target supports that,
      and are handled by LowerInvoke otherwise.
      The separation of the EH table and frame move data is,
      I think, logically figured out, but either one still
      causes full EH info to be generated (not sure how to
      split the metadata correctly).
      MachineModuleInfo::needsFrameInfo is no longer used and
      is removed.
      
      llvm-svn: 49064
      fd967cf3
  8. Apr 01, 2008
  9. Mar 25, 2008
  10. Mar 11, 2008
  11. Feb 29, 2008
  12. Feb 13, 2008
  13. Jan 14, 2008
  14. Jan 07, 2008
  15. Jan 05, 2008
  16. Jan 04, 2008
    • Bill Wendling's avatar
      Move option to enable machine LICM into LLVMTargetMachine.cpp. · 66470d02
      Bill Wendling authored
      llvm-svn: 45572
      66470d02
    • Chris Lattner's avatar
      Add a really quick hack at a machine code sinking pass, enabled with --enable-sinking. · f3edc09f
      Chris Lattner authored
      It is missing validity checks, so it is known broken.  However, it is powerful enough
      to compile this contrived code:
      
      void test1(int C, double A, double B, double *P) {
        double Tmp = A*A+B*B;
        *P = C ? Tmp : A;
      }
      
      into:
      
      _test1:
      	movsd	8(%esp), %xmm0
      	cmpl	$0, 4(%esp)
      	je	LBB1_2	# entry
      LBB1_1:	# entry
      	movsd	16(%esp), %xmm1
      	mulsd	%xmm1, %xmm1
      	mulsd	%xmm0, %xmm0
      	addsd	%xmm1, %xmm0
      LBB1_2:	# entry
      	movl	24(%esp), %eax
      	movsd	%xmm0, (%eax)
      	ret
      
      instead of:
      
      _test1:
      	movsd	16(%esp), %xmm0
      	mulsd	%xmm0, %xmm0
      	movsd	8(%esp), %xmm1
      	movapd	%xmm1, %xmm2
      	mulsd	%xmm2, %xmm2
      	addsd	%xmm0, %xmm2
      	cmpl	$0, 4(%esp)
      	je	LBB1_2	# entry
      LBB1_1:	# entry
      	movapd	%xmm2, %xmm1
      LBB1_2:	# entry
      	movl	24(%esp), %eax
      	movsd	%xmm1, (%eax)
      	ret
      
      woo.
      
      llvm-svn: 45570
      f3edc09f
  17. Dec 29, 2007
  18. Dec 07, 2007
    • Bill Wendling's avatar
      Initial commit of the machine code LICM pass. It successfully hoists this: · fb706bc5
      Bill Wendling authored
      _foo:
              li r2, 0
      LBB1_1: ; bb
              li r5, 0
              stw r5, 0(r3)
              addi r2, r2, 1
              addi r3, r3, 4
              cmplw cr0, r2, r4
              bne cr0, LBB1_1 ; bb
      LBB1_2: ; return
              blr 
      
      to:
      
      _foo:
              li r2, 0
              li r5, 0
      LBB1_1: ; bb
              stw r5, 0(r3)
              addi r2, r2, 1
              addi r3, r3, 4
              cmplw cr0, r2, r4
              bne cr0, LBB1_1 ; bb
      LBB1_2: ; return
              blr
      
      ZOMG!! :-)
      
      Moar to come...
      
      llvm-svn: 44687
      fb706bc5
  19. Jul 27, 2007
  20. Jul 26, 2007
  21. Jul 20, 2007
  22. Jul 13, 2007
  23. Jul 11, 2007
  24. Jun 19, 2007
  25. May 22, 2007
  26. Mar 31, 2007
  27. Mar 06, 2007
  28. Feb 22, 2007
  29. Feb 08, 2007
  30. Dec 07, 2006
  31. Nov 16, 2006
  32. Nov 07, 2006
Loading