[AVR] Fix a bug where asm operands are printed twice

We would unconditionally call printOperand, even if PrintAsmOperand
already printed the immediate.

llvm-svn: 294121
This commit is contained in:
Dylan McKay 2017-02-05 10:42:49 +00:00
parent c0fb36f442
commit b78f36657e
2 changed files with 10 additions and 1 deletions

View File

@ -130,7 +130,8 @@ bool AVRAsmPrinter::PrintAsmOperand(const MachineInstr *MI, unsigned OpNum,
}
}
printOperand(MI, OpNum, O);
if (Error)
printOperand(MI, OpNum, O);
return false;
}

View File

@ -0,0 +1,8 @@
; RUN: llc -no-integrated-as -march=avr < %s | FileCheck %s
define void @test() {
entry:
; CHECK: /* result: 68719476738 */
tail call void asm sideeffect "/* result: ${0:c} */", "i,~{dirflag},~{fpsr},~{flags}"( i64 68719476738 )
ret void
}