summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Utils/SimplifyCFG.cpp
Commit message (Expand)AuthorAgeFilesLines
* simplify this a bit.Chris Lattner2010-12-181-2/+1
* SimplifyCFG: Ranges can be larger than 64 bits. Fixes Release-selfhost build.Benjamin Kramer2010-12-171-1/+1
* improve switch formation to handle small range Chris Lattner2010-12-171-2/+25
* make qsort predicate more conformant by returning 0 for equal values.Chris Lattner2010-12-151-1/+5
* - Insert new instructions before DomBlock's terminator,Chris Lattner2010-12-141-7/+16
* fix two significant issues with FoldTwoEntryPHINode:Chris Lattner2010-12-141-1/+11
* remove the instsimplify logic I added in r121754. It is apparentlyChris Lattner2010-12-141-11/+1
* clean up logic, convert std::set to SmallPtrSet, handle the caseChris Lattner2010-12-141-56/+61
* tidy up a bit, move DEBUG down to when we commit to doing the transform so we Chris Lattner2010-12-141-7/+5
* use SimplifyInstruction instead of reimplementing part of it.Chris Lattner2010-12-141-10/+7
* simplify GetIfCondition by using getSinglePredecessor.Chris Lattner2010-12-141-28/+24
* use AddPredecessorToBlock in 3 places instead of a manual loop.Chris Lattner2010-12-141-18/+6
* make FoldTwoEntryPHINode use instsimplify a bit, makeChris Lattner2010-12-141-12/+21
* improve DEBUG's a bit, switch to eraseFromParent() to simplifyChris Lattner2010-12-141-26/+28
* reapply my recent change that disables a piece of the switch formationChris Lattner2010-12-141-5/+13
* Fix recent buildbot breakage by pulling SimplifyCFG back to its state as of r...Owen Anderson2010-12-131-14/+6
* temporarily disable part of my previous patch, which causes an iterator inval...Chris Lattner2010-12-131-1/+1
* add some DEBUG's.Chris Lattner2010-12-131-3/+8
* Fix sort predicate. qsort(3)'s predicate semantics differ from std::sort's. F...Benjamin Kramer2010-12-131-1/+1
* reinstate my patch: the miscompile was caused by an inverted branch in theChris Lattner2010-12-131-3/+6
* Completely disable the optimization I added in r121680 untilChris Lattner2010-12-131-3/+6
* Make simplifycfg reprocess newly formed "br (cond1 | cond2)" conditionsChris Lattner2010-12-131-5/+12
* make this logic a bit simpler.Chris Lattner2010-12-131-21/+20
* split all the guts of SimplifyCFGOpt::run out into one functionChris Lattner2010-12-131-374/+441
* fix a bug in r121680 that upset the various buildbots.Chris Lattner2010-12-131-0/+7
* refactor the speculative execution logic to be factored into the cond branch ...Chris Lattner2010-12-131-26/+22
* simplify a bunch of code.Chris Lattner2010-12-131-15/+4
* move HoistThenElseCodeToIf up to a more logical and efficient-to-handle place.Chris Lattner2010-12-131-7/+11
* move 'MergeBlocksIntoPredecessor' call earlier. UseChris Lattner2010-12-131-20/+9
* factor new code out to a SimplifyBranchOnICmpChain helper function.Chris Lattner2010-12-131-77/+91
* enhance the "change or icmp's into switch" xform to handle one value in an Chris Lattner2010-12-131-3/+45
* merge two very similar functions into one that has a bool argument.Chris Lattner2010-12-131-47/+26
* don't bother handling non-canonical icmp'sChris Lattner2010-12-131-11/+9
* inline a function, making the result much simpler.Chris Lattner2010-12-131-27/+11
* Fix my previous patch to handle a degenerate case that the llvm-gccChris Lattner2010-12-131-0/+16
* convert some methods to be static functionsChris Lattner2010-12-131-25/+23
* zap two more std::sorts.Chris Lattner2010-12-131-2/+2
* fix a fairly serious oversight with switch formation fromChris Lattner2010-12-131-1/+97
* convert an std::sort to array_pod_sort.Chris Lattner2010-12-131-2/+8
* move the "br (X == 0 | X == 1), T, F" -> switch optimization to a newChris Lattner2010-12-131-57/+56
* reduce indentation and generally simplify code, no functionality change.Chris Lattner2010-12-131-333/+309
* use getFirstNonPHIOrDbg to simplify this code.Chris Lattner2010-12-131-9/+5
* Teach SimplifyCFG to turnFrits van Bommel2010-12-051-2/+72
* Fix PR8445: a block with no predecessors may be the entry block, in which caseDuncan Sands2010-10-241-12/+10
* Instead, teach SimplifyCFG to trim non-address-taken blocks fromDan Gohman2010-08-161-2/+3
* Teach SimplifyCFG how to simplify indirectbr instructions.Dan Gohman2010-08-141-13/+40
* pass dereferenced iterator to dyn_castGabor Greif2010-07-221-1/+1
* Remove unneeded check, and correct style.Owen Anderson2010-07-151-3/+2
* Extend SimplifyCFG's common-destination folding heuristic to allow a singleOwen Anderson2010-07-141-5/+67
* cache dereferenced iteratorsGabor Greif2010-07-121-4/+6
OpenPOWER on IntegriCloud