https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61577
--- Comment #165 from Peter Bisroev <peter.bisroev at groundlabs dot com> --- Hi Dave, (In reply to dave.anglin from comment #162) > On 2020-02-12 10:38 a.m., peter.bisroev at groundlabs dot com wrote: > > The exact HP linker errors from linking cc1, cc1plus and lto1 were (I was > > compiling in parallel): > > -------------------- > > ld: The value 0xfffffffffdc6eaf0 does not fit when applying the relocation > > PCREL21B for symbol ".text" at offset 0x102 in section index 51 of file > > libbackend.a[sancov.o] > > The value doesn't fit in 21 bits. > > The relocations are introduced by the assembler. You might check if the HP > assembler can assemble sancov.s and see what type of relocations are used. > You can run readelf on .o to see relocations. Unfortunately I was not able to assemble sancov.s using HPs assembler due to too many syntax errors. So I tried to find something that can be compiled with aCC. This might be a wrong approach but it was quick to test out so decided to give it a go :) > It looks like the problem is branches to weak functions. I went back to gcc 4.9.4 and tried doing stage1 bootstrap with '-O0'. As expected, we got the same error (only relevant one shown for gimple-expr.c): -------------------- ld: The value 0xfffffffffdf81640 does not fit when applying the relocation PCREL21B for symbol ".text" at offset 0x102 in section index 59 of file libbackend.a[gimple-expr.o] -------------------- The dump for gimple-expr.c Unless I am mistaken, from the dump in attachment 47828 it is a weak relocation. I was then able to compile the same file but with aCC and attached results (including an elfdump) in attachment 47829. Unless I am mistaken, weak relocations are not being used. Is this something expected? Thanks! --peter