- Dec 01, 2003
-
-
Chris Lattner authored
Eventually this pass will provide substantially better code in the interim between when we have a crappy isel and nice isel. Unfortunately doing so requires fixing the backend to actually SUPPORT all of the fancy addressing modes that we now generate, and writing a DCE pass for machine code. Each of these is a fairly substantial job, so this will remain disabled for the immediate future. :( llvm-svn: 10276
-
Chris Lattner authored
folding of instructions into addressing modes. This creates lots of dead instructions, which are currently not deleted. It also creates a lot of instructions that the X86 backend currently cannot handle. :( llvm-svn: 10275
-
Chris Lattner authored
llvm-svn: 10274
-
- Nov 30, 2003
-
-
Chris Lattner authored
llvm-svn: 10270
-
- Nov 22, 2003
-
-
Brian Gaeke authored
the other way around, instead of failing a large, tumor-like assertion. llvm-svn: 10171
-
Brian Gaeke authored
llvm-svn: 10170
-
Brian Gaeke authored
llvm-svn: 10168
-
- Nov 18, 2003
-
-
Chris Lattner authored
llvm-svn: 10069
-
- Nov 11, 2003
-
-
Brian Gaeke authored
llvm-svn: 9903
-
- Nov 07, 2003
-
-
Chris Lattner authored
llvm-svn: 9761
-
- Nov 06, 2003
-
-
Chris Lattner authored
llvm-svn: 9758
-
- Nov 05, 2003
-
-
Misha Brukman authored
get just the filename and not the full path, just use the filename directly. llvm-svn: 9730
-
- Nov 04, 2003
-
-
Alkis Evlogimenos authored
return the number of instructions added to/removed from the basic block passed as their first argument. Note: This is only needed because we use a std::vector instead of an ilist to keep MachineBasicBlock instructions. Inserting an instruction to a MachineBasicBlock invalidates all iterators to the basic block. The return value can be used to update an index to the machine basic block instruction vector and circumvent the iterator elimination problem but this is really not needed if we move to a better representation. llvm-svn: 9704
-
Chris Lattner authored
llvm-svn: 9694
-
- Nov 03, 2003
-
-
Chris Lattner authored
strings with the stuff that used to print to an ostream directly. We now NEVER build up big strings, only to print them once they are formed. llvm-svn: 9686
-
Chris Lattner authored
llvm-svn: 9684
-
Chris Lattner authored
* Emit bools as 1/0 instead of true/false, fixing compilation of eon and PR 83 & Jello/2003-11-03-GlobalBool.llx llvm-svn: 9683
-
- Oct 23, 2003
-
-
Chris Lattner authored
Implement mul/div/rem constant expressions llvm-svn: 9424
-
Misha Brukman authored
* Convert tabs to spaces * Make code fit within 80 columns llvm-svn: 9416
-
- Oct 22, 2003
-
-
Misha Brukman authored
llvm-svn: 9360
-
- Oct 21, 2003
-
-
John Criswell authored
llvm-svn: 9321
-
John Criswell authored
llvm-svn: 9312
-
- Oct 20, 2003
-
-
John Criswell authored
Header files will be on the way. llvm-svn: 9298
-
Brian Gaeke authored
llvm-svn: 9295
-
Brian Gaeke authored
llvm-svn: 9288
-
Chris Lattner authored
C is a constant which can be sign-extended from 8 bits without value loss, and op is one of: add, sub, imul, and, or, xor. This allows the JIT to emit the one byte version of the constant instead of the two or 4 byte version. Because these instructions are very common, this can save a LOT of code space. For example, I sampled two benchmarks, 176.gcc and 254.gap. BM Old New Reduction 176.gcc 2673621 2548962 4.89% 254.gap 498261 475104 4.87% Note that while the percentage is not spectacular, this did eliminate 124.6 _KILOBYTES_ of codespace from gcc. Not bad. Note that this doesn't effect the llc version at all, because the assembler already does this optimization. llvm-svn: 9284
-
Chris Lattner authored
llvm-svn: 9282
-
Chris Lattner authored
llvm-svn: 9281
-
Misha Brukman authored
llvm-svn: 9280
-
Chris Lattner authored
* Implement R1 = R2 * C where R1 and R2 are 32 or 16 bits. This avoids an extra copy into a register, reducing register pressure. llvm-svn: 9278
-
- Oct 19, 2003
-
-
Chris Lattner authored
getelementptr code path for use by other code paths (like malloc and alloca). * Optimize comparisons with zero * Generate neg, not, inc, and dec instructions, when possible. This gives some code size wins, which might translate into performance. We'll see tommorow in the nightly tester. llvm-svn: 9267
-
Chris Lattner authored
llvm-svn: 9266
-
Chris Lattner authored
This fixes PR#44. llvm-svn: 9252
-
Chris Lattner authored
This also fixes miscompilation of 176.gcc. llvm-svn: 9249
-
- Oct 18, 2003
-
-
Chris Lattner authored
llvm-svn: 9224
-
- Oct 17, 2003
-
-
Brian Gaeke authored
displacement. llvm-svn: 9210
-
Brian Gaeke authored
llvm-svn: 9204
-
Brian Gaeke authored
llvm-svn: 9202
-
Brian Gaeke authored
llvm-svn: 9187
-
- Oct 16, 2003
-
-
Chris Lattner authored
llvm-svn: 9171
-