From a44d16efa7a508f8b8f303417d0714c39f159725 Mon Sep 17 00:00:00 2001
From: Georg-Johann Lay <avr@gjlay.de>
Date: Sun, 21 Apr 2024 14:33:50 +0200
Subject: [PATCH] AVR: target/114794 - Tweak __udivmodqi4

libgcc/
	PR target/114794
	* config/avr/lib1funcs.S (__udivmodqi4): Tweak.
---
 libgcc/config/avr/lib1funcs.S | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/libgcc/config/avr/lib1funcs.S b/libgcc/config/avr/lib1funcs.S
index 535510ab8672..af4d7d970169 100644
--- a/libgcc/config/avr/lib1funcs.S
+++ b/libgcc/config/avr/lib1funcs.S
@@ -1339,9 +1339,9 @@ ENDF __umulsidi3
 
 #if defined (L_udivmodqi4)
 DEFUN __udivmodqi4
-	sub	r_rem,r_rem	; clear remainder and carry
-	ldi	r_cnt,9		; init loop counter
-	rjmp	__udivmodqi4_ep	; jump to entry point
+	clr	r_rem		; clear remainder
+	ldi	r_cnt,8		; init loop counter
+	lsl	r_arg1		; shift dividend
 __udivmodqi4_loop:
 	rol	r_rem		; shift dividend into remainder
 	cp	r_rem,r_arg2	; compare remainder & divisor
-- 
GitLab