diff options
| author | Evan Cheng <evan.cheng@apple.com> | 2005-12-15 08:31:04 +0000 |
|---|---|---|
| committer | Evan Cheng <evan.cheng@apple.com> | 2005-12-15 08:31:04 +0000 |
| commit | 305c6a73b5db91ea145b6120753482bd8ad6bcde (patch) | |
| tree | 49e4fd7d58813fc8001030bb5cbd6bf513f79b02 /llvm/lib | |
| parent | a2ebc628624956b32decb4c1c4a0957b547792e4 (diff) | |
| download | bcm5719-llvm-305c6a73b5db91ea145b6120753482bd8ad6bcde.tar.gz bcm5719-llvm-305c6a73b5db91ea145b6120753482bd8ad6bcde.zip | |
Added frameindex, constpool, globaladdr, and externalsym as root nodes of
leaaddr.
llvm-svn: 24724
Diffstat (limited to 'llvm/lib')
| -rw-r--r-- | llvm/lib/Target/X86/X86InstrInfo.td | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/llvm/lib/Target/X86/X86InstrInfo.td b/llvm/lib/Target/X86/X86InstrInfo.td index 826ea412141..10c9d487ef3 100644 --- a/llvm/lib/Target/X86/X86InstrInfo.td +++ b/llvm/lib/Target/X86/X86InstrInfo.td @@ -48,7 +48,9 @@ def brtarget : Operand<OtherVT>; // Define X86 specific addressing mode. def addr : ComplexPattern<i32, 4, "SelectAddr", []>; -def leaaddr : ComplexPattern<i32, 4, "SelectLEAAddr", [add]>; +def leaaddr : ComplexPattern<i32, 4, "SelectLEAAddr", + [add, + frameindex, constpool, globaladdr, externalsym]>; // Format specifies the encoding used by the instruction. This is part of the // ad-hoc solution used to emit machine instruction encodings by our machine @@ -327,7 +329,6 @@ def LEA32r : I<0x8D, MRMSrcMem, "lea{l} {$src|$dst}, {$dst|$src}", [(set R32:$dst, leaaddr:$src)]>; - def REP_MOVSB : I<0xA4, RawFrm, (ops), "{rep;movsb|rep movsb}", []>, Imp<[ECX,EDI,ESI], [ECX,EDI,ESI]>, REP; def REP_MOVSW : I<0xA5, RawFrm, (ops), "{rep;movsw|rep movsw}", []>, |

