This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug target/54089] [SH] Refactor shift patterns
- From: "olegendo at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 16 Oct 2012 11:49:14 +0000
- Subject: [Bug target/54089] [SH] Refactor shift patterns
- Auto-submitted: auto-generated
- References: <bug-54089-4@http.gcc.gnu.org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54089
--- Comment #23 from Oleg Endo <olegendo at gcc dot gnu.org> 2012-10-16 11:49:14 UTC ---
(In reply to comment #22)
> (In reply to comment #0)
> > The code related to shift patterns in sh.c / sh.md maybe could use some
> > improvements here and there. In some places clobbers and scratch regs could be
> > avoided.
> > There is also a large part that deals with minimizing and-shift/shift-and
> > sequences, but there are no test cases to verify that those actually work.
> > It would also be interesting to see, whether some of the and-shift/shift-and
> > combine code could be reduced due to improvements in the middle-end.
>
> Be careful with removing 'useless' clobbers, as they might be needed to
> facilitate instruction combinations into patterns that have these clobbers.
Yeah, I've noticed ;)
Logical left/right shifts are now expanded into T-clobbering and
non-T-clobbering pattern variations.