This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[PATCH, committed] SPE lo_sum address fix (PR target/27566)
- From: David Edelsohn <dje at watson dot ibm dot com>
- To: gcc-patches at gcc dot gnu dot org
- Date: Thu, 03 Aug 2006 09:51:20 -0400
- Subject: [PATCH, committed] SPE lo_sum address fix (PR target/27566)
SPE loads and stores do not allow a lo_sum address, but PowerPC
port legitimize_reload_address could generate one. This patch adds
SPE_VECTOR_MODE to the list of modes that should not use the special
reload legitimizer.
Bootstrapped and regression tested on powerpc-linux.
David
PR target/27566
* config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Do
not reload a SPE symbol_ref into a lo_sum address.
Index: rs6000.c
===================================================================
*** rs6000.c (revision 115281)
--- rs6000.c (working copy)
*************** rs6000_legitimize_reload_address (rtx x,
*** 3421,3426 ****
--- 3421,3427 ----
if (GET_CODE (x) == SYMBOL_REF
&& !ALTIVEC_VECTOR_MODE (mode)
+ && !SPE_VECTOR_MODE (mode)
#if TARGET_MACHO
&& DEFAULT_ABI == ABI_DARWIN
&& (flag_pic || MACHO_DYNAMIC_NO_PIC_P)