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 <aldyh at redhat dot com>
- To: Richard Henderson <rth at redhat dot com>
- Cc: gcc-patches at gcc dot gnu dot org, david edelsohn <dje at watson dot ibm dot com>
- Date: Tue, 3 Jun 2003 17:43:56 -0400
- Subject: Re: patch: split complex arguments (heads up)
+ /* 32-bit is OK since it'll go in r3/r4. */
+ if (TARGET_32BIT)
+ return gen_rtx_REG (mode, regno);
What about CHImode? That fits in just r3.
OK?
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 3 Jun 2003 21:42:55 -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 (mode) != 32)
return gen_rtx_REG (mode, regno);
}