================
@@ -2497,7 +2497,8 @@ AArch64FrameLowering::getFrameIndexReference(const 
MachineFunction &MF, int FI,
   return resolveFrameIndexReference(
       MF, FI, FrameReg,
       /*PreferFP=*/
-      MF.getFunction().hasFnAttribute(Attribute::SanitizeHWAddress),
+      MF.getFunction().hasFnAttribute(Attribute::SanitizeHWAddress) ||
+          MF.getFunction().hasFnAttribute(Attribute::SanitizeMemTag),
       /*ForSimm=*/false);
----------------
fmayer wrote:

I don't think that makes a difference. I compiled a [moderately complicated 
file from 
AOSP](https://cs.android.com/android/platform/superproject/main/+/main:system/unwinding/libunwindstack/Unwinder.cpp)
 with memtag-stack and without this change (and with and without the 
`-stack-tagging-record-stack-history=instr`), and the assembly is the same.

The docstring "getFrameIndexReference - Provide a base+offset reference to an 
FI slot for debug info." also implies this shouldn't affect codegen.

https://github.com/llvm/llvm-project/pull/86356
_______________________________________________
llvm-branch-commits mailing list
llvm-branch-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits

Reply via email to