diff --git a/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp b/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp index d302da74069..d0a544273b8 100644 --- a/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp +++ b/lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp @@ -69,11 +69,6 @@ void AArch64InstPrinter::printInst(const MCInst *MI, raw_ostream &O, return; } - if (atomicBarrierDroppedOnZero(Opcode) && - (MI->getOperand(0).getReg() == AArch64::XZR || - MI->getOperand(0).getReg() == AArch64::WZR)) - printAnnotation(O, "acquire semantics dropped since destination is zero"); - // SBFM/UBFM should print to a nicer aliased form if possible. if (Opcode == AArch64::SBFMXri || Opcode == AArch64::SBFMWri || Opcode == AArch64::UBFMXri || Opcode == AArch64::UBFMWri) { @@ -297,6 +292,12 @@ void AArch64InstPrinter::printInst(const MCInst *MI, raw_ostream &O, printInstruction(MI, STI, O); printAnnotation(O, Annot); + + if (atomicBarrierDroppedOnZero(Opcode) && + (MI->getOperand(0).getReg() == AArch64::XZR || + MI->getOperand(0).getReg() == AArch64::WZR)) { + printAnnotation(O, "acquire semantics dropped since destination is zero"); + } } static bool isTblTbxInstruction(unsigned Opcode, StringRef &Layout,