Chris Lattner
|
c96bb817aa
|
Remove a bunch of ad-hoc target-specific flags that were only used by the
old asmprinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15660 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 07:12:04 +00:00 |
|
Chris Lattner
|
8e61d82528
|
Remove a dead method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15659 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 07:07:14 +00:00 |
|
Chris Lattner
|
2a998bdc7c
|
Finally, the entire instruction asmprinter is now generated from tblgen, woo!
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15658 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 07:02:04 +00:00 |
|
Chris Lattner
|
e4ead0ce62
|
Add asmprintergen support for the last X86 instruction that needs it: pcrelative calls.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15657 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 06:59:12 +00:00 |
|
Chris Lattner
|
8198fcfc5d
|
This file is long dead
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15656 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 06:55:12 +00:00 |
|
Chris Lattner
|
9795b3a0e7
|
Scrunch memoperands, add a few more for floating point memops
Eliminate the FPI*m classes, converting them to use FPI instead.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15655 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 06:50:10 +00:00 |
|
Chris Lattner
|
8549429a78
|
Move hacks up
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15654 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 06:09:55 +00:00 |
|
Chris Lattner
|
0f38e6ccca
|
Make FPI take asm string and operand list
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15653 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 05:54:16 +00:00 |
|
Chris Lattner
|
f5d3a83f65
|
Nuke the Im*i* patterns, by asmprintergenifying all users.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15652 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 05:31:07 +00:00 |
|
Chris Lattner
|
f29ed0937f
|
X86 instructions that read-modify-write memory are not LLVM two-address instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15651 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 05:07:25 +00:00 |
|
Chris Lattner
|
57a02306c5
|
Get rid of the Im8, Im16, Im32 classes, converting more instructions over to
asmprintergeneration
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15650 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 04:31:00 +00:00 |
|
Chris Lattner
|
916f96ace0
|
Remove dead method
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15647 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 02:26:39 +00:00 |
|
Chris Lattner
|
66fa1dcf90
|
Convert asmprinter to new style of instruction printer
Start asmprintergen'ifying machine instrs with memory operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15646 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-11 02:25:00 +00:00 |
|
Chris Lattner
|
36b689009d
|
This is purely a formatting patch that gets us closer to the mecca of fitting
X86InstrInfo.td into 80 columns
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15629 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 21:21:30 +00:00 |
|
Chris Lattner
|
1b9e20e32f
|
Drop the first argument of FPI, and asmprinterify fxch
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15628 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 21:02:13 +00:00 |
|
Chris Lattner
|
30bf2d8951
|
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.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15624 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 20:17:41 +00:00 |
|
Chris Lattner
|
869f477f34
|
Convert Ii32 instructions over to use the asmprinter generator
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15621 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 19:06:36 +00:00 |
|
Chris Lattner
|
7d620d57a4
|
Convert the Ii16 instructions over
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15606 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 16:22:02 +00:00 |
|
Chris Lattner
|
ab67067186
|
Convert all Ii8 instructions over to the autogenerated asmprinter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15605 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-10 16:09:54 +00:00 |
|
Alkis Evlogimenos
|
15876bb28c
|
Stop using getValues().
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15487 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-04 08:44:43 +00:00 |
|
Chris Lattner
|
bcdda01210
|
Fix a warning
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15409 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 19:31:30 +00:00 |
|
Chris Lattner
|
fc752713d7
|
Convert all I<> instructions to asmformat.
Delete the 'name' field of all instructions that have asmformats.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15403 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 09:52:59 +00:00 |
|
Chris Lattner
|
a35ce87e2e
|
Eliminate 3 of the X86 printImplicit* flags.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15398 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 08:23:17 +00:00 |
|
Chris Lattner
|
1626c507e8
|
Get rid of 3 of the 4 'printimplicit' flags. Implicit operands are now
explicitly listed in the asm string.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15397 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 08:22:29 +00:00 |
|
Chris Lattner
|
0e967d4f48
|
Convert more instructions over to the asmprinter
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15396 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 08:13:11 +00:00 |
|
Chris Lattner
|
25369cfa2b
|
Handle registers a bit more efficiently
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15395 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 08:12:41 +00:00 |
|
Chris Lattner
|
068758e518
|
give FP stack registers names
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15394 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 08:12:13 +00:00 |
|
Chris Lattner
|
ffff70827c
|
Switch more instructions over to using the asmprinter. Fix bugs in the emission
of in/out instructions (missing %'s on registers).
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15393 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 07:44:35 +00:00 |
|
Chris Lattner
|
b12ee503f7
|
The tblgen'erated asmparser wants a way to print operands.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15392 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 07:43:46 +00:00 |
|
Chris Lattner
|
3fa861ac6c
|
Rename the Printer class -> X86AsmPrinter.
Include the tablegenerated assembly writer.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15389 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 06:02:08 +00:00 |
|
Chris Lattner
|
8f945d7756
|
Factor a bunch of the rules and add support for generating the asmwriter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15388 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 06:01:32 +00:00 |
|
Chris Lattner
|
96563df090
|
Specify an asm string and operands lists for a bunch of instructions.
This only really covers no-operand instructions so far.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15387 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 06:01:00 +00:00 |
|
Chris Lattner
|
1ab7c5b5e8
|
Completely disable the pattern isel until it is more substantial.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15380 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 03:28:02 +00:00 |
|
Chris Lattner
|
4ad25e432d
|
Entirely eliminate all patterns and expanders from this file. We shall go
with an incremental approach rather than a revolutionary approach.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15379 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 03:25:01 +00:00 |
|
Chris Lattner
|
bb737edcc3
|
Remove obsolete file
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15377 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-08-01 03:19:28 +00:00 |
|
Alkis Evlogimenos
|
31e155e610
|
Align breaks.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15371 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 10:05:44 +00:00 |
|
Chris Lattner
|
167cf33e1d
|
Add breaks
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15365 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 09:53:31 +00:00 |
|
Alkis Evlogimenos
|
6103c1703c
|
Simplify code a bit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15364 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 09:44:32 +00:00 |
|
Alkis Evlogimenos
|
02a453074d
|
Correctly spell 'unconditional'.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15363 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 09:41:44 +00:00 |
|
Alkis Evlogimenos
|
36f506eddb
|
Implement insertGoto and reverseBranchCondition for the X86.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15362 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 09:38:47 +00:00 |
|
Chris Lattner
|
62cce39515
|
Mark barrier instructions. Execution does not fall through uncond branches
or return intructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15356 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-31 02:10:53 +00:00 |
|
Misha Brukman
|
8606aea117
|
Fix indentation: should be 2 spaces.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15240 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-26 18:48:58 +00:00 |
|
Misha Brukman
|
91b5ca838a
|
Fix file header as it has been renamed.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15239 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-26 18:45:48 +00:00 |
|
Misha Brukman
|
c6d398abbb
|
Renamed files to have the `X86' prefix for uniqueness purposes.
All CVS history was renamed, the *,v were copied over. No worries.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15238 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-26 18:43:11 +00:00 |
|
Chris Lattner
|
cc46c4fcee
|
Remove some (LARGE) abandoned code for the release. If this is ever needed
again in the future, it can be resurrected out of CVS
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15112 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-22 21:30:35 +00:00 |
|
Chris Lattner
|
3dbb504081
|
Fix cases where we generated horrible code like this:
mov %EDI, 12
add %EDI, %ECX
mov %ECX, 12
add %ECX, %EDX
mov %EDX, 12
add %EDX, %ESI
instead (really!) generate this:
add %ECX, 12
add %EDX, 12
add %ESI, 12
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15090 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-21 21:28:26 +00:00 |
|
Chris Lattner
|
4771288fe3
|
While I'm at it, don't break codegen of mul by 3,5,9.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15013 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-19 23:50:57 +00:00 |
|
Chris Lattner
|
596b97f1ab
|
Generate better code for multiplies by negative constants like -4, -1, -9, etc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@15012 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-19 23:47:21 +00:00 |
|
Reid Spencer
|
8863f1814b
|
bug 122:
- Replace ConstantPointerRef usage with GlobalValue usage
- Minimize redundant isa<GlobalValue> usage
- Correct isa<Constant> for GlobalValue subclass
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14950 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-18 00:38:32 +00:00 |
|
Chris Lattner
|
42df461c90
|
Make sure to emit the immediate byte for instructions like:
shrd [mem], reg, imm
This fixes the jit-ls failure on 186.crafty.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14914 91177308-0d34-0410-b5e6-96231b3b80d8
|
2004-07-17 20:26:14 +00:00 |
|