Chris Lattner
|
e9e2d51853
|
add a class for _REV nodes.
llvm-svn: 115748
|
2010-10-06 05:35:22 +00:00 |
|
Chris Lattner
|
88ccb4e6b5
|
sink more intelligence into the ITy base class. Now it knows
that i8 operations are even and i16,i32,i64 operations have a
low opcode bit set (they are odd).
llvm-svn: 115747
|
2010-10-06 05:28:38 +00:00 |
|
Chris Lattner
|
96dd50c055
|
refactor things a bit, now the REX_W and OpSize prefix bytes are inferred from the type info.
llvm-svn: 115745
|
2010-10-06 05:20:57 +00:00 |
|
Chris Lattner
|
7956e6b995
|
with tblgen suitably extended, we can now get the load node from typeinfo.
llvm-svn: 115744
|
2010-10-06 04:58:43 +00:00 |
|
Chris Lattner
|
5b3e46bd6b
|
lets go all meta and define new X86 type wrappers that declare the associated
gunk that goes along with an MVT (e.g. reg class, preferred load operation,
memory operand)
llvm-svn: 115727
|
2010-10-06 00:45:24 +00:00 |
|
Chris Lattner
|
e979874e3f
|
introduce a new BinOpRM class and use it to factor AND*rm. This points out
that I need a heavier handed approach to get ultimate factorization.
llvm-svn: 115726
|
2010-10-06 00:30:49 +00:00 |
|
Chris Lattner
|
12274b9845
|
allow !strconcat to take more than two operands to eliminate
!strconcat(!strconcat(!strconcat(!strconcat
Simplify some x86 td files to use it.
llvm-svn: 115719
|
2010-10-05 23:58:18 +00:00 |
|
Chris Lattner
|
dd8227d488
|
associate the instruction suffix letter with the integer gpr
register class, and use this to simplify use of BinOpRR.
llvm-svn: 115716
|
2010-10-05 23:43:04 +00:00 |
|
Chris Lattner
|
dd4c597e38
|
introduce a new BinOpRR class, and convert 4 and instructions to use it.
llvm-svn: 115715
|
2010-10-05 23:32:05 +00:00 |
|
Chris Lattner
|
ca34143ddd
|
Replace a gross hack (the MOV64ri_alt instruction) with a slightly less
gross hack (having the asmmatcher handle the alias).
llvm-svn: 115685
|
2010-10-05 21:09:45 +00:00 |
|
Chris Lattner
|
5d7d5a81eb
|
distribute the rest of the contents of X86Instr64bit.td out to
the right places. X86Instr64bit.td now dies, long live x86-64!
llvm-svn: 115669
|
2010-10-05 20:49:15 +00:00 |
|
Chris Lattner
|
c06e348ff8
|
move the rest of the simple 64-bit arithmetic into InstrArithmetic.td
llvm-svn: 115663
|
2010-10-05 20:35:37 +00:00 |
|
Chris Lattner
|
80ffcbd80a
|
continue moving 64-bit stuff into X86InstrArithmetic.td
llvm-svn: 115660
|
2010-10-05 20:23:31 +00:00 |
|
Chris Lattner
|
aae0403342
|
move 64-bit add and adc to InstrArithmetic.
llvm-svn: 115632
|
2010-10-05 16:59:08 +00:00 |
|
Chris Lattner
|
f5f0742885
|
rewrote two addr constraints so that they are only set, not set and then nestedly cleared.
llvm-svn: 115631
|
2010-10-05 16:52:25 +00:00 |
|
Chris Lattner
|
cdf60fcc21
|
split the 32-bit integer arithmetic instructions out to their own file.
llvm-svn: 115627
|
2010-10-05 16:39:12 +00:00 |
|