mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 19:12:56 +02:00
Add callseq_begin/end support
Call stil not supported yet llvm-svn: 22998
This commit is contained in:
parent
64f7f0beac
commit
f034da3bd4
@ -920,6 +920,16 @@ SDOperand PPC32DAGToDAGISel::Select(SDOperand Op) {
|
||||
AddrOp1, AddrOp2, Select(N->getOperand(0)));
|
||||
break;
|
||||
}
|
||||
|
||||
case ISD::CALLSEQ_START:
|
||||
case ISD::CALLSEQ_END: {
|
||||
unsigned Amt = cast<ConstantSDNode>(N->getOperand(1))->getValue();
|
||||
unsigned Opc = N->getOpcode() == ISD::CALLSEQ_START ?
|
||||
PPC::ADJCALLSTACKDOWN : PPC::ADJCALLSTACKUP;
|
||||
CurDAG->SelectNodeTo(N, MVT::Other, Opc, Select(N->getOperand(0)),
|
||||
getI32Imm(Amt));
|
||||
break;
|
||||
}
|
||||
case ISD::RET: {
|
||||
SDOperand Chain = Select(N->getOperand(0)); // Token chain.
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user