http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51244



--- Comment #56 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-10-15 
22:08:14 UTC ---

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

Reply via email to