This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] Introduce abi_word_mode
Mark Mitchell <firstname.lastname@example.org> writes:
> I'd argue that a program which uses word mode in a context that
> matters for the ABI is broken, if that program is intended to be used
> on multiple CPUs.
To be clear, the cases where it matters for gcc code are the uses of
attribute ((mode (word))) in unwind-generic.h and libgcc2.h. Since on
the S/390 you can (apparently) compile code with BITS_PER_WORD set to
either 32 and 64, and since you can (apparently) link such code
together safely, then by your argument (which I think is reasonable)
those uses are broken.
I think the uses in libgcc2.c can be reliably replaced with int,
assuming corresponding changes are made to optabs.c.
The use in unwind-generic.h most likely does have to be the size of a
register. The requirement for ABI compliance in this case when the
size of a register changes has already led to the introduction of the
undocumented target hook TARGET_EH_RETURN_FILTER_MODE, which would be
subsumed by Andreas's proposed patch.