[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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.