Changes in directory llvm/utils/TableGen:
DAGISelEmitter.cpp updated: 1.296 -> 1.297 --- Log message: Fix CodeGen/PowerPC/2007-05-14-InlineAsmSelectCrash.ll, the other recent patches are also needed. --- Diffs of the changes: (+7 -5) DAGISelEmitter.cpp | 12 +++++++----- 1 files changed, 7 insertions(+), 5 deletions(-) Index: llvm/utils/TableGen/DAGISelEmitter.cpp diff -u llvm/utils/TableGen/DAGISelEmitter.cpp:1.296 llvm/utils/TableGen/DAGISelEmitter.cpp:1.297 --- llvm/utils/TableGen/DAGISelEmitter.cpp:1.296 Mon May 14 20:19:51 2007 +++ llvm/utils/TableGen/DAGISelEmitter.cpp Mon May 14 20:36:44 2007 @@ -3685,11 +3685,12 @@ // Emit boilerplate. OS << "SDNode *Select_INLINEASM(SDOperand N) {\n" << " std::vector<SDOperand> Ops(N.Val->op_begin(), N.Val->op_end());\n" - << " AddToISelQueue(N.getOperand(0)); // Select the chain.\n\n" - << " // Select the flag operand.\n" - << " if (Ops.back().getValueType() == MVT::Flag)\n" - << " AddToISelQueue(Ops.back());\n" - << " SelectInlineAsmMemoryOperands(Ops, *CurDAG);\n" + << " SelectInlineAsmMemoryOperands(Ops, *CurDAG);\n\n" + + << " // Ensure that the asm operands are themselves selected.\n" + << " for (unsigned j = 0, e = Ops.size(); j != e; ++j)\n" + << " AddToISelQueue(Ops[j]);\n\n" + << " std::vector<MVT::ValueType> VTs;\n" << " VTs.push_back(MVT::Other);\n" << " VTs.push_back(MVT::Flag);\n" @@ -3725,6 +3726,7 @@ << " case ISD::TargetConstant:\n" << " case ISD::TargetConstantPool:\n" << " case ISD::TargetFrameIndex:\n" + << " case ISD::TargetExternalSymbol:\n" << " case ISD::TargetJumpTable:\n" << " case ISD::TargetGlobalTLSAddress:\n" << " case ISD::TargetGlobalAddress: {\n" _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits