- Nov 03, 2001
-
-
Chris Lattner authored
// 1. PHI nodes with multiple entries for the same predecessor. GCC sometimes // generates code that looks like this: // // bb7: br bool %cond1004, label %bb8, label %bb8 // bb8: %reg119 = phi uint [ 0, %bb7 ], [ 1, %bb7 ] // // which is completely illegal LLVM code. To compensate for this, we insert // an extra basic block, and convert the code to look like this: // // bb7: br bool %cond1004, label %bbX, label %bb8 // bbX: br label bb8 // bb8: %reg119 = phi uint [ 0, %bbX ], [ 1, %bb7 ] // llvm-svn: 1114
-
Chris Lattner authored
* Add code to fix PHI nodes that are missing arguments. These PHI nodes can be generated by GCC if there is an uninitialized variable flowing into a merge point. For example: int foo(int y) { int X; if (y) X = 1; return X; } llvm-svn: 1110
-
Ruchira Sasanka authored
CahedCopyMap was disabled to insert phi elimination code for all phi args llvm-svn: 1105
-
Chris Lattner authored
llvm-svn: 1103
-
Chris Lattner authored
This resolves definitions like this: %list * "foo"(...) %list * "foo"(int) together which can often occur because C programmers don't put prototypes in like they should. GRR llvm-svn: 1102
-
Chris Lattner authored
llvm-svn: 1094
-
Chris Lattner authored
llvm-svn: 1091
-
- Nov 01, 2001
-
-
Chris Lattner authored
* Implement new peephole: // Peephole optimize the following instructions: // %t1 = cast {<...>} * %StructPtr to <ty> * // // Into: %t2 = getelementptr {<...>} * %StructPtr, <0, 0, 0, ...> // %t1 = cast <eltype> * %t1 to <ty> * This peephole eliminated 9 evil casts in the health benchmark, and completely turned the addList method around. :) llvm-svn: 1085
-
Chris Lattner authored
llvm-svn: 1084
-
Chris Lattner authored
Refactor code to support it llvm-svn: 1083
-
Chris Lattner authored
* Fix a problem setting a name on a constant value that died because no symbol table was passed in * Add some comments describing the passes * Implement a new peephole: // Peephole optimize the following instructions: // %t = cast <T1>* %P to <T2> * ;; If T1 is losslessly convertable to T2 // store <T2> %V, <T2>* %t // // Into: // %t = cast <T2> %V to <T1> // store <T1> %t2, <T1>* %P llvm-svn: 1080
-
Chris Lattner authored
llvm-svn: 1079
-
Chris Lattner authored
* Convert getelementptr/load pairs into a single load llvm-svn: 1075
-
Chris Lattner authored
llvm-svn: 1074
-
Chris Lattner authored
llvm-svn: 1071
-
- Oct 31, 2001
-
-
Chris Lattner authored
llvm-svn: 1066
-
Chris Lattner authored
llvm-svn: 1065
-
Chris Lattner authored
llvm-svn: 1064
-
Chris Lattner authored
llvm-svn: 1062
-
Chris Lattner authored
llvm-svn: 1056
-
- Oct 29, 2001
-
-
Chris Lattner authored
llvm-svn: 1034
-
Chris Lattner authored
llvm-svn: 1033
-
- Oct 28, 2001
-
-
Vikram S. Adve authored
llvm-svn: 1016
-
Chris Lattner authored
llvm-svn: 1015
-
Vikram S. Adve authored
llvm-svn: 1003
-
Vikram S. Adve authored
Put trace code before condition-generating instruction in basic blocks that end in a conditional branch. llvm-svn: 1002
-
- Oct 23, 2001
-
-
Chris Lattner authored
llvm-svn: 965
-
- Oct 18, 2001
-
-
Chris Lattner authored
llvm-svn: 898
-
Chris Lattner authored
llvm-svn: 897
-
Vikram S. Adve authored
BB exit to read and print values stored in that BB. Note that only these stored values are live at method exit!. Also, print messages at method entry and exit. llvm-svn: 892
-
Vikram S. Adve authored
Restore string variable cache. Resurrect code to use formatted printing instead of PrintVal but leave it turned off for now. llvm-svn: 888
-
Chris Lattner authored
Need to eliminate duplicate \n entries llvm-svn: 883
-
Chris Lattner authored
at least what used to. I should disable method exit code completely because it's broken (doesn't insert just post dominating values) llvm-svn: 881
-
Chris Lattner authored
llvm-svn: 880
-
Chris Lattner authored
llvm-svn: 873
-
- Oct 15, 2001
-
-
Chris Lattner authored
llvm-svn: 836
-
Chris Lattner authored
llvm-svn: 822
-
Chris Lattner authored
* Make local functions static llvm-svn: 820
-
Vikram S. Adve authored
llvm-svn: 819
-
Chris Lattner authored
llvm-svn: 817
-