diff options
author | Akira Hatanaka <ahatanaka@mips.com> | 2011-12-20 23:56:43 +0000 |
---|---|---|
committer | Akira Hatanaka <ahatanaka@mips.com> | 2011-12-20 23:56:43 +0000 |
commit | 4706ac97156747f41e556d7c690b1ee5955d5c14 (patch) | |
tree | c35f437be5422e80a9b851103c1251104cc01cf4 /llvm/lib/Target/Mips/MipsISelLowering.cpp | |
parent | 5bc5a76d9b1c5cbf6c579d7f858141a7ccfc6c38 (diff) | |
download | bcm5719-llvm-4706ac97156747f41e556d7c690b1ee5955d5c14.tar.gz bcm5719-llvm-4706ac97156747f41e556d7c690b1ee5955d5c14.zip |
Add definition of DSBH (Double Swap Bytes within Halfwords) and
DSHD (Double Swap Halfwords within Doublewords). Add a pattern which replaces
64-bit bswap with a DSBH and DSHD pair.
llvm-svn: 147017
Diffstat (limited to 'llvm/lib/Target/Mips/MipsISelLowering.cpp')
-rw-r--r-- | llvm/lib/Target/Mips/MipsISelLowering.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/Target/Mips/MipsISelLowering.cpp b/llvm/lib/Target/Mips/MipsISelLowering.cpp index cfdce3a447f..d0ee632db74 100644 --- a/llvm/lib/Target/Mips/MipsISelLowering.cpp +++ b/llvm/lib/Target/Mips/MipsISelLowering.cpp @@ -221,8 +221,10 @@ MipsTargetLowering(MipsTargetMachine &TM) if (!Subtarget->hasBitCount()) setOperationAction(ISD::CTLZ, MVT::i32, Expand); - if (!Subtarget->hasSwap()) + if (!Subtarget->hasSwap()) { setOperationAction(ISD::BSWAP, MVT::i32, Expand); + setOperationAction(ISD::BSWAP, MVT::i64, Expand); + } setTargetDAGCombine(ISD::ADDE); setTargetDAGCombine(ISD::SUBE); |