Skip to content
  1. Sep 13, 2010
  2. Sep 11, 2010
  3. Sep 10, 2010
  4. Sep 08, 2010
    • Jakob Stoklund Olesen's avatar
      Remove dead code. · 79e838b0
      Jakob Stoklund Olesen authored
      llvm-svn: 113386
      79e838b0
    • Jakob Stoklund Olesen's avatar
      Don't add <imp-def> operands during register rewriting. · 4d19d265
      Jakob Stoklund Olesen authored
      LiveIntervals already adds <imp-def> operands for super-registers when a subreg
      def defines the whole register. Thus, it is not necessary to do it again when
      rewriting.
      
      In fact, the super-register imp-defs caused miscompilations because the late
      scheduler couldn't see that the super-register was read.
      
      We still add super-reg <imp-use,kill> operands when rewriting virtuals to
      physicals.
      
      llvm-svn: 113299
      4d19d265
  5. Sep 05, 2010
    • Chris Lattner's avatar
      add a comment about where this should eventually move. · 419d0aa0
      Chris Lattner authored
      llvm-svn: 113117
      419d0aa0
    • Lang Hames's avatar
      Added initialisers for reduction rule counters. · 64a4a136
      Lang Hames authored
      llvm-svn: 113108
      64a4a136
    • Chris Lattner's avatar
      implement rdar://6653118 - fastisel should fold loads where possible. · eeba0c73
      Chris Lattner authored
      Since mem2reg isn't run at -O0, we get a ton of reloads from the stack,
      for example, before, this code:
      
      int foo(int x, int y, int z) {
        return x+y+z;
      }
      
      used to compile into:
      
      _foo:                                   ## @foo
      	subq	$12, %rsp
      	movl	%edi, 8(%rsp)
      	movl	%esi, 4(%rsp)
      	movl	%edx, (%rsp)
      	movl	8(%rsp), %edx
      	movl	4(%rsp), %esi
      	addl	%edx, %esi
      	movl	(%rsp), %edx
      	addl	%esi, %edx
      	movl	%edx, %eax
      	addq	$12, %rsp
      	ret
      
      Now we produce:
      
      _foo:                                   ## @foo
      	subq	$12, %rsp
      	movl	%edi, 8(%rsp)
      	movl	%esi, 4(%rsp)
      	movl	%edx, (%rsp)
      	movl	8(%rsp), %edx
      	addl	4(%rsp), %edx    ## Folded load
      	addl	(%rsp), %edx     ## Folded load
      	movl	%edx, %eax
      	addq	$12, %rsp
      	ret
      
      Fewer instructions and less register use = faster compiles.
      
      llvm-svn: 113102
      eeba0c73
  6. Sep 04, 2010
  7. Sep 03, 2010
  8. Sep 02, 2010
  9. Sep 01, 2010
Loading