Re: s390: got symbol+offset

2006-08-12 Thread DJ Delorie
> The GOT is an array of addresses, and [EMAIL PROTECTED] addresses one of these > addresses. Thus [EMAIL PROTECTED] points to the address of a different and > unrelated variable, assuming it is still within the range of the GOT. You must have a 32 bit machine on your desk ;-) On a 64 bit BE ma

Re: s390: got symbol+offset

2006-08-12 Thread Andreas Schwab
DJ Delorie <[EMAIL PROTECTED]> writes: > If I comment out the "&& offset == 0" line, gcc produces assembly like this: > > l %r2,[EMAIL PROTECTED](%r12) > > The assembler and linker don't seem to have a problem with that > construct. Are we deliberately avoiding it for some obscure r

s390: got symbol+offset

2006-08-11 Thread DJ Delorie
There are occasions where gcc wants to read some subreg of an address in the GOT (builtin_strlen is one example, depending on optimization). However, this code in s390.c (s390_decompose_address()) seems to disallow such constructs: /* In the small-PIC case, the linker converts @GOT