Skip to content

Commit fce0b3c

Browse files
committed
AUTH_TCRETURN: Constrain call target operand instead of AddrDisc
1 parent 0268b5b commit fce0b3c

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

llvm/lib/Target/AArch64/AArch64InstrInfo.td

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1973,8 +1973,8 @@ let Predicates = [HasPAuth] in {
19731973
let isCall = 1, isTerminator = 1, isReturn = 1, isBarrier = 1, Size = 16,
19741974
Uses = [SP] in {
19751975
def AUTH_TCRETURN
1976-
: Pseudo<(outs), (ins tcGPR64:$dst, i32imm:$FPDiff, i32imm:$Key,
1977-
i64imm:$Disc, tcGPRnotx16x17:$AddrDisc),
1976+
: Pseudo<(outs), (ins tcGPRnotx16x17:$dst, i32imm:$FPDiff, i32imm:$Key,
1977+
i64imm:$Disc, tcGPR64:$AddrDisc),
19781978
[]>, Sched<[WriteBrReg]>;
19791979
def AUTH_TCRETURN_BTI
19801980
: Pseudo<(outs), (ins tcGPRx16x17:$dst, i32imm:$FPDiff, i32imm:$Key,
@@ -1983,10 +1983,10 @@ let Predicates = [HasPAuth] in {
19831983
}
19841984

19851985
let Predicates = [TailCallAny] in
1986-
def : Pat<(AArch64authtcret tcGPR64:$dst, (i32 timm:$FPDiff), (i32 timm:$Key),
1987-
(i64 timm:$Disc), tcGPRnotx16x17:$AddrDisc),
1988-
(AUTH_TCRETURN tcGPR64:$dst, imm:$FPDiff, imm:$Key, imm:$Disc,
1989-
tcGPRnotx16x17:$AddrDisc)>;
1986+
def : Pat<(AArch64authtcret tcGPRnotx16x17:$dst, (i32 timm:$FPDiff), (i32 timm:$Key),
1987+
(i64 timm:$Disc), tcGPR64:$AddrDisc),
1988+
(AUTH_TCRETURN tcGPRnotx16x17:$dst, imm:$FPDiff, imm:$Key, imm:$Disc,
1989+
tcGPR64:$AddrDisc)>;
19901990

19911991
let Predicates = [TailCallX16X17] in
19921992
def : Pat<(AArch64authtcret tcGPRx16x17:$dst, (i32 timm:$FPDiff),

0 commit comments

Comments
 (0)