[AArch64][PAC] Select MOVK for ptrauth.blend intrinsic.
Blend combines two discriminator values used by other ptrauth ops. On AArch64 here, it does that by replacing the high 16 bits of the LHS with the low 16 bits of the RHS. Usually the RHS is a constant, which lets us do this efficiently in a single MOVK. When the RHS isn't constant, we can do a BFI. In a sense, this is implementing an ABI decision (how to lower the software construct of "blend"), but if there are interesting variants to consider, this could be made object-file-format-specific in some way. Differential Revision: https://reviews.llvm.org/D132384
Loading
Please sign in to comment