File tree Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Expand file tree Collapse file tree 1 file changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -508,10 +508,16 @@ class AArch64MCPlusBuilder : public MCPlusBuilder {
508508 // ldr x1, [x1, #8] ; x1 is overwritten with an unrelated value
509509 // pacdzb x1
510510 //
511+ // ; also bad:
512+ // autdza x1
513+ // pacdzb x1 ; possibly signing the result of failed authentication
514+ //
511515 // Note that this function is not needed for authentication oracles, as the
512516 // particular value left in the register after a successful memory access
513517 // is not important.
514518 auto ClobbersBaseRegExceptWriteback = [&](unsigned BaseRegUseIndex) {
519+ // FIXME: Compute the indices of address operands (base reg and written-
520+ // back result) in AArch64InstrInfo instead of this ad-hoc code.
515521 MCPhysReg BaseReg = Inst.getOperand (BaseRegUseIndex).getReg ();
516522 unsigned WrittenBackDefIndex = Desc.getOperandConstraint (
517523 BaseRegUseIndex, MCOI::OperandConstraint::TIED_TO);
You can’t perform that action at this time.
0 commit comments