mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-22 18:54:02 +01:00
Pass N by reference to select functions to prevent gcc from allocating more stack.
llvm-svn: 29423
This commit is contained in:
parent
c1483b5e72
commit
64b9364083
@ -1829,7 +1829,7 @@ static void GenerateVariantsOf(TreePatternNode *N,
|
||||
// If this node is commutative, consider the commuted order.
|
||||
if (NodeInfo.hasProperty(SDNodeInfo::SDNPCommutative)) {
|
||||
assert(N->getNumChildren()==2 &&"Commutative but doesn't have 2 children!");
|
||||
// Don't count childrean which are actually
|
||||
// Don't count children which are actually register references.
|
||||
unsigned NC = 0;
|
||||
for (unsigned i = 0, e = N->getNumChildren(); i != e; ++i) {
|
||||
TreePatternNode *Child = N->getChild(i);
|
||||
@ -3321,7 +3321,7 @@ void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) {
|
||||
}
|
||||
|
||||
std::string CalleeDecls;
|
||||
std::string CalleeCode = "(SDOperand &Result, SDOperand &N";
|
||||
std::string CalleeCode = "(SDOperand &Result, const SDOperand &N";
|
||||
std::string CallerCode = "(Result, N";
|
||||
for (unsigned j = 0, e = TargetOpcodes.size(); j != e; ++j) {
|
||||
CalleeCode += ", unsigned Opc" + utostr(j);
|
||||
@ -3399,7 +3399,7 @@ void DAGISelEmitter::EmitInstructionSelector(std::ostream &OS) {
|
||||
OpVTI->second.push_back(OpVTStr);
|
||||
|
||||
OS << "void Select_" << OpName << (OpVTStr != "" ? "_" : "")
|
||||
<< OpVTStr << "(SDOperand &Result, SDOperand N) {\n";
|
||||
<< OpVTStr << "(SDOperand &Result, const SDOperand &N) {\n";
|
||||
if (OptSlctOrder) {
|
||||
OS << " if (N.ResNo == " << OpcodeInfo.getNumResults()
|
||||
<< " && N.getValue(0).hasOneUse()) {\n"
|
||||
|
Loading…
Reference in New Issue
Block a user