[llvm-commits] CVS: llvm/lib/Target/X86/X86ISelLowering.cpp X86InstrInfo.td
Nate Begeman
natebegeman at mac.com
Fri Jan 13 19:14:26 PST 2006
Changes in directory llvm/lib/Target/X86:
X86ISelLowering.cpp updated: 1.40 -> 1.41
X86InstrInfo.td updated: 1.204 -> 1.205
---
Log message:
bswap implementation
---
Diffs of the changes: (+5 -1)
X86ISelLowering.cpp | 2 ++
X86InstrInfo.td | 4 +++-
2 files changed, 5 insertions(+), 1 deletion(-)
Index: llvm/lib/Target/X86/X86ISelLowering.cpp
diff -u llvm/lib/Target/X86/X86ISelLowering.cpp:1.40 llvm/lib/Target/X86/X86ISelLowering.cpp:1.41
--- llvm/lib/Target/X86/X86ISelLowering.cpp:1.40 Fri Jan 13 13:51:46 2006
+++ llvm/lib/Target/X86/X86ISelLowering.cpp Fri Jan 13 21:14:10 2006
@@ -109,6 +109,7 @@
setOperationAction(ISD::READCYCLECOUNTER , MVT::i64 , Custom);
if (!X86DAGIsel) {
+ setOperationAction(ISD::BSWAP , MVT::i32 , Expand);
setOperationAction(ISD::ROTL , MVT::i8 , Expand);
setOperationAction(ISD::ROTR , MVT::i8 , Expand);
setOperationAction(ISD::ROTL , MVT::i16 , Expand);
@@ -116,6 +117,7 @@
setOperationAction(ISD::ROTL , MVT::i32 , Expand);
setOperationAction(ISD::ROTR , MVT::i32 , Expand);
}
+ setOperationAction(ISD::BSWAP , MVT::i16 , Expand);
setOperationAction(ISD::READIO , MVT::i1 , Expand);
setOperationAction(ISD::READIO , MVT::i8 , Expand);
Index: llvm/lib/Target/X86/X86InstrInfo.td
diff -u llvm/lib/Target/X86/X86InstrInfo.td:1.204 llvm/lib/Target/X86/X86InstrInfo.td:1.205
--- llvm/lib/Target/X86/X86InstrInfo.td:1.204 Fri Jan 13 19:18:49 2006
+++ llvm/lib/Target/X86/X86InstrInfo.td Fri Jan 13 21:14:10 2006
@@ -518,7 +518,9 @@
let isTwoAddress = 1 in // R32 = bswap R32
def BSWAP32r : I<0xC8, AddRegFrm,
- (ops R32:$dst, R32:$src), "bswap{l} $dst", []>, TB;
+ (ops R32:$dst, R32:$src),
+ "bswap{l} $dst",
+ [(set R32:$dst, (bswap R32:$src))]>, TB;
def XCHG8rr : I<0x86, MRMDestReg, // xchg R8, R8
(ops R8:$src1, R8:$src2),
More information about the llvm-commits
mailing list