diff options
| author | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-08-03 07:16:39 +0000 |
|---|---|---|
| committer | law <law@138bc75d-0d04-0410-961f-82ee72b054a4> | 2000-08-03 07:16:39 +0000 |
| commit | 4de464f3dc6c1501ea98d77278ee26dd6c54f547 (patch) | |
| tree | bcf043747af6b973e682ef85917025765b46713b | |
| parent | f0bf97b87723d1465e3ed01b490f2bdcbdb2e95f (diff) | |
| download | ppe42-gcc-4de464f3dc6c1501ea98d77278ee26dd6c54f547.tar.gz ppe42-gcc-4de464f3dc6c1501ea98d77278ee26dd6c54f547.zip | |
* flow.c (find_auto_inc): Verify that we've got a REG before
peeking at its regno. Fail, don't abort if we can't find
the increment of the desired register.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@35443 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/flow.c | 6 |
2 files changed, 7 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9965f9559b8..2da5c604aa0 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ Thu Aug 3 01:05:32 2000 Jeffrey A Law (law@cygnus.com) + * flow.c (find_auto_inc): Verify that we've got a REG before + peeking at its regno. Fail, don't abort if we can't find + the increment of the desired register. + * pa.md (shadd height reduction patterns/splitters): Remove. 2000-08-02 Jim Wilson <wilson@cygnus.com> diff --git a/gcc/flow.c b/gcc/flow.c index 3b5539e8319..0b92d48448c 100644 --- a/gcc/flow.c +++ b/gcc/flow.c @@ -5018,12 +5018,12 @@ find_auto_inc (pbi, x, insn) if (GET_CODE (y) != PLUS) return; - if (REGNO (XEXP (y, 0)) == REGNO (addr)) + if (REG_P (XEXP (y, 0)) && REGNO (XEXP (y, 0)) == REGNO (addr)) inc_val = XEXP (y, 1); - else if (REGNO (XEXP (y, 1)) == REGNO (addr)) + else if (REG_P (XEXP (y, 1)) && REGNO (XEXP (y, 1)) == REGNO (addr)) inc_val = XEXP (y, 0); else - abort (); + return; if (GET_CODE (inc_val) == CONST_INT) { |

