address_mode = targetm.addr_space.address_mode (MEM_ADDR_SPACE (x));
t = shallow_copy_rtx (x);
- if (cselib_lookup (XEXP (t, 0), address_mode, 0))
- XEXP (t, 0) = cselib_subst_to_values (XEXP (t, 0));
+ if (cselib_lookup (XEXP (t, 0), address_mode, 0, GET_MODE (t)))
+ XEXP (t, 0) = cselib_subst_to_values (XEXP (t, 0), GET_MODE (t));
t = canon_rtx (t);
addr = get_addr (XEXP (t, 0));