This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] powerpc64-linux bi-arch support
- From: Jakub Jelinek <jakub at redhat dot com>
- To: David Edelsohn <dje at watson dot ibm dot com>
- Cc: Janis Johnson <janis187 at us dot ibm dot com>, gcc-patches at gcc dot gnu dot org
- Date: Sat, 31 May 2003 13:56:35 -0400
- Subject: Re: [PATCH] powerpc64-linux bi-arch support
- References: <amodra@bigpond.net.au> <200305292205.SAA29718@makai.watson.ibm.com>
- Reply-to: Jakub Jelinek <jakub at redhat dot com>
On Thu, May 29, 2003 at 06:05:51PM -0400, David Edelsohn wrote:
> >>>>> Alan Modra writes:
>
> Alan> In exactly the same situations a non-biarch --target=powerpc-linux
> Alan> compiler will use RS6000_CALL_GLUE. ie. the patch doesn't change
> Alan> existing behaviour. You may have unearthed an existing bug, but
> Alan> it's not a new one.
>
> I don't think it necessarily is a bug because the macros is not
> except for ABI_AIX.
>
> I want to avoid adding new definitions or expanding definitions to
> cover cases that don't exist because someone later will interpret that as
> self-documenting code: "This was done on purpose." Or later will enable
> some 32/64-bit thunk mode that breaks because of this. Where possible, I
> would like to avoid making things selectable when the other case never
> occurs.
>
> Please keep RS6000_CALL_GLUE uniformly defined to "nop". If this
> breaks something, we have a worse problem.
But then either linux.h would need to define RS6000_CALL_GLUE the same way,
or -mcall-aixdesc should be disallowed for powerpc-*-linux* and
powerpc64-*-linux* targets.
If linux.h inherits the cror definition from sysv.h and linux64.h defines
it to nop unconditionally, then suddenly --target powerpc-ibm-linux and
--target powerpc64-ibm-linux --with-cpu=default32 behave differently,
which is IMHO not desirable. The only difference between those two should
be that the latter supports -m64 while the former does not.
Jakub