https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80881
--- Comment #49 from LIU Hao <lh_mouse at 126 dot com> --- On Windows x64 almost all symbols in the flat address space are to be referenced by RIP-relative addressing. I don't know whether things would work otherwise. This correspond to GCC's `-mcmodel=medium` and Clang's `-mcmodel=small` (both default). GCC uses RIP-relative addressing for all code models, while Clang does same for `small` and emits absolute addresses for `medium` and `large`.