svn commit: r245840 - head/sys/libkern

Andrew Turner andrew at FreeBSD.org
Wed Jan 23 09:18:19 UTC 2013


Author: andrew
Date: Wed Jan 23 09:18:18 2013
New Revision: 245840
URL: http://svnweb.freebsd.org/changeset/base/245840

Log:
  Add __aeabi_ulcmp to allow building of the LINT kernel.

Modified:
  head/sys/libkern/quad.h
  head/sys/libkern/ucmpdi2.c

Modified: head/sys/libkern/quad.h
==============================================================================
--- head/sys/libkern/quad.h	Wed Jan 23 08:54:34 2013	(r245839)
+++ head/sys/libkern/quad.h	Wed Jan 23 09:18:18 2013	(r245840)
@@ -110,4 +110,9 @@ u_quad_t	__udivdi3(u_quad_t a, u_quad_t 
 u_quad_t	__umoddi3(u_quad_t a, u_quad_t b);
 int		__ucmpdi2(u_quad_t a, u_quad_t b);
 
+/* ARM EABI support functions. */
+#ifdef __ARM_EABI__
+int		__aeabi_ulcmp(unsigned long long, unsigned long long);
+#endif
+
 #endif /* !_LIBKERN_QUAD_H_ */

Modified: head/sys/libkern/ucmpdi2.c
==============================================================================
--- head/sys/libkern/ucmpdi2.c	Wed Jan 23 08:54:34 2013	(r245839)
+++ head/sys/libkern/ucmpdi2.c	Wed Jan 23 09:18:18 2013	(r245840)
@@ -51,3 +51,15 @@ __ucmpdi2(a, b)
 	return (aa.ul[H] < bb.ul[H] ? 0 : aa.ul[H] > bb.ul[H] ? 2 :
 	    aa.ul[L] < bb.ul[L] ? 0 : aa.ul[L] > bb.ul[L] ? 2 : 1);
 }
+
+#ifdef __ARM_EABI__
+/*
+ * Return -1, 0 or 1 as a <, =, > b respectively.
+ */
+int
+__aeabi_ulcmp(unsigned long long a, unsigned long long b)
+{
+	return __ucmpdi2(a, b) - 1;
+}
+#endif
+


More information about the svn-src-all mailing list