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

--- Comment #3 from GCC Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Jakub Jelinek <ja...@gcc.gnu.org>:

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

commit r14-6579-gd50d3d0a688e8dac31b307b3aad3fbc99283ebc4
Author: Jakub Jelinek <ja...@redhat.com>
Date:   Fri Dec 15 10:10:58 2023 +0100

    lower-bitint: Fix .{ADD,SUB,MUL}_OVERFLOW with _BitInt large/huge
INTEGER_CST arguments [PR113003]

    As shown in the testcase, .{ADD,SUB,MUL}_OVERFLOW calls are another
    exception to the middle/large/huge _BitInt discovery through SSA_NAMEs
    next to stores of INTEGER_CSTs to memory and their conversions to
    floating point.
    The calls can have normal COMPLEX_TYPE with INTEGER_TYPE elts return type
    (or BITINT_TYPE with small precision) and one of the arguments can be
    SSA_NAME with an INTEGER_TYPE or small BITINT_TYPE as well; still, when
    there is an INTEGER_CST argument with large/huge BITINT_TYPE, we need to
    lower it that way.

    2023-12-15  Jakub Jelinek  <ja...@redhat.com>

            PR tree-optimization/113003
            * gimple-lower-bitint.cc (arith_overflow_arg_kind): New function.
            (gimple_lower_bitint): Use it to catch .{ADD,SUB,MUL}_OVERFLOW
            calls with large/huge INTEGER_CST arguments.

            * gcc.dg/bitint-54.c: New test.

Reply via email to