| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | Don't grab the condition of unconditional branches! | Chris Lattner | 2004-06-08 | 1 | -7/+8 |
| | | | | | | | This fixes PR363 llvm-svn: 14076 | ||||
| * | Add some notes so I can throw away one of my many todo lists. | Chris Lattner | 2004-06-05 | 1 | -0/+6 |
| | | | | | llvm-svn: 14046 | ||||
| * | Don't send random junk to CachedWriter's. Also remove a cast that could be | Chris Lattner | 2004-06-04 | 1 | -4/+6 |
| | | | | | | | problematic when Type does not derive from Value. llvm-svn: 14022 | ||||
| * | Minor efficiency gain: do 1 nlogn lookup instead of two | Chris Lattner | 2004-05-28 | 1 | -7/+4 |
| | | | | | | | Code cleanup llvm-svn: 13875 | ||||
| * | Fix warnings about reaching end of non-void function | Chris Lattner | 2004-05-27 | 1 | -0/+2 |
| | | | | | llvm-svn: 13852 | ||||
| * | Recognize memalign and friends, and handle them specially. | Vikram S. Adve | 2004-05-25 | 1 | -1/+2 |
| | | | | | llvm-svn: 13741 | ||||
| * | Changes to work with the changes to the AliasAnalysis interface. The -no-aa | Chris Lattner | 2004-05-23 | 1 | -28/+67 |
| | | | | | | | class is now in the BasicAliasAnalysis.cpp file llvm-svn: 13684 | ||||
| * | Move the -no-aa AA implementation into this file since both of these | Chris Lattner | 2004-05-23 | 1 | -8/+46 |
| | | | | | | | | alias analysis implementations are special: they do not autoforward to a chained implementation of alias analysis llvm-svn: 13683 | ||||
| * | Updates to work with the new auto-forwarding AA interface changes | Chris Lattner | 2004-05-23 | 1 | -9/+3 |
| | | | | | llvm-svn: 13682 | ||||
| * | Fix a really nasty bug with the -disable-ds-field-sensitivity option | Chris Lattner | 2004-05-23 | 1 | -0/+3 |
| | | | | | llvm-svn: 13681 | ||||
| * | Update to match the autochaining interface that the AA interface uses | Chris Lattner | 2004-05-23 | 1 | -6/+1 |
| | | | | | llvm-svn: 13680 | ||||
| * | Implement the interfaces to update value numbering information. Add an | Chris Lattner | 2004-05-23 | 1 | -2/+24 |
| | | | | | | | assert. llvm-svn: 13679 | ||||
| * | Rename a method | Chris Lattner | 2004-05-23 | 1 | -2/+2 |
| | | | | | llvm-svn: 13676 | ||||
| * | Add a simple implementation of Andersen's interprocedural pointer analysis | Chris Lattner | 2004-05-23 | 1 | -0/+1029 |
| | | | | | llvm-svn: 13666 | ||||
| * | Inline both direct and indirect callees in the CBU phase because | Vikram S. Adve | 2004-05-23 | 1 | -34/+34 |
| | | | | | | | a direct callee may have indirect callees and so may have changed. llvm-svn: 13649 | ||||
| * | Fine grainify namespacification | Chris Lattner | 2004-05-09 | 1 | -4/+1 |
| | | | | | llvm-svn: 13436 | ||||
| * | Move the stuff that fixes the size, orientation & fonts of graphs to | Brian Gaeke | 2004-05-05 | 2 | -12/+4 |
| | | | | | | | | | | | | the debugging functions that call "dot". These fixed settings have various problems: for example, the fixed size that is set in the graph traits classes is not appropriate for turning the dot file into a PNG, and if TrueType font rendering is being used, the 'Courier' TrueType font may not be installed. It seems easy enough to specify these things on the command line, anyhow. llvm-svn: 13366 | ||||
| * | Add stub support for reading BBTraces. | Brian Gaeke | 2004-05-04 | 1 | -0/+16 |
| | | | | | llvm-svn: 13352 | ||||
| * | Share ProfilingType enum with the C profiling runtime libraries. | Brian Gaeke | 2004-05-04 | 1 | -7/+1 |
| | | | | | llvm-svn: 13346 | ||||
| * | Fix a problem with double freeing memory. For some reason, CallGraph is not | Chris Lattner | 2004-05-02 | 1 | -0/+1 |
| | | | | | | | acting like a normal pass. :( llvm-svn: 13318 | ||||
| * | Plug a minor memory leak | Chris Lattner | 2004-05-02 | 1 | -0/+1 |
| | | | | | llvm-svn: 13317 | ||||
| * | Wrapped code and comments at 80 cols; doxygenified some comments. | Misha Brukman | 2004-04-29 | 2 | -18/+20 |
| | | | | | llvm-svn: 13264 | ||||
| * | Reorder #includes as per style guide. | Misha Brukman | 2004-04-29 | 1 | -3/+3 |
| | | | | | llvm-svn: 13263 | ||||
| * | Send text and numbers directly to CachedWriter's contained ostream. | Misha Brukman | 2004-04-28 | 1 | -1/+2 |
| | | | | | llvm-svn: 13243 | ||||
| * | Changes to fix up the inst_iterator to pass to boost iterator checks. This | Chris Lattner | 2004-04-27 | 5 | -17/+17 |
| | | | | | | | patch was graciously contributed by Vladimir Prus. llvm-svn: 13185 | ||||
| * | Add functions that return instances of these printer passes | Brian Gaeke | 2004-04-26 | 1 | -0/+10 |
| | | | | | llvm-svn: 13175 | ||||
| * | If an object is not in the scalar map then it must be a global from another | Chris Lattner | 2004-04-26 | 1 | -33/+33 |
| | | | | | | | graph. llvm-svn: 13173 | ||||
| * | Eliminate all of the SCEV Expansion code which is really part of the | Chris Lattner | 2004-04-23 | 1 | -213/+9 |
| | | | | | | | IndVars pass, not part of SCEV *analysis*. llvm-svn: 13134 | ||||
| * | Pass the callgraph not the module | Chris Lattner | 2004-04-20 | 1 | -2/+2 |
| | | | | | llvm-svn: 13087 | ||||
| * | Add the ability for SCC passes to initialize and finalize themselves | Chris Lattner | 2004-04-20 | 1 | -6/+3 |
| | | | | | llvm-svn: 13084 | ||||
| * | It's not just a printer, it's actually an analysis too | Chris Lattner | 2004-04-19 | 1 | -1/+1 |
| | | | | | llvm-svn: 13064 | ||||
| * | Remove code to update loop depths | Chris Lattner | 2004-04-19 | 1 | -10/+1 |
| | | | | | llvm-svn: 13058 | ||||
| * | Add new method | Chris Lattner | 2004-04-18 | 1 | -0/+8 |
| | | | | | llvm-svn: 13050 | ||||
| * | Fix computation of exit blocks | Chris Lattner | 2004-04-18 | 1 | -2/+2 |
| | | | | | llvm-svn: 13047 | ||||
| * | Change the ExitBlocks list from being explicitly contained in the Loop | Chris Lattner | 2004-04-18 | 2 | -46/+20 |
| | | | | | | | | structure to being dynamically computed on demand. This makes updating loop information MUCH easier. llvm-svn: 13045 | ||||
| * | Implement method | Chris Lattner | 2004-04-18 | 1 | -0/+12 |
| | | | | | llvm-svn: 13036 | ||||
| * | Add a new method, add a check missing that caused a segfault if a loop didn't | Chris Lattner | 2004-04-18 | 1 | -0/+14 |
| | | | | | | | have a canonical indvar llvm-svn: 13032 | ||||
| * | Add the ability to compute exit values for complex loop using unanalyzable | Chris Lattner | 2004-04-17 | 1 | -52/+189 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | operations. This allows us to compile this testcase: int main() { int h = 1; do h = 3 * h + 1; while (h <= 256); printf("%d\n", h); return 0; } into this: int %main() { entry: call void %__main( ) %tmp.6 = call int (sbyte*, ...)* %printf( sbyte* getelementptr ([4 x sbyte]* %.str_1, long 0, long 0), int 364 ) ; <int> [#uses=0] ret int 0 } This testcase was taken directly from 256.bzip2, believe it or not. This code is not as general as I would like. Next up is to refactor it a bit to handle more cases. llvm-svn: 13019 | ||||
| * | Add the ability to compute trip counts that are only controlled by constants | Chris Lattner | 2004-04-17 | 1 | -5/+174 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | even if the loop is using expressions that we can't compute as a closed-form. This allows us to calculate that this function always returns 55: int test() { double X; int Count = 0; for (X = 100; X > 1; X = sqrt(X), ++Count) /*empty*/; return Count; } And allows us to compute trip counts for loops like: int h = 1; do h = 3 * h + 1; while (h <= 256); (which occurs in bzip2), and for this function, which occurs after inlining and other optimizations: int popcount() { int x = 666; int result = 0; while (x != 0) { result = result + (x & 0x1); x = x >> 1; } return result; } We still cannot compute the exit values of result or h in the two loops above, which means we cannot delete the loop, but we are getting closer. Being able to compute a constant trip count for these two loops will allow us to unroll them completely though. llvm-svn: 13017 | ||||
| * | Include <cmath> for compatibility with gcc 3.0.x (the system compiler on | Brian Gaeke | 2004-04-16 | 1 | -0/+1 |
| | | | | | | | Debian.) llvm-svn: 12986 | ||||
| * | add some helpful methods. Rearrange #includes to proper order | Chris Lattner | 2004-04-15 | 1 | -6/+89 |
| | | | | | llvm-svn: 12960 | ||||
| * | Factor a bunch of classes out into a public header | Chris Lattner | 2004-04-15 | 1 | -553/+142 |
| | | | | | llvm-svn: 12958 | ||||
| * | Unbreak the build | Chris Lattner | 2004-04-15 | 1 | -0/+1 |
| | | | | | llvm-svn: 12956 | ||||
| * | Implement a FIXME: if we're going to insert a cast, we might as well only | Chris Lattner | 2004-04-14 | 1 | -1/+15 |
| | | | | | | | insert it once! llvm-svn: 12955 | ||||
| * | This is a trivial tweak to the addrec insertion code: insert the increment | Chris Lattner | 2004-04-14 | 1 | -7/+12 |
| | | | | | | | | | | | | at the bottom of the loop instead of the top. This reduces the number of overlapping live ranges a lot, for example, eliminating a spill in an important loop in 183.equake with linear scan. I still need to make the exit comparison of the loop use the post-incremented version of this variable, but this is an easy first step. llvm-svn: 12952 | ||||
| * | Add some methods that are useful for updating loop information. | Chris Lattner | 2004-04-12 | 1 | -4/+86 |
| | | | | | llvm-svn: 12871 | ||||
| * | Change the call graph class to have TWO external nodes, making call graph | Chris Lattner | 2004-04-12 | 1 | -181/+22 |
| | | | | | | | | SCC passes much more useful. In particular, this should fix the incredibly stupid missed inlining opportunities that the inliner suffered from. llvm-svn: 12860 | ||||
| * | Hrm, operator new and new[] do not belong here. We should not CSE them! :) | Chris Lattner | 2004-04-12 | 1 | -3/+0 |
| | | | | | llvm-svn: 12859 | ||||
| * | operator new & operator new[] do not kill any legal memory locations. | Chris Lattner | 2004-04-11 | 1 | -0/+3 |
| | | | | | llvm-svn: 12833 | ||||
| * | Allow clients to be more efficient. | Chris Lattner | 2004-04-11 | 1 | -0/+4 |
| | | | | | llvm-svn: 12831 | ||||

