summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Analysis/PHITransAddr.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Reapply r97010, the speculative revert failed.Daniel Dunbar2010-02-241-32/+28
| | | | llvm-svn: 97036
* Speculatively revert r97010, "Add an argument to PHITranslateValue to specifyDaniel Dunbar2010-02-241-28/+32
| | | | | | the DominatorTree. ...", in hopes of restoring poor old PPC bootstrap. llvm-svn: 97027
* Add an argument to PHITranslateValue to specify the DominatorTree. If thisBob Wilson2010-02-241-32/+28
| | | | | | | | | | | | | | | | | | | | argument is non-null, pass it along to PHITranslateSubExpr so that it can prefer using existing values that dominate the PredBB, instead of just blindly picking the first equivalent value that it finds on a uselist. Also when the DominatorTree is specified, have PHITranslateValue filter out any result that does not dominate the PredBB. This is basically just refactoring the check that used to be in GetAvailablePHITranslatedSubExpr and also in GVN. Despite my initial expectations, this change does not affect the results of GVN for any testcases that I could find, but it should help compile time. Before this change, if PHITranslateSubExpr picked a value that does not dominate, PHITranslateWithInsertion would then insert a new value, which GVN would later determine to be redundant and would replace. By picking a good value to begin with, we save GVN the extra work of inserting and then replacing a new value. llvm-svn: 97010
* Change dbgs() back to errs() as Chris requested.David Greene2009-12-231-4/+4
| | | | llvm-svn: 92085
* Convert debug messages to use dbgs(). Generally this meansDavid Greene2009-12-231-7/+8
| | | | | | s/errs/dbgs/g except for certain special cases. llvm-svn: 92046
* Add a minor optimization: if we haven't changed the operands of anChris Lattner2009-12-091-0/+4
| | | | | | | | | | add, there is no need to scan the world to find the same add again. This invalidates the previous testcase, which wasn't wonderful anyway, because it needed a run of instcombine to permute the use-lists in just the right way to before GVN was run (so it was really fragile). Not a big loss. llvm-svn: 90973
* fix PR5733, a case where we'd replace an add with a lexically identical Chris Lattner2009-12-091-1/+2
| | | | | | binary operator that wasn't an add. In this case, a xor. Whoops. llvm-svn: 90971
* fix a nasty variable that was shadowing the real CurBB but with the wrong value.Chris Lattner2009-12-091-1/+0
| | | | llvm-svn: 90920
* fix many input tracking bugs.Chris Lattner2009-12-091-33/+30
| | | | llvm-svn: 90915
* fix PHI translation to take the PHI out of the instinputs set and addChris Lattner2009-12-091-9/+7
| | | | | | the translated value back to it if an instruction. llvm-svn: 90909
* instructions defined in CurBB may be intermediate nodes of the computation.Chris Lattner2009-12-091-14/+14
| | | | llvm-svn: 90908
* add dumping and sanity checking support.Chris Lattner2009-12-091-0/+69
| | | | llvm-svn: 90906
* make sure that PHITransAddr keeps its 'InstInputs' list up toChris Lattner2009-12-081-3/+42
| | | | | | date when instsimplify kicks in. llvm-svn: 90901
* fix a typo (and -> add) and fix GetAvailablePHITranslatedSubExpr to not Chris Lattner2009-12-081-3/+6
| | | | | | side-effect the current object. llvm-svn: 90837
* fix typoChris Lattner2009-12-071-1/+1
| | | | llvm-svn: 90793
* add accessor, improve comment.Chris Lattner2009-12-071-1/+1
| | | | llvm-svn: 90792
* add support for phi translation and incorpation of new expression.Chris Lattner2009-12-071-121/+144
| | | | llvm-svn: 90782
* checkpoint of the new PHITransAddr code, still not done and not used byChris Lattner2009-12-071-29/+257
| | | | | | anything. llvm-svn: 90779
* add the start of a class used to handle phi translation in memdep andChris Lattner2009-12-041-0/+71
gvn (this is just a skeleton so far). This will ultimately be used to fix a nasty miscompilation with GVN. llvm-svn: 90518
OpenPOWER on IntegriCloud