Changes in directory llvm/utils/TableGen:
DAGISelEmitter.cpp updated: 1.295 -> 1.296 --- Log message: PredicateOperand related bug fix. --- Diffs of the changes: (+3 -1) DAGISelEmitter.cpp | 4 +++- 1 files changed, 3 insertions(+), 1 deletion(-) Index: llvm/utils/TableGen/DAGISelEmitter.cpp diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.295 llvm/utils/TableGen/DAGISelEmitter.cpp:1.296 --- llvm/utils/TableGen/DAGISelEmitter.cpp:1.295 Tue May 8 16:04:07 2007 +++ llvm/utils/TableGen/DAGISelEmitter.cpp Mon May 14 20:19:51 2007 @@ -2799,6 +2799,7 @@ // in the 'execute always' values. Match up the node operands to the // instruction operands to do this. std::vector<std::string> AllOps; + unsigned NumEAInputs = 0; // # of synthesized 'execute always' inputs. for (unsigned ChildNo = 0, InstOpNo = NumResults; InstOpNo != II.OperandList.size(); ++InstOpNo) { std::vector<std::string> Ops; @@ -2821,6 +2822,7 @@ Ops = EmitResultCode(Pred.AlwaysOps[i], RetSelected, InFlagDecled, ResNodeDecled); AllOps.insert(AllOps.end(), Ops.begin(), Ops.end()); + NumEAInputs += Ops.size(); } } } @@ -2899,7 +2901,7 @@ else if (NodeHasOptInFlag) EndAdjust = "-(HasInFlag?1:0)"; // May have a flag. - emitCode("for (unsigned i = " + utostr(NumInputs) + + emitCode("for (unsigned i = " + utostr(NumInputs - NumEAInputs) + ", e = N.getNumOperands()" + EndAdjust + "; i != e; ++i) {"); emitCode(" AddToISelQueue(N.getOperand(i));"); _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits