llvm-6502/test
Chandler Carruth d54f9a4c3b Move the instruction simplification of callsite arguments in the inliner
to instead rely on much more generic and powerful instruction
simplification in the function cloner (and thus inliner).

This teaches the pruning function cloner to use instsimplify rather than
just the constant folder to fold values during cloning. This can
simplify a large number of things that constant folding alone cannot
begin to touch. For example, it will realize that 'or' and 'and'
instructions with certain constant operands actually become constants
regardless of what their other operand is. It also can thread back
through the caller to perform simplifications that are only possible by
looking up a few levels. In particular, GEPs and pointer testing tend to
fold much more heavily with this change.

This should (in some cases) have a positive impact on compile times with
optimizations on because the inliner itself will simply avoid cloning
a great deal of code. It already attempted to prune proven-dead code,
but now it will be use the stronger simplifications to prove more code
dead.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@153403 91177308-0d34-0410-b5e6-96231b3b80d8
2012-03-25 04:03:40 +00:00
..
Analysis Test scalar evolution directly instead of testing the result of 2012-03-22 17:09:31 +00:00
Archive
Assembler
Bindings/Ocaml
Bitcode
BugPoint
CodeGen Fix small-integer VAARG on SVR4 ABI PPC64. 2012-03-24 03:53:55 +00:00
DebugInfo llvm/test/DebugInfo: Move two tests to DebugInfo/X86. They are X86-dependent. 2012-03-19 16:16:03 +00:00
ExecutionEngine Revert a series of commits to MCJIT to get the build working in CMake 2012-03-22 05:44:06 +00:00
Feature
Instrumentation [asan] move x86-specific test to a separate X86 directory with a custom lit.local.cfg file 2012-03-12 18:49:11 +00:00
Integer
lib
Linker Add back removed code. It still causes LLVM to miscompile. But not having it breaks other things. 2012-02-27 23:48:30 +00:00
MC Added soft fail checks for the disassembler when decoding some corner cases of the STRD, STRH, LDRD, LDRH, LDRSH and LDRSB instructions on ARM. 2012-03-22 14:14:49 +00:00
Object Support reading GNU symbol versions in ELFObjectFile 2012-03-09 20:59:52 +00:00
Other
Scripts
TableGen Fix infinite loop in nested multiclasses. 2012-03-07 16:39:35 +00:00
Transforms Move the instruction simplification of callsite arguments in the inliner 2012-03-25 04:03:40 +00:00
Unit
Verifier First part of PR12251. Add documentation and verifier support for the range 2012-03-24 00:14:51 +00:00
CMakeLists.txt llvm/test/CMakeLists.txt: Update dependencies to add llvm-readobj to "check". 2012-03-01 03:14:13 +00:00
lit.cfg
lit.site.cfg.in Revert a series of commits to MCJIT to get the build working in CMake 2012-03-22 05:44:06 +00:00
Makefile Revert a series of commits to MCJIT to get the build working in CMake 2012-03-22 05:44:06 +00:00
Makefile.tests
site.exp.in
TestRunner.sh