[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-03 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #20 from CVS Commits --- The master branch has been updated by Hao Liu : https://gcc.gnu.org/g:4d8b5563179f3a7ca268b64f71731a4878635497 commit r14-2973-g4d8b5563179f3a7ca268b64f71731a4878635497 Author: Hao Liu Date: Fri Aug 4

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #19 from Hao Liu --- > Hi, here's the reduced case Hi Tarmar, thanks for the case. I've modified it to reproduce the ICE without LTO and have updated the patch.

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #18 from Tamar Christina --- Hi, here's the reduced case: > cat analyse.i double x264_weights_analyse___trans_tmp_1; float x264_weights_analyse_ref_mean; x264_weights_analyse() { x264_weights_analyse___trans_tmp_1 =

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #17 from Hao Liu --- > Thanks! I can reduce a testcase for you if you want :) That will be very helpful. Thanks.

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #16 from Tamar Christina --- (In reply to Hao Liu from comment #15) > Ah, I see. > > I've sent out a quick fix patch for code review. I'll investigate more > about this and find out the root cause. Thanks! I can reduce a testcase

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #15 from Hao Liu --- Ah, I see. I've sent out a quick fix patch for code review. I'll investigate more about this and find out the root cause.

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #14 from Tamar Christina --- Or rather, info_for_reduction looks at the original statement if it's a pattern, whereas vect_is_reduction only looks at the direct statement. You'll probably want to check vect_orig_stmt if using

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-08-01 Thread tnfchris at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 Tamar Christina changed: What|Removed |Added CC||tnfchris at gcc dot gnu.org ---

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-31 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #12 from CVS Commits --- The master branch has been updated by Hao Liu : https://gcc.gnu.org/g:bf67bf4880ce5be0b6e48c7c35828528b7be12ed commit r14-2877-gbf67bf4880ce5be0b6e48c7c35828528b7be12ed Author: Hao Liu Date: Mon Jul 31

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-30 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #11 from Hao Liu --- Hi Richard, That's great! Glad to hear the status. Waiting for the patches to be ready and upstreamed to trunk.

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-28 Thread rsandifo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #10 from rsandifo at gcc dot gnu.org --- Created attachment 55654 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55654=edit Candidate patch (part 2) Sorry for the delay. I'm testing the attached two patches to fix the

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-28 Thread rsandifo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #9 from rsandifo at gcc dot gnu.org --- Created attachment 55653 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55653=edit Candidate patch (part 1)

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-19 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #8 from Hao Liu --- Thanks for the explanation. Understood the root cause and that's reasonable. So, do you have plan to fix this (i.e. to separate the FP and integer types)? I want to enable the new costs for Ampere1, which is

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-19 Thread rsandifo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #7 from rsandifo at gcc dot gnu.org --- The current issue rate framework was originally written for Neoverse V1 and Neoverse V2. For those cores, it wasn't necessary to make a distinction between scalar integer operations and

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-18 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #6 from Hao Liu --- Thanks for the confirmation about the reduction latency. I'll create a simple patch to fix this. > Discounting the loads, we do have 15 general operations. That's true, and there are indeed 8 general

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-18 Thread rsandifo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 rsandifo at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-18 Thread rsandifo at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 rsandifo at gcc dot gnu.org changed: What|Removed |Added CC||rsandifo at gcc dot

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-14 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #3 from Hao Liu --- Sorry, it seems this case can not be fixed by only adjusting the calculation of "reduction latency". Even it becomes smaller, the case still can not be vectorized as the "general operations" count is still too

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-11 Thread hliu at amperecomputing dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 --- Comment #2 from Hao Liu --- To my understanding, "reduction latency" is the least number of cycles needed to do the reduction calculation for 1 iteration of loop. It is calcualted by the extra instruction issue-info of the new cost models

[Bug target/110625] [AArch64] Vect: SLP fails to vectorize a loop as the reduction_latency calculated by new costs is too large

2023-07-11 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110625 Richard Biener changed: What|Removed |Added Target||aarch64 Keywords|