[patch,avr] Fix PR66956: Uses 32->64 widening mul instead of 32-bit mul libcall without MUL.

Denis Chertykov chertykov@gmail.com
Tue Jul 21 16:52:00 GMT 2015


2015-07-21 15:54 GMT+03:00 Georg-Johann Lay <avr@gjlay.de>:
> This works around an assumption in optabs, namely that if a widening-mul
> insn is available but no mul<mode>3 insn, then the widening multiplication
> insn is preferred over expanding the <mode> multiply as a libcall.
>
> The problem occurs only if !AVR_HAVE_MUL, so I added that condition to
> respective mulsidi3 patterns in avr-dimode.md.
>
> Ok for trunk, 5-branch and 4_9-branch?


Approved.
Please commit.

>
>
>         PR target/66956
>         * config/avr/avr-dimode.md (<extend_u>mulsidi3_insn)
>         (<extend_u>mulsidi3): Don't use if !AVR_HAVE_MUL.
>



More information about the Gcc-patches mailing list