return;
case MachineOperand::MO_ExternalSymbol:
- O << MO.getSymbolName();
+ if (IsCallOp) {
+ std::string Name(GlobalPrefix); Name += MO.getSymbolName();
+ FnStubs.insert(Name);
+ O << "L" << Name << "$stub";
+ return;
+ }
+ O << GlobalPrefix << MO.getSymbolName();
return;
case MachineOperand::MO_GlobalAddress: {
addRegisterClass(MVT::f32, PPC32::FPRCRegisterClass);
addRegisterClass(MVT::f64, PPC32::FPRCRegisterClass);
+ setOperationAction(ISD::MEMMOVE, MVT::Other, Expand);
+ setOperationAction(ISD::MEMSET, MVT::Other, Expand);
+ setOperationAction(ISD::MEMCPY, MVT::Other, Expand);
+
computeRegisterProperties();
}
std::pair<SDOperand, SDOperand> PPC32TargetLowering::
LowerFrameReturnAddress(bool isFrameAddress, SDOperand Chain, unsigned Depth,
SelectionDAG &DAG) {
+ assert(0 && "LowerFrameReturnAddress unimplemented");
abort();
}
case ISD::FP_TO_UINT:
case ISD::FP_TO_SINT:
+ assert(0 && "FP_TO_S/UINT unimplemented");
abort();
case ISD::SETCC: