Commit be82afe6 by Oleg Endo

re PR target/54089 ([SH] Refactor shift patterns)

	PR target/54089
	* config/sh/sh.md (ashlsi3_d): Invoke gen_shifty_op directly instead
	of trying to emit ashlsi3_n.

From-SVN: r189952
parent c0fd3497
2012-07-30 Oleg Endo <olegendo@gcc.gnu.org>
PR target/54089
* config/sh/sh.md (ashlsi3_d): Invoke gen_shifty_op directly instead
of trying to emit ashlsi3_n.
2012-07-30 Laurynas Biveinis <laurynas.biveinis@gmail.com>
Steven Bosscher <steven@gcc.gnu.org>
......
......@@ -3533,7 +3533,12 @@ label:
}
else if (!satisfies_constraint_P27 (operands[2]))
{
emit_insn (gen_ashlsi3_n (operands[0], operands[1], operands[2]));
/* This must happen before reload, otherwise the constant will be moved
into a register due to the "r" constraint, after which this split
cannot be done anymore.
Unfortunately the move insn will not always be eliminated. */
emit_move_insn (operands[0], operands[1]);
gen_shifty_op (ASHIFT, operands);
DONE;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment