Lines Matching defs:AddrDisc
177 // The returned register is either unmodified AddrDisc or x16/x17.
179 // If the expanded pseudo is allowed to clobber AddrDisc register, setting
181 // is already in x16/x17 (i.e. return x16/x17 which is the *modified* AddrDisc
191 Register emitPtrauthDiscriminator(uint16_t Disc, Register AddrDisc,
1866 Register AddrDisc,
1871 if (AddrDisc == AArch64::NoRegister)
1872 AddrDisc = AArch64::XZR;
1877 return AddrDisc;
1880 if (AddrDisc == AArch64::XZR) {
1888 assert(MayUseAddrAsScratch || ScratchReg != AddrDisc);
1889 bool AddrDiscIsSafe = AddrDisc == AArch64::X16 || AddrDisc == AArch64::X17;
1891 ScratchReg = AddrDisc;
1893 emitMovXReg(ScratchReg, AddrDisc);
2186 unsigned AddrDisc = MI->getOperand(3).getReg();
2188 // Make sure AddrDisc is solely used to compute the discriminator.
2192 if (BrTarget == AddrDisc)
2196 // implicit-def'ed by the MI and AddrDisc is not used as any other input, so
2200 Register DiscReg = emitPtrauthDiscriminator(Disc, AddrDisc, AArch64::X17,
2340 const unsigned AddrDisc = MI.getOperand(2).getReg();
2495 Register DiscReg = emitPtrauthDiscriminator(Disc, AddrDisc, AArch64::X17);
2782 Register AddrDisc = MI->getOperand(4).getReg();
2789 if (Callee == AddrDisc)
2791 Register DiscReg = emitPtrauthDiscriminator(Disc, AddrDisc, ScratchReg,