diff options
| author | Anton Korobeynikov <asl@math.spbu.ru> | 2009-05-03 13:14:25 +0000 |
|---|---|---|
| committer | Anton Korobeynikov <asl@math.spbu.ru> | 2009-05-03 13:14:25 +0000 |
| commit | de60d1caefea7f2ac4e9ecc8c32350e732ae6bc1 (patch) | |
| tree | 32e84573b8dc43968900558df32bd3162d8d0a2b | |
| parent | 399ad444fd4c085d98e083701293cb23a6f5db1d (diff) | |
| download | bcm5719-llvm-de60d1caefea7f2ac4e9ecc8c32350e732ae6bc1.tar.gz bcm5719-llvm-de60d1caefea7f2ac4e9ecc8c32350e732ae6bc1.zip | |
Expand muls (all mulls!) to libcalls for now
llvm-svn: 70751
| -rw-r--r-- | llvm/lib/Target/MSP430/MSP430ISelLowering.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp b/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp index 6cc5cd9ebe2..64dffa9e93f 100644 --- a/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp +++ b/llvm/lib/Target/MSP430/MSP430ISelLowering.cpp @@ -78,6 +78,13 @@ MSP430TargetLowering::MSP430TargetLowering(MSP430TargetMachine &tm) : setOperationAction(ISD::SELECT_CC, MVT::Other, Expand); setOperationAction(ISD::SELECT, MVT::i8, Custom); setOperationAction(ISD::SELECT, MVT::i16, Custom); + + // FIXME: Implement efficiently multiplication by a constant + setOperationAction(ISD::MUL, MVT::i16, Expand); + setOperationAction(ISD::MULHS, MVT::i16, Expand); + setOperationAction(ISD::MULHU, MVT::i16, Expand); + setOperationAction(ISD::SMUL_LOHI, MVT::i16, Expand); + setOperationAction(ISD::UMUL_LOHI, MVT::i16, Expand); } SDValue MSP430TargetLowering::LowerOperation(SDValue Op, SelectionDAG &DAG) { |

