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.)