REG or MEM subregs, pass rtx * instead of rtx to it.
* config/i860/i860.c (output_delayed_branch, output_delay_insn): Pass
rtx * instead of rtx to alter_subreg.
* config/m32r/m32r.c (gen_split_move_double): Likewise.
* config/pj/pj.c (pj_output_rval): Likewise.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@51182
138bc75d-0d04-0410-961f-
82ee72b054a4
+2002-03-22 Jakub Jelinek <jakub@redhat.com>
+
+ * config/v850/v850.c (v850_reorg): Only call alter_subreg on
+ REG or MEM subregs, pass rtx * instead of rtx to it.
+ * config/i860/i860.c (output_delayed_branch, output_delay_insn): Pass
+ rtx * instead of rtx to alter_subreg.
+ * config/m32r/m32r.c (gen_split_move_double): Likewise.
+ * config/pj/pj.c (pj_output_rval): Likewise.
+
2002-03-22 Richard Henderson <rth@redhat.com>
PR target/3177
/* Subroutines for insn-output.c for Intel 860
- Copyright (C) 1989, 1991, 1997, 1998, 1999, 2000, 2001
+ Copyright (C) 1989, 1991, 1997, 1998, 1999, 2000, 2001, 2002
Free Software Foundation, Inc.
Derived from sparc.c.
for (i = 0; i < insn_data[insn_code_number].n_operands; i++)
{
if (GET_CODE (recog_data.operand[i]) == SUBREG)
- recog_data.operand[i] = alter_subreg (recog_data.operand[i]);
+ alter_subreg (&recog_data.operand[i]);
}
insn_extract (delay_insn);
for (i = 0; i < insn_data[insn_code_number].n_operands; i++)
{
if (GET_CODE (recog_data.operand[i]) == SUBREG)
- recog_data.operand[i] = alter_subreg (recog_data.operand[i]);
+ alter_subreg (&recog_data.operand[i]);
}
if (! constrain_operands (1))
subregs to make this code simpler. It is safe to call
alter_subreg any time after reload. */
if (GET_CODE (dest) == SUBREG)
- dest = alter_subreg (dest);
+ alter_subreg (&dest);
if (GET_CODE (src) == SUBREG)
- src = alter_subreg (src);
+ alter_subreg (&src);
start_sequence ();
if (GET_CODE (dest) == REG)
/* Output routines for GCC for picoJava II
- Copyright (C) 2000, 2001 Free Software Foundation, Inc.
+ Copyright (C) 2000, 2001, 2002 Free Software Foundation, Inc.
This file is part of GNU CC.
break;
case SUBREG:
- pj_output_rval (alter_subreg (op), mode, outer_op);
+ pj_output_rval (alter_subreg (&op), mode, outer_op);
break;
case POST_INC:
/* Subroutines for insn-output.c for NEC V850 series
- Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001
+ Copyright (C) 1996, 1997, 1998, 1999, 2000, 2001, 2002
Free Software Foundation, Inc.
Contributed by Jeff Law (law@cygnus.com).
int unsignedp = FALSE;
/* We might have (SUBREG (MEM)) here, so just get rid of the
- subregs to make this code simpler. It is safe to call
- alter_subreg any time after reload. */
- if (GET_CODE (dest) == SUBREG)
- dest = alter_subreg (dest);
- if (GET_CODE (src) == SUBREG)
- src = alter_subreg (src);
+ subregs to make this code simpler. */
+ if (GET_CODE (dest) == SUBREG
+ && (GET_CODE (SUBREG_REG (dest)) == MEM
+ || GET_CODE (SUBREG_REG (dest)) == REG))
+ alter_subreg (&dest);
+ if (GET_CODE (src) == SUBREG
+ && (GET_CODE (SUBREG_REG (src)) == MEM
+ || GET_CODE (SUBREG_REG (src)) == REG))
+ alter_subreg (&src);
if (GET_CODE (dest) == MEM && GET_CODE (src) == MEM)
mem = NULL_RTX;