mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-02-21 06:30:16 +00:00
add another method variant
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25744 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
9b88361bef
commit
809ec11088
@ -317,7 +317,8 @@ void SelectionDAG::RemoveNodeFromCSEMaps(SDNode *N) {
|
|||||||
Erased = ExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol());
|
Erased = ExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol());
|
||||||
break;
|
break;
|
||||||
case ISD::TargetExternalSymbol:
|
case ISD::TargetExternalSymbol:
|
||||||
Erased = TargetExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol());
|
Erased =
|
||||||
|
TargetExternalSymbols.erase(cast<ExternalSymbolSDNode>(N)->getSymbol());
|
||||||
break;
|
break;
|
||||||
case ISD::VALUETYPE:
|
case ISD::VALUETYPE:
|
||||||
Erased = ValueTypeNodes[cast<VTSDNode>(N)->getVT()] != 0;
|
Erased = ValueTypeNodes[cast<VTSDNode>(N)->getVT()] != 0;
|
||||||
@ -416,7 +417,7 @@ SDNode *SelectionDAG::AddNonLeafNodeToCSEMaps(SDNode *N) {
|
|||||||
} else {
|
} else {
|
||||||
std::vector<SDOperand> Ops(N->op_begin(), N->op_end());
|
std::vector<SDOperand> Ops(N->op_begin(), N->op_end());
|
||||||
SDNode *&ORN = OneResultNodes[std::make_pair(N->getOpcode(),
|
SDNode *&ORN = OneResultNodes[std::make_pair(N->getOpcode(),
|
||||||
std::make_pair(N->getValueType(0), Ops))];
|
std::make_pair(N->getValueType(0), Ops))];
|
||||||
if (ORN) return ORN;
|
if (ORN) return ORN;
|
||||||
ORN = N;
|
ORN = N;
|
||||||
}
|
}
|
||||||
@ -687,7 +688,8 @@ SDOperand SelectionDAG::getExternalSymbol(const char *Sym, MVT::ValueType VT) {
|
|||||||
return SDOperand(N, 0);
|
return SDOperand(N, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
SDOperand SelectionDAG::getTargetExternalSymbol(const char *Sym, MVT::ValueType VT) {
|
SDOperand SelectionDAG::getTargetExternalSymbol(const char *Sym,
|
||||||
|
MVT::ValueType VT) {
|
||||||
SDNode *&N = TargetExternalSymbols[Sym];
|
SDNode *&N = TargetExternalSymbols[Sym];
|
||||||
if (N) return SDOperand(N, 0);
|
if (N) return SDOperand(N, 0);
|
||||||
N = new ExternalSymbolSDNode(true, Sym, VT);
|
N = new ExternalSymbolSDNode(true, Sym, VT);
|
||||||
@ -1727,6 +1729,19 @@ UpdateNodeOperands(SDOperand N, SDOperand Op1, SDOperand Op2,
|
|||||||
return UpdateNodeOperands(N, Ops);
|
return UpdateNodeOperands(N, Ops);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
SDOperand SelectionDAG::
|
||||||
|
UpdateNodeOperands(SDOperand N, SDOperand Op1, SDOperand Op2,
|
||||||
|
SDOperand Op3, SDOperand Op4, SDOperand Op5) {
|
||||||
|
std::vector<SDOperand> Ops;
|
||||||
|
Ops.push_back(Op1);
|
||||||
|
Ops.push_back(Op2);
|
||||||
|
Ops.push_back(Op3);
|
||||||
|
Ops.push_back(Op4);
|
||||||
|
Ops.push_back(Op5);
|
||||||
|
return UpdateNodeOperands(N, Ops);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
SDOperand SelectionDAG::
|
SDOperand SelectionDAG::
|
||||||
UpdateNodeOperands(SDOperand InN, const std::vector<SDOperand> &Ops) {
|
UpdateNodeOperands(SDOperand InN, const std::vector<SDOperand> &Ops) {
|
||||||
SDNode *N = InN.Val;
|
SDNode *N = InN.Val;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user