Commit Graph

7090 Commits

Author SHA1 Message Date
Chris Lattner 9c9b4c54fa No functional changes, comment the fix I just put in
llvm-svn: 7590
2003-08-05 03:59:01 +00:00
Chris Lattner 01349f463c The CodeEmitterGenerator used to consider ANY uninitialized field as being an
operand (unless it's annul or predict).  Now we only consider fields to be
operands if they are uninitialized AND used in the "Inst" field.

llvm-svn: 7589
2003-08-05 03:53:04 +00:00
Chris Lattner 506fa6843e Revert previous change, and be really anal about what physical registers can do.
llvm-svn: 7588
2003-08-05 00:49:09 +00:00
Chris Lattner 7c257321c7 This is the real fix for the previous register allocator problem.
Physical registers should not float around.

llvm-svn: 7587
2003-08-05 00:48:47 +00:00
Misha Brukman f7586ceeb2 Reformatted code to match the prevalent LLVM style; fit code into 80 columns.
llvm-svn: 7586
2003-08-05 00:02:06 +00:00
Misha Brukman 8f7304a32d ElectricFence found this bug where we were reading past the vector boundary.
llvm-svn: 7585
2003-08-04 23:48:40 +00:00
Chris Lattner 4b637cc666 Don't bother calculating info unless its needed. May reduce number of stack slots created.
llvm-svn: 7584
2003-08-04 23:42:37 +00:00
Chris Lattner 815b85e3ba * Fix spelling of 'necessary'
* Add a lot more DEBUG output, which is better structured than before
* Fix bug: Jello/2003-08-04-PhysRegLiveFailure.llx

llvm-svn: 7583
2003-08-04 23:36:39 +00:00
Chris Lattner 732a3883ed New testcase, identified by Vikram, reduced by Brian
llvm-svn: 7582
2003-08-04 23:28:44 +00:00
Chris Lattner 148747e162 Add patterns for (mov R, R) (mov R, I) and subtracts. The moves are to enable
testing, the subtracts are because I was in the neighborhood.

llvm-svn: 7581
2003-08-04 21:18:19 +00:00
Chris Lattner 44cdcf013f Change comments into something that TableGen can read!
llvm-svn: 7580
2003-08-04 21:08:29 +00:00
Chris Lattner 0d74debd07 Allow instructions to have a DAG pattern associated with them.
Define a few preliminary node types.

llvm-svn: 7579
2003-08-04 21:07:37 +00:00
Chris Lattner 6aa90493a3 Rename register classes to be upper case to make it obvious that they are X86
specific in the tree patterns

llvm-svn: 7578
2003-08-04 20:58:29 +00:00
Chris Lattner ad9e792bef Parse DAG patterns
llvm-svn: 7577
2003-08-04 20:44:43 +00:00
Chris Lattner 828052eb2d add support for DagInit initializers, which represent DAG patterns
llvm-svn: 7576
2003-08-04 20:44:17 +00:00
Chris Lattner 15eebca876 New testcase
llvm-svn: 7575
2003-08-04 20:43:48 +00:00
Chris Lattner 9d37429cfe Update file header comment
llvm-svn: 7574
2003-08-04 20:08:28 +00:00
Chris Lattner 5d4f4e8ba8 Urg, do not print "foo has changed" messages
llvm-svn: 7573
2003-08-04 20:07:01 +00:00
Chris Lattner b3aae61c5f While I'm looking at it, line up the SED lines
llvm-svn: 7572
2003-08-04 19:48:10 +00:00
Chris Lattner 7d0adf79ec * Don't print out HOW we are running Flex unless in verbose mode. We already
hide the bison command line.
* If running flex or bison gives us the files we already have, don't overwrite
  the ones we have, which cause unnecessary compilation.  I demand the ability
  to make meaningless changes without penalty!

llvm-svn: 7571
2003-08-04 19:47:06 +00:00
Misha Brukman 4aad821408 Do not attempt to reduce a test case if it is an empty set.
llvm-svn: 7570
2003-08-04 19:03:42 +00:00
John Criswell fe69bc502d Added code that ensures that we don't try to reduce an empty vector of basic
blocks.
This fixes the bugpoint regressions.

llvm-svn: 7569
2003-08-04 18:24:31 +00:00
Chris Lattner 22c550e442 There is nothing special about noops anymore
llvm-svn: 7568
2003-08-04 05:11:37 +00:00
Chris Lattner 78fac3b8b6 There is nothing special about noops now
llvm-svn: 7567
2003-08-04 05:11:19 +00:00
Chris Lattner ed39dcdaa1 Transition complete, remove the obsolete 'set' keyword
llvm-svn: 7566
2003-08-04 05:04:52 +00:00
Chris Lattner 9fb7e0a425 Transition to using 'let X = y' instead of 'set X = y'.
llvm-svn: 7565
2003-08-04 05:03:18 +00:00
Chris Lattner 2551080937 transition to using let instead of set
llvm-svn: 7564
2003-08-04 04:59:56 +00:00
Chris Lattner cb7489c102 Transition to using let instead of set
llvm-svn: 7563
2003-08-04 04:58:12 +00:00
Chris Lattner fdd6d0f3a9 Start transitioning towards using 'let X = y in' statements, instead of 'set X = y in'.
llvm-svn: 7562
2003-08-04 04:56:53 +00:00
Chris Lattner 3abe2e63cb It appears that somehow we forgot to add support for code variables.
Fix bug: TableGen/2003-08-03-PassCode.td

llvm-svn: 7561
2003-08-04 04:53:50 +00:00
Chris Lattner 1078a81a3a New testcase
llvm-svn: 7560
2003-08-04 04:53:13 +00:00
Chris Lattner afc85d274f Add initial support for a new 'dag' type
llvm-svn: 7559
2003-08-04 04:50:57 +00:00
Chris Lattner 796684b8c7 Fix Bug: test/Regression/Jello/2003-08-03-CallArgLiveRanges.llx
llvm-svn: 7558
2003-08-04 02:12:48 +00:00
Chris Lattner bd81d1123e New testcase
llvm-svn: 7557
2003-08-04 02:11:05 +00:00
Chris Lattner fdd6784e1d Simplify some constant expressions
llvm-svn: 7556
2003-08-04 01:04:59 +00:00
Chris Lattner 7af360e339 Make sure to flush the output stream so that we get incremental updates
llvm-svn: 7555
2003-08-04 00:56:43 +00:00
Chris Lattner a132c36880 Print accurate run instructions for when testing LLC
llvm-svn: 7554
2003-08-04 00:56:27 +00:00
Chris Lattner 876353b107 Remove illegal, unsupported escapes. This fixes program: Ptrdist-bc
llvm-svn: 7552
2003-08-03 23:42:17 +00:00
Chris Lattner 5dcb654662 * Sort #includes, remove dupliates
* Use .zero to emit padding between struct elements
* Emit .comm symbols when we can, this dramatically reduces the amount of gunk we have to print
* Print global variable identifiers next to initializer more nicely.

llvm-svn: 7551
2003-08-03 23:37:09 +00:00
Chris Lattner 4089d880ff Fix problem I introduced in bugpoint with the cleanup functions
llvm-svn: 7549
2003-08-03 22:29:43 +00:00
Chris Lattner 6b0869be4b Allow registers to specify a custom name
llvm-svn: 7548
2003-08-03 22:14:50 +00:00
Chris Lattner 0b2c347eac Specify custom name for registers to get the ()'s in the name.
llvm-svn: 7547
2003-08-03 22:12:47 +00:00
Chris Lattner 9c66ed8503 Allow specifying custom names for registers
llvm-svn: 7546
2003-08-03 22:12:37 +00:00
Chris Lattner 329fc9c693 add new --gen-instr-desc option
llvm-svn: 7545
2003-08-03 21:58:28 +00:00
Chris Lattner 928ab27a55 Add new Record::getValueAsBit method
llvm-svn: 7544
2003-08-03 21:58:13 +00:00
Chris Lattner fed9de5358 Finish the instruction info emitter
llvm-svn: 7543
2003-08-03 21:57:51 +00:00
Chris Lattner bb8bdc04a7 Start using tablegen'd instruction enum list
llvm-svn: 7542
2003-08-03 21:57:05 +00:00
Chris Lattner 637eebbfc1 Resort tables
llvm-svn: 7541
2003-08-03 21:56:36 +00:00
Chris Lattner df14300577 Lump the base opcode in with the X86 TargetSpecific flags
llvm-svn: 7540
2003-08-03 21:56:22 +00:00
Chris Lattner 05e2f385a7 * Start using tablegen'd instruction descriptions
* Fix bug in the createNOP method, which was not marking the operands of the
  generated XCHG as useanddef.  I don't think this method is actually used,
  so it wasn't breaking anything, but it should be fixed anyway...

llvm-svn: 7539
2003-08-03 21:55:55 +00:00