aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms
Commit message (Collapse)AuthorAgeFilesLines
* - Eliminated the deferred symbol table stuff in Module & Function, it reallyChris Lattner2002-11-206-42/+36
| | | | | | | wasn't an optimization and it was causing lots of bugs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4779 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix minor bugsChris Lattner2002-11-201-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4778 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove unneccesary #includeChris Lattner2002-11-191-1/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4772 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement the CloneFunction functionChris Lattner2002-11-191-0/+40
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4771 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor changes to cloning interfaceChris Lattner2002-11-192-18/+14
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4770 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix two fixmes: integrate with inlining, and documentChris Lattner2002-11-191-6/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4769 91177308-0d34-0410-b5e6-96231b3b80d8
* Rework inline pass to use cloning infrastructure to do the dirty workChris Lattner2002-11-192-119/+52
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4766 91177308-0d34-0410-b5e6-96231b3b80d8
* Start using the new function cloning headerChris Lattner2002-11-192-4/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4764 91177308-0d34-0410-b5e6-96231b3b80d8
* Move MutatStructTypes.h out of IPOChris Lattner2002-11-192-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4762 91177308-0d34-0410-b5e6-96231b3b80d8
* Rename CloneFunction.h to Cloning.hChris Lattner2002-11-191-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4760 91177308-0d34-0410-b5e6-96231b3b80d8
* Move the function extractor pass from tools/extract into lib/Xform/IPOChris Lattner2002-11-191-0/+83
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4759 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: 2002-11-13-PointerFunction.llChris Lattner2002-11-131-1/+40
| | | | | | | This should fix codegen on vortex to work much better git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4704 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix testcase: FunctionResolve/2002-11-09-ExternFn.llChris Lattner2002-11-101-19/+37
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4668 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix warningChris Lattner2002-11-092-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4649 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling errorChris Lattner2002-11-081-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4645 91177308-0d34-0410-b5e6-96231b3b80d8
* Use the new getMainFunction() method to efficiently locate mainChris Lattner2002-11-081-10/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4630 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: FunctionResolve/2002-11-07-RetMismatch.llChris Lattner2002-11-081-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4618 91177308-0d34-0410-b5e6-96231b3b80d8
* Instcombine this away:Chris Lattner2002-11-041-1/+7
| | | | | | | | %A = getelementptr [4 x int]* %M, long 0, long 0 %B = getelementptr int* %A, long 2 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4536 91177308-0d34-0410-b5e6-96231b3b80d8
* Add a transformation to turn:Chris Lattner2002-11-041-0/+36
| | | | | | | | | malloc Ty, C int malloc [C x Ty], 1 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4534 91177308-0d34-0410-b5e6-96231b3b80d8
* Ack: Fix bug in previous checkin.Chris Lattner2002-11-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4526 91177308-0d34-0410-b5e6-96231b3b80d8
* Be more generous about level raising constant expressions don't force eachChris Lattner2002-11-041-24/+20
| | | | | | | constant to one particular type. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4525 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to _delete_ memory allocated by worklistsChris Lattner2002-11-041-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4523 91177308-0d34-0410-b5e6-96231b3b80d8
* code to lightly instrument at branchesAnand Shukla2002-11-031-0/+210
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4511 91177308-0d34-0410-b5e6-96231b3b80d8
* Make sure to include name information if we have itChris Lattner2002-11-011-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4481 91177308-0d34-0410-b5e6-96231b3b80d8
* Fixes to the reassociate pass to make it respect dominance propertiesChris Lattner2002-10-311-57/+54
| | | | | | | | Huge thanks go to Casey Carter for writing this fix, reassociate is now reoperational! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4471 91177308-0d34-0410-b5e6-96231b3b80d8
* BreakCriticalEdges should update dominance frontier information as well asChris Lattner2002-10-312-4/+28
| | | | | | | other dominance stuff. Patch contributed by Casey Carter git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4457 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix spelling of `propagate'.Misha Brukman2002-10-295-52/+52
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4423 91177308-0d34-0410-b5e6-96231b3b80d8
* Ensure definate initializationChris Lattner2002-10-221-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4263 91177308-0d34-0410-b5e6-96231b3b80d8
* - Rename AnalysisUsage::preservesAll to getPreservesAll & preservesCFG toChris Lattner2002-10-2112-13/+13
| | | | | | | setPreservesCFG to be less confusing. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4255 91177308-0d34-0410-b5e6-96231b3b80d8
* * Apparently string::find doesn't work right on our sun boxes. Work around ↵Chris Lattner2002-10-171-4/+9
| | | | | | this. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4219 91177308-0d34-0410-b5e6-96231b3b80d8
* Really disable pool allocatorChris Lattner2002-10-171-2/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4216 91177308-0d34-0410-b5e6-96231b3b80d8
* - Change Function's so that their argument list is populated when they areChris Lattner2002-10-132-9/+8
| | | | | | | | constructed. Before, external functions would have an empty argument list, now a Function ALWAYS has a populated argument list. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4149 91177308-0d34-0410-b5e6-96231b3b80d8
* - Rename Instruction::First*Op to *OpsBegin, and Num*Ops to *OpsEnd toChris Lattner2002-10-131-1/+1
| | | | | | | reflect the fact that it's a range being defined. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4147 91177308-0d34-0410-b5e6-96231b3b80d8
* Account for global variables resolved more accurately.Chris Lattner2002-10-131-3/+5
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4143 91177308-0d34-0410-b5e6-96231b3b80d8
* Use methods that are more explanatoryChris Lattner2002-10-131-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4142 91177308-0d34-0410-b5e6-96231b3b80d8
* Changed to external global varAnand Shukla2002-10-121-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4120 91177308-0d34-0410-b5e6-96231b3b80d8
* Stop using DataStructureGraph.hChris Lattner2002-10-101-4/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4106 91177308-0d34-0410-b5e6-96231b3b80d8
* - Dramatically simplify the ConstantMerge code now thatChris Lattner2002-10-091-102/+3
| | | | | | | Value::replaceAllUsesWith works with constants correctly. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4104 91177308-0d34-0410-b5e6-96231b3b80d8
* Almost a complete rewrite of FunctionResolution to now resolve functionsChris Lattner2002-10-091-122/+213
| | | | | | | | | | | | | | | and global variables. This fixes bug: FuncResolve/2002-08-19-ResolveGlobalVarsEasier.ll And bug: SingleSource/UnitTests/2002-10-09-ArrayResolution.c Note that this does not fix bug: FunctionResolve/2002-08-19-ResolveGlobalVars.ll because replaceAllUsesWith breaks when a constantexpr is pointing to the thing being replaced. This is more of an infrastructure problem than anything. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4099 91177308-0d34-0410-b5e6-96231b3b80d8
* - Rename MTy to FTy (no methods exist anymore)Chris Lattner2002-10-091-9/+13
| | | | | | | - Fix bug: LevelRaise/2002-10-08-VarArgCallInfLoop.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4088 91177308-0d34-0410-b5e6-96231b3b80d8
* - Fix bug: LevelRaise/2002-10-08-VarArgCall.llChris Lattner2002-10-081-1/+39
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4083 91177308-0d34-0410-b5e6-96231b3b80d8
* - Fix bug: cee/2002-10-07-NoImmediateDominator.llChris Lattner2002-10-082-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4081 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to support PHINode::removeIncoming changesChris Lattner2002-10-081-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4080 91177308-0d34-0410-b5e6-96231b3b80d8
* Changes to support PHINode::removeIncoming changesChris Lattner2002-10-081-9/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4079 91177308-0d34-0410-b5e6-96231b3b80d8
* - Checkin LARGE number of Changes to CEE pass that will make it much moreChris Lattner2002-10-081-53/+394
| | | | | | | | | | | | powerful, but that are largely disabled. The basic idea here is that it is trying to forward branches across basic blocks that have PHI nodes in it, which are crucial to be able to handle cases like whet.ll. Unfortunately we are not updating SSA correctly, causing sim.c to die, and I don't have time to fix the regression now, so I must disable the functionality. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4077 91177308-0d34-0410-b5e6-96231b3b80d8
* Expose isCriticalEdge & SplitCriticalEdge methods from crit-edges passChris Lattner2002-10-082-18/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4075 91177308-0d34-0410-b5e6-96231b3b80d8
* It is illegal for PHI nodes to have zero values, delete the code to handle themChris Lattner2002-10-081-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4071 91177308-0d34-0410-b5e6-96231b3b80d8
* Fold ashr -1, X into -1Chris Lattner2002-10-081-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4070 91177308-0d34-0410-b5e6-96231b3b80d8
* Non-functionality change just to make it more clear what is going onChris Lattner2002-10-071-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4060 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: 2002-10-02-SignExtensionProblem.llChris Lattner2002-10-021-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@4017 91177308-0d34-0410-b5e6-96231b3b80d8