s390: larl for Simode on 64-bit

DJ Delorie dj@redhat.com
Wed Jul 8 21:05:00 GMT 2015


In the TPF case, the software has to explicitly mark such pointers as
SImode (such things happen only when structures that contain addresses
can't change size, for backwards compatibility reasons[1]):

int * __attribute__((mode(SImode))) ptr;

  ptr = &some_var;

so I wouldn't consider this the "default" case for those apps, just
*a* case that needs to be handled "well enough", and the user is
already telling the compiler that they assume those addresses are
32-bit (that either the whole app, or at least the part with that
object, will be linked below 4Gb).

The majority of the addresses are handled as 64-bit.


[1] /me refrains from commenting on the worth of such practices, just
    that they exist and need to be (and have been) supported.



More information about the Gcc mailing list