diff options
-rw-r--r-- | gcc/ChangeLog | 8 | ||||
-rw-r--r-- | gcc/config/rs6000/rs6000.c | 19 |
2 files changed, 7 insertions, 20 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 83bdb1a..30ef9f3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2016-08-05 Alan Modra <amodra@gmail.com> + + * config/rs6000/rs6000.c (rs6000_preferred_reload_class): Delete + code accidentally committed 2016-05-02 providing class when given + NO_REGS. + 2016-08-04 Patrick Palka <ppalka@gcc.gnu.org> * tree-vrp.c (simplify_switch_using_ranges): Try to truncate @@ -15603,7 +15609,7 @@ 2016-02-14 Alan Modra <amodra@gmail.com> PR target/68973 - * reloads.c (find_reloads_address_1): For pre/post-inc/dec + * reload.c (find_reloads_address_1): For pre/post-inc/dec with an invalid hard reg, reload just the reg not the entire pre/post-inc/dec address expression. diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c index a8aa9d1..779ba1f 100644 --- a/gcc/config/rs6000/rs6000.c +++ b/gcc/config/rs6000/rs6000.c @@ -20407,25 +20407,6 @@ rs6000_preferred_reload_class (rtx x, enum reg_class rclass) return NO_REGS; } - /* If we haven't picked a register class, and the type is a vector or - floating point type, prefer to use the VSX, FPR, or Altivec register - classes. */ - if (rclass == NO_REGS) - { - if (TARGET_VSX && VECTOR_MEM_VSX_OR_P8_VECTOR_P (mode)) - return VSX_REGS; - - if (TARGET_ALTIVEC && VECTOR_MEM_ALTIVEC_P (mode)) - return ALTIVEC_REGS; - - if (DECIMAL_FLOAT_MODE_P (mode)) - return TARGET_DFP ? FLOAT_REGS : NO_REGS; - - if (TARGET_FPRS && TARGET_HARD_FLOAT && FLOAT_MODE_P (mode) - && (reg_addr[mode].addr_mask[RELOAD_REG_FPR] & RELOAD_REG_VALID) == 0) - return FLOAT_REGS; - } - if (GET_MODE_CLASS (mode) == MODE_INT && rclass == NON_SPECIAL_REGS) return GENERAL_REGS; |