[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 --- Comment #12 from Jakub Jelinek --- --- gcc/config/rs6000/rs6000.cc.jj 2023-04-04 10:33:47.433201866 +0200 +++ gcc/config/rs6000/rs6000.cc 2023-04-24 12:31:07.237031550 +0200 @@ -11409,7 +11409,16 @@ bool

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 --- Comment #11 from Jakub Jelinek --- I bet the culprit is that *rotl3_mask_dot has (mode == Pmode || UINTVAL (operands[3]) <= 0x7fff) in condition. So, because *branch_anddi3_dot always wants DImode, if Pmode is SImode, it should make

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 --- Comment #10 from Jakub Jelinek --- Ah, but that actually isn't the problem, rather just useless clutter. The problem is that (jump_insn 10 7 32 2 (parallel [ (set (pc) (if_then_else (eq (and:DI (reg:DI 9 9 [121])

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 Jakub Jelinek changed: What|Removed |Added Last reconfirmed||2023-04-24 Ever confirmed|0

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 --- Comment #8 from Jakub Jelinek --- Ah, --target powerpc-rtems6 reproduces it, wonder what is different here. Reduced testcase: void foo (double x) { union { double d; unsigned i; } u; u.d = x; if (u.i & 2146435072) return; else

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread sebastian.huber--- via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 --- Comment #7 from Sebastian Huber --- (In reply to Jakub Jelinek from comment #6) > How have you configured gcc? I certainly can't reproduce this with > --enable-targets=powerpc64-linux,powerpc-linux --with-cpu-32=power7 >

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread jakub at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 Jakub Jelinek changed: What|Removed |Added CC||jakub at gcc dot gnu.org --- Comment

[Bug target/109566] [13/14 Regression] powerpc: unrecognizable insn for -mcpu=e6500, -mcpu=power3, ..., -mcpu=power10

2023-04-24 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109566 Richard Biener changed: What|Removed |Added Target Milestone|--- |13.0 CC|