diff options
author | abel <abel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-19 10:03:39 +0000 |
---|---|---|
committer | abel <abel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-19 10:03:39 +0000 |
commit | 775be97ebc5826d7261eca15641185d5cbecb4f9 (patch) | |
tree | 0c5119003967ec2c376ca440652e2f63b362c091 /gcc/sel-sched.c | |
parent | 112748540cdcf18c74628c345e8cf0b1223d811e (diff) | |
download | gcc-775be97ebc5826d7261eca15641185d5cbecb4f9.tar.gz |
PR rtl-optimization/44691
* sel-sched.c (count_occurrences_1): Also punt when SUBREG_REG
is not a register.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163369 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/sel-sched.c')
-rw-r--r-- | gcc/sel-sched.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/sel-sched.c b/gcc/sel-sched.c index 3a86e22feef..534c55ca470 100644 --- a/gcc/sel-sched.c +++ b/gcc/sel-sched.c @@ -835,7 +835,8 @@ count_occurrences_1 (rtx *cur_rtx, void *arg) if (GET_CODE (*cur_rtx) == SUBREG && REG_P (p->x) - && REGNO (SUBREG_REG (*cur_rtx)) == REGNO (p->x)) + && (!REG_P (SUBREG_REG (*cur_rtx)) + || REGNO (SUBREG_REG (*cur_rtx)) == REGNO (p->x))) { /* ??? Do not support substituting regs inside subregs. In that case, simplify_subreg will be called by validate_replace_rtx, and |