------- Comment #19 from hubicka at ucw dot cz 2010-05-16 15:00 ------- Subject: Re: r159371 breaks bootstrap on x86_64-apple-darwin10
> > > ------- 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 ? Well, you know that emults will be bound withtin the same DSO, so you are safe. This is small PIC model. Honza -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44146