[Bug target/67637] New: [SH] Optimize {shll,shlr} {bf/bt} sequences
olegendo at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Sep 19 11:18:00 GMT 2015
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67637
Bug ID: 67637
Summary: [SH] Optimize {shll,shlr} {bf/bt} sequences
Product: gcc
Version: unknown
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: target
Assignee: unassigned at gcc dot gnu.org
Reporter: olegendo at gcc dot gnu.org
Target Milestone: ---
Target: sh*-*-*
There are some cases, where shll or shlr insns are used to conditionally branch
on the MSB or LSB of a reg.
The shll case has been mentioned in
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59533#c7
In the CSiBE set, lpgparse shows the shlr variant:
.L1573:
neg r1,r1
shld r1,r4
mov r4,r1
shlr r1
bf .L2333
On SH2A the bld insn can be used in this case. On non-SH2A it might be better
(at least for lpgparse) to use a tst #1,r0, because r0 is unused at that time.
More information about the Gcc-bugs
mailing list