https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65214
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|UNCONFIRMED |RESOLVED
Target Milestone|--- |6.0
--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
In GCC 9+ we get:
```
_test:
mov.l r12,@-r15
mova .L8,r0
mov.l .L8,r12
mov #1,r2
add r0,r12
mov.l .L9,r0
mov.l @(r0,r12),r1
tst r1,r1
bt .L2
mov r1,r2
.L2:
mov.l .L10,r0
mov.l @(r0,r12),r3
mov.l @r15+,r12
mulu.w r1,r3
sts macl,r1
extu.b r1,r1
tst r2,r1
movt r0
rts
nop
```
There is only one extend now after the multiply.
Which was fixed by r6-2159-g9844173510418b then.