[llvm] Fix https://github.com/llvm/llvm-project/issues/75998 (PR #82661)
Eli Friedman via llvm-commits
llvm-commits at lists.llvm.org
Thu Feb 22 14:21:05 PST 2024
================
@@ -369,7 +369,8 @@ def hGPR : RegisterClass<"ARM", [i32], 32, (sub GPR, tGPR)> {
def tcGPR : RegisterClass<"ARM", [i32], 32, (add R0, R1, R2, R3, R12)> {
let AltOrders = [(and tcGPR, tGPR)];
let AltOrderSelect = [{
- return MF.getSubtarget<ARMSubtarget>().isThumb1Only();
+ return MF.getSubtarget<ARMSubtarget>().isThumb1Only() ||
+ MF.getInfo<ARMFunctionInfo>()->shouldSignReturnAddress(true);
----------------
efriedma-quic wrote:
This looks like the same check we do in ARMTargetLowering::IsEligibleForTailCallOptimization; can we unify them, so it's clear they're checking the same thing?
https://github.com/llvm/llvm-project/pull/82661
More information about the llvm-commits
mailing list