- Apr 13, 2004
-
-
Chris Lattner authored
llvm-svn: 12895
-
Chris Lattner authored
llvm-svn: 12894
-
Chris Lattner authored
llvm-svn: 12893
-
Chris Lattner authored
llvm-svn: 12892
-
Chris Lattner authored
llvm-svn: 12891
-
Chris Lattner authored
LoopSimplify was not updating dominator frontiers correctly in some cases. llvm-svn: 12890
-
Chris Lattner authored
llvm-svn: 12889
-
Chris Lattner authored
llvm-svn: 12888
-
Chris Lattner authored
llvm-svn: 12887
-
Chris Lattner authored
llvm-svn: 12886
-
John Criswell authored
llvm-svn: 12885
-
Chris Lattner authored
This is fairly straight-forward, but was a real nightmare to get just perfect. aarg. :) llvm-svn: 12884
-
Brian Gaeke authored
consists mostly of changing sloppy K&R C code to slightly more disciplined K&R C code, and doing the usual things to shut gcc up. llvm-svn: 12877
-
Brian Gaeke authored
llvm-svn: 12876
-
Brian Gaeke authored
llvm-svn: 12875
-
- Apr 12, 2004
-
-
Brian Gaeke authored
llvm-svn: 12874
-
Chris Lattner authored
llvm-svn: 12873
-
Alkis Evlogimenos authored
llvm-svn: 12872
-
Chris Lattner authored
llvm-svn: 12871
-
Alkis Evlogimenos authored
Update testcase to illustrate the coalescing problem. The previous one did not work because of a fix in the x86 instruction selector. llvm-svn: 12870
-
Alkis Evlogimenos authored
llvm-svn: 12869
-
John Criswell authored
llvm-svn: 12868
-
John Criswell authored
intrinsics. Modified llvm.readio and llvm.writeio to use pointers to memory instead of integers. This should take care of problems such as different pointer sizes, casting integers to pointers, weird architectural pointer types, etc. Re-worded the description of llvm.readio and llvm.writeio so that it should be more clear as to why they should be used over regular loads/stores for I/O. llvm-svn: 12867
-
Alkis Evlogimenos authored
llvm-svn: 12866
-
Alkis Evlogimenos authored
llvm-svn: 12865
-
John Criswell authored
llvm-svn: 12864
-
Chris Lattner authored
llvm-svn: 12863
-
Chris Lattner authored
llvm-svn: 12862
-
Chris Lattner authored
execute other CallGraphSCCPasses after the inliner without crashing. llvm-svn: 12861
-
Chris Lattner authored
SCC passes much more useful. In particular, this should fix the incredibly stupid missed inlining opportunities that the inliner suffered from. llvm-svn: 12860
-
Chris Lattner authored
llvm-svn: 12859
-
Chris Lattner authored
llvm-svn: 12858
-
Chris Lattner authored
llvm-svn: 12857
-
Chris Lattner authored
llvm-svn: 12856
-
Chris Lattner authored
llvm-svn: 12855
-
Chris Lattner authored
I have unsaved emacs buffers, geeze... llvm-svn: 12854
-
Chris Lattner authored
llvm-svn: 12853
-
Chris Lattner authored
of the fucom[p][p] instructions. This allows us to code generate this function bool %test(double %X, double %Y) { %C = setlt double %Y, %X ret bool %C } ... into: test: fld QWORD PTR [%ESP + 4] fld QWORD PTR [%ESP + 12] fucomip %ST(1) fstp %ST(0) setb %AL movsx %EAX, %AL ret where before we generated: test: fld QWORD PTR [%ESP + 4] fld QWORD PTR [%ESP + 12] fucompp ** fnstsw ** sahf setb %AL movsx %EAX, %AL ret The two marked instructions (which are the ones eliminated) are very bad, because they serialize execution of the processor. These instructions are available on the PPRO and later, but since we already use cmov's we aren't losing any portability. I retained the old code for the day when we decide we want to support back to the 386. llvm-svn: 12852
-
Chris Lattner authored
llvm-svn: 12851
-
Chris Lattner authored
llvm-svn: 12850
-