Commit Graph

8747 Commits

Author SHA1 Message Date
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
Brian Gaeke
28dbfcefa4 Make this (-run) set look like the other (-disable) set.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9258 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:35:35 +00:00
Brian Gaeke
6ff3310c49 Always say "the test program", part 2.
Refer to the various "modules" of bugpoint as "debuggers", not
 "debugging modes" or "modules". I think this is more evocative of
 how they typically act, and it's shorter.
Add a note about how a linker bug can crash bugpoint early.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9257 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:30:36 +00:00
Chris Lattner
129e7a88b0 Two minor fixes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9256 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:27:12 +00:00
Brian Gaeke
237b366564 Minor edits to Description section.
Add Design Philosophy as a separate subsection.  Clarify its last sentence.
Give Automatic Mode Selection a uniquely-named anchor.
Always call the program the "test program", instead of the "initial program",
 the "LLVM program", the "test case", the "resultant module", etc.
Try to explain the assumptions a little more, instead of just describing the
 process.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9255 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:20:15 +00:00
Brian Gaeke
b9b3c33177 Spell-check.
Many minor edits.
Rewrite some of the options section for grammatical parallelism,
 clarity, and brevity.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9254 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 17:03:59 +00:00
Chris Lattner
be197877cf DeHTMLify the email so that it only gets sent out if something changes.
Add printouts about failed building and testing.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9253 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 16:54:00 +00:00
Chris Lattner
b169841166 .string adds an implicit zero at the end. This is not what we wanted.
This fixes PR#44.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9252 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 02:51:01 +00:00
Chris Lattner
0b1fe84e81 Add debugtype, make output marginally more nice
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9251 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 02:27:40 +00:00
Chris Lattner
7b2ccffa59 Fix PR #47
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9250 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 02:14:58 +00:00
Chris Lattner
a81fc68f8e Fix bug: Jello/2003-10-18-PHINode-ConstantExpr-CondCode-Failure.llx
This also fixes miscompilation of 176.gcc.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9249 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-19 00:26:11 +00:00
Chris Lattner
547eaefb0e New testcase, distilled from 176.gcc codegen failure
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9248 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 23:54:45 +00:00
Chris Lattner
365f09a0e1 Update compile information
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9247 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:55:47 +00:00
Chris Lattner
670406d269 Add usage blurb
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9246 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:55:35 +00:00
Chris Lattner
1f0f1621f0 Without this option, the -run-llc mode does not work with shared objects at
all, making it pointless for use with the code generator debugger.  With it,
it works like a charm.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9245 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:54:47 +00:00
Chris Lattner
634ec56986 Add bugpoint advice section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9244 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:34:15 +00:00
Chris Lattner
b715497a56 Print -fno-strict-aliasing as well
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9243 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:08:57 +00:00
Chris Lattner
1a28a2b76d Don't leave a trail of bugpoint-execution-output-* breadcrumbs all over the place
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9242 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 21:02:51 +00:00
Chris Lattner
0b4ffea866 Expand the --args section
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9241 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 20:57:23 +00:00
Chris Lattner
5cd840c047 * Add the -additional-so option
* Add info about codegen and miscompilation mode


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9240 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 20:54:37 +00:00
Chris Lattner
d1eb6f7984 Beef up the description of bugpoint a lot. Update for renamed options
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9239 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 20:36:15 +00:00
Chris Lattner
367e1ee5be Change run-lli -> run-int
Many people associate lli with the jit, so we don't want to suprise them


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@9238 91177308-0d34-0410-b5e6-96231b3b80d8
2003-10-18 20:30:48 +00:00