forked from OSchip/llvm-project
parent
960ad9a8ab
commit
ed85e12da6
|
@ -322,8 +322,6 @@ public:
|
|||
unsigned char TargetFlags = 0);
|
||||
SDValue getValueType(EVT);
|
||||
SDValue getRegister(unsigned Reg, EVT VT);
|
||||
SDValue getDbgStopPoint(DebugLoc DL, SDValue Root,
|
||||
unsigned Line, unsigned Col, MDNode *CU);
|
||||
SDValue getLabel(unsigned Opcode, DebugLoc dl, SDValue Root,
|
||||
unsigned LabelID);
|
||||
SDValue getBlockAddress(BlockAddress *BA, EVT VT,
|
||||
|
|
|
@ -546,12 +546,6 @@ namespace ISD {
|
|||
// HANDLENODE node - Used as a handle for various purposes.
|
||||
HANDLENODE,
|
||||
|
||||
// DBG_STOPPOINT - This node is used to represent a source location for
|
||||
// debug info. It takes token chain as input, and carries a line number,
|
||||
// column number, and a pointer to a CompileUnit object identifying
|
||||
// the containing compilation unit. It produces a token chain as output.
|
||||
DBG_STOPPOINT,
|
||||
|
||||
// DEBUG_LOC - This node is used to represent source line information
|
||||
// embedded in the code. It takes a token chain as input, then a line
|
||||
// number, then a column then a file id (provided by MachineModuleInfo.) It
|
||||
|
@ -2004,29 +1998,6 @@ public:
|
|||
}
|
||||
};
|
||||
|
||||
class DbgStopPointSDNode : public SDNode {
|
||||
SDUse Chain;
|
||||
unsigned Line;
|
||||
unsigned Column;
|
||||
MDNode *CU;
|
||||
friend class SelectionDAG;
|
||||
DbgStopPointSDNode(SDValue ch, unsigned l, unsigned c,
|
||||
MDNode *cu)
|
||||
: SDNode(ISD::DBG_STOPPOINT, DebugLoc::getUnknownLoc(),
|
||||
getSDVTList(MVT::Other)), Line(l), Column(c), CU(cu) {
|
||||
InitOperands(&Chain, ch);
|
||||
}
|
||||
public:
|
||||
unsigned getLine() const { return Line; }
|
||||
unsigned getColumn() const { return Column; }
|
||||
MDNode *getCompileUnit() const { return CU; }
|
||||
|
||||
static bool classof(const DbgStopPointSDNode *) { return true; }
|
||||
static bool classof(const SDNode *N) {
|
||||
return N->getOpcode() == ISD::DBG_STOPPOINT;
|
||||
}
|
||||
};
|
||||
|
||||
class BlockAddressSDNode : public SDNode {
|
||||
BlockAddress *BA;
|
||||
unsigned char TargetFlags;
|
||||
|
|
|
@ -158,7 +158,6 @@ private:
|
|||
SDValue EmitStackConvert(SDValue SrcOp, EVT SlotVT, EVT DestVT, DebugLoc dl);
|
||||
SDValue ExpandBUILD_VECTOR(SDNode *Node);
|
||||
SDValue ExpandSCALAR_TO_VECTOR(SDNode *Node);
|
||||
SDValue ExpandDBG_STOPPOINT(SDNode *Node);
|
||||
void ExpandDYNAMIC_STACKALLOC(SDNode *Node,
|
||||
SmallVectorImpl<SDValue> &Results);
|
||||
SDValue ExpandFCOPYSIGN(SDNode *Node);
|
||||
|
@ -1596,37 +1595,6 @@ SDValue SelectionDAGLegalize::ExpandFCOPYSIGN(SDNode* Node) {
|
|||
AbsVal);
|
||||
}
|
||||
|
||||
SDValue SelectionDAGLegalize::ExpandDBG_STOPPOINT(SDNode* Node) {
|
||||
DebugLoc dl = Node->getDebugLoc();
|
||||
DwarfWriter *DW = DAG.getDwarfWriter();
|
||||
bool useDEBUG_LOC = TLI.isOperationLegalOrCustom(ISD::DEBUG_LOC,
|
||||
MVT::Other);
|
||||
bool useLABEL = TLI.isOperationLegalOrCustom(ISD::DBG_LABEL, MVT::Other);
|
||||
|
||||
const DbgStopPointSDNode *DSP = cast<DbgStopPointSDNode>(Node);
|
||||
MDNode *CU_Node = DSP->getCompileUnit();
|
||||
if (DW && (useDEBUG_LOC || useLABEL)) {
|
||||
|
||||
unsigned Line = DSP->getLine();
|
||||
unsigned Col = DSP->getColumn();
|
||||
|
||||
if (OptLevel == CodeGenOpt::None) {
|
||||
// A bit self-referential to have DebugLoc on Debug_Loc nodes, but it
|
||||
// won't hurt anything.
|
||||
if (useDEBUG_LOC) {
|
||||
return DAG.getNode(ISD::DEBUG_LOC, dl, MVT::Other, Node->getOperand(0),
|
||||
DAG.getConstant(Line, MVT::i32),
|
||||
DAG.getConstant(Col, MVT::i32),
|
||||
DAG.getSrcValue(CU_Node));
|
||||
} else {
|
||||
unsigned ID = DW->RecordSourceLine(Line, Col, CU_Node);
|
||||
return DAG.getLabel(ISD::DBG_LABEL, dl, Node->getOperand(0), ID);
|
||||
}
|
||||
}
|
||||
}
|
||||
return Node->getOperand(0);
|
||||
}
|
||||
|
||||
void SelectionDAGLegalize::ExpandDYNAMIC_STACKALLOC(SDNode* Node,
|
||||
SmallVectorImpl<SDValue> &Results) {
|
||||
unsigned SPReg = TLI.getStackPointerRegisterToSaveRestore();
|
||||
|
@ -2282,9 +2250,6 @@ void SelectionDAGLegalize::ExpandNode(SDNode *Node,
|
|||
case ISD::VAEND:
|
||||
Results.push_back(Node->getOperand(0));
|
||||
break;
|
||||
case ISD::DBG_STOPPOINT:
|
||||
Results.push_back(ExpandDBG_STOPPOINT(Node));
|
||||
break;
|
||||
case ISD::DYNAMIC_STACKALLOC:
|
||||
ExpandDYNAMIC_STACKALLOC(Node, Results);
|
||||
break;
|
||||
|
|
|
@ -393,13 +393,7 @@ static void AddNodeIDCustom(FoldingSetNodeID &ID, const SDNode *N) {
|
|||
case ISD::Register:
|
||||
ID.AddInteger(cast<RegisterSDNode>(N)->getReg());
|
||||
break;
|
||||
case ISD::DBG_STOPPOINT: {
|
||||
const DbgStopPointSDNode *DSP = cast<DbgStopPointSDNode>(N);
|
||||
ID.AddInteger(DSP->getLine());
|
||||
ID.AddInteger(DSP->getColumn());
|
||||
ID.AddPointer(DSP->getCompileUnit());
|
||||
break;
|
||||
}
|
||||
|
||||
case ISD::SRCVALUE:
|
||||
ID.AddPointer(cast<SrcValueSDNode>(N)->getValue());
|
||||
break;
|
||||
|
@ -510,7 +504,6 @@ static bool doNotCSE(SDNode *N) {
|
|||
default: break;
|
||||
case ISD::HANDLENODE:
|
||||
case ISD::DBG_LABEL:
|
||||
case ISD::DBG_STOPPOINT:
|
||||
case ISD::EH_LABEL:
|
||||
return true; // Never CSE these nodes.
|
||||
}
|
||||
|
@ -1297,16 +1290,6 @@ SDValue SelectionDAG::getRegister(unsigned RegNo, EVT VT) {
|
|||
return SDValue(N, 0);
|
||||
}
|
||||
|
||||
SDValue SelectionDAG::getDbgStopPoint(DebugLoc DL, SDValue Root,
|
||||
unsigned Line, unsigned Col,
|
||||
MDNode *CU) {
|
||||
SDNode *N = NodeAllocator.Allocate<DbgStopPointSDNode>();
|
||||
new (N) DbgStopPointSDNode(Root, Line, Col, CU);
|
||||
N->setDebugLoc(DL);
|
||||
AllNodes.push_back(N);
|
||||
return SDValue(N, 0);
|
||||
}
|
||||
|
||||
SDValue SelectionDAG::getLabel(unsigned Opcode, DebugLoc dl,
|
||||
SDValue Root,
|
||||
unsigned LabelID) {
|
||||
|
@ -5590,7 +5573,6 @@ std::string SDNode::getOperationName(const SelectionDAG *G) const {
|
|||
case ISD::CTLZ: return "ctlz";
|
||||
|
||||
// Debug info
|
||||
case ISD::DBG_STOPPOINT: return "dbg_stoppoint";
|
||||
case ISD::DEBUG_LOC: return "debug_loc";
|
||||
|
||||
// Trampolines
|
||||
|
|
|
@ -356,7 +356,6 @@ ARMTargetLowering::ARMTargetLowering(TargetMachine &TM)
|
|||
setOperationAction(ISD::UDIVREM, MVT::i32, Expand);
|
||||
|
||||
// Support label based line numbers.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
|
||||
setOperationAction(ISD::GlobalAddress, MVT::i32, Custom);
|
||||
|
|
|
@ -128,7 +128,6 @@ AlphaTargetLowering::AlphaTargetLowering(TargetMachine &TM)
|
|||
setOperationAction(ISD::BIT_CONVERT, MVT::f32, Promote);
|
||||
|
||||
// We don't have line number support yet.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DBG_LABEL, MVT::Other, Expand);
|
||||
setOperationAction(ISD::EH_LABEL, MVT::Other, Expand);
|
||||
|
|
|
@ -115,7 +115,6 @@ BlackfinTargetLowering::BlackfinTargetLowering(TargetMachine &TM)
|
|||
setOperationAction(ISD::READCYCLECOUNTER, MVT::i64, Custom);
|
||||
|
||||
// We don't have line number support yet.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DBG_LABEL, MVT::Other, Expand);
|
||||
setOperationAction(ISD::EH_LABEL, MVT::Other, Expand);
|
||||
|
|
|
@ -388,7 +388,6 @@ SPUTargetLowering::SPUTargetLowering(SPUTargetMachine &TM)
|
|||
setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand);
|
||||
|
||||
// Support label based line numbers.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
|
||||
// We want to legalize GlobalAddress and ConstantPool nodes into the
|
||||
|
|
|
@ -133,7 +133,6 @@ MipsTargetLowering(MipsTargetMachine &TM)
|
|||
setOperationAction(ISD::FEXP, MVT::f32, Expand);
|
||||
|
||||
// We don't have line number support yet.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DBG_LABEL, MVT::Other, Expand);
|
||||
setOperationAction(ISD::EH_LABEL, MVT::Other, Expand);
|
||||
|
|
|
@ -183,7 +183,6 @@ PPCTargetLowering::PPCTargetLowering(PPCTargetMachine &TM)
|
|||
setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Expand);
|
||||
|
||||
// Support label based line numbers.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
|
||||
setOperationAction(ISD::EXCEPTIONADDR, MVT::i64, Expand);
|
||||
|
|
|
@ -645,7 +645,6 @@ SparcTargetLowering::SparcTargetLowering(TargetMachine &TM)
|
|||
setOperationAction(ISD::SMUL_LOHI, MVT::i32, Expand);
|
||||
|
||||
// We don't have line number support yet.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DBG_LABEL, MVT::Other, Expand);
|
||||
setOperationAction(ISD::EH_LABEL, MVT::Other, Expand);
|
||||
|
@ -663,7 +662,6 @@ SparcTargetLowering::SparcTargetLowering(TargetMachine &TM)
|
|||
setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32 , Custom);
|
||||
|
||||
// No debug info support yet.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DBG_LABEL, MVT::Other, Expand);
|
||||
setOperationAction(ISD::EH_LABEL, MVT::Other, Expand);
|
||||
|
||||
|
|
|
@ -373,8 +373,6 @@ X86TargetLowering::X86TargetLowering(X86TargetMachine &TM)
|
|||
setOperationAction(ISD::ATOMIC_SWAP, MVT::i64, Custom);
|
||||
}
|
||||
|
||||
// Use the default ISD::DBG_STOPPOINT.
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
// FIXME - use subtarget debug flags
|
||||
if (!Subtarget->isTargetDarwin() &&
|
||||
!Subtarget->isTargetELF() &&
|
||||
|
|
|
@ -143,7 +143,6 @@ XCoreTargetLowering::XCoreTargetLowering(XCoreTargetMachine &XTM)
|
|||
setOperationAction(ISD::DYNAMIC_STACKALLOC, MVT::i32, Expand);
|
||||
|
||||
// Debug
|
||||
setOperationAction(ISD::DBG_STOPPOINT, MVT::Other, Expand);
|
||||
setOperationAction(ISD::DEBUG_LOC, MVT::Other, Expand);
|
||||
|
||||
maxStoresPerMemset = 4;
|
||||
|
|
Loading…
Reference in New Issue