public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function. @ 2024-02-06 4:55 belagod at gcc dot gnu.org 2024-02-06 4:56 ` [Bug target/113780] " belagod at gcc dot gnu.org ` (5 more replies) 0 siblings, 6 replies; 7+ messages in thread From: belagod at gcc dot gnu.org @ 2024-02-06 4:55 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 Bug ID: 113780 Summary: [ARM] Incorrect indirect tailcall generated for PAC-enabled function. Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: belagod at gcc dot gnu.org Target Milestone: --- For this piece of code: void fail(void (*f)(int, int, int, int)) { f(1, 2, 3, 4); } compiled with -mcpu=cortex-m85 -mbranch-protection=pac-ret+leaf -O2 on trunk, it generates: fail: pac ip, lr, sp movs r3, #4 movs r2, #3 movs r1, #2 movs r0, #1 push {ip, lr} pop {ip, lr} aut ip, lr, sp bx ip @ indirect register sibling call ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org @ 2024-02-06 4:56 ` belagod at gcc dot gnu.org 2024-02-06 4:57 ` belagod at gcc dot gnu.org ` (4 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: belagod at gcc dot gnu.org @ 2024-02-06 4:56 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 Tejas Belagod <belagod at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|unassigned at gcc dot gnu.org |belagod at gcc dot gnu.org Last reconfirmed| |2024-02-06 Ever confirmed|0 |1 Status|UNCONFIRMED |NEW ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org 2024-02-06 4:56 ` [Bug target/113780] " belagod at gcc dot gnu.org @ 2024-02-06 4:57 ` belagod at gcc dot gnu.org 2024-02-06 4:58 ` belagod at gcc dot gnu.org ` (3 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: belagod at gcc dot gnu.org @ 2024-02-06 4:57 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 Tejas Belagod <belagod at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org 2024-02-06 4:56 ` [Bug target/113780] " belagod at gcc dot gnu.org 2024-02-06 4:57 ` belagod at gcc dot gnu.org @ 2024-02-06 4:58 ` belagod at gcc dot gnu.org 2024-02-08 11:17 ` rearnsha at gcc dot gnu.org ` (2 subsequent siblings) 5 siblings, 0 replies; 7+ messages in thread From: belagod at gcc dot gnu.org @ 2024-02-06 4:58 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 --- Comment #1 from Tejas Belagod <belagod at gcc dot gnu.org> --- Testing a fix as we speak.. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org ` (2 preceding siblings ...) 2024-02-06 4:58 ` belagod at gcc dot gnu.org @ 2024-02-08 11:17 ` rearnsha at gcc dot gnu.org 2024-02-16 4:14 ` cvs-commit at gcc dot gnu.org 2024-02-16 4:18 ` belagod at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: rearnsha at gcc dot gnu.org @ 2024-02-08 11:17 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 Richard Earnshaw <rearnsha at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |keithp at keithp dot com --- Comment #2 from Richard Earnshaw <rearnsha at gcc dot gnu.org> --- *** Bug 113795 has been marked as a duplicate of this bug. *** ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org ` (3 preceding siblings ...) 2024-02-08 11:17 ` rearnsha at gcc dot gnu.org @ 2024-02-16 4:14 ` cvs-commit at gcc dot gnu.org 2024-02-16 4:18 ` belagod at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: cvs-commit at gcc dot gnu.org @ 2024-02-16 4:14 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 --- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by Tejas Belagod <belagod@gcc.gnu.org>: https://gcc.gnu.org/g:f436a2ab6ad15968275c9bbf3bd56647e5559e68 commit r14-9022-gf436a2ab6ad15968275c9bbf3bd56647e5559e68 Author: Tejas Belagod <tejas.belagod@arm.com> Date: Thu Jan 25 16:05:36 2024 +0530 Arm: Fix incorrect tailcall-generation for indirect calls [PR113780] This patch fixes a bug that causes indirect calls in PAC-enabled functions to be tailcalled incorrectly when all argument registers R0-R3 are used. 2024-02-07 Tejas Belagod <tejas.belagod@arm.com> PR target/113780 * config/arm/arm.cc (arm_function_ok_for_sibcall): Don't allow tailcalls for indirect calls with 4 or more arguments in pac-enabled functions. * lib/target-supports.exp (v8_1m_main_pacbti): Add __ARM_FEATURE_PAUTH. * gcc.target/arm/pac-sibcall.c: New. ^ permalink raw reply [flat|nested] 7+ messages in thread
* [Bug target/113780] [ARM] Incorrect indirect tailcall generated for PAC-enabled function. 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org ` (4 preceding siblings ...) 2024-02-16 4:14 ` cvs-commit at gcc dot gnu.org @ 2024-02-16 4:18 ` belagod at gcc dot gnu.org 5 siblings, 0 replies; 7+ messages in thread From: belagod at gcc dot gnu.org @ 2024-02-16 4:18 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113780 Tejas Belagod <belagod at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Resolution|--- |FIXED Status|ASSIGNED |RESOLVED --- Comment #4 from Tejas Belagod <belagod at gcc dot gnu.org> --- Fixed on trunk ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2024-02-16 4:18 UTC | newest] Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2024-02-06 4:55 [Bug target/113780] New: [ARM] Incorrect indirect tailcall generated for PAC-enabled function belagod at gcc dot gnu.org 2024-02-06 4:56 ` [Bug target/113780] " belagod at gcc dot gnu.org 2024-02-06 4:57 ` belagod at gcc dot gnu.org 2024-02-06 4:58 ` belagod at gcc dot gnu.org 2024-02-08 11:17 ` rearnsha at gcc dot gnu.org 2024-02-16 4:14 ` cvs-commit at gcc dot gnu.org 2024-02-16 4:18 ` belagod at gcc dot gnu.org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).