Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/common/lib/libc/quad Add ARM EABI aliases to a few functions.



details:   https://anonhg.NetBSD.org/src/rev/c4f4bc43e19e
branches:  trunk
changeset: 780793:c4f4bc43e19e
user:      matt <matt%NetBSD.org@localhost>
date:      Mon Aug 06 02:31:54 2012 +0000

description:
Add ARM EABI aliases to a few functions.

diffstat:

 common/lib/libc/quad/ashrdi3.c |  6 ++++--
 common/lib/libc/quad/lshldi3.c |  6 ++++--
 common/lib/libc/quad/lshrdi3.c |  6 ++++--
 common/lib/libc/quad/muldi3.c  |  6 ++++--
 common/lib/libc/quad/quad.h    |  8 +++++++-
 5 files changed, 23 insertions(+), 9 deletions(-)

diffs (122 lines):

diff -r 77975ad6b83c -r c4f4bc43e19e common/lib/libc/quad/ashrdi3.c
--- a/common/lib/libc/quad/ashrdi3.c    Mon Aug 06 02:15:51 2012 +0000
+++ b/common/lib/libc/quad/ashrdi3.c    Mon Aug 06 02:31:54 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: ashrdi3.c,v 1.3 2012/03/09 15:41:16 christos Exp $     */
+/*     $NetBSD: ashrdi3.c,v 1.4 2012/08/06 02:31:54 matt Exp $ */
 
 /*-
  * Copyright (c) 1992, 1993
@@ -38,12 +38,14 @@
 #if 0
 static char sccsid[] = "@(#)ashrdi3.c  8.1 (Berkeley) 6/4/93";
 #else
-__RCSID("$NetBSD: ashrdi3.c,v 1.3 2012/03/09 15:41:16 christos Exp $");
+__RCSID("$NetBSD: ashrdi3.c,v 1.4 2012/08/06 02:31:54 matt Exp $");
 #endif
 #endif /* LIBC_SCCS and not lint */
 
 #include "quad.h"
 
+ARM_EABI_ALIAS(__aeabi_lasr, __ashrdi3)        /* no semicolon */
+
 /*
  * Shift a (signed) quad value right (arithmetic shift right).
  */
diff -r 77975ad6b83c -r c4f4bc43e19e common/lib/libc/quad/lshldi3.c
--- a/common/lib/libc/quad/lshldi3.c    Mon Aug 06 02:15:51 2012 +0000
+++ b/common/lib/libc/quad/lshldi3.c    Mon Aug 06 02:31:54 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: lshldi3.c,v 1.2 2009/03/15 22:31:12 cegger Exp $       */
+/*     $NetBSD: lshldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $ */
 
 /*-
  * Copyright (c) 1992, 1993
@@ -38,12 +38,14 @@
 #if 0
 static char sccsid[] = "@(#)lshldi3.c  8.1 (Berkeley) 6/4/93";
 #else
-__RCSID("$NetBSD: lshldi3.c,v 1.2 2009/03/15 22:31:12 cegger Exp $");
+__RCSID("$NetBSD: lshldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $");
 #endif
 #endif /* LIBC_SCCS and not lint */
 
 #include "quad.h"
 
+ARM_EABI_ALIAS(__aeabi_llsl, __lshldi3)        /* no semicolon */
+
 /*
  * Shift an (unsigned) quad value left (logical shift left).
  * This is the same as arithmetic shift left!
diff -r 77975ad6b83c -r c4f4bc43e19e common/lib/libc/quad/lshrdi3.c
--- a/common/lib/libc/quad/lshrdi3.c    Mon Aug 06 02:15:51 2012 +0000
+++ b/common/lib/libc/quad/lshrdi3.c    Mon Aug 06 02:31:54 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: lshrdi3.c,v 1.3 2012/03/09 15:41:16 christos Exp $     */
+/*     $NetBSD: lshrdi3.c,v 1.4 2012/08/06 02:31:54 matt Exp $ */
 
 /*-
  * Copyright (c) 1992, 1993
@@ -38,12 +38,14 @@
 #if 0
 static char sccsid[] = "@(#)lshrdi3.c  8.1 (Berkeley) 6/4/93";
 #else
-__RCSID("$NetBSD: lshrdi3.c,v 1.3 2012/03/09 15:41:16 christos Exp $");
+__RCSID("$NetBSD: lshrdi3.c,v 1.4 2012/08/06 02:31:54 matt Exp $");
 #endif
 #endif /* LIBC_SCCS and not lint */
 
 #include "quad.h"
 
+ARM_EABI_ALIAS(__aeabi_llsr, __lshrdi3)        /* no semicolon */
+
 /*
  * Shift an (unsigned) quad value right (logical shift right).
  */
diff -r 77975ad6b83c -r c4f4bc43e19e common/lib/libc/quad/muldi3.c
--- a/common/lib/libc/quad/muldi3.c     Mon Aug 06 02:15:51 2012 +0000
+++ b/common/lib/libc/quad/muldi3.c     Mon Aug 06 02:31:54 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: muldi3.c,v 1.2 2009/03/15 22:31:12 cegger Exp $        */
+/*     $NetBSD: muldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $  */
 
 /*-
  * Copyright (c) 1992, 1993
@@ -38,12 +38,14 @@
 #if 0
 static char sccsid[] = "@(#)muldi3.c   8.1 (Berkeley) 6/4/93";
 #else
-__RCSID("$NetBSD: muldi3.c,v 1.2 2009/03/15 22:31:12 cegger Exp $");
+__RCSID("$NetBSD: muldi3.c,v 1.3 2012/08/06 02:31:54 matt Exp $");
 #endif
 #endif /* LIBC_SCCS and not lint */
 
 #include "quad.h"
 
+ARM_EABI_ALIAS(__aeabi_lmul, __muldi3) /* no semicolon */
+
 /*
  * Multiply two quads.
  *
diff -r 77975ad6b83c -r c4f4bc43e19e common/lib/libc/quad/quad.h
--- a/common/lib/libc/quad/quad.h       Mon Aug 06 02:15:51 2012 +0000
+++ b/common/lib/libc/quad/quad.h       Mon Aug 06 02:31:54 2012 +0000
@@ -1,4 +1,4 @@
-/*     $NetBSD: quad.h,v 1.6 2012/03/20 16:21:41 matt Exp $    */
+/*     $NetBSD: quad.h,v 1.7 2012/08/06 02:31:54 matt Exp $    */
 
 /*-
  * Copyright (c) 1992, 1993
@@ -58,6 +58,12 @@
 #include <machine/limits.h>
 #endif
 
+#if defined(__ARM_EABI__) && !defined(lint)
+#define        ARM_EABI_ALIAS(alias,sym)       __strong_alias(alias,sym);
+#else
+#define        ARM_EABI_ALIAS(alias,sym)       /* nothing */
+#endif
+
 /*
  * Depending on the desired operation, we view a `long long' (aka quad_t) in
  * one or more of the following formats.



Home | Main Index | Thread Index | Old Index