This is the mail archive of the
gcc-cvs@gcc.gnu.org
mailing list for the GCC project.
r189872 - in /trunk/gcc: ChangeLog config/sh/pr...
- From: olegendo at gcc dot gnu dot org
- To: gcc-cvs at gcc dot gnu dot org
- Date: Wed, 25 Jul 2012 23:03:09 -0000
- Subject: r189872 - in /trunk/gcc: ChangeLog config/sh/pr...
Author: olegendo
Date: Wed Jul 25 23:03:06 2012
New Revision: 189872
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=189872
Log:
PR target/54089
* config/sh/predicates.md (shift_count_operand): Handle not-SHMEDIA
case.
(p27_shift_count_operand, not_p27_shift_count_operand): New predicates.
* config/sh/sh.md (ashlsi3): Remove parallel and T_REG clobber
from expander. Do not emit shift insn for not-SHMEDIA case.
(ashlsi3_std): Replace with ...
(ashlsi3_k, ashlsi3_d): ... these new insns.
* config/sh/sh.c (gen_ashift): Make static. Add sanity checks.
Emit ashlsi3_k insn instead of ashlsi3_std in ASHIFT case.
(gen_ashift_hi): Make static.
* config/sh/sh-protos.h (gen_ashift, gen_ashift_hi): Remove forward
declaration.
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