Commit Graph

7211 Commits

Author SHA1 Message Date
Reid Spencer ff6cc1233e Add a --version option for every tool that prints out:
Low Level Virtual Machine ($PACKAGE_NAME) $PACKAGE_VERSION

llvm-svn: 15454
2004-08-04 00:36:06 +00:00
Chris Lattner bba09b3f7f Make getGlobalTableValue not use getTypeSlot, this speeds up the bc reader
by 5% on eon

llvm-svn: 15452
2004-08-04 00:19:23 +00:00
Chris Lattner cd84396b58 Do not do a linear std::find to reconstruct information we had, but later threw
away.  This speeds up by .bc reader by 30% in a profile build on 252.eon.

llvm-svn: 15450
2004-08-03 23:41:28 +00:00
Misha Brukman 8a1978fd72 Remove unused opcodes.
llvm-svn: 15447
2004-08-03 20:23:44 +00:00
Chris Lattner 9e92b19182 Move this file out of the top-level docs directory
llvm-svn: 15429
2004-08-03 04:15:02 +00:00
Misha Brukman 570dcf63e6 * Use simpler instruction templates to define instructions
* Fix several extended opcodes

llvm-svn: 15423
2004-08-02 21:58:52 +00:00
Misha Brukman 6b21bde2d6 Replace patterns 0, 4, and 5 with simpler heirarchical definitions that use the
official PowerPC instruction format lingo: X- and D-form.

llvm-svn: 15422
2004-08-02 21:56:35 +00:00
Chris Lattner 7e36902bd9 Hide this option
llvm-svn: 15415
2004-08-02 20:16:21 +00:00
Misha Brukman cd4f51b4b6 Separate instruction formats from instruction definitions.
llvm-svn: 15414
2004-08-02 16:54:54 +00:00
Misha Brukman a297dc2480 Add #include <cstdlib> and abort() to silence a warning
llvm-svn: 15413
2004-08-02 14:02:21 +00:00
Misha Brukman 8481785391 * ceil() requires #include <cmath> for compilation
* Alphabetize #includes
* Fix some lines to fit within 80 cols

llvm-svn: 15412
2004-08-02 13:59:10 +00:00
Chris Lattner 7aa2d4747a Fix a regression in InstCombine/xor.ll
llvm-svn: 15410
2004-08-01 19:42:59 +00:00
Chris Lattner 4d7af1c680 Fix a warning
llvm-svn: 15409
2004-08-01 19:31:30 +00:00
Tanya Lattner dfd402ea8d Adding ModuloScheduling so that it compiles for everyone.
llvm-svn: 15408
2004-08-01 19:00:17 +00:00
Chris Lattner 2b47c02b64 Convert all I<> instructions to asmformat.
Delete the 'name' field of all instructions that have asmformats.

llvm-svn: 15403
2004-08-01 09:52:59 +00:00
Chris Lattner 356f5a13f5 Dereferencing end() is bad.
llvm-svn: 15402
2004-08-01 09:51:42 +00:00
Chris Lattner 1cabced74b Add some immediate forms, make name optional
llvm-svn: 15401
2004-08-01 09:36:44 +00:00
Chris Lattner 27fcf976f2 Eliminate 3 of the X86 printImplicit* flags.
llvm-svn: 15398
2004-08-01 08:23:17 +00:00
Chris Lattner e42675f5af Get rid of 3 of the 4 'printimplicit' flags. Implicit operands are now
explicitly listed in the asm string.

llvm-svn: 15397
2004-08-01 08:22:29 +00:00
Chris Lattner f6bd77190e Convert more instructions over to the asmprinter
llvm-svn: 15396
2004-08-01 08:13:11 +00:00
Chris Lattner 06cf67ee14 Handle registers a bit more efficiently
llvm-svn: 15395
2004-08-01 08:12:41 +00:00
Chris Lattner ba52a58836 give FP stack registers names
llvm-svn: 15394
2004-08-01 08:12:13 +00:00
Chris Lattner 275d98dcbb Switch more instructions over to using the asmprinter. Fix bugs in the emission
of in/out instructions (missing %'s on registers).

llvm-svn: 15393
2004-08-01 07:44:35 +00:00
Chris Lattner d5540021fc The tblgen'erated asmparser wants a way to print operands.
llvm-svn: 15392
2004-08-01 07:43:46 +00:00
Chris Lattner 9520d20c83 Rename the Printer class -> X86AsmPrinter.
Include the tablegenerated assembly writer.

llvm-svn: 15389
2004-08-01 06:02:08 +00:00
Chris Lattner 1d21ea7f1f Factor a bunch of the rules and add support for generating the asmwriter.
llvm-svn: 15388
2004-08-01 06:01:32 +00:00
Chris Lattner 321763358b Specify an asm string and operands lists for a bunch of instructions.
This only really covers no-operand instructions so far.

llvm-svn: 15387
2004-08-01 06:01:00 +00:00
Chris Lattner fd6893837c Add the 'ops' marker, add an AsmString initializer
llvm-svn: 15383
2004-08-01 04:40:43 +00:00
Chris Lattner 6971be8159 Completely disable the pattern isel until it is more substantial.
llvm-svn: 15380
2004-08-01 03:28:02 +00:00
Chris Lattner 70d2260eb9 Entirely eliminate all patterns and expanders from this file. We shall go
with an incremental approach rather than a revolutionary approach.

llvm-svn: 15379
2004-08-01 03:25:01 +00:00
Chris Lattner fc24e838a6 Move the 'Expander' node to later in the file, with the other experimental
stuff.  The pattern becomes a list, add some stuff, add some comments.

llvm-svn: 15378
2004-08-01 03:23:34 +00:00
Chris Lattner 06bfc0d930 Remove obsolete file
llvm-svn: 15377
2004-08-01 03:19:28 +00:00
Alkis Evlogimenos 62c979ba07 Make OptimizeBlock take a MachineFunction::iterator instead of a
MachineBasicBlock* as a parameter so that nxext() and prior() helper
functions can work naturally on it.

llvm-svn: 15376
2004-07-31 19:24:41 +00:00
Chris Lattner 0f1c2ed907 Next on a pointer increments the pointer, not an iterator
llvm-svn: 15375
2004-07-31 18:40:36 +00:00
Alkis Evlogimenos 2303d3f660 Use next() helper to make code more readable. Use
MachineFunction::iterator instead of MachineBasicBlock* to avoid
dereferencing end iterators.

llvm-svn: 15373
2004-07-31 15:14:29 +00:00
Alkis Evlogimenos 1e8d8fd81f Use MachineFunction::iterator instead of a MachineBasicBlock* because
FallThrough maybe == to MF.end().

llvm-svn: 15372
2004-07-31 15:03:52 +00:00
Alkis Evlogimenos bb635a27a4 Align breaks.
llvm-svn: 15371
2004-07-31 10:05:44 +00:00
Chris Lattner 7471b96a05 Expose this as a functionpass
llvm-svn: 15369
2004-07-31 10:01:58 +00:00
Chris Lattner 25e48dd2e0 Implement a simple target-independent CFG cleanup pass
llvm-svn: 15368
2004-07-31 10:01:27 +00:00
Chris Lattner fcef7655fa Add breaks
llvm-svn: 15365
2004-07-31 09:53:31 +00:00
Alkis Evlogimenos ce15f8f4c9 Simplify code a bit.
llvm-svn: 15364
2004-07-31 09:44:32 +00:00
Alkis Evlogimenos aaf642103a Correctly spell 'unconditional'.
llvm-svn: 15363
2004-07-31 09:41:44 +00:00
Alkis Evlogimenos f57d78a87d Implement insertGoto and reverseBranchCondition for the X86.
llvm-svn: 15362
2004-07-31 09:38:47 +00:00
Chris Lattner 4504b95801 I'm pretty sure that ba is branch always, which is a barrier. Brg should
check this :)

llvm-svn: 15357
2004-07-31 02:24:37 +00:00
Chris Lattner 66a13e230d Mark barrier instructions. Execution does not fall through uncond branches
or return intructions.

llvm-svn: 15356
2004-07-31 02:10:53 +00:00
Chris Lattner 2ab1142138 New flag
llvm-svn: 15354
2004-07-31 02:07:07 +00:00
Tanya Lattner 081fbd1bde Updated ModuloScheduling. It makes it all the wya through register allocation on the new code!!
llvm-svn: 15351
2004-07-30 23:36:10 +00:00
Misha Brukman 695d50d030 * Conditional save/restore of LR disabled as it's not quite correct
* sumarray2d fixed: large fixed-size alloca
* make is now compileable
* Re-organized tests to fit them under proper headings

Patch by Nate Begeman.

llvm-svn: 15347
2004-07-30 15:53:09 +00:00
Misha Brukman c102577ff1 Do not mark LR as callee-save: not quite correctly done. Patch: Nate Begeman.
llvm-svn: 15346
2004-07-30 15:51:51 +00:00
Misha Brukman 471b43a357 * Temporarily suspend LR save/restore optimization as it is not quite correct
* Implement large fixed-size allocas            Entire patch by Nate Begeman.

llvm-svn: 15345
2004-07-30 15:50:45 +00:00