------- Comment #17 from iains at gcc dot gnu dot org 2010-05-16 13:51 ------- (In reply to comment #16) > leaving off the eh and debug stuff.... look at >>>>>> > > .text > __ZN12_GLOBAL__N_110get_globalEv: > LFB100: > pushq %rbp > LCFI0: > movq %rsp, %rbp > LCFI1: > >>>>>> reference a variable relative to the instruction pointer???????? is > >>>>>> this intended?? seems doomed to > >>>>>> fail at some point .... > leaq ___emutls_v._ZZN12_GLOBAL__N_110get_globalEvE6global(%rip), > %rdi
well, clearly, it's intended - non-emutls code does the same thing (when compiled m64). However, the point remains that a 32bit offset is going to fail to reach variables as soon as the total space occupied > 4Gb it seems maybe we have a code-gen problem ? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44146