Chris Lattner
|
a38c707d82
|
generalize EmitDisplacementField to work with any size
and rename it to EmitImmediate.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95859 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-11 06:54:23 +00:00 |
|
Chris Lattner
|
0e410918b8
|
eliminate the dead IsPCRel argument.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95858 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-11 06:51:36 +00:00 |
|
Chris Lattner
|
1b67060645
|
eliminate the dead "PCAdj" logic.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95857 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-11 06:49:52 +00:00 |
|
Chris Lattner
|
5dccfadbf4
|
emit some simple (and probably incorrect) fixups for symbolic
displacement values.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95773 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-10 06:52:12 +00:00 |
|
Chris Lattner
|
37ce80eca3
|
keep track of what the current byte being emitted is
throughout the X86 encoder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95771 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-10 06:41:02 +00:00 |
|
Chris Lattner
|
8496a26113
|
simplify displacement handling, emit displacements by-operand
even for the immediate case. No functionality change.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95770 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-10 06:30:00 +00:00 |
|
Daniel Dunbar
|
73c557458c
|
MC: First cut at MCFixup, for getting fixup/relocation information out of an MCCodeEmitter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95708 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-09 22:59:55 +00:00 |
|
Chris Lattner
|
a8168ec732
|
port encoder enhancements over to the new encoder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95699 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-09 21:57:34 +00:00 |
|
Chris Lattner
|
faa75f6f6f
|
add note.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95445 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 22:48:33 +00:00 |
|
Chris Lattner
|
39a612e6f9
|
port X86InstrInfo::determineREX over to the new encoder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95440 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 22:10:22 +00:00 |
|
Chris Lattner
|
00cb3fe786
|
wire up 64-bit MCCodeEmitter.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95438 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 21:51:35 +00:00 |
|
Chris Lattner
|
be1778fea7
|
really kill off the last MRMInitReg inst, remove logic from encoder.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95437 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 21:34:18 +00:00 |
|
Chris Lattner
|
82ed17eb47
|
implement the rest of the encoding types.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95414 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 19:37:31 +00:00 |
|
Chris Lattner
|
74a2151392
|
move functions for decoding X86II values into the X86II namespace.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95410 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 19:24:13 +00:00 |
|
Chris Lattner
|
a3a0db0121
|
change getSizeOfImm and getBaseOpcodeFor to just take
TSFlags directly instead of a TargetInstrDesc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95405 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 19:16:26 +00:00 |
|
Chris Lattner
|
daa4555793
|
add some more encodings.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95403 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 19:04:37 +00:00 |
|
Chris Lattner
|
0e73c39c70
|
implement the non-relocation forms of memory operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95368 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 06:16:07 +00:00 |
|
Chris Lattner
|
1ac23b1038
|
start adding MRMDestMem, which requires memory form mod/rm encoding
to start limping.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95350 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 02:18:40 +00:00 |
|
Chris Lattner
|
28249d98e1
|
Add a few more encodings, we can now encode all of:
pushl %ebp
movl %esp, %ebp
movl $42, %eax
popl %ebp
ret
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95344 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-05 01:53:19 +00:00 |
|
Chris Lattner
|
1e80f403e2
|
enhance new encoder to support prefixes + RawFrm
instructions with no operands. It can now handle
define void @test2() nounwind { ret void }
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95261 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-03 21:57:59 +00:00 |
|
Chris Lattner
|
92b1dfe5d8
|
set up some infrastructure, some minor cleanups.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95260 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-03 21:43:43 +00:00 |
|
Chris Lattner
|
4576247928
|
stub out a new X86 encoder, which can be tried with
-enable-new-x86-encoder until its stable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@95256 91177308-0d34-0410-b5e6-96231b3b80d8
|
2010-02-03 21:24:49 +00:00 |
|