diff options
author | J"orn Rennecke <joern.rennecke@st.com> | 2005-12-14 14:18:36 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 2005-12-14 14:18:36 +0000 |
commit | 5216df748ac5f68468f06e4cfded3c42d6c3b7c9 (patch) | |
tree | 160185165e5f212b116813093fbd1a9b3aa13bd9 /gcc | |
parent | ee39680c060a370438e17105cbbe72fb26374d68 (diff) | |
download | gcc-5216df748ac5f68468f06e4cfded3c42d6c3b7c9.zip gcc-5216df748ac5f68468f06e4cfded3c42d6c3b7c9.tar.gz gcc-5216df748ac5f68468f06e4cfded3c42d6c3b7c9.tar.bz2 |
struct-equiv.c (rtx_equiv_p): Allow arbitrary RVALUE values for PARALLELs with a mode.
* struct-equiv.c (rtx_equiv_p): Allow arbitrary RVALUE values for
PARALLELs with a mode.
From-SVN: r108511
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/struct-equiv.c | 5 |
2 files changed, 9 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 2823079..1e65635 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2005-12-14 J"orn Rennecke <joern.rennecke@st.com> + + * struct-equiv.c (rtx_equiv_p): Allow arbitrary RVALUE values for + PARALLELs with a mode. + 2005-12-14 Sebastian Pop <pop@cri.ensmp.fr> * cfgloopmanip.c (lv_adjust_loop_entry_edge): Adjust the type of diff --git a/gcc/struct-equiv.c b/gcc/struct-equiv.c index 3e6ba5d..fc563b6 100644 --- a/gcc/struct-equiv.c +++ b/gcc/struct-equiv.c @@ -637,7 +637,10 @@ rtx_equiv_p (rtx *xp, rtx y, int rvalue, struct equiv_info *info) return (rtx_equiv_p (&XEXP (x, 0), XEXP (y, 0), 0, info) && rtx_equiv_p (&XEXP (x, 0), XEXP (y, 0), 1, info)); case PARALLEL: - gcc_assert (rvalue < 0); + /* If this is a top-level PATTERN PARALLEL, we expect the caller to + have handled the SET_DESTs. A complex or vector PARALLEL can be + identified by having a mode. */ + gcc_assert (rvalue < 0 || GET_MODE (x) != VOIDmode); break; case LABEL_REF: /* Check special tablejump match case. */ |