This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: patch: split complex arguments (heads up)
- From: Aldy Hernandez <aldy at andrews dot edu>
- To: Aldy Hernandez <aldyh at redhat dot com>
- Cc: Richard Henderson <rth at redhat dot com>, gcc-patches at gcc dot gnu dot org, david edelsohn <dje at watson dot ibm dot com>
- Date: Tue, 3 Jun 2003 20:06:30 -0400
- Subject: Re: patch: split complex arguments (heads up)
/* 32-bit is OK since it'll go in r3/r4. */
! if (TARGET_32BIT
! && GET_MODE_BITSIZE (mode) > 32)
return gen_rtx_REG (mode, regno);
}
Crap, that should be "GET_MODE_BITSIZE (**INNER**) > 32".
It's way too late to have started working at 6am. I'm done for the day.
If this one ain't right, I'll fix it tomorrow.
2003-06-03 Aldy Hernandez <aldyh@redhat.com>
* config/rs6000/rs6000.c (rs6000_complex_function_value): Unpack
complex numbers <= 32 bits into two registers.
Index: config/rs6000/rs6000.c
===================================================================
RCS file: /cvs/gcc/gcc/gcc/config/rs6000/rs6000.c,v
retrieving revision 1.482
diff -c -p -r1.482 rs6000.c
*** config/rs6000/rs6000.c 3 Jun 2003 11:14:06 -0000 1.482
--- config/rs6000/rs6000.c 4 Jun 2003 00:04:42 -0000
*************** rs6000_complex_function_value (enum mach
*** 14378,14384 ****
regno = GP_ARG_RETURN;
/* 32-bit is OK since it'll go in r3/r4. */
! if (TARGET_32BIT)
return gen_rtx_REG (mode, regno);
}
--- 14378,14385 ----
regno = GP_ARG_RETURN;
/* 32-bit is OK since it'll go in r3/r4. */
! if (TARGET_32BIT
! && GET_MODE_BITSIZE (inner) > 32)
return gen_rtx_REG (mode, regno);
}