diff options
author | Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> | 1998-10-29 02:25:35 +0100 |
---|---|---|
committer | Jeff Law <law@gcc.gnu.org> | 1998-10-28 18:25:35 -0700 |
commit | e526eeec3fdf5918bbc76d96db9255a45e554229 (patch) | |
tree | 7756529aae5dab64010772400897e4a1d5654719 /gcc | |
parent | af2c0a263d20bef4da4cfef9bdba23f10545212d (diff) | |
download | gcc-e526eeec3fdf5918bbc76d96db9255a45e554229.zip gcc-e526eeec3fdf5918bbc76d96db9255a45e554229.tar.gz gcc-e526eeec3fdf5918bbc76d96db9255a45e554229.tar.bz2 |
emit-rtl.c (try_split): Do not try to split a BARRIER.
* emit-rtl.c (try_split): Do not try to split a BARRIER.
Fixes core dump for c4x c-torture test.
From-SVN: r23420
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/emit-rtl.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 5152d5c..1dbc93a 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +1998-10-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl> + + * emit-rtl.c (try_split): Do not try to split a BARRIER. + Thu Oct 29 01:33:54 1998 Jan Hubicka <hubicka@freesoft.cz> Jeffrey A Law (law@cygnus.com) diff --git a/gcc/emit-rtl.c b/gcc/emit-rtl.c index e1209b7..df3a5a9 100644 --- a/gcc/emit-rtl.c +++ b/gcc/emit-rtl.c @@ -2270,10 +2270,12 @@ try_split (pat, trial, last) time control returns here that insn will be fully split, so set LAST and continue from the insn after the one returned. We can't use next_active_insn here since AFTER may be a note. - Ignore deleted insns, which can be occur if not optimizing. */ + Ignore deleted insns, which can be occur if not optimizing, + and ignore BARRIERs which can occur if we split the insn + immediately before a BARRIER. */ for (tem = NEXT_INSN (before); tem != after; tem = NEXT_INSN (tem)) - if (! INSN_DELETED_P (tem)) + if (! INSN_DELETED_P (tem) && ! GET_CODE (tem) == BARRIER) tem = try_split (PATTERN (tem), tem, 1); } /* Avoid infinite loop if the result matches the original pattern. */ |