patch: split complex arguments (heads up)
Aldy Hernandez
aldy@andrews.edu
Wed Jun 4 00:06:00 GMT 2003
>
> /* 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);
}
More information about the Gcc-patches
mailing list