[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #7 from GCC Commits --- The master branch has been updated by Richard Biener : https://gcc.gnu.org/g:f5bd88b5e874751d17a2f18c1cfc5bd054da8308 commit r15-5524-gf5bd88b5e874751d17a2f18c1cfc5bd054da8308 Author: Richard Biener Date:

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 Richard Biener changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|---

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread ams at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #6 from Andrew Stubbs --- Yes, that fixes the issue, thanks. The only diff in the assembly now, compared to before the "else" patch, is the zero-initialization is gone. This is good; the mysterious extra code seemed like a step back

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #3 from Richard Biener --- I think it also shows that the openMP SIMD handling for the SIMD vars lacks optimization: int D.2004[64]; int D.2003[64]; int D.2001[64]; ... those were supposed to be vector registers in the end,

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rdapp at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #2 from Robin Dapp --- This is the code: vect__23.27_8 = .MASK_GATHER_LOAD (&MEM [(void *)&k + -88B], { 0, -15, -30, -45, -60, -75, -90, -105, -120, -135, -150, -165, -180, -195, -210, -225, -240, -255, -270, -285, -300, -315, -3

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 Richard Biener changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Assignee|unassigned

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread ams at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #4 from Andrew Stubbs --- The mask is a 64-bit integer value in the "exec" register. I agree that I cannot see the problem staring at it. Like I said, I changed the backend so that it generated the zero-initializers anyway, and the

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rdapp at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 --- Comment #1 from Robin Dapp --- We're not emitting the VEC_COND because type_mode_padding_p is false. My check compares the precision of the scalar type vs the precision of the vector mode's inner mode which is both 32 here: int vs E_V64SImod

[Bug target/117709] [15 regression] maskload else case generating wrong code

2024-11-20 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=117709 Richard Biener changed: What|Removed |Added Target Milestone|--- |15.0 Version|unknown