aboutsummaryrefslogtreecommitdiffstats
path: root/lib/Transforms
Commit message (Collapse)AuthorAgeFilesLines
* When spewing out warnings during function resolution, do not vomit out pagesChris Lattner2003-11-201-4/+8
| | | | | | | and pages of non-symbolic types. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10109 91177308-0d34-0410-b5e6-96231b3b80d8
* This file was somehow missing a top-level comment line.Misha Brukman2003-11-171-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10055 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR116Chris Lattner2003-11-161-0/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@10032 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement feature: InstCombine/2003-11-13-ConstExprCastCall.llChris Lattner2003-11-131-1/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9981 91177308-0d34-0410-b5e6-96231b3b80d8
* Put all LLVM code into the llvm namespace, as per bug 109.Brian Gaeke2003-11-1170-19/+296
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9903 91177308-0d34-0410-b5e6-96231b3b80d8
* Reorganize code for locality, improve commentsChris Lattner2003-11-101-19/+23
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9857 91177308-0d34-0410-b5e6-96231b3b80d8
* Adjust to new critical edge interfaceChris Lattner2003-11-102-15/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9853 91177308-0d34-0410-b5e6-96231b3b80d8
* Do NOT inline self recursive calls into other functions. This is causing theChris Lattner2003-11-092-1/+10
| | | | | | | | pool allocator no end of trouble, and doesn't make a lot of sense anyway. This does not solve the problem with mutually recursive functions, but they are much less common. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9828 91177308-0d34-0410-b5e6-96231b3b80d8
* UntypoChris Lattner2003-11-091-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9827 91177308-0d34-0410-b5e6-96231b3b80d8
* Declare FunctionPasses as such so that they can be used in FunctionPassManager.Misha Brukman2003-11-073-3/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9768 91177308-0d34-0410-b5e6-96231b3b80d8
* Various cleanups and efficiency improvementsChris Lattner2003-11-061-38/+24
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9753 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: PR93Chris Lattner2003-11-061-0/+29
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9752 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the problem with running cleanups in bugpoint: We were deleting argumentsChris Lattner2003-11-051-1/+4
| | | | | | | of intrinsic functions, causing the verifier to fail. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9745 91177308-0d34-0410-b5e6-96231b3b80d8
* Split behavior into two piecesChris Lattner2003-11-051-13/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9741 91177308-0d34-0410-b5e6-96231b3b80d8
* Yet more fixes for constant expr shiftsChris Lattner2003-11-051-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9739 91177308-0d34-0410-b5e6-96231b3b80d8
* Further fixes for PR93Chris Lattner2003-11-051-1/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9738 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix flawed logic that was breaking several SPEC benchmarks, including gzip ↵Chris Lattner2003-11-051-3/+3
| | | | | | and crafty. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9731 91177308-0d34-0410-b5e6-96231b3b80d8
* Be gcc 3.4 cleanChris Lattner2003-11-051-1/+3
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9725 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug with previous implementation:Chris Lattner2003-11-051-4/+11
| | | | | | | | | | - // ~(c-X) == X-(c-1) == X+(-c+1) + // ~(c-X) == X-c-1 == X+(-c-1) Implement: C - ~X == X + (1+C) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9715 91177308-0d34-0410-b5e6-96231b3b80d8
* Minor cleanup, plus implement InstCombine/xor.ll:test17Chris Lattner2003-11-041-3/+17
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9711 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement InstCombine/xor.ll:test(15|16)Chris Lattner2003-11-041-1/+8
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9708 91177308-0d34-0410-b5e6-96231b3b80d8
* Checking in Chris's suggestions:John Criswell2003-11-041-3/+32
| | | | | | | | | | | Added assert() to ensure symbol table is well formed. Added code to remember the value that was found; resolving types can change the symbol table and invalidate the value of the iterator. Added comments to the ResolveTypes() function (mainly for my own benefit). Please feel free to correct the comments if they are not accurate. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9693 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement InstCombine/cast-set.ll:test6[a]. This improves code generated forChris Lattner2003-11-031-6/+57
| | | | | | | a hot function in em3d git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9673 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement InstCombine/cast-set.ll: test1, test2, test7Chris Lattner2003-11-031-15/+41
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9670 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug with zero sized castsChris Lattner2003-11-031-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9667 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug in previous checkinChris Lattner2003-11-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9656 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement transmogriphication of allocation instructionsChris Lattner2003-11-021-2/+33
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9654 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR78Chris Lattner2003-11-021-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9648 91177308-0d34-0410-b5e6-96231b3b80d8
* Strip off CPR's manually, because if we don't, the inliner doesn't delete deadChris Lattner2003-10-311-2/+9
| | | | | | | functions. GRR git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9641 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: 2003-10-29-CallSiteResolve.ll & PR70Chris Lattner2003-10-301-1/+11
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9600 91177308-0d34-0410-b5e6-96231b3b80d8
* Refactor code, initial implementation of -insert-block-profiling passChris Lattner2003-10-291-64/+106
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9593 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix PR66 & ScalarRepl/2003-10-29-ArrayProblem.llChris Lattner2003-10-291-62/+25
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9585 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: ConstantMerge/2003-10-28-MergeExternalConstants.ll & PR64Chris Lattner2003-10-291-2/+13
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9579 91177308-0d34-0410-b5e6-96231b3b80d8
* Check in statistifying patch for BillChris Lattner2003-10-281-0/+6
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9572 91177308-0d34-0410-b5e6-96231b3b80d8
* Pass in argc & argvChris Lattner2003-10-281-6/+20
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9563 91177308-0d34-0410-b5e6-96231b3b80d8
* Initial checkin of profiling instrumentation pass. So far, despite theChris Lattner2003-10-281-0/+127
| | | | | | | | file name, we only support function profiling. This will be fixed in the near future. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9547 91177308-0d34-0410-b5e6-96231b3b80d8
* Eliminate using declarationsChris Lattner2003-10-271-25/+26
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9543 91177308-0d34-0410-b5e6-96231b3b80d8
* Propagating constants to arguments can make other arguments constant. For nowChris Lattner2003-10-271-5/+15
| | | | | | | do something dumb, and inefficient, but more complete. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9542 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix test: Linker/2003-10-27-LinkOncePromote.llChris Lattner2003-10-271-27/+29
| | | | | | | Fix PR58 git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9530 91177308-0d34-0410-b5e6-96231b3b80d8
* Get the list of PHI node values before the basic block is split. Also, addChris Lattner2003-10-271-9/+16
| | | | | | | | | PHI node entries for unwind instructions just like for call instructions which became invokes! This fixes PR57, tested by Inline/2003-10-26-InlineInvokeExceptionDestPhi.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9526 91177308-0d34-0410-b5e6-96231b3b80d8
* We might as well strip off any CPRs before propagationChris Lattner2003-10-231-1/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9437 91177308-0d34-0410-b5e6-96231b3b80d8
* * We were forgetting to pass varargs arguments through a callChris Lattner2003-10-231-0/+18
| | | | | | | * Add a work around for bug PR56, gross but necessary for now. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9428 91177308-0d34-0410-b5e6-96231b3b80d8
* Check in initial version of ipcpChris Lattner2003-10-231-0/+110
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9423 91177308-0d34-0410-b5e6-96231b3b80d8
* Make this pass substantially stronger by having it delete dead return valuesChris Lattner2003-10-231-127/+354
| | | | | | | | | | as well as arguments. Now it can delete arguments and return values which are only passed into other arguments or are returned, if they are dead. This causes it to delete several hundred extra args/retvals from the C++ hello world program, shrinking it by about 2K. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9398 91177308-0d34-0410-b5e6-96231b3b80d8
* This important patch fixes two warnings in the linker which can occur from ↵Chris Lattner2003-10-221-4/+33
| | | | | | | | | linking valid pieces of code git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9390 91177308-0d34-0410-b5e6-96231b3b80d8
* Update the 'used' flag correctlyChris Lattner2003-10-221-6/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9366 91177308-0d34-0410-b5e6-96231b3b80d8
* Loop over the module, not the symbol table. This makes the code handleChris Lattner2003-10-221-21/+18
| | | | | | | unused external functions again git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9365 91177308-0d34-0410-b5e6-96231b3b80d8
* Implement FunctionResolve/2003-10-21-GlobalResolveHack.llChris Lattner2003-10-221-2/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9363 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: FunctionResolve/2003-10-21-GlobalTypeDifference.llChris Lattner2003-10-211-55/+19
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9359 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug: Linker/2003-10-21-ConflictingTypesTolerance.llChris Lattner2003-10-211-13/+10
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9357 91177308-0d34-0410-b5e6-96231b3b80d8