aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2003-08-14Factory methods for function passes now return type FunctionPass *.Brian Gaeke
Get rid of RegisterLLC, which can't handle FunctionPasses anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7836 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-14Unbreak SPARC backend: addPassesToJITCompile andBrian Gaeke
addPassesToEmitMachineCode now both take a FunctionPassManager. Factory methods for function passes now return type FunctionPass *. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7835 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-14Dramatically simplify how -time-passes works.Chris Lattner
This also enables -time-passes for FunctionPassManagers, which allows it to be used for the JIT git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7834 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Using std::string requires `#include <string>', says gcc-2.95.3.Misha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7833 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Fix FIXME by removing FIXMEChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7832 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13This file uses stable_sortChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7831 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13I must have missed these when eliminating the cast to bool cannonicalizationsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7829 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Implement instcombine optimizations:Chris Lattner
(A <setcc1> B) logicalop (A <setcc2> B) -> (A <setcc3> B) or true or false Where setcc[123] is one of the 6 setcc instructions, and logicalop is one of: And, Or, Xor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7828 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Add some more tests for: (A <setcc1> B) logicalop (A <setcc2> B)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7827 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13X86 static backend: smackedBrian Gaeke
Function at a time: smacked Who you gonna call!!! :-) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7826 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Generalize some of the add tests to allow for reassociation to take placeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7825 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Add some tests for difficult reassociation casesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7824 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Factory methods for FunctionPasses now return type FunctionPass *.Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7823 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Deconstify parameter to getPointerToFunction().Brian Gaeke
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7822 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13addPassesToJITCompile and addPassesToEmitMachineCode now take aBrian Gaeke
FunctionPassManager, to support function-at-a-time compilation and emission of code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7821 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Deconstify parameter to getPointerToFunction().Brian Gaeke
Use a FunctionPassManager instead of a PassManager. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7820 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Deconstify parameter to getPointerToFunction().Brian Gaeke
Run passes on single function (hey, just-in-time compilation!) instead of the entire module that contains it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7819 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13In ExecutionEngine::getPointerToGlobal(), throw away const qualifierBrian Gaeke
on Function * when passing it to getPointerToFunction(). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7818 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13addPassesToJITCompile now takes a FunctionPassManager, to supportBrian Gaeke
function-at-a-time compilation and emission of code. Separate addPassesToEmitAssembly from addPassesToJITCompile, because the latter requires you to use FunctionPasses, and the former might diverge anyway. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7817 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Factory methods for FunctionPasses now return type FunctionPass *.Brian Gaeke
Correct one of the functions' comments. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7816 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Factory methods for FunctionPasses now return type FunctionPass *.Brian Gaeke
Revert (to v1.55) one of the hunks of Chris's change that messed up the %-register workaround. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7815 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Assign arguments different ranks so they get grouped togetherChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7813 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Implement constant folding of casts from boolean constants to other valuesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7812 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Removing the pool allocator from the main CVS tree.John Criswell
Use the poolalloc module in CVS from now on. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7810 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Implement InstCombine/2003-08-12-AllocaNonNull.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7807 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Do not cannonicalize (X != 0) into (cast X to bool)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7806 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Reorganize tests because we no longer cannonicalize X != 0 -> cast X to boolChris Lattner
In fact, we plan to eliminate cast to bool entirely. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7805 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Update test to represent new cannonicalization rules for multipliesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7804 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Change cannonicalization rules: add X,X is represented as multiplies, multipliesChris Lattner
of a power of two are represented as a shift. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7803 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Adjust files for move of mapping info stuff into the Sparc directoryChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7802 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Mapping directory no longer existsChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7801 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Incorporate mapping library into the sparc libraryChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7800 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Obsolete fileChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7799 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-13Just incorporating some notes I wrote for myself into a place where they won'tBrian Gaeke
get lost... git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7798 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Make MInst2LVSetBI and MInst2LVSetAI be hash_maps instead of maps.Vikram S. Adve
Add some comments and non-const methods to fix constness problems. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7797 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12For instructions in a delay slot of another instruction,Vikram S. Adve
we no longer need to find the live-before set of the delayed branch since that set is now included the live-before/after set of the instructions in each delay slot. Just assert that instead. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7796 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12For an instruction with delay slots, mark all live values beforeVikram S. Adve
the instruction as being live before/after the delay slot instructions as well. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7795 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Give std::map<BasicBlock *, BasicBlock *> the short name BBMap, becauseBrian Gaeke
it's used 7 different times. Rename `getBackEdges' to `findAndInstrumentBackEdges', for clarity. Remove some excess whitespace and commented-out code. Use shorter forms of CallInst ctors. Do not make `reopt_threshold' visible to the LLVM program, and do not pass it to the call to `reoptimizerInitialize'. Don't pass the GlobalVariable representing it to any of our helper methods. `reopt_threshold' is an internal parameter of the reoptimizer, which InstLoops does not need to know about. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7794 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Allow pulling logical operations through shifts.Chris Lattner
This implements InstCombine/shift.ll:test14* git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7793 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Fix bug: Reassociate/2003-08-12-InfiniteLoop.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7792 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12new testcaseChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7791 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Right, instcombine cannot remove ((X >> C) << C) if it's signed.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7790 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12New testcasesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7789 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Reenable optimized buildChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7788 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Assign finer grained ranks, make sure to reassociate top-level after ↵Chris Lattner
reassociating bottom level git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7787 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Simplify codeChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7783 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Implement testcases InstCombine/or.ll:test16/test17Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7782 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12New testcasesChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7781 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Merged in changes between PRE11_ROOT and LLVM_PRE111 (i.e. the beginning ofJohn Criswell
the pre-release 1.1 branch and pre-release 1.1.1). Made the USE_SPEC option work. Silenced unnecessary error output from the cmp command when checking for updates to lex/yacc generated files. This fixes a problem where we get error messages the first time the file is generated. Fixed the distclean option. It is now in the Makefile (i.e. only runs in the top level source directory), removes more files, and plays nicely with external project Makefiles. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7780 91177308-0d34-0410-b5e6-96231b3b80d8
2003-08-12Add FunctionPassManager - it's like a PassManager, but it only deals inBrian Gaeke
FunctionPasses. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@7778 91177308-0d34-0410-b5e6-96231b3b80d8