mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-03-08 19:36:02 +00:00
Another expansion for i64 multiply, suitable for PPC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@43314 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0bd5fcf49f
commit
8eadd5a6db
@ -5930,6 +5930,15 @@ void SelectionDAGLegalize::ExpandOp(SDOperand Op, SDOperand &Lo, SDOperand &Hi){
|
||||
Hi = DAG.getNode(ISD::ADD, NVT, Hi, LH);
|
||||
break;
|
||||
}
|
||||
if (HasMULHU) {
|
||||
Lo = DAG.getNode(ISD::MUL, NVT, LL, RL);
|
||||
Hi = DAG.getNode(ISD::MULHU, NVT, LL, RL);
|
||||
RH = DAG.getNode(ISD::MUL, NVT, LL, RH);
|
||||
LH = DAG.getNode(ISD::MUL, NVT, LH, RL);
|
||||
Hi = DAG.getNode(ISD::ADD, NVT, Hi, RH);
|
||||
Hi = DAG.getNode(ISD::ADD, NVT, Hi, LH);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
// If nothing else, we can make a libcall.
|
||||
|
Loading…
x
Reference in New Issue
Block a user