diff options
Diffstat (limited to 'gcc')
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/cse.c | 5 |
2 files changed, 7 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b4c4f71..9d6da58 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -34,6 +34,10 @@ Sun Oct 31 13:32:15 CET 1999 Marc Lehmann <pcg@goof.com> Sun Oct 31 01:53:30 1999 Jeffrey A Law (law@cygnus.com) + * cse.c (cse_insn): If an insn has only a single set, SRC_EQV + is nonzero and the single set does not have an elt, then assign + it an elt. + * simplify-rtx.c: New file. * Makefile.in (OBJS): Add simplify-rtx.o (simplify-rtx.o): Add dependencies. @@ -5733,8 +5733,9 @@ cse_insn (insn, libcall_insn) does not yet have an elt, and if so set the elt of the set source to src_eqv_elt. */ for (i = 0; i < n_sets; i++) - if (sets[i].rtl && sets[i].src_elt == 0 - && rtx_equal_p (SET_SRC (sets[i].rtl), src_eqv)) + if (n_sets == 1 + || (sets[i].rtl && sets[i].src_elt == 0 + && rtx_equal_p (SET_SRC (sets[i].rtl), src_eqv))) sets[i].src_elt = src_eqv_elt; } |
