r192481 - in /trunk/gcc: ChangeLog config/sh/sh...
olegendo@gcc.gnu.org
olegendo@gcc.gnu.org
Mon Oct 15 22:08:00 GMT 2012
Author: olegendo
Date: Mon Oct 15 22:08:07 2012
New Revision: 192481
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=192481
Log:
PR target/51244
* config/sh/sh-protos.h (set_of_reg): New struct.
(sh_find_set_of_reg, sh_is_logical_t_store_expr,
sh_try_omit_signzero_extend): Declare...
* config/sh/sh.c (sh_find_set_of_reg, sh_is_logical_t_store_expr,
sh_try_omit_signzero_extend): ...these new functions.
* config/sh/sh.md (*logical_op_t): New insn_and_split.
(*zero_extend<mode>si2_compact): Use sh_try_omit_signzero_extend
in splitter.
(*extend<mode>si2_compact_reg): Convert to insn_and_split.
Use sh_try_omit_signzero_extend in splitter.
(*mov<mode>_reg_reg): Disallow t_reg_operand as operand 1.
(*cbranch_t): Rewrite combine part in splitter using new
sh_find_set_of_reg function.
PR target/51244
* gcc.target/sh/pr51244-17.c: New.
Added:
trunk/gcc/testsuite/gcc.target/sh/pr51244-17.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/sh/sh-protos.h
trunk/gcc/config/sh/sh.c
trunk/gcc/config/sh/sh.md
trunk/gcc/testsuite/ChangeLog
More information about the Gcc-cvs
mailing list