Pass all the flags to the asm printer, not just the # operands.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26362 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Chris Lattner 2006-02-24 19:50:58 +00:00
parent fd6d282a71
commit daf6bc6347
2 changed files with 5 additions and 3 deletions

View File

@ -575,8 +575,10 @@ void AsmPrinter::printInlineAsm(const MachineInstr *MI) const {
unsigned OpNo = 1;
// Scan to find the machine operand number for the operand.
for (; Val; --Val)
OpNo += MI->getOperand(OpNo).getImmedValue()+1;
for (; Val; --Val) {
unsigned OpFlags = MI->getOperand(OpNo).getImmedValue();
OpNo += (OpFlags >> 3) + 1;
}
++OpNo; // Skip over the ID number.

View File

@ -328,7 +328,7 @@ void ScheduleDAG::EmitNode(NodeInfo *NI) {
unsigned Flags = cast<ConstantSDNode>(Node->getOperand(i))->getValue();
unsigned NumVals = Flags >> 3;
MI->addZeroExtImm64Operand(NumVals);
MI->addZeroExtImm64Operand(Flags);
++i; // Skip the ID value.
switch (Flags & 7) {