aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-03-25Support global addresses and fix call returns. Varargs still aren'tNate Begeman
handled correctly for floating point arguments, or more than 8 arguemnts. This does however, allow hello world to run. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20832 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25Enhance loopsimplify to preserve alias analysis instead of clobbering it.Chris Lattner
This prevents crashes on some programs when using -ds-aa -licm. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20831 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25Treat free operations as volatile, since they cannot be moved. This fixesChris Lattner
Transforms/LICM/2005-03-24-LICM-Aggregate-Crash.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20830 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25New testcase that crashes licm.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20829 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25Fix a bug where LICM was not updating AA information properly when sinkingChris Lattner
a pointer value out of a loop causing it to be duplicated. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20828 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25remove a debugging timer.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20827 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25Two changes here:Chris Lattner
1. Instead of copying Local graphs to the BU graphs to start with, use spliceFrom to do the job (which is constant time in this case). On 176.gcc, this chops off .17s from the bu pass. 2. When building SCC graphs, simplify the logic and use spliceFrom to do the heavy lifting, instead of cloneInto/delete. This slices another .14s off 176.gcc. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20826 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-25Make the spliceFrom case where one graph is completely empty be constant time.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20825 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24add a new DSGraph::spliceFrom method, which violently takes the content ofChris Lattner
one graph and plops it into another, without breaking a sweat. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20824 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24add new spliceFrom methods.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20823 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Implement next round of Pattern ISel fixesNate Begeman
1. void returns 2. multiplies 3. calls git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20822 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Fix an incorrect argument being passed to BuildMI for indirect calls.Nate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20821 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24This replaces the correct but slow code with a more aggressive scc-finderChris Lattner
based approach to find globals and call sites that need to be copied. This speeds up the BU pass on 176.gcc from 22s back up to 2.3s. Not as good as 1.5s, but at least it's correct :) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20820 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24only look at successors of globals. This gets us down to "only" 22s in theChris Lattner
bu pass for 176.gcc git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20818 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Unfortunately, a previous patch was not safe. Revert it, reimplementChris Lattner
something correct. Unfortunately this takes 176.gcc's BU phase back up to 29s from 1.5. This fixes DSGraph/2005-03-24-Global-Arg-Alias.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20817 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Commit Gabor Greif's patch to use iterators in lowering intrinsics.Nate Begeman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20816 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24don't bother |'ing in 0'sChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20815 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24be more aggressive about incompleteness markingChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20814 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24new testcase that DS-AA is causing to be miscompiled.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20813 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24eliminate dead variables, patch contributed by Gabor Greif!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20812 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Implement more of the PPC32 Pattern ISel:Nate Begeman
1) dynamic stack alloc 2) loads 3) shifts 4) subtract 5) immediate form of add, and, or, xor 6) change flag from -pattern-isel to -enable-ppc-pattern-isel Remove dead arguments from getGlobalBaseReg in the simple ISel git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20810 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Fix silly "no newline at end of file" warningChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20809 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Fix compilation errors, patch contributed by the fabulous Bill Wendling!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20808 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24fix a compilation error, patch contributed by Bill Wendling!Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20807 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Addition of the PPC32 Pattern ISel. While it is far from complete, it willNate Begeman
be brought up to parity with the current simple ISel in the coming days. Currently, -pattern-isel is required to trigger it. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20805 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Remove comments that are now meaningless from the pattern ISels, at Chris'sNate Begeman
request. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20804 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Fix a crash while promoting a value out of a loop from a global variableChris Lattner
when using ds-aa git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20802 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24teach ds-aa about mod/ref for external function calls.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20801 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24Simplify dead code into a fixme :)Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20800 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-24fix a compiler crash in runtime/libprofileChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20799 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23wrap a long lineChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20797 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23If we are calling an external function, chain to another AA to potentiallyChris Lattner
decide, don't just immediately give up. This implements GlobalsModRef/chaining-analysis.ll git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20796 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23GlobalMR should be able to analyze this function.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20795 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23if a function doesn't access memory at all, it definitely doesn't read it.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20794 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Make this more efficient by only making one virtual method call.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20793 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Make this a bit more aggressiveChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20792 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23a hack to allow count-aa to work with ds-aa :(Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20791 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Add two options to allow -count-aa to print queries either (1) all queries,Chris Lattner
or (2) only queries that are not successful (e.g. return may alias) git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20790 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Fix grammarMisha Brukman
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20789 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23enable -debug-only=licmChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20788 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23turn a dead conditional into an assert.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20787 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Totally gut mergeInGraph. There is absolutely no reason to be mergingChris Lattner
global roots in from callees to callers. The BU graphs do not have accurate globals information and all of the clients know it. Instead, just make sure the GG is up-to-date, and they will be perfectly satiated. This speeds up the BU pass on 176.gcc from 5.5s to 1.5s, and Loc+BU+TD from 7s to 2.7s. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20786 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23wrap a long lineChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20785 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23don't lie to the register allocatorAndrew Lenharth
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20784 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Make -steens-aa more conservative (aka correct) by making sure to obeyChris Lattner
incompleteness flags. Make it more aggressive by taking field sensitive information into account. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20781 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23Added alias analysis.Tanya Lattner
Fixed many many bugs. This now works on almost all Singlesource , and most of MultiSource. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20780 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23implement Analysis/DSGraph/field-sensitive.llChris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20779 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23new testcase to verify that we have field sensitive alias analysis info. ThisChris Lattner
test cannot be satisfied without interprocedural information. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20778 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23make sure this test tests the intended target.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20777 91177308-0d34-0410-b5e6-96231b3b80d8
2005-03-23don't crash in some bad cases.Chris Lattner
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20776 91177308-0d34-0410-b5e6-96231b3b80d8