gcc/libgcc
Oleg Endo aadb5b43ae re PR target/54089 ([SH] Refactor shift patterns)
PR target/54089
	* config/sh/sh.h (SH_DYNAMIC_SHIFT_COST): Set always to 1 if
	dynamic shifts are available.
	(SHIFT_COUNT_TRUNCATED): Always define to 0.  Correct comment.
	* config/sh/sh.c (ashl_lshr_seq, ext_ashl_lshr_seq): Add comments.
	* config/sh/predicates.md (shift_count_operand): Allow
	arith_reg_operand even if TARGET_DYNSHIFT is false.
	* config/sh/sh.md (ashlsi3, lshrsi3): Expand library call patterns
	if needed.
	(ashlsi3_d_call, lshrsi3_d_call): New insns.

	PR target/54089
	* config/sh/lib1funcs.S (ashlsi3): Reimplement as ashlsi3_r0.
	(lshrsi3): Reimplement as lshrsi3_r0.

	PR target/54089
	* gcc.target/sh/pr54089-3.c: New.

From-SVN: r191161
2012-09-10 20:35:25 +00:00
..
2012-05-29 15:54:22 +01:00
2012-05-29 15:54:22 +01:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00
2011-11-02 15:23:48 +00:00