diff options
author | Jim Wilson <wilson@gcc.gnu.org> | 1995-03-29 14:34:41 -0800 |
---|---|---|
committer | Jim Wilson <wilson@gcc.gnu.org> | 1995-03-29 14:34:41 -0800 |
commit | ce79abf32c694488933ef4594f8adfe6317236d7 (patch) | |
tree | d5aada273c05f1a3442bea939fd032cf3ee2e041 /gcc/flow.c | |
parent | b88277f9f40e1f5b92861d1b3fcf76c5bc8f87f8 (diff) | |
download | gcc-ce79abf32c694488933ef4594f8adfe6317236d7.zip gcc-ce79abf32c694488933ef4594f8adfe6317236d7.tar.gz gcc-ce79abf32c694488933ef4594f8adfe6317236d7.tar.bz2 |
(mark_used_regs, case SUBREG): Only fall through to REG case
if operand is a REG.
From-SVN: r9247
Diffstat (limited to 'gcc/flow.c')
-rw-r--r-- | gcc/flow.c | 5 |
1 files changed, 5 insertions, 0 deletions
@@ -2385,6 +2385,11 @@ mark_used_regs (needed, live, x, final, insn) /* While we're here, optimize this case. */ x = SUBREG_REG (x); + /* Must verify that it is a register, since the RS/6000 port has + (subreg:QI (lshift:SI ...)). */ + if (GET_CODE (x) != REG) + goto retry; + /* ... fall through ... */ case REG: |