summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/Scalar/GVNPRE.cpp
Commit message (Collapse)AuthorAgeFilesLines
* remove the GVNPRE pass. It has been subsumed by the GVN pass.Chris Lattner2009-10-011-1893/+0
| | | | | | Ok'd by Owen. llvm-svn: 83193
* eliminate VISIBILITY_HIDDEN from Transforms/Scalar. PR4861Chris Lattner2009-09-021-4/+2
| | | | llvm-svn: 80766
* Remove unused variables.Dan Gohman2009-08-261-3/+0
| | | | llvm-svn: 80058
* Eliminate the unused Context argument on one of the ICmpInst and FCmpInstDan Gohman2009-08-251-2/+2
| | | | | | constructors. llvm-svn: 80049
* remove a few DOUTs here and there.Chris Lattner2009-08-231-3/+3
| | | | llvm-svn: 79832
* Initial update to VMCore to use Twines for string arguments.Daniel Dunbar2009-07-251-1/+2
| | | | | | | - The only meat here is in Value.{h,cpp} the rest is essential 'const std::string &' -> 'const Twine &'. llvm-svn: 77048
* Move ExtractElementInst to ::Create instead of new. Update all uses.Eric Christopher2009-07-251-2/+2
| | | | llvm-svn: 77044
* Get rid of the Pass+Context magic.Owen Anderson2009-07-221-2/+5
| | | | llvm-svn: 76702
* llvm_unreachable->llvm_unreachable(0), LLVM_UNREACHABLE->llvm_unreachable.Torok Edwin2009-07-141-6/+6
| | | | | | | | | This adds location info for all llvm_unreachable calls (which is a macro now) in !NDEBUG builds. In NDEBUG builds location info and the message is off (it only prints "UREACHABLE executed"). llvm-svn: 75640
* assert(0) -> LLVM_UNREACHABLE.Torok Edwin2009-07-111-6/+7
| | | | | | | | | Make llvm_unreachable take an optional string, thus moving the cerr<< out of line. LLVM_UNREACHABLE is now a simple wrapper that makes the message go away for NDEBUG builds. llvm-svn: 75379
* This started as a small change, I swear. Unfortunately, lots of things call ↵Owen Anderson2009-07-091-2/+3
| | | | | | the [I|F]CmpInst constructors. Who knew!? llvm-svn: 75200
* Split the Add, Sub, and Mul instruction opcodes into separateDan Gohman2009-06-041-1/+8
| | | | | | | | | | | | | | | integer and floating-point opcodes, introducing FAdd, FSub, and FMul. For now, the AsmParser, BitcodeReader, and IRBuilder all preserve backwards compatability, and the Core LLVM APIs preserve backwards compatibility for IR producers. Most front-ends won't need to change immediately. This implements the first step of the plan outlined here: http://nondot.org/sabre/LLVMNotes/IntegerOverflow.txt llvm-svn: 72897
* Tidy up several unbeseeming casts from pointer to intptr_t.Dan Gohman2008-09-041-1/+1
| | | | llvm-svn: 55779
* Update comments and documentation to reflect that GCSE and ValueNumbering areMatthijs Kooijman2008-06-051-0/+3
| | | | | | deprecated by the GVN and GVNPRE passes. llvm-svn: 51983
* API change for {BinaryOperator|CmpInst|CastInst}::create*() --> Create. ↵Gabor Greif2008-05-161-6/+6
| | | | | | Legacy interfaces will be in place for some time. (Merge from use-diet branch.) llvm-svn: 51200
* Fix a bunch of 80col violations that arose from the Create API change. Tweak ↵Gabor Greif2008-05-151-3/+4
| | | | | | makefile targets to find these better. llvm-svn: 51143
* Clean up the use of static and anonymous namespaces. This turned upDan Gohman2008-05-131-0/+7
| | | | | | | several things that were neither in an anonymous namespace nor static but not intended to be global. llvm-svn: 51017
* API changes for class Use size reduction, wave 1.Gabor Greif2008-04-061-16/+16
| | | | | | | | Specifically, introduction of XXX::Create methods for Users that have a potentially variable number of Uses. llvm-svn: 49277
* Make Transforms to be 4.3 warnings-cleanAnton Korobeynikov2008-02-201-5/+7
| | | | llvm-svn: 47371
* Remove attribution from file headers, per discussion on llvmdev.Chris Lattner2007-12-291-2/+2
| | | | llvm-svn: 45418
* explicit keywords.Dan Gohman2007-09-241-1/+1
| | | | llvm-svn: 42262
* Merge DenseMapKeyInfo & DenseMapValueInfo into DenseMapInfoChris Lattner2007-09-171-1/+4
| | | | | | | Add a new DenseMapInfo::isEqual method to allow clients to redefine the equality predicate used when probing the hash table. llvm-svn: 42042
* Update GEP constructors to use an iterator interface to fixDavid Greene2007-09-041-2/+2
| | | | | | GLIBCXX_DEBUG issues. llvm-svn: 41697
* Fix 80 col. violations.Owen Anderson2007-08-021-8/+14
| | | | llvm-svn: 40751
* Fix a bug where we were marking GEP expressions with the wrong opcode.Owen Anderson2007-07-201-1/+1
| | | | llvm-svn: 40085
* Make val_replace fail early, which reduces the time to optimize 403.gcc to ↵Owen Anderson2007-07-191-0/+2
| | | | | | 14.8s. llvm-svn: 40064
* Use SmallVector and DenseMap in even more places.Owen Anderson2007-07-191-27/+26
| | | | | | With this, the time to optimize 403.gcc is down to 15.1s. llvm-svn: 40042
* Change ValueTable to use a DenseMap for mapping expressions to value numbers.Owen Anderson2007-07-191-78/+122
| | | | | | This results in a slight speedup for 403.gcc. llvm-svn: 40040
* Move some sets and maps to SmallPtrSet and DenseMap respectively. This Owen Anderson2007-07-191-8/+7
| | | | | | reduces the time to optimize 403.gcc from 17.6s to 16.4s. llvm-svn: 40036
* Make the pass registration static.Owen Anderson2007-07-101-2/+2
| | | | llvm-svn: 38508
* Move some key maps from std::map to DenseMap. This improves the time to ↵Owen Anderson2007-07-101-4/+8
| | | | | | | | optimize Anton's testcase from 17.5s to 15.7s. llvm-svn: 38480
* Use a cheaper test, delaying calling find_leader() until we know that it's ↵Owen Anderson2007-07-101-3/+5
| | | | | | | | necessary. This improves the time to optimize Anton's testcase from 21.1s to 17.6s. llvm-svn: 38479
* Add an assertion if find_leader fails.Owen Anderson2007-07-091-0/+1
| | | | llvm-svn: 38477
* Take advantage of the new fast SmallPtrSet assignment operator when ↵Owen Anderson2007-07-091-20/+6
| | | | | | | | propagating AVAIL_OUT sets. This reduces the time to optimize Anton's testcase from 31.2s to 21.s! llvm-svn: 38475
* Fix a comment.Owen Anderson2007-07-091-1/+1
| | | | llvm-svn: 38459
* Improve a hotspot that was making build_sets() slower by calling lookup() tooOwen Anderson2007-07-091-27/+30
| | | | | | often. This improves Anton's testcase from 36s to 32s. llvm-svn: 38441
* Start using a set representation that remembers the set of value numbers ↵Owen Anderson2007-07-091-141/+176
| | | | | | | | | represented in the set. For the moment, this results in a slight performance decrease, but it lays the groundwork for future improvements. llvm-svn: 38439
* Fix an error where ANTIC_OUT was ending up with more than one expression ofOwen Anderson2007-07-071-1/+1
| | | | | | the same value number. This fixes an infinite loop on 444.namd. llvm-svn: 37967
* Be more aggressive in the heuristic. This mostly exposes more opportunitiesOwen Anderson2007-07-061-8/+16
| | | | | | for the GVN part of GVNPRE to apply. llvm-svn: 37951
* Achieve what the incorrect test was trying to do by simply requiring that allOwen Anderson2007-07-061-6/+1
| | | | | | critical edges be split before we begin. llvm-svn: 37949
* Remove an incorrect check.Owen Anderson2007-07-061-5/+0
| | | | llvm-svn: 37948
* Fix a bunch of issues found in a testcase from 400.perlbench.Owen Anderson2007-07-051-16/+19
| | | | llvm-svn: 37929
* Fix another bug, this time in PREing select instructions.Owen Anderson2007-07-041-2/+1
| | | | llvm-svn: 37878
* Fix a typo that was killing GVNPRE of select instructions.Owen Anderson2007-07-041-1/+1
| | | | llvm-svn: 37871
* Fix an error in phi translation of GEPs that was causing failures.Owen Anderson2007-07-041-1/+1
| | | | llvm-svn: 37868
* Add support for performing GVNPRE on GEP instructions.Owen Anderson2007-07-031-5/+162
| | | | llvm-svn: 37862
* Add functionality to value number GEP instructions. This also provides the ↵Owen Anderson2007-07-031-2/+32
| | | | | | | | infrastructure that will be used for function calls. NOTE: This does not yet do any transformation of GEPs or function calls. llvm-svn: 37860
* Make the unary operator case a bit faster, since casts are the only kind of ↵Owen Anderson2007-07-031-10/+4
| | | | | | unary operation. llvm-svn: 37857
* Add support for performing GVNPRE on cast instructions, and add a testcase ↵Owen Anderson2007-07-031-18/+116
| | | | | | for this. llvm-svn: 37856
* Add support for value numbering (but not actually optimizing) cast instructions.Owen Anderson2007-06-291-1/+65
| | | | llvm-svn: 37789
OpenPOWER on IntegriCloud