https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82303
--- Comment #16 from Thomas Garnier <thgarnie at google dot com> --- Yes, I think you can't just default to the non-PIE mode. Clang does it well though: 0000000000000000 <phy_modes>: 0: 83 ff 16 cmp $0x16,%edi 3: 77 0f ja 14 <phy_modes+0x14> 5: 48 63 c7 movslq %edi,%rax 8: 48 8d 0d 00 00 00 00 lea 0x0(%rip),%rcx # f <phy_modes+0xf> b: R_X86_64_PC32 .data.rel.ro-0x4 f: 48 8b 04 c1 mov (%rcx,%rax,8),%rax 13: c3 retq 14: 48 8d 05 00 00 00 00 lea 0x0(%rip),%rax # 1b <phy_modes+0x1b> 17: R_X86_64_PC32 .L.str.23-0x4 1b: c3 retq