- Apr 08, 2004
-
-
John Criswell authored
The Verifier ensures that their parameters are of integral types and have the correct sign, but it does not enforce any size restrictions because such restrictions are platform dependent. llvm-svn: 12781
-
Chris Lattner authored
llvm-svn: 12779
-
Chris Lattner authored
Now we collect all of the call sites we are interested in inlining, then inline them. This entirely avoids issues with trying to inline a call site we got by inlining another call site. This also eliminates iterator invalidation issues. llvm-svn: 12770
-
Chris Lattner authored
llvm-svn: 12769
-
- Apr 07, 2004
-
-
Brian Gaeke authored
llvm-svn: 12766
-
Brian Gaeke authored
llvm-svn: 12765
-
Brian Gaeke authored
llvm-svn: 12764
-
Chris Lattner authored
llvm-svn: 12762
-
Brian Gaeke authored
llvm-svn: 12760
-
Brian Gaeke authored
llvm-svn: 12759
-
Brian Gaeke authored
llvm-svn: 12758
-
Brian Gaeke authored
function prologues, and fix an off-by-one in visitCallInst that was putting call args into the wrong registers. llvm-svn: 12757
-
Brian Gaeke authored
trying to get incoming args off the stack, instead of the %i0...%i6 regs, which is wrong. llvm-svn: 12756
-
Chris Lattner authored
llvm-svn: 12754
-
Chris Lattner authored
have no good way of handling this until the code generator is improved. We should probably just emit V9 instructions in the meantime. llvm-svn: 12745
-
Chris Lattner authored
llvm-svn: 12744
-
Chris Lattner authored
llvm-svn: 12743
-
Brian Gaeke authored
llvm-svn: 12742
-
Brian Gaeke authored
llvm-svn: 12741
-
Chris Lattner authored
llvm-svn: 12740
-
Chris Lattner authored
llvm-svn: 12739
-
Chris Lattner authored
llvm-svn: 12737
-
Chris Lattner authored
llvm-svn: 12736
-
Brian Gaeke authored
llvm-svn: 12735
-
Brian Gaeke authored
llvm-svn: 12734
-
Brian Gaeke authored
llvm-svn: 12733
-
Brian Gaeke authored
Preliminary support for division. It's gross because you have to initialize the "Y" register, which is the top 32 bits of the thing you're dividing. llvm-svn: 12732
-
Brian Gaeke authored
llvm-svn: 12731
-
Brian Gaeke authored
llvm-svn: 12730
-
Brian Gaeke authored
Fill in addPassesToJITCompile method. llvm-svn: 12729
-
Brian Gaeke authored
llvm-svn: 12728
-
Brian Gaeke authored
ld/st instructions - doesn't seem to work yet, but I think it's just a typo or something somewhere. llvm-svn: 12727
-
Brian Gaeke authored
llvm-svn: 12726
-
Brian Gaeke authored
Don't put NOPs in delay slots at all. We'll have a fix-up pass later. llvm-svn: 12725
-
- Apr 06, 2004
-
-
Jakub Staszak authored
file based off InstSelectSimple.cpp, slowly being replaced by generated code from the really simple X86 instruction selector tablegen backend llvm-svn: 12715
-
Jakub Staszak authored
Tablgen files for really simple instruction selector llvm-svn: 12714
-
Chris Lattner authored
llvm-svn: 12711
-
Chris Lattner authored
llvm-svn: 12710
-
Chris Lattner authored
Enable folding of long seteq/setne comparisons into branches and select instructions Implement unfolded long relational comparisons against a constants a bit more efficiently Folding comparisons changes code that looks like this: mov %EAX, DWORD PTR [%ESP + 4] mov %EDX, DWORD PTR [%ESP + 8] mov %ECX, %EAX or %ECX, %EDX sete %CL test %CL, %CL je .LBB2 # PC rel: F into code that looks like this: mov %EAX, DWORD PTR [%ESP + 4] mov %EDX, DWORD PTR [%ESP + 8] mov %ECX, %EAX or %ECX, %EDX jne .LBB2 # PC rel: F This speeds up 186.crafty by 6% with llc-ls. llvm-svn: 12702
-
Chris Lattner authored
comparing a long against zero got us this: sub %ESP, 8 mov DWORD PTR [%ESP + 4], %ESI mov DWORD PTR [%ESP], %EDI mov %EAX, DWORD PTR [%ESP + 12] mov %EDX, DWORD PTR [%ESP + 16] mov %ECX, 0 mov %ESI, 0 mov %EDI, %EAX xor %EDI, %ECX mov %ECX, %EDX xor %ECX, %ESI or %EDI, %ECX sete %CL test %CL, %CL je .LBB2 # PC rel: F Now it gets us this: mov %EAX, DWORD PTR [%ESP + 4] mov %EDX, DWORD PTR [%ESP + 8] mov %ECX, %EAX or %ECX, %EDX sete %CL test %CL, %CL je .LBB2 # PC rel: F llvm-svn: 12696
-