[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 Jose E. Marchesi changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #8 from Jose E. Marchesi --- Thanks for confirming. Resolving as fixed.
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 --- Comment #7 from Kris Van Hees --- Confirmed that it resolves the issue Thanks!
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 --- Comment #6 from Jose E. Marchesi --- Hello Kris. The commit above (now in gcc master) should fix the issue. Can you please confirm? Thanks!
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 --- Comment #5 from CVS Commits --- The master branch has been updated by Jose E. Marchesi : https://gcc.gnu.org/g:53d12ecd624ec901d8449cfa1917f6f90e910927 commit r14-2522-g53d12ecd624ec901d8449cfa1917f6f90e910927 Author: Jose E. Marchesi Date: Fri Jul 14 13:54:06 2023 +0200 bpf: enable instruction scheduling This patch adds a dummy FSM to bpf.md in order to get INSN_SCHEDULING defined. If the later is not defined, the `combine' pass generates paradoxical subregs of mems, which seems to then be mishandled by LRA, resulting in invalid code. Tested in bpf-unknown-none. gcc/ChangeLog: 2023-07-14 Jose E. Marchesi PR target/110657 * config/bpf/bpf.md: Enable instruction scheduling.
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 --- Comment #4 from Jose E. Marchesi --- Looks like `combine' is generating paradoxical subregs of mems, which seem to confuse LRA and these weird incorrect reloads end up being generated. The easiest fix for this is to make the backend to use the instruction scheduler, which makes `combine' to not generate such subregs.
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 Jose E. Marchesi changed: What|Removed |Added Last reconfirmed||2023-07-13 Ever confirmed|0 |1 Status|UNCONFIRMED |ASSIGNED --- Comment #3 from Jose E. Marchesi --- Thanks. Confirmed with master bpf-unknown-gcc: stxb[%fp+-20],%r7 ldxw%r7,[%fp+-20]
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 --- Comment #2 from Kris Van Hees --- Created attachment 55536 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55536=edit Pre-processed source file
[Bug target/110657] BPF verifier rejects generated code due to invalid stack access
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110657 Jose E. Marchesi changed: What|Removed |Added CC||jemarch at gcc dot gnu.org Assignee|unassigned at gcc dot gnu.org |jemarch at gcc dot gnu.org --- Comment #1 from Jose E. Marchesi --- Can you please provide a pre-processed version of the reproducer? Thanks.