This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] - Use of powerpc 64bit instructions in 32bit ABI
- From: Fariborz Jahanian <fjahanian at apple dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: David Edelsohn <dje at watson dot ibm dot com>, Ulrich Weigand <Ulrich dot Weigand at de dot ibm dot com>, ian at wasabisystems dot com, davem at redhat dot com, gcc-patches at gcc dot gnu dot org
- Date: Fri, 24 Oct 2003 11:41:53 -0700
- Subject: Re: [PATCH] - Use of powerpc 64bit instructions in 32bit ABI
On Friday, October 24, 2003, at 11:07 AM, Richard Henderson wrote:
On Fri, Oct 24, 2003 at 01:31:41PM -0400, David Edelsohn wrote:
Notice the use of UNITS_PER_WORD, BITS_PER_WORD, and word_mode in
the following functions that depend on the argument wordsize and ABI:
[...]
calls.c:load_register_parameters()
If you're returning parallels from function_arg, you won't get here.
This routine is called for passing args in registers. Above code is
used in following
example (which does not have any long long but a structure is passed by
value in 32-bit
registers using UNITS_PER_WORD).
struct S {
long i1;
long i2;
long i3;
long i4;
};
void foo(struct S ll);
void add(struct S val)
{
foo( val );
}
- Fariborz
calls.c:store_one_arg()
Or here.
function.c:assign_parm()
You definitely won't get to all the bits you marked here.
expr.c:emit_push_insn()
Dunno about here, but if we're really interested in block copy, then
you *do* want to move in 64-bit hunks.
r~