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

--- Comment #10 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The releases/gcc-11 branch has been updated by Kewen Lin <li...@gcc.gnu.org>:

https://gcc.gnu.org/g:02f1b5361188c9d833cef39caf723d31d44ba5d5

commit r11-11363-g02f1b5361188c9d833cef39caf723d31d44ba5d5
Author: Kewen Lin <li...@linux.ibm.com>
Date:   Mon Apr 8 21:01:36 2024 -0500

    rs6000: Fix wrong align passed to build_aligned_type [PR88309]

    As the comments in PR88309 show, there are two oversights
    in rs6000_gimple_fold_builtin that pass align in bytes to
    build_aligned_type but which actually requires align in
    bits, it causes unexpected ICE or hanging in function
    is_miss_rate_acceptable due to zero align_unit value.

    This patch is to fix them by converting bytes to bits, add
    an assertion on positive align_unit value and notes function
    build_aligned_type requires align measured in bits in its
    function comment.

            PR target/88309

    Co-authored-by: Andrew Pinski <quic_apin...@quicinc.com>

    gcc/ChangeLog:

            * config/rs6000/rs6000-call.c (rs6000_gimple_fold_builtin): Fix
            wrong align passed to function build_aligned_type.
            * tree-ssa-loop-prefetch.c (is_miss_rate_acceptable): Add an
            assertion to ensure align_unit should be positive.
            * tree.c (build_qualified_type): Update function comments.

    gcc/testsuite/ChangeLog:

            * gcc.target/powerpc/pr88309.c: New test.

    (cherry picked from commit 26eb5f8fd173e2425ae7505528fc426de4b7e34c)

Reply via email to