Skip to content
  1. Dec 28, 2007
  2. Dec 18, 2007
  3. Dec 06, 2007
    • Chris Lattner's avatar
      implement a readme entry, compiling the code into: · 7c709a5d
      Chris Lattner authored
      _foo:
      	movl	$12, %eax
      	andl	4(%esp), %eax
      	movl	_array(%eax), %eax
      	ret
      
      instead of:
      
      _foo:
      	movl	4(%esp), %eax
      	shrl	$2, %eax
      	andl	$3, %eax
      	movl	_array(,%eax,4), %eax
      	ret
      
      As it turns out, this triggers all the time, in a wide variety of
      situations, for example, I see diffs like this in various programs:
      
      -       movl    8(%eax), %eax
      -       shll    $2, %eax
      -       andl    $1020, %eax
      -       movl    (%esi,%eax), %eax
      +       movzbl  8(%eax), %eax
      +       movl    (%esi,%eax,4), %eax
      
      
      -       shll    $2, %edx
      -       andl    $1020, %edx
      -       movl    (%edi,%edx), %edx
      +       andl    $255, %edx
      +       movl    (%edi,%edx,4), %edx
      
      Unfortunately, I also see stuff like this, which can be fixed in the
      X86 backend:
      
      -       andl    $85, %ebx
      -       addl    _bit_count(,%ebx,4), %ebp
      +       shll    $2, %ebx
      +       andl    $340, %ebx
      +       addl    _bit_count(%ebx), %ebp
      
      llvm-svn: 44656
      7c709a5d
    • Chris Lattner's avatar
      add a note · 5e224c32
      Chris Lattner authored
      llvm-svn: 44638
      5e224c32
  4. Oct 03, 2007
  5. May 06, 2007
  6. Mar 24, 2007
  7. Mar 18, 2007
    • Chris Lattner's avatar
      minor updates · 9b3e2b4a
      Chris Lattner authored
      llvm-svn: 35143
      9b3e2b4a
    • Nick Lewycky's avatar
      This is implemented. We now generate: · f7644419
      Nick Lewycky authored
      entry:
              icmp ugt i32 %x, 4              ; <i1>:0 [#uses=1]
              br i1 %0, label %cond_true, label %cond_false
      
      cond_true:              ; preds = %entry
              %tmp1 = tail call i32 (...)* @bar( i32 12 )             ; <i32> [#uses=0]
              ret void
      
      cond_false:             ; preds = %entry
              switch i32 %x, label %cond_true15 [
                       i32 4, label %cond_true3
                       i32 3, label %cond_true7
                       i32 2, label %cond_true11
                       i32 0, label %cond_false17
              ]
      
      ...
      
      llvm-svn: 35142
      f7644419
  8. Feb 15, 2007
    • Reid Spencer's avatar
      For PR1195: · 09575bac
      Reid Spencer authored
      Change use of "packed" term to "vector" in comments, strings, variable
      names, etc.
      
      llvm-svn: 34300
      09575bac
  9. Feb 13, 2007
  10. Jan 16, 2007
  11. Dec 23, 2006
    • Reid Spencer's avatar
      For PR950: · 266e42b3
      Reid Spencer authored
      This patch removes the SetCC instructions and replaces them with the ICmp
      and FCmp instructions. The SetCondInst instruction has been removed and
      been replaced with ICmpInst and FCmpInst.
      
      llvm-svn: 32751
      266e42b3
  12. Dec 11, 2006
  13. Dec 08, 2006
  14. Nov 29, 2006
  15. Nov 14, 2006
  16. Nov 13, 2006
  17. Nov 10, 2006
  18. Nov 06, 2006
  19. Nov 03, 2006
  20. Oct 26, 2006
    • Reid Spencer's avatar
      For PR950: · 7e80b0b3
      Reid Spencer authored
      Make necessary changes to support DIV -> [SUF]Div. This changes llvm to
      have three division instructions: signed, unsigned, floating point. The
      bytecode and assembler are bacwards compatible, however.
      
      llvm-svn: 31195
      7e80b0b3
  21. Oct 24, 2006
  22. Sep 28, 2006
  23. Sep 25, 2006
  24. Sep 19, 2006
  25. Sep 18, 2006
  26. Sep 17, 2006
  27. Sep 15, 2006
  28. Aug 25, 2006
  29. May 30, 2006
  30. May 21, 2006
  31. May 19, 2006
  32. May 18, 2006
  33. Apr 20, 2006
Loading