> I am not very good at GCC optimizations. Can you please explain why > this problem is not seen on other architectures? Also can you please > advise if I should add this compiler option for all arch or just hppa.
It's not really a gcc problem, it's an ELF one. The ELF spec for HPPA says that we need to leave symbol resolution as a relative jump. On parisc 32 bits, this is a 17bit relative jump. We can do longer by indirecting through a stub section. However, this problem usually occurs because the actual text section of the .o file is bigger than 131k (about 17 bits) and so the linker can't insert a reachable stub into the binary. -ffunction-sections splits the text section up into one section per function, so now the linker can insert the stubs in between the functions and thus the problem is solved (until a single function gets longer than 131k). Most other architectures have bigger relative jumps, so they likely won't need -ffunction-sections (unless the file you're compiling gets much bigger). James -- To UNSUBSCRIBE, email to debian-bugs-rc-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org