- Apr 02, 2004
-
-
Chris Lattner authored
llvm-svn: 12625
-
Chris Lattner authored
llvm-svn: 12624
-
Chris Lattner authored
llvm-svn: 12623
-
Chris Lattner authored
llvm-svn: 12622
-
Chris Lattner authored
llvm-svn: 12621
-
Chris Lattner authored
This also implements some new features for the indvars pass, including linear function test replacement, exit value substitution, and it works with a much more general class of induction variables and loops. llvm-svn: 12620
-
Chris Lattner authored
llvm-svn: 12619
-
Chris Lattner authored
llvm-svn: 12618
-
Chris Lattner authored
This actually causes us to turn code like: return C ? A : B; into a select instruction. llvm-svn: 12617
-
Chris Lattner authored
llvm-svn: 12616
-
Alkis Evlogimenos authored
llvm-svn: 12615
-
Brian Gaeke authored
Move lowerselect pass to come after preselection. Move machine code construction and stack slots pass to come right before instruction selection. This is to help fix perlbmk. Update comments. Make the sequence of passes in addPassesToJITCompile look more like the sequence of passes in addPassesToEmitAssembly, including support for -print-machineinstrs. llvm-svn: 12614
-
Brian Gaeke authored
llvm-svn: 12613
-
Chris Lattner authored
llvm-svn: 12612
-
Alkis Evlogimenos authored
llvm-svn: 12611
-
Alkis Evlogimenos authored
llvm-svn: 12610
-
Chris Lattner authored
Patch contributed by Reid Spencer llvm-svn: 12609
-
Chris Lattner authored
llvm-svn: 12608
-
Alkis Evlogimenos authored
llvm-svn: 12607
-
Chris Lattner authored
llvm-svn: 12606
-
Chris Lattner authored
1. Each time the loop extractor extracted a loop, we would leak a module. 2. When we extracted a loop, we didn't add the new function to the list of miscompiled functions. Thus if the bug was in a loop nest and we extracted it, we could actually *LOSE THE BUG*, which is very bad. With these patches, bugpoint has successfully found a bug for me in a function with several nested loops, and cut it down to just one of them. :) :) llvm-svn: 12605
-
Chris Lattner authored
hacking on programs with two functions that have the same name. llvm-svn: 12604
-
Chris Lattner authored
around llvm-svn: 12603
-
Chris Lattner authored
Address PR305: LLVM tools will happily spew bytecode onto your terminal llvm-svn: 12602
-
Chris Lattner authored
llvm-svn: 12601
-
Chris Lattner authored
llvm-svn: 12600
-
- Apr 01, 2004
-
-
Chris Lattner authored
llvm-svn: 12598
-
Chris Lattner authored
llvm-svn: 12597
-
Chris Lattner authored
llvm-svn: 12596
-
Chris Lattner authored
llvm-svn: 12595
-
Chris Lattner authored
llvm-svn: 12593
-
Chris Lattner authored
Testcase: LoopSimplify/2004-04-01-IncorrectDomUpdate.ll llvm-svn: 12592
-
Chris Lattner authored
llvm-svn: 12591
-
Misha Brukman authored
llvm-svn: 12590
-
Chris Lattner authored
llvm-svn: 12589
-
Chris Lattner authored
Implement a small optimization. In test/Regression/CodeGen/X86/select.ll, we now generate this for foldSel3: foldSel3: mov %AL, BYTE PTR [%ESP + 4] fld DWORD PTR [%ESP + 8] fld DWORD PTR [%ESP + 12] mov %EAX, DWORD PTR [%ESP + 16] mov %ECX, DWORD PTR [%ESP + 20] cmp %EAX, %ECX fxch %ST(1) fcmovae %ST(0), %ST(1) *** fstp %ST(1) ret Instead of: foldSel3: mov %AL, BYTE PTR [%ESP + 4] fld DWORD PTR [%ESP + 8] fld DWORD PTR [%ESP + 12] mov %EAX, DWORD PTR [%ESP + 16] mov %ECX, DWORD PTR [%ESP + 20] cmp %EAX, %ECX fxch %ST(1) fcmovae %ST(0), %ST(1) *** fxch %ST(1) *** fstp %ST(0) ret In practice, this only effects code size: performance should be basically unaffected. llvm-svn: 12588
-
Chris Lattner authored
llvm-svn: 12587
-
Chris Lattner authored
llvm-svn: 12586
-
Chris Lattner authored
llvm-svn: 12585
-
Chris Lattner authored
add note about select llvm-svn: 12584
-