Commit Graph

8568 Commits

Author SHA1 Message Date
John Criswell
e488e9360b Added LLVM copyright notice to Makefiles.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9312 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 22:26:57 +00:00
Chris Lattner
5f7e61d226 Add a new map
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9311 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:55:13 +00:00
Chris Lattner
e9d3c6b919 Convert this code from using annotations to using a local map
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9310 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:52:23 +00:00
Brian Gaeke
5c288becab Goodbye, AddRegNumToValues
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9309 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:44:03 +00:00
John Criswell
1ee1e64293 Removed extraneous comment line.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9308 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:40:30 +00:00
Chris Lattner
0beae0cdac Remove using declaration
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9307 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:38:17 +00:00
Chris Lattner
60f1445cf2 This #include is no longer necessary
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9306 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:29:44 +00:00
John Criswell
01d45827a1 Added LLVM copyright header.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9305 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:20:30 +00:00
John Criswell
6fbcc26f14 Added LLVM copyright header (for lack of a better term).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9304 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:19:47 +00:00
John Criswell
1fc0d67e3e Oops. Typo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9303 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:16:14 +00:00
John Criswell
2efc5b5780 Added LLVM header notice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9302 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 20:11:43 +00:00
Misha Brukman
65797b83a9 Fixed the documentation to coincide with the code.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9301 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:47:25 +00:00
John Criswell
b2109ce978 Added LLVM notice.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9300 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:46:57 +00:00
Misha Brukman
06ea151895 Made error message more comprehensible.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9299 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:43:47 +00:00
John Criswell
b576c94c15 Added LLVM project notice to the top of every C++ source file.
Header files will be on the way.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9298 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:43:21 +00:00
Chris Lattner
ce439b539f "Function"[0] == 'F', not 'M'
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9297 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:10:06 +00:00
Chris Lattner
e84843b808 Update release notes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9296 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 19:05:03 +00:00
Brian Gaeke
0522b0846c Minor leftover fixups from replaceMachineCodeForFunction () change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9295 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 17:59:09 +00:00
Chris Lattner
1dd27b157b fix file header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9294 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 17:58:43 +00:00
Chris Lattner
943211187d fix file headers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9293 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 17:57:13 +00:00
Chris Lattner
10cf8fa592 Fix file header
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9292 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 17:52:11 +00:00
John Criswell
7c0e022c5c Added copyright header to all C++ source files.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9291 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 17:47:21 +00:00
John Criswell
3ab71367d0 Made the Requirements information its own major section and moved it
between the "Getting Started Quickly" and "Getting Started Slowly" sections.
:)
Removed some of the nit-picky requirements information (i.e. GNU tar and
GNU zip).
Attempted to compact the requirements information so that it is less scary.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9290 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 16:39:52 +00:00
Brian Gaeke
17b53a8733 Make replaceMachineCodeForFunction() return void.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9289 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 15:17:12 +00:00
Brian Gaeke
682ce72e60 Make replaceMachineCodeForFunction return void.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9288 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 15:15:17 +00:00
Brian Gaeke
a42649e3dd Make replaceMachineCodeForFunction return void.
Make it assert by default.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9287 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 15:14:33 +00:00
Chris Lattner
f6cd38d2fc Apparently the dependencies are wrong for this file, so it didn't rebuild it
when changing Instruction.def.  :(


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9286 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 14:12:52 +00:00
Chris Lattner
bacc773d20 Reorder for minor efficiency gain
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9285 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 05:54:26 +00:00
Chris Lattner
43a5ff8d40 Emit x86 instructions for: A = B op C, where A and B are 16-bit registers,
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9284 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 05:53:31 +00:00
Chris Lattner
e738656c0b Hrm, a relic from the past. How cute :)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9283 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 05:45:49 +00:00
Chris Lattner
6ac1d71588 Further cleanups and simplifications
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9282 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 04:48:06 +00:00
Chris Lattner
6c09db2959 Eliminate code for pointer size and endianness emulation.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9281 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 04:11:23 +00:00
Misha Brukman
44ffd5adac The Grammar Police was here.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9280 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 04:03:10 +00:00
Misha Brukman
0fc20c82bc * Fixed grammar in header
* Added description of `mem2reg'


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9279 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 03:59:05 +00:00
Chris Lattner
c01d1232fe * Rename X86::IMULr16 -> X86::IMULrr16
* Implement R1 = R2 * C where R1 and R2 are 32 or 16 bits. This avoids an
  extra copy into a register, reducing register pressure.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9278 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-20 03:42:58 +00:00
Chris Lattner
9fc2adc487 Don't bother forwarding function references which are external to the program entirely
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9274 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 23:32:50 +00:00
Chris Lattner
6ebe44d22f Ok, return an explicit path to the shared object, unbreaking code generator
debugging with the JIT


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9273 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:54:13 +00:00
Chris Lattner
b656c20cf1 Fix iterator invalidation problem
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9272 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:48:27 +00:00
Chris Lattner
a626e0242e Eliminate unused class
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9270 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:39:41 +00:00
Chris Lattner
3b237fcd38 Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9269 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:34:28 +00:00
Chris Lattner
4661dc6a6a Change the Opcode enum for PHI nodes from "Instruction::PHINode" to "Instruction::PHI" to be more consistent with the other instructions.
This allows removal of a special case from the instvisitor


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9268 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:34:11 +00:00
Chris Lattner
b2acc51bb2 * Multiplications by 2^X are turned into shifts. This factors code out of the
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.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9267 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 21:09:10 +00:00
Chris Lattner
f634a103ee Add some new instructions. Wheee
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9266 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 19:25:35 +00:00
Brian Gaeke
294fab1d07 Change it to match llvmgcc.html ... why do we have separate pages for these two?
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9265 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 18:23:05 +00:00
Brian Gaeke
102ed5c3a7 Clarify the roles of gccld and gccas.
Mention that they should really read the gcc manual.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9264 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 18:15:18 +00:00
Brian Gaeke
e08ad2e67b Minor edits; also expand description of '-v' option.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9263 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 18:09:24 +00:00
Brian Gaeke
f101788e40 Tweak -plugin description to match bugpoint.html
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9262 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 18:08:57 +00:00
Brian Gaeke
51b2ab8ea2 Mostly rewritten.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9261 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 18:03:11 +00:00
Chris Lattner
e99e734b27 A minor fix
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9260 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:37:33 +00:00
Brian Gaeke
768a318e31 Take out extra paragraph tag.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9259 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:37:12 +00:00