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

--- Comment #40 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-07-02 
19:24:03 UTC ---
Author: olegendo
Date: Mon Jul  2 19:23:56 2012
New Revision: 189177

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189177
Log:
    PR target/51244
    * config/sh/predicates.md (t_reg_operand, negt_reg_operand): New
    predicates.
    * config/sh/sh-protos.h (get_t_reg_rtx): New prototype.
    * config/sh/sh.c (get_t_reg_rtx): New function.  Use it when invoking
    gen_branch_true and gen_branch_false.
    * config/sh/sh.md: Use get_t_reg_rtx when invoking gen_branch_true and
    gen_branch_false.
    (branch_true, branch_false): Use t_reg_operand predicate.
    (*branch_true, *branch_false): Delete.
    (movt): Use t_reg_operand predicate.
    (*negnegt): Use negt_reg_operand predicate and fold little and big
    endian variants.
    (*movtt): Use t_reg_operand and fold little and big endian variants.
    (*movt_qi): Delete.

    PR target/51244
    * gcc.target/sh/pr51244-1.c: Check that movt insn is not generated.


Modified:
    trunk/gcc/ChangeLog
    trunk/gcc/config/sh/predicates.md
    trunk/gcc/config/sh/sh-protos.h
    trunk/gcc/config/sh/sh.c
    trunk/gcc/config/sh/sh.md
    trunk/gcc/testsuite/ChangeLog
    trunk/gcc/testsuite/gcc.target/sh/pr51244-1.c

Reply via email to