[gcc r17-2616] AVR: Tweak lib1funcs-fixed.S::__mulQ64_work once more.
Georg-Johann Lay via Gcc-cvs <[email protected]>
| Newsgroups | gmane.comp.gcc.cvs |
|---|---|
| Message-ID | <[email protected]> |
https://gcc.gnu.org/g:8679354c031c9db739948881081cea342779fc6f commit r17-2616-g8679354c031c9db739948881081cea342779fc6f Author: Georg-Johann Lay <[email protected]> Date: Wed Jul 22 12:50:14 2026 +0200 AVR: Tweak lib1funcs-fixed.S::__mulQ64_work once more. libgcc/ * config/avr/lib1funcs-fixed.S (__mulQ64_work): Shave off one more instruction. Diff: --- libgcc/config/avr/lib1funcs-fixed.S | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/libgcc/config/avr/lib1funcs-fixed.S b/libgcc/config/avr/lib1funcs-fixed.S index e7f21ceca17e..37f8151480da 100644 --- a/libgcc/config/avr/lib1funcs-fixed.S +++ b/libgcc/config/avr/lib1funcs-fixed.S @@ -1192,11 +1192,10 @@ DEFUN __mulQ64_work set ; for signed XICALL ; __muluxx3.2 - ;; C = T = LSB (bit -1) from the unsigned mult. - bld __tmp_reg__, 7 - rol __tmp_reg__ ;; Adjust for signed Q formats that have one FBIT less. - rol A0 + lsl A0 + ;; Insert LSB from the unsigned mult. + bld A0, 0 rol A1 rol A2 rol A3