From owner-svn-src-projects@FreeBSD.ORG  Mon Feb  6 07:18:59 2012
Return-Path: <owner-svn-src-projects@FreeBSD.ORG>
Delivered-To: svn-src-projects@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id B67D9106566B;
	Mon,  6 Feb 2012 07:18:59 +0000 (UTC)
	(envelope-from andrew@FreeBSD.org)
Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c])
	by mx1.freebsd.org (Postfix) with ESMTP id 8B14C8FC13;
	Mon,  6 Feb 2012 07:18:59 +0000 (UTC)
Received: from svn.freebsd.org (localhost [127.0.0.1])
	by svn.freebsd.org (8.14.4/8.14.4) with ESMTP id q167Ixh7021701;
	Mon, 6 Feb 2012 07:18:59 GMT (envelope-from andrew@svn.freebsd.org)
Received: (from andrew@localhost)
	by svn.freebsd.org (8.14.4/8.14.4/Submit) id q167Ixe9021698;
	Mon, 6 Feb 2012 07:18:59 GMT (envelope-from andrew@svn.freebsd.org)
Message-Id: <201202060718.q167Ixe9021698@svn.freebsd.org>
From: Andrew Turner <andrew@FreeBSD.org>
Date: Mon, 6 Feb 2012 07:18:59 +0000 (UTC)
To: src-committers@freebsd.org, svn-src-projects@freebsd.org
X-SVN-Group: projects
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Cc: 
Subject: svn commit: r231062 - projects/arm_eabi/contrib/compiler-rt/lib
X-BeenThere: svn-src-projects@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: "SVN commit messages for the src &quot; projects&quot;
	tree" <svn-src-projects.freebsd.org>
List-Unsubscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, 
	<mailto:svn-src-projects-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/svn-src-projects>
List-Post: <mailto:svn-src-projects@freebsd.org>
List-Help: <mailto:svn-src-projects-request@freebsd.org?subject=help>
List-Subscribe: <http://lists.freebsd.org/mailman/listinfo/svn-src-projects>, 
	<mailto:svn-src-projects-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Feb 2012 07:18:59 -0000

Author: andrew
Date: Mon Feb  6 07:18:59 2012
New Revision: 231062
URL: http://svn.freebsd.org/changeset/base/231062

Log:
  Implement __aeabi_{d,f}cmp*

Modified:
  projects/arm_eabi/contrib/compiler-rt/lib/comparedf2.c
  projects/arm_eabi/contrib/compiler-rt/lib/comparesf2.c

Modified: projects/arm_eabi/contrib/compiler-rt/lib/comparedf2.c
==============================================================================
--- projects/arm_eabi/contrib/compiler-rt/lib/comparedf2.c	Mon Feb  6 07:16:13 2012	(r231061)
+++ projects/arm_eabi/contrib/compiler-rt/lib/comparedf2.c	Mon Feb  6 07:18:59 2012	(r231062)
@@ -130,3 +130,31 @@ enum GE_RESULT __gtdf2(fp_t a, fp_t b) {
     return __gedf2(a, b);
 }
 
+#ifdef __ARM_EABI__
+// The following are required for the ARM EABI.
+
+int __aeabi_dcmpeq(fp_t a, fp_t b) {
+    return __ledf2(a, b) == 0;
+}
+
+int __aeabi_dcmplt(fp_t a, fp_t b) {
+    return __ledf2(a, b) < 0;
+}
+
+int __aeabi_dcmple(fp_t a, fp_t b) {
+    return __ledf2(a, b) <= 0;
+}
+
+int __aeabi_dcmpge(fp_t a, fp_t b) {
+    return __gedf2(a, b) >= 0;
+}
+
+int __aeabi_dcmpgt(fp_t a, fp_t b) {
+    return __gedf2(a, b) > 0;
+}
+
+int __aeabi_dcmpun(fp_t a, fp_t b) {
+    return __unorddf2(a, b);
+}
+#endif
+

Modified: projects/arm_eabi/contrib/compiler-rt/lib/comparesf2.c
==============================================================================
--- projects/arm_eabi/contrib/compiler-rt/lib/comparesf2.c	Mon Feb  6 07:16:13 2012	(r231061)
+++ projects/arm_eabi/contrib/compiler-rt/lib/comparesf2.c	Mon Feb  6 07:18:59 2012	(r231062)
@@ -129,3 +129,32 @@ enum LE_RESULT __nesf2(fp_t a, fp_t b) {
 enum GE_RESULT __gtsf2(fp_t a, fp_t b) {
     return __gesf2(a, b);
 }
+
+#ifdef __ARM_EABI__
+// The following are required for the ARM EABI.
+
+int __aeabi_fcmpeq(fp_t a, fp_t b) {
+    return __lesf2(a, b) == 0;
+}
+
+int __aeabi_fcmplt(fp_t a, fp_t b) {
+    return __lesf2(a, b) < 0;
+}
+
+int __aeabi_fcmple(fp_t a, fp_t b) {
+    return __lesf2(a, b) <= 0;
+}
+
+int __aeabi_fcmpge(fp_t a, fp_t b) {
+    return __gesf2(a, b) >= 0;
+}
+
+int __aeabi_fcmpgt(fp_t a, fp_t b) {
+    return __gesf2(a, b) > 0;
+}
+
+int __aeabi_fcmpun(fp_t a, fp_t b) {
+    return __unordsf2(a, b);
+}
+#endif
+