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

            Bug ID: 113988
           Summary: during GIMPLE pass: bitintlower: internal compiler
                    error: in lower_stmt, at gimple-lower-bitint.cc:5470
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: janschultke at googlemail dot com
  Target Milestone: ---

https://godbolt.org/z/3ez1erYa3


unsigned rem_fast(_BitInt(512) x, unsigned y) {
    const int size = sizeof(x) / 4;
    unsigned digits[size];
    __builtin_memcpy(digits, &x, sizeof(digits));
    unsigned rem = 0;
    for (int i = 0; i < size; ++i) {
        unsigned long long temp = (unsigned long long) rem << 32 | digits[size
- i - 1];
        rem = temp % y;
    }
    return rem;
}


during GIMPLE pass: bitintlower
<source>: In function 'rem_fast':
<source>:1:10: internal compiler error: in lower_stmt, at
gimple-lower-bitint.cc:5470
    1 | unsigned rem_fast(_BitInt(512) x, unsigned y) {
      |          ^~~~~~~~
0x233bebc internal_error(char const*, ...)
        ???:0
0x96c2ff fancy_abort(char const*, int, char const*)
        ???:0

Reply via email to