diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 6c3aa16affdff85d413de007574d7715d69757dc..7a384a359bfbf40d33fa3847d235abe205847ce3 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,9 @@
+2004-11-05  Ramana Radhakrishnan  <ramana.radhakrishnan@codito.com>
+
+	PR target/18263
+	* config/arc/lib1funcs.asm (___umulsidi3): Change use of cmp to the
+	equivalent on the A4.
+
 2004-11-05  Joseph S. Myers  <joseph@codesourcery.com>
 
 	* doc/c-tree.texi, doc/cfg.texi, doc/contrib.texi, doc/cpp.texi,
diff --git a/gcc/config/arc/lib1funcs.asm b/gcc/config/arc/lib1funcs.asm
index 56a865cec326dbf9c38ffc880285d7de7171762b..8b591c19213e13c1314a291928e5464b2d940902 100644
--- a/gcc/config/arc/lib1funcs.asm
+++ b/gcc/config/arc/lib1funcs.asm
@@ -89,7 +89,7 @@ ___umulsidi3:
 	nop
 	beq.nd .Ldone
 	and.f 0,r0,1		; if (a & 1)
-	cmp r0,0
+	sub.f 0,r0,0
 	nop
 	beq .Ldontadd
 	add.f r4,r4,r1		; r += b