> First posted at: <https://gcc.gnu.org/ml/gcc/2014-06/msg00060.html>.

>       gcc/
>       PR target/58901
>       * reload.c (reload_inner_reg_of_subreg): Also request reloading
>       for pseudo registers associated with mode dependent memory
>       references.
>       (push_reload): Handle pseudo registers.

The handling of this family of reloads is supposed to be done by the block of 
code just above though, i.e. at line 1023.  Can't we add the test based on 
mode_dependent_address_p to this block, e.g. after:

          || (REG_P (SUBREG_REG (in))
              && REGNO (SUBREG_REG (in)) < FIRST_PSEUDO_REGISTER
              && !REG_CAN_CHANGE_MODE_P (REGNO (SUBREG_REG (in)),
                                         GET_MODE (SUBREG_REG 
(in)), inmode))))

instead?

-- 
Eric Botcazou


Reply via email to