This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] - Use of powerpc 64bit instructions in 32bit ABI



On Thursday, October 23, 2003, at 01:36 PM, David Edelsohn wrote:


Richard Henderson writes:

Ulrich> Why would you have word_mode == SImode? I've been playing around with
Ulrich> the same issue on zSeries, and found I could get it working pretty well
Ulrich> with setting word_mode to DImode, allowing DImode in GPRs, but forcing
Ulrich> function arguments/return values to register pairs using PARALLEL.


Richard> Yes, exactly. But Ulrich seems to understand exactly what I meant.
Richard> He's got no generic changes to argument passing, or to any other
Richard> part of the compiler, to handle this compilation mode.


	The question is whether one can get from "pretty well" to the full
functionality and correctness of Apple's implementation without the
generic changes to which you and David object.  Apple started with a
minimal patch as well.


Yes. The very early apple's implementation assumed word_mode == DImode and emit_group{load/store} just work by
using PARALLEL for function arguments/return values to register pairs. Problem started arising in other parts of
the compiler; which uses word_mode==DImode to figure out, for example, number of registers used in passing
structure-by-value; with register size remaining 32-bit.


- Fariborz

David



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]