[Bug tree-optimization/105254] ICE in exact_div, at poly-int.h:2219

cvs-commit at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Thu Jun 23 02:25:22 GMT 2022


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105254

--- Comment #7 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-12 branch has been updated by Kewen Lin <linkw@gcc.gnu.org>:

https://gcc.gnu.org/g:bb1a6d92989a50df13b1a21085c86625089c9e53

commit r12-8505-gbb1a6d92989a50df13b1a21085c86625089c9e53
Author: Richard Sandiford <richard.sandiford@arm.com>
Date:   Wed Jun 15 11:12:51 2022 +0100

    aarch64: Revert bogus fix for PR105254

    In f2ebf2d98efe0ac2314b58cf474f44cb8ebd5244 I'd forced the
    chosen unroll factor to be a factor of the VF, in order to
    work around an exact_div ICE in PR105254.  This was completely
    bogus -- clearly I didn't look in enough detail at why we ended
    up with an unrolled VF that wasn't a multiple of the UF.

    Kewen has since fixed the bug properly for PR105940, so this
    patch reverts my earlier attempt.  Sorry for the stupidity.

    gcc/
            PR tree-optimization/105254
            PR tree-optimization/105940

            Revert:

            * config/aarch64/aarch64.cc
            (aarch64_vector_costs::determine_suggested_unroll_factor): Take a
            loop_vec_info as argument.  Restrict the unroll factor to values
            that divide the VF.
            (aarch64_vector_costs::finish_cost): Update call accordingly.

    gcc/testsuite/
            * gcc.target/aarch64/sve/cost_model_14.c: New test.

    (cherry picked from commit 2636660b6f35423e0cfbf53bfad5c5fed6ae6471)


More information about the Gcc-bugs mailing list