sync with gnu/dist/gcc/config/sh/sh.md rev. 1.7
> apply original gcc rev. 1.29: > > * Guard insn splits against illegal regsiters.
This commit is contained in:
parent
4cf62149f5
commit
306d88f7e2
6
gnu/dist/toolchain/gcc/config/sh/sh.md
vendored
6
gnu/dist/toolchain/gcc/config/sh/sh.md
vendored
@ -2861,7 +2861,8 @@
|
||||
FAIL;
|
||||
reg = XEXP (addr, 0);
|
||||
const_int = XEXP (addr, 1);
|
||||
if (GET_CODE (reg) != REG || GET_CODE (const_int) != CONST_INT)
|
||||
if (! (BASE_REGISTER_RTX_P (reg) && INDEX_REGISTER_RTX_P (operands[2])
|
||||
&& GET_CODE (const_int) == CONST_INT))
|
||||
FAIL;
|
||||
emit_move_insn (operands[2], const_int);
|
||||
emit_move_insn (operands[0],
|
||||
@ -2887,7 +2888,8 @@
|
||||
FAIL;
|
||||
reg = XEXP (addr, 0);
|
||||
const_int = XEXP (addr, 1);
|
||||
if (GET_CODE (reg) != REG || GET_CODE (const_int) != CONST_INT)
|
||||
if (! (BASE_REGISTER_RTX_P (reg) && INDEX_REGISTER_RTX_P (operands[2])
|
||||
&& GET_CODE (const_int) == CONST_INT))
|
||||
FAIL;
|
||||
emit_move_insn (operands[2], const_int);
|
||||
emit_move_insn (change_address (operands[1], VOIDmode,
|
||||
|
Loading…
Reference in New Issue
Block a user