From d95244df86628c2fafc30dd91fab48636e4a183e Mon Sep 17 00:00:00 2001 From: aoliva Date: Wed, 9 May 2001 13:40:49 +0000 Subject: [PATCH] * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing handling of two-address insns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@41925 138bc75d-0d04-0410-961f-82ee72b054a4 --- gcc/ChangeLog | 5 +++++ gcc/regclass.c | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 03cd38f0293..5d54bb88397 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Wed May 9 10:40:25 2001 Alexandre Oliva + + * regclass.c (scan_one_insn): Update REG_N_REFS when optimizing + handling of two-address insns. + Wed May 9 10:36:18 2001 Alexandre Oliva * Makefile.in (NM_FOR_TARGET): Look for ./nm, then diff --git a/gcc/regclass.c b/gcc/regclass.c index 001015f7c2e..82d90faa525 100644 --- a/gcc/regclass.c +++ b/gcc/regclass.c @@ -1058,11 +1058,16 @@ scan_one_insn (insn, pass) /* This makes one more setting of new insns's dest. */ REG_N_SETS (REGNO (recog_data.operand[0]))++; + REG_N_REFS (REGNO (recog_data.operand[0]))++; *recog_data.operand_loc[1] = recog_data.operand[0]; + REG_N_REFS (REGNO (recog_data.operand[0]))++; for (i = recog_data.n_dups - 1; i >= 0; i--) if (recog_data.dup_num[i] == 1) - *recog_data.dup_loc[i] = recog_data.operand[0]; + { + *recog_data.dup_loc[i] = recog_data.operand[0]; + REG_N_REFS (REGNO (recog_data.operand[0]))++; + } return PREV_INSN (newinsn); } -- 2.11.0