[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-20 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #8 from Hongtao.liu --- (In reply to Alexander Monakov from comment #7) > The second sequence is 3 uops vs 1/2 (issued/executed) uops in first, and on > Haswell and Skylake it ties up port 5 for two cycles. > > Unclear if you're

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-20 Thread amonakov at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #7 from Alexander Monakov --- The second sequence is 3 uops vs 1/2 (issued/executed) uops in first, and on Haswell and Skylake it ties up port 5 for two cycles. Unclear if you're microbenchmarking latency or throughput, but in any

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-20 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #6 from Hongtao.liu --- Also notice a intersting case impacted by a separate m alternatvie. typedef long v2di __attribute__((vector_size(16))); v2di foo (v2di a) { a[1] = 1113; return a; } with -O2 gcc generates foo(long

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-15 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #5 from Hongtao.liu --- And for constraint like 'vm', it's different from 'v,m' in calculating mem_cost which will impact RA when op is REG_P. For 'v,m' mem_cost is just 1 * frequency, but for 'vm' mem_cost is much

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-13 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #4 from Hongtao.liu --- For pattern supports 'm' alternative, mem_cost is frequency which is quite low compared to pp->costs (ira_register_move_cost[mode][rclass][hard_reg_class]) * frequency) For x86 backend even gpr->gpr cost is

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-10 Thread ubizjak at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #3 from Uroš Bizjak --- (In reply to Hongtao.liu from comment #2) > Just note #c4 in pr105504 also solve this issue. > > >Another possible solution is add a little bit dislike for "m" > >alternative(like ?m) to avoid potential

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-09 Thread crazylht at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 --- Comment #2 from Hongtao.liu --- Just note #c4 in pr105504 also solve this issue. >Another possible solution is add a little bit dislike for "m" alternative(like >?m) to avoid potential spill.

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-09 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 Richard Biener changed: What|Removed |Added Priority|P3 |P2 Version|unknown

[Bug target/105513] [9/10/11/12/13 Regression] Unnecessary SSE spill since r9-5748-g1d4b4f4979171ef0

2022-05-09 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105513 Andrew Pinski changed: What|Removed |Added Component|rtl-optimization|target Target Milestone|---