[PATCH, committed] SPE lo_sum address fix (PR target/27566)

David Edelsohn dje@watson.ibm.com
Thu Aug 3 13:51:00 GMT 2006


	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)



More information about the Gcc-patches mailing list