Testing in glibc found a bug in one of my longlong.h sparc changes,
fixed thusly and committed to master.
libgcc/
* longlong.h [SPARC] (sub_ddmmss): Fix thinko in previous 64-bit
change.
---
libgcc/ChangeLog | 5 +++++
libgcc/longlong.h | 2 +-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/libgcc/ChangeLog b/libgcc/ChangeLog
index 9b4491c..bad8ec0 100644
--- a/libgcc/ChangeLog
+++ b/libgcc/ChangeLog
@@ -1,3 +1,8 @@
+2012-06-03 David S. Miller <[email protected]>
+
+ * longlong.h [SPARC] (sub_ddmmss): Fix thinko in previous 64-bit
+ change.
+
2012-05-31 David S. Miller <[email protected]>
* longlong.h [SPARC] (umul_ppmm, udiv_qrnnd): Use hardware integer
diff --git a/libgcc/longlong.h b/libgcc/longlong.h
index ad42907..0427718 100644
--- a/libgcc/longlong.h
+++ b/libgcc/longlong.h
@@ -1343,7 +1343,7 @@ UDItype __umulsidi3 (USItype, USItype);
__asm__ ("subcc\t%r5,%6,%1\n\t" \
"sub\t%r3,%4,%0\n\t" \
"movcs\t%%xcc, 1, %2\n\t" \
- "add\t%0, %2, %0" \
+ "sub\t%0, %2, %0" \
: "=r" ((UDItype)(sh)), \
"=&r" ((UDItype)(sl)), \
"+r" (__carry) \
--
1.7.10