llvm-6502/lib/Transforms
Hans Wennborg d72271cd84 SimplifyCFG: Make the switch-to-lookup table transformation store the
tables in bitmaps when they fit in a target-legal register.

This saves some space, and it also allows for building tables that would
otherwise be deemed too sparse.

One interesting case that this hits is example 7 from
http://blog.regehr.org/archives/320. We currently generate good code
for this when lowering the switch to the selection DAG: we build a
bitmask to decide whether to jump to one block or the other. My patch
will result in the same bitmask, but it removes the need for the jump,
as the return value can just be retrieved from the mask.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@164684 91177308-0d34-0410-b5e6-96231b3b80d8
2012-09-26 09:44:49 +00:00
..
Hello Since the Hello pass is built as a loadable dynamic library, don't try to convert it to new-style registration yet. 2010-10-07 00:31:16 +00:00
InstCombine Move Attribute::typeIncompatible inside of the Attributes class. 2012-09-25 20:38:59 +00:00
Instrumentation s/__llvm_gcov_flush/__gcov_flush/g 2012-09-17 17:57:05 +00:00
IPO Move Attribute::typeIncompatible inside of the Attributes class. 2012-09-25 20:38:59 +00:00
Scalar Revert the business end of r164636 and try again. I'll come in again. ;] 2012-09-26 07:41:40 +00:00
Utils SimplifyCFG: Make the switch-to-lookup table transformation store the 2012-09-26 09:44:49 +00:00
Vectorize Make MemoryBuiltins aware of TargetLibraryInfo. 2012-08-29 15:32:21 +00:00
CMakeLists.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
LLVMBuild.txt Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00
Makefile Add a basic-block autovectorization pass. 2012-02-01 03:51:43 +00:00