summaryrefslogtreecommitdiffstats
path: root/llvm/lib
Commit message (Collapse)AuthorAgeFilesLines
* Fix spelling of mtvscr and mfvscr.Dale Johannesen2007-08-071-2/+2
| | | | llvm-svn: 40908
* Long double patch 8 of N: make it partially work inDale Johannesen2007-08-073-100/+100
| | | | | | | | | | | SSE mode (all but conversions <-> other FP types, I think): >>Do not mark all-80-bit operations as "Requires[FPStack]" (which really means "not SSE"). >>Refactor load-and-extend to facilitate this. >>Update comments. >>Handle long double in SSE when computing FP_REG_KILL. llvm-svn: 40906
* Use eraseFromParent().Devang Patel2007-08-071-4/+2
| | | | llvm-svn: 40903
* Fix comment typoDavid Greene2007-08-071-1/+1
| | | | llvm-svn: 40898
* Fix GLIBCXX_DEBUG error triggered by incrementing erased iterator.David Greene2007-08-071-4/+4
| | | | llvm-svn: 40897
* Add a missing forward declaration.David Greene2007-08-071-0/+1
| | | | llvm-svn: 40896
* Initial JIT support for ARM by Raul Fernandes Herbster.Evan Cheng2007-08-079-275/+889
| | | | llvm-svn: 40887
* Long double patch 7 of N, unless I lost count:). Dale Johannesen2007-08-073-1/+37
| | | | | | | | Last x87 bits for full functionality (not thoroughly tested, and long doubles do not work in SSE modes at all - use -mcpu=i486 for now) llvm-svn: 40886
* Clean up a bunch of caching stuff in memdep. This reduces the time to run GVNOwen Anderson2007-08-071-25/+38
| | | | | | on 403.gcc from ~15s to ~10s. llvm-svn: 40884
* Begin loop index split pass.Devang Patel2007-08-071-0/+384
| | | | llvm-svn: 40883
* Improve the accuracy of memdep for determining the dependencies of loads.Owen Anderson2007-08-061-2/+13
| | | | | | This brings GVN to parity with GCSE+LoadVN. llvm-svn: 40882
* Replace 4-line function with 10-line version per review comment.Dale Johannesen2007-08-061-4/+10
| | | | llvm-svn: 40881
* Move lengthy conditional down 1 level per review comment.Dale Johannesen2007-08-062-5/+6
| | | | llvm-svn: 40878
* Get X86 long double calling convention to workDale Johannesen2007-08-064-3/+34
| | | | | | | (on Darwin, anyway). Fix some table omissions for LD arithmetic. llvm-svn: 40877
* regenerateChris Lattner2007-08-063-4748/+3438
| | | | llvm-svn: 40875
* Fix PR1577, a crash on invalid bug.Chris Lattner2007-08-061-0/+1
| | | | llvm-svn: 40874
* This resolves a regression of BasicAA which failed to find any memory ↵Chandler Carruth2007-08-061-4/+23
| | | | | | information for overloaded intrinsics (PR1600). This resolves that issue, and improves the matching scheme to use a BitVector rather than a binary search. llvm-svn: 40872
* It's safe to fold not of fcmp.Nick Lewycky2007-08-061-3/+8
| | | | llvm-svn: 40870
* Make 80-bit store maintain simulated FP stack correctly.Dale Johannesen2007-08-061-1/+2
| | | | llvm-svn: 40868
* Let scalar-evolution analyze loops with an unsigned comparison for the exitNick Lewycky2007-08-061-17/+35
| | | | | | condition. Fixes 1597. llvm-svn: 40867
* Don't assume it's safe to transform a loop just because it's dominated by anyNick Lewycky2007-08-061-1/+1
| | | | | | comparison. Fixes bug 1598. llvm-svn: 40866
* Fix a regression compiling 2005-05-11-Popcount-ffs-fls with the CBE,Chris Lattner2007-08-061-1/+1
| | | | | | introduced by chandler's patch. llvm-svn: 40864
* Implement review feedback. No functionality change.Christopher Lamb2007-08-061-137/+152
| | | | llvm-svn: 40863
* Make this code more efficient.David Greene2007-08-061-5/+5
| | | | llvm-svn: 40861
* remove some dead linesChris Lattner2007-08-061-2/+0
| | | | llvm-svn: 40859
* 1. Random tidiness cleanupsChris Lattner2007-08-061-47/+44
| | | | | | | | | | | | 2. Make domtree printing print dfin/dfout #'s 3. Fix the Transforms/LoopSimplify/2004-04-13-LoopSimplifyUpdateDomFrontier.ll failure from last night (in DominanceFrontier::splitBlock). w.r.t. #3, my patches last night happened to expose the bug, but this has been broken since Owen's r35839 patch to LoopSimplify. The code was subsequently moved over from LoopSimplify into Dominators, carrying the latent bug. Fun stuff. llvm-svn: 40858
* Fix minor doxygen nits.Reid Spencer2007-08-053-6/+16
| | | | llvm-svn: 40854
* Silence some warnings from doxygen about @param argument name not matching theReid Spencer2007-08-051-3/+3
| | | | | | actual argument name of the documented function. llvm-svn: 40851
* Escape some escapes that confuse doxygen.Reid Spencer2007-08-051-1/+3
| | | | llvm-svn: 40850
* Fix a doxygen directive.Reid Spencer2007-08-051-1/+1
| | | | llvm-svn: 40849
* Long double patch 4 of N: initial x87 implementation.Dale Johannesen2007-08-058-6/+162
| | | | | | Lots of problems yet but some simple things work. llvm-svn: 40847
* shorten this nameChris Lattner2007-08-051-2/+1
| | | | llvm-svn: 40843
* at the end of instcombine, explicitly clear WorklistMap.Chris Lattner2007-08-051-7/+9
| | | | | | | | This shrinks it down to something small. On the testcase from PR1432, this speeds up instcombine from 0.7959s to 0.5000s, (59%) llvm-svn: 40840
* Upgrade BasicAliasAnalysis::getModRefBehavior to not call Value::getName,Chris Lattner2007-08-051-4/+14
| | | | | | | which dynamically allocates the string result. This speeds up dse on the testcase from PR1432 from 0.3781s to 0.1804s (2.1x). llvm-svn: 40838
* When clearing a SmallPtrSet, if the set had a huge capacity, but theChris Lattner2007-08-051-0/+18
| | | | | | | | | | contents of the set were small, deallocate and shrink the set. This avoids having us to memset as much data, significantly speeding up some pathological cases. For example, this speeds up the verifier from 0.3899s to 0.0763 (5.1x) on the testcase from PR1432 in a release build. llvm-svn: 40837
* Fix an iterator invalidation bug I induced.Chris Lattner2007-08-052-5/+4
| | | | llvm-svn: 40830
* Switch some std::sets to SmallPtrSet. This speeds upChris Lattner2007-08-052-6/+6
| | | | | | domtree by 10% and postdomtree by 17% llvm-svn: 40829
* Switch DomTreeNode::assignDFSNumber from using a std::set to usingChris Lattner2007-08-051-8/+8
| | | | | | a smallptrset. This speeds up domtree by about 15% and postdomtree by 20%. llvm-svn: 40828
* Switch the internal "Info" map from an std::map to a DenseMap. ThisChris Lattner2007-08-052-22/+17
| | | | | | | | speeds up idom by about 45% and postidom by about 33%. Some extra precautions must be taken not to invalidate densemap iterators. llvm-svn: 40827
* switch the DomTreeNodes and IDoms maps in idom/postidom to a Chris Lattner2007-08-042-20/+22
| | | | | | | | DenseMap instead of an std::map. This speeds up postdomtree by about 25% and domtree by about 23%. It also speeds up clients, for example, domfrontier by 11%, mem2reg by 4% and ADCE by 6%. llvm-svn: 40826
* rewrite the code used to construct pruned SSA form with the IDF method.Chris Lattner2007-08-041-82/+114
| | | | | | | | | | | | | | | | In the old way, we computed and inserted phi nodes for the whole IDF of the definitions of the alloca, then computed which ones were dead and removed them. In the new method, we first compute the region where the value is live, and use that information to only insert phi nodes that are live. This eliminates the need to compute liveness later, and stops the algorithm from inserting a bunch of phis which it then later removes. This speeds up the testcase in PR1432 from 2.00s to 0.15s (14x) in a release build and 6.84s->0.50s (14x) in a debug build. llvm-svn: 40825
* Factor out a whole bunch of code into it's own method.Chris Lattner2007-08-041-65/+82
| | | | llvm-svn: 40824
* Use getNumPreds(BB) instead of computing them manually. This is a very small butChris Lattner2007-08-041-4/+4
| | | | | | measurable speedup. llvm-svn: 40823
* Change the rename pass to be "tail recursive", only adding N-1 successorsChris Lattner2007-08-041-21/+35
| | | | | | | to the worklist, and handling the last one with a 'tail call'. This speeds up PR1432 from 2.0578s to 2.0012s (2.8%) llvm-svn: 40822
* cache computation of #preds for a BB. This speeds upChris Lattner2007-08-041-3/+14
| | | | | | mem2reg from 2.0742->2.0522s on PR1432. llvm-svn: 40821
* reserve operand space for phi nodes when we insert them.Chris Lattner2007-08-041-0/+1
| | | | llvm-svn: 40820
* use continue to avoid nesting, no functionality change.Chris Lattner2007-08-041-14/+15
| | | | llvm-svn: 40819
* Promoting allocas with the 'single store' fastpath is Chris Lattner2007-08-041-10/+9
| | | | | | | faster than with the 'local to a block' fastpath. This speeds up PR1432 from 2.1232 to 2.0686s (2.6%) llvm-svn: 40818
* When PromoteLocallyUsedAllocas promoted allocas, it didn't rememberChris Lattner2007-08-041-2/+13
| | | | | | | to increment NumLocalPromoted, and didn't actually delete the dead alloca, leading to an extra iteration of mem2reg. llvm-svn: 40817
* std::map -> DenseMapChris Lattner2007-08-041-3/+3
| | | | llvm-svn: 40816
OpenPOWER on IntegriCloud