Misha Brukman
08b8a09113
Add support for 64-bit CMPDI, CMPLDI, and CMPLD opcodes
...
llvm-svn: 15667
2004-08-11 20:56:14 +00:00
Misha Brukman
7325a6c790
Add doubleword load/store (64-bit only).
...
llvm-svn: 15665
2004-08-11 15:54:36 +00:00
Misha Brukman
1f4fb14301
Hyphenate ##-bit and remove first-person from comments.
...
llvm-svn: 15663
2004-08-11 13:35:44 +00:00
Nate Begeman
6120e8f04f
Clean up 32/64bit and Darwin/AIX split. Next steps: 64 bit ISel, AIX asm printer.
...
llvm-svn: 15662
2004-08-11 07:40:04 +00:00
Chris Lattner
2903154b98
Fix a case where constantexprs could leak into the PPC isel.
...
llvm-svn: 15661
2004-08-11 07:34:50 +00:00
Chris Lattner
5e7e9b6c26
Remove a bunch of ad-hoc target-specific flags that were only used by the
...
old asmprinter.
llvm-svn: 15660
2004-08-11 07:12:04 +00:00
Chris Lattner
b09bc9d4e3
Remove a dead method
...
llvm-svn: 15659
2004-08-11 07:07:14 +00:00
Chris Lattner
3fc9d4490c
Finally, the entire instruction asmprinter is now generated from tblgen, woo!
...
llvm-svn: 15658
2004-08-11 07:02:04 +00:00
Chris Lattner
3cef2f82ff
Add asmprintergen support for the last X86 instruction that needs it: pcrelative calls.
...
llvm-svn: 15657
2004-08-11 06:59:12 +00:00
Chris Lattner
309873fed0
This file is long dead
...
llvm-svn: 15656
2004-08-11 06:55:12 +00:00
Chris Lattner
9c171be048
Scrunch memoperands, add a few more for floating point memops
...
Eliminate the FPI*m classes, converting them to use FPI instead.
llvm-svn: 15655
2004-08-11 06:50:10 +00:00
Chris Lattner
f34003128d
Move hacks up
...
llvm-svn: 15654
2004-08-11 06:09:55 +00:00
Chris Lattner
b287047c3f
Make FPI take asm string and operand list
...
llvm-svn: 15653
2004-08-11 05:54:16 +00:00
Chris Lattner
c304bf7e03
Nuke the Im*i* patterns, by asmprintergenifying all users.
...
llvm-svn: 15652
2004-08-11 05:31:07 +00:00
Chris Lattner
65ab459759
X86 instructions that read-modify-write memory are not LLVM two-address instructions.
...
llvm-svn: 15651
2004-08-11 05:07:25 +00:00
Chris Lattner
384711a69c
Get rid of the Im8, Im16, Im32 classes, converting more instructions over to
...
asmprintergeneration
llvm-svn: 15650
2004-08-11 04:31:00 +00:00
Nate Begeman
c07b78eaa2
Fix 255.vortex by using getClassB instead of getClass
...
llvm-svn: 15648
2004-08-11 03:30:55 +00:00
Chris Lattner
24279a8ac8
Remove dead method
...
llvm-svn: 15647
2004-08-11 02:26:39 +00:00
Chris Lattner
b66b9cd4a9
Convert asmprinter to new style of instruction printer
...
Start asmprintergen'ifying machine instrs with memory operands.
llvm-svn: 15646
2004-08-11 02:25:00 +00:00
Chris Lattner
27e1f4f412
Fill out immediate operand classes, add a new Operand class
...
llvm-svn: 15642
2004-08-11 01:53:34 +00:00
Chris Lattner
2f98c58e84
Fix InstCombine/2004-08-10-BoolSetCC.ll, a bug that is miscompiling
...
176.gcc. Note that this is apparently not the only bug miscompiling gcc
though. :(
llvm-svn: 15639
2004-08-11 00:50:51 +00:00
Misha Brukman
694c9ff1a6
Breaking up the PowerPC target into 32- and 64-bit subparts, Part III: the rest.
...
llvm-svn: 15636
2004-08-11 00:11:25 +00:00
Misha Brukman
47c87a8808
Breaking up the PowerPC target into 32- and 64-bit subparts: Part II: 64-bit.
...
llvm-svn: 15635
2004-08-11 00:10:41 +00:00
Misha Brukman
6713996576
Breaking up the PowerPC target into 32- and 64-bit subparts, Part I: 32-bit.
...
llvm-svn: 15634
2004-08-11 00:09:42 +00:00
Misha Brukman
9027e32469
Implement new constructor.
...
llvm-svn: 15633
2004-08-10 23:10:25 +00:00
Misha Brukman
3f79fbe93f
Renamed PPC32 (namespace for regs, opcodes) to PPC to include 64-bit targets
...
llvm-svn: 15631
2004-08-10 22:47:03 +00:00
Misha Brukman
aa0e45b8d8
* Fix file header to use tablegen emacs mode instead of c++
...
* Wrap long line to 80 cols
llvm-svn: 15630
2004-08-10 21:24:44 +00:00
Chris Lattner
5cf0a20d4f
This is purely a formatting patch that gets us closer to the mecca of fitting
...
X86InstrInfo.td into 80 columns
llvm-svn: 15629
2004-08-10 21:21:30 +00:00
Chris Lattner
f6c4de46e0
Drop the first argument of FPI, and asmprinterify fxch
...
llvm-svn: 15628
2004-08-10 21:02:13 +00:00
Nate Begeman
b74ee41754
Fix casts of float to unsigned long
...
Replace STDX (store 64 bit int indexed) with STFDX (store double indexed)
Fix latent bug in indexed load generation
Generate indexed loads and stores in many more cases
llvm-svn: 15626
2004-08-10 20:42:36 +00:00
Misha Brukman
ef8d63fabb
Fix file header comment: update filename, set tablegen emacs mode.
...
llvm-svn: 15625
2004-08-10 20:28:13 +00:00
Chris Lattner
97abe28059
This purely mechanical patch gives the "I" tblgen class operand list and asm
...
string operands, and adjusts all users to pass them in instead of using II.
llvm-svn: 15624
2004-08-10 20:17:41 +00:00
Chris Lattner
332fa9be1c
Convert Ii32 instructions over to use the asmprinter generator
...
llvm-svn: 15621
2004-08-10 19:06:36 +00:00
Misha Brukman
861d6cdcb1
DForm 5/6 extended mneumonics take 3 arguments.
...
llvm-svn: 15620
2004-08-10 19:03:31 +00:00
Misha Brukman
07e778b251
* Instruction definitions moved to SparcV9InstrInfo.td for consistency
...
* Defined PHI instruction and SparcV9 subclass of Target
llvm-svn: 15615
2004-08-10 18:15:31 +00:00
Misha Brukman
04771d9b7b
Renamed SparcV9_Reg.td -> SparcV9RegisterInfo.td for consistency.
...
llvm-svn: 15614
2004-08-10 18:14:04 +00:00
Misha Brukman
fe7a08a933
Fix DForm_4: format is `op r, r, i'
...
llvm-svn: 15613
2004-08-10 18:07:55 +00:00
Misha Brukman
90c2c03a0d
Fix comment header, specify type of file `tablegen'.
...
llvm-svn: 15612
2004-08-10 17:37:14 +00:00
Chris Lattner
068209661a
Convert the Ii16 instructions over
...
llvm-svn: 15606
2004-08-10 16:22:02 +00:00
Chris Lattner
315782f0ac
Convert all Ii8 instructions over to the autogenerated asmprinter.
...
llvm-svn: 15605
2004-08-10 16:09:54 +00:00
Misha Brukman
84689ebc46
Define the target name so we can use it via TableGen.
...
llvm-svn: 15604
2004-08-10 15:29:15 +00:00
Chris Lattner
43abe1a0d8
Paper over CBackend/2004-08-09-va-end-null.ll
...
Note that this indicates a serious problem with the way we are emitting varargs,
but this should not be properly fixed until after 1.3.
This patch SHOULD go into 1.3.
llvm-svn: 15602
2004-08-10 00:19:16 +00:00
Misha Brukman
d345cd9090
Stub definition of the PowerPC CodeEmitter class; this isn't functional (yet).
...
llvm-svn: 15600
2004-08-09 23:03:59 +00:00
Misha Brukman
3da9167cc4
CodePrinter -> AsmPrinter
...
llvm-svn: 15599
2004-08-09 22:27:45 +00:00
Chris Lattner
32b5c4960c
Fix InstCombine/2004-08-09-RemInfLoop.llx
...
This should go into the 1.3 branch
llvm-svn: 15593
2004-08-09 21:05:48 +00:00
Misha Brukman
65afbbca70
Remove ClassPrefix variable as it's no longer used.
...
llvm-svn: 15586
2004-08-09 19:13:29 +00:00
Misha Brukman
4ebd3108a2
The (future) SparcV8 JIT would do well to have a class prefix.
...
llvm-svn: 15583
2004-08-09 18:13:09 +00:00
Misha Brukman
a78884fc8a
Define the ClassPrefix for SparcV9.
...
llvm-svn: 15581
2004-08-09 17:46:49 +00:00
Misha Brukman
1547d8e8d0
Define a ClassPrefix for PowerPC.
...
llvm-svn: 15580
2004-08-09 17:46:26 +00:00
Misha Brukman
5f8e406838
Classes need to have a prefix name, so that they can be tacked on to the pieces
...
that TableGen creates for them, e.g. CodeEmitter, AsmPrinter, etc.
llvm-svn: 15579
2004-08-09 17:46:06 +00:00