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

            Bug ID: 108208
           Summary: Build failure on large LLVM source files on PPC
           Product: gcc
           Version: 13.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: target
          Assignee: unassigned at gcc dot gnu.org
          Reporter: sam at gentoo dot org
  Target Milestone: ---

We've seen this a few times in Gentoo when building LLVM, but this is the
latest case.

```
$ gcc --version
gcc (Gentoo 13.0.0_pre20221218 p5) 13.0.0 20221218 (experimental)
Copyright (C) 2022 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
```

```
/usr/bin/c++ -save-temps -O2 -g -pipe -fsanitize=undefined -std=c++17 -fPIC
-fno-semantic-interposition -fvisibility-inlines-hidden -ffunction-sections
-fdata-sections  -fno-exceptions -fno-rtti RegisterInfoEmitter.cpp.ii
[...]
a-RegisterInfoEmitter.cpp.s:577996: Error: operand out of range
(0x0000000000009d8c is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578007: Error: operand out of range
(0x0000000000009d10 is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578016: Error: operand out of range
(0x0000000000009d18 is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578024: Error: operand out of range
(0x0000000000009d14 is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578042: Error: operand out of range
(0x0000000000009d84 is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578061: Error: operand out of range
(0x0000000000009d5c is not between 0xffffffffffff8000 and 0x0000000000007fff)
a-RegisterInfoEmitter.cpp.s:578071: Error: operand out of range
(0x0000000000009d68 is not between 0xffffffffffff8000 and 0x0000000000007fff)
[...]
```

I've uploaded gcc-RegisterInfoEmitter-ppc.tar.xz at
https://dev.gentoo.org/~sam/bugs/gcc/gcc-RegisterInfoEmitter-ppc/gcc-RegisterInfoEmitter-ppc.tar.xz
(because of the size of the files) which contains:
```
-rw-r--r--  1 root root 2.8M Dec 23 10:35
gcc-RegisterInfoEmitter-ppc/RegisterInfoEmitter.cpp.ii
-rw-r--r--  1 root root  42M Dec 23 10:45
gcc-RegisterInfoEmitter-ppc/a-RegisterInfoEmitter.cpp.s
```

Minimising is hard because it only happens with large source files and it's
also time consuming to compile and get the error.

(Sorry for external link, it's too big even when compressed to attach here, as
it's 4MB.)

Reply via email to