llvm-6502/lib
Benjamin Kramer 56442dfdcf SimplifyCFG: Turn switches into sub+icmp+branch if possible.
This makes the job of the later optzn passes easier, allowing the vast amount of
icmp transforms to chew on it.

We transform 840 switches in gcc.c, leading to a 16k byte shrink of the resulting
binary on i386-linux.

The testcase from README.txt now compiles into
  decl  %edi
  cmpl  $3, %edi
  sbbl  %eax, %eax
  andl  $1, %eax
  ret

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@124724 91177308-0d34-0410-b5e6-96231b3b80d8
2011-02-02 15:56:22 +00:00
..
Analysis Add a m_Undef pattern for convenience. This is so that code that uses 2011-02-01 09:06:20 +00:00
Archive
AsmParser Move unnamed_addr after the function arguments on Sabre's request. 2011-01-25 19:09:56 +00:00
Bitcode
CodeGen Given a pair of floating point load and store, if there are no other uses of 2011-02-02 01:06:55 +00:00
CompilerDriver
ExecutionEngine Fix libffi usage when it is on a custom path. 2011-01-28 16:49:05 +00:00
Linker Correctly merge available_externally and regular definitions when they have 2011-02-01 05:33:52 +00:00
MC Fix bogus assert condition noticed by Csaba Raduly. 2011-02-01 01:50:49 +00:00
Object
Support Remove NoVendor and NoOS, added in commit 123990, from Triple. While it 2011-02-02 10:08:38 +00:00
Target SimplifyCFG: Turn switches into sub+icmp+branch if possible. 2011-02-02 15:56:22 +00:00
Transforms SimplifyCFG: Turn switches into sub+icmp+branch if possible. 2011-02-02 15:56:22 +00:00
VMCore Make SwitchInst::removeCase() more efficient. 2011-02-01 09:22:34 +00:00
Makefile