aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Factor out the printing of the leading tab into printInlineAsm.Dan Gohman2009-11-064-3/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86199 91177308-0d34-0410-b5e6-96231b3b80d8
* Make printImplicitDef and printKill non-virtual, since they don'tDan Gohman2009-11-061-2/+2
| | | | | | | need to be overridden. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86198 91177308-0d34-0410-b5e6-96231b3b80d8
* Use SUBREG_TO_REG instead of INSERT_SUBREG to model x86-64'sDan Gohman2009-11-051-5/+3
| | | | | | | implicit zero-extend. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86196 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach LSR to avoid calling SplitCriticalEdge on edges with indirectbr.Dan Gohman2009-11-051-0/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86193 91177308-0d34-0410-b5e6-96231b3b80d8
* Update these tests for the new label names.Dan Gohman2009-11-052-7/+7
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86192 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix the label name generation for address-taken labels to avoid potentialDan Gohman2009-11-051-6/+10
| | | | | | | problems with name collisions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86189 91177308-0d34-0410-b5e6-96231b3b80d8
* Make a few more LLVM headers parsable as standalone headers.Douglas Gregor2009-11-0511-5/+19
| | | | | | | | | Fix some problems with the hidden copy constructors for ImmutableMap/ImmutableSet found by Clang++. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86186 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach lit's SyntaxCheckTest two new tricks:Douglas Gregor2009-11-051-1/+16
| | | | | | | | | - skip .svn directories - add a set of excluded filenames so we can easily skip tests git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86185 91177308-0d34-0410-b5e6-96231b3b80d8
* Added support for renumbering existing index list elements. Removed some ↵Lang Hames2009-11-051-25/+31
| | | | | | junk from the initial numbering code in runOnMachineFunction. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86184 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid calling getUniqueExitBlocks from within LoopSimplify, as it dependsDan Gohman2009-11-051-1/+8
| | | | | | | | on loops having dedicated exits, which LoopSimplify can no longer always guarantee. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86181 91177308-0d34-0410-b5e6-96231b3b80d8
* LoopDeletion depends on loops having dedicated exits.Dan Gohman2009-11-051-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86180 91177308-0d34-0410-b5e6-96231b3b80d8
* The introduction of indirectbr meant the introduction ofDan Gohman2009-11-052-21/+165
| | | | | | | | | | unsplittable critical edges, which means the introduction of loops which cannot be transformed to LoopSimplify form. Fix LoopSimplify to avoid transforming such loops into invalid code. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86176 91177308-0d34-0410-b5e6-96231b3b80d8
* Update various Loop optimization passes to cope with the possibility thatDan Gohman2009-11-057-9/+29
| | | | | | | LoopSimplify form may not be available. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86175 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix bug in aggressive antidep breaking; liveness was not updated correctly ↵David Goodwin2009-11-051-10/+7
| | | | | | for regions that do not have antidep candidates. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86172 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach LoopUnroll how to bail if LoopSimplify can't give it what it needs.Dan Gohman2009-11-051-1/+12
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86164 91177308-0d34-0410-b5e6-96231b3b80d8
* Call getAnalysis<LoopInfo> the normal way, instead of asking passed-inDan Gohman2009-11-051-2/+2
| | | | | | | LoopPassManager for it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86163 91177308-0d34-0410-b5e6-96231b3b80d8
* InstrTypes.h includes Instruction.h, so it's not necessary to include both.Dan Gohman2009-11-052-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86162 91177308-0d34-0410-b5e6-96231b3b80d8
* Fix IVUsers to avoid assuming that the loop has a unique backedge.Dan Gohman2009-11-051-0/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86161 91177308-0d34-0410-b5e6-96231b3b80d8
* Delete an unused member variable.Dan Gohman2009-11-051-2/+0
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86160 91177308-0d34-0410-b5e6-96231b3b80d8
* Factor out the predicate code for loopsimplify form exit blocks intoDan Gohman2009-11-052-6/+12
| | | | | | | a separate helper function. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86159 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: Detect dotty.Oscar Fuentes2009-11-052-2/+11
| | | | | | | Patch by Arnaud Allard de Grandmaison! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86153 91177308-0d34-0410-b5e6-96231b3b80d8
* CMake: do not test for pthread and dl libraries on Windows (exceptOscar Fuentes2009-11-051-6/+12
| | | | | | | Cygwin). Fixes PR 5368. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86152 91177308-0d34-0410-b5e6-96231b3b80d8
* Avoid printing a redundant space in SDNode->dump().Dan Gohman2009-11-051-2/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86151 91177308-0d34-0410-b5e6-96231b3b80d8
* Remove uninteresting and confusing debug output.Dan Gohman2009-11-0511-20/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86149 91177308-0d34-0410-b5e6-96231b3b80d8
* Move llvm::cl::opt's conversion function into the base classes thatDouglas Gregor2009-11-051-2/+4
| | | | | | | actually need that conversion function. Silences a Clang++ warning. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86148 91177308-0d34-0410-b5e6-96231b3b80d8
* Add an assertion to catch indirectbr in SplitBlockPredecessors. ThisDan Gohman2009-11-051-2/+6
| | | | | | | | | | | | | makes several optimization passes abort in cases where they're currently silently miscompiling code. Remove the indirectbr assertion from SplitEdge. Indirectbr is only a problem for critical edges, and SplitEdge defers to SplitCriticalEdge to handle those, and SplitCriticalEdge has its own assertion for indirectbr. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86147 91177308-0d34-0410-b5e6-96231b3b80d8
* add a note from PR5313Chris Lattner2009-11-051-0/+34
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86146 91177308-0d34-0410-b5e6-96231b3b80d8
* Declare classes with matched tags, pointed out by a clang++ warning.Chris Lattner2009-11-051-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86144 91177308-0d34-0410-b5e6-96231b3b80d8
* Teach SimplifyLibCalls to fold memcmp calls with constant arguments.Benjamin Kramer2009-11-052-4/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86141 91177308-0d34-0410-b5e6-96231b3b80d8
* lit: Add --param NAME=VALUE option, for test suite specific use (to communicateDaniel Dunbar2009-11-053-2/+24
| | | | | | arbitrary command line arguments to the test suite). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86137 91177308-0d34-0410-b5e6-96231b3b80d8
* Do map insert+find in one step. TODO -= 2.Benjamin Kramer2009-11-051-15/+15
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86133 91177308-0d34-0410-b5e6-96231b3b80d8
* Path::createDirectoryOnDisk should ignore existing directories on win32 too.Benjamin Kramer2009-11-051-2/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86132 91177308-0d34-0410-b5e6-96231b3b80d8
* Make two more LLVM headers standaloneDouglas Gregor2009-11-052-0/+4
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86131 91177308-0d34-0410-b5e6-96231b3b80d8
* Make a few headers standalone. Plus, add a missing "template" keywordDouglas Gregor2009-11-055-1/+5
| | | | | | | that Clang diagnoses but GCC does not. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86130 91177308-0d34-0410-b5e6-96231b3b80d8
* merge a few crash tests into crash.llChris Lattner2009-11-054-88/+82
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86119 91177308-0d34-0410-b5e6-96231b3b80d8
* Reintroduce support for overloading target intrinsicsMon P Wang2009-11-053-4/+73
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86114 91177308-0d34-0410-b5e6-96231b3b80d8
* Replace std::map.at() with std::map[].David Goodwin2009-11-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86102 91177308-0d34-0410-b5e6-96231b3b80d8
* Break anti-dependencies using free registers in a round-robin manner to ↵David Goodwin2009-11-053-18/+49
| | | | | | avoid introducing new anti-dependencies. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86098 91177308-0d34-0410-b5e6-96231b3b80d8
* Tidied some ugliness in the SlotIndex default constructor.Lang Hames2009-11-051-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86097 91177308-0d34-0410-b5e6-96231b3b80d8
* Now that code placement optimization pass is run for JIT, make sure it's ↵Evan Cheng2009-11-051-3/+3
| | | | | | before pre-emit passes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86092 91177308-0d34-0410-b5e6-96231b3b80d8
* Use WeakVH while storing metadata in containers.Devang Patel2009-11-052-7/+7
| | | | | | | This fixes PR5393. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86091 91177308-0d34-0410-b5e6-96231b3b80d8
* Removed an assert which was causing significant slowdowns in debug builds.Lang Hames2009-11-051-1/+0
| | | | | | | | This assert was very conservative to begin with (the error condition is well covered by tests elsewhere in the code) so we won't miss much by removing it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86088 91177308-0d34-0410-b5e6-96231b3b80d8
* Add -mtriple to llc commands, attempting to fix buildbot failures.Bob Wilson2009-11-051-2/+2
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86086 91177308-0d34-0410-b5e6-96231b3b80d8
* Code refactoring.Evan Cheng2009-11-051-49/+58
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86085 91177308-0d34-0410-b5e6-96231b3b80d8
* Attempt again to fix buildbot failures: make expected output less specificBob Wilson2009-11-051-12/+9
| | | | | | | and compile with -mtriple to specify *-apple-darwin targets. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86081 91177308-0d34-0410-b5e6-96231b3b80d8
* Correctly add chain dependencies around calls and unknown-side-effect ↵David Goodwin2009-11-051-2/+3
| | | | | | instructions. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86080 91177308-0d34-0410-b5e6-96231b3b80d8
* Update CreateMalloc so that its callers specify the size to allocate:Victor Hernandez2009-11-0519-191/+244
| | | | | | | | | | | | | | | | | | | MallocInst-autoupgrade users use non-TargetData-computed allocation sizes. Optimization uses use TargetData to compute the allocation size. Now that malloc calls can have constant sizes, update isArrayMallocHelper() to use TargetData to determine the size of the malloced type and the size of malloced arrays. Extend getMallocType() to support malloc calls that have non-bitcast uses. Update OptimizeGlobalAddressOfMalloc() to optimize malloc calls that have non-bitcast uses. The bitcast use of a malloc call has to be treated specially here because the uses of the bitcast need to be replaced and the bitcast needs to be erased (just like the malloc call) for OptimizeGlobalAddressOfMalloc() to work correctly. Update PerformHeapAllocSRoA() to optimize malloc calls that have non-bitcast uses. The bitcast use of the malloc is not handled specially here because ReplaceUsesOfMallocWithGlobal replaces through the bitcast use. Update OptimizeOnceStoredGlobal() to not care about the malloc calls' bitcast use. Update all globalopt malloc tests to not rely on autoupgraded-MallocInsts, but instead use explicit malloc calls with correct allocation sizes. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86077 91177308-0d34-0410-b5e6-96231b3b80d8
* While calculating original type size for a derived type, handle type ↵Devang Patel2009-11-042-9/+13
| | | | | | | | | variants encoded as DIDerivedType appropriately. This improves bitfield support. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86073 91177308-0d34-0410-b5e6-96231b3b80d8
* Grammar.Jim Grosbach2009-11-041-1/+1
| | | | git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86068 91177308-0d34-0410-b5e6-96231b3b80d8
* improve DSE when TargetData is not around, based on work byChris Lattner2009-11-043-6/+31
| | | | | | | Hans Wennborg! git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@86067 91177308-0d34-0410-b5e6-96231b3b80d8