Module Name:    src
Committed By:   riastradh
Date:           Tue May  7 22:29:53 UTC 2024

Modified Files:
        src/lib/libm/arch/m68060: makeas.sh

Log Message:
lib/libm/arch/m68060/makeas.sh: Create public weak aliases.

Use _foo for internal names, and weak alias foo when it's public like
sin/cos/tan.


To generate a diff of this commit:
cvs rdiff -u -r1.14 -r1.15 src/lib/libm/arch/m68060/makeas.sh

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/lib/libm/arch/m68060/makeas.sh
diff -u src/lib/libm/arch/m68060/makeas.sh:1.14 src/lib/libm/arch/m68060/makeas.sh:1.15
--- src/lib/libm/arch/m68060/makeas.sh:1.14	Tue May  7 22:19:42 2024
+++ src/lib/libm/arch/m68060/makeas.sh	Tue May  7 22:29:53 2024
@@ -1,6 +1,6 @@
 #!/bin/sh
 
-# $NetBSD: makeas.sh,v 1.14 2024/05/07 22:19:42 riastradh Exp $
+# $NetBSD: makeas.sh,v 1.15 2024/05/07 22:29:53 riastradh Exp $
 
 # Copyright (c) 1999, 2000 Ignatios Souvatzis
 # All rights reserved.
@@ -27,7 +27,7 @@
 
 set -eu
 
-RCSID='$NetBSD: makeas.sh,v 1.14 2024/05/07 22:19:42 riastradh Exp $'
+RCSID='$NetBSD: makeas.sh,v 1.15 2024/05/07 22:29:53 riastradh Exp $'
 
 RCSID=${RCSID#\$}
 RCSID=${RCSID% \$}
@@ -61,19 +61,20 @@ linebreak () {
 }
 
 mk () {
-	local NAME OFFS THESRC
+	local NAME ALIAS OFFS THESRC
 
 	NAME=$1
-	OFFS=$2
-	THESRC=$3.S
-	shift; shift; shift
+	ALIAS=$2
+	OFFS=$3
+	THESRC=$4.S
+	shift; shift; shift; shift
 
 	echo -n " " ${THESRC} >> $FILELIST
 	/bin/cat > ${THESRC} << EOJ
 /* \$NetBSD\$ */
 
 /*
- * FPLSP wrapper for $NAME
+ * FPLSP wrapper for ${ALIAS:-$NAME}
  * DO NOT EDIT - this file is automatically generated by:
  *
  *	$RCSID
@@ -81,6 +82,14 @@ mk () {
 
 #include <machine/asm.h>
 
+EOJ
+	if [ -n "$ALIAS" ]; then
+		/bin/cat >> ${THESRC} << EOJ
+WEAK_ALIAS($ALIAS, $NAME)
+
+EOJ
+	fi
+	/bin/cat >> ${THESRC} << EOJ
 ENTRY($NAME)
 #ifdef __SVR4_ABI__
 	bral PIC_PLT(_C_LABEL(__fplsp060_$OFFS))
@@ -98,19 +107,20 @@ EOJ
 }
 
 mks () {
-	local NAME OFFS THESRC
+	local NAME ALIAS OFFS THESRC
 
 	NAME=$1
-	OFFS=$2
-	THESRC=$3.S
-	shift; shift; shift
+	ALIAS=$2
+	OFFS=$3
+	THESRC=$4.S
+	shift; shift; shift; shift
 
 	echo -n " " ${THESRC} >> $FILELIST
 	/bin/cat > ${THESRC} << EOJ
 /* \$NetBSD\$ */
 
 /*
- * FPLSP wrapper for $NAME
+ * FPLSP wrapper for ${ALIAS:-$NAME}
  * DO NOT EDIT - this file is automatically generated by:
  *
  *	$RCSID
@@ -118,6 +128,14 @@ mks () {
 
 #include <machine/asm.h>
 
+EOJ
+	if [ -n "$ALIAS" ]; then
+		/bin/cat >> ${THESRC} << EOJ
+WEAK_ALIAS($ALIAS, $NAME)
+
+EOJ
+	fi
+	/bin/cat >> ${THESRC} << EOJ
 ENTRY($NAME)
 #ifdef __SVR4_ABI__
 	bral PIC_PLT(_C_LABEL(__fplsp060_$OFFS))
@@ -164,48 +182,48 @@ EOJ
 
 echo -n ARCH_SRCS = >> $FILELIST
 
-mks	__ieee754_acosf		0000	e_acosf
-mk	__ieee754_acos		0008	e_acos
-mks	__ieee754_asinf		0018	e_asinf
-mk	__ieee754_asin		0020	e_asin
-linebreak
-mks	atanf			0030	s_atanf
-mk	atan			0038	s_atan
-mks	__ieee754_atanhf	0048	e_atanhf
-mk	__ieee754_atanh		0050	e_atanh
-linebreak
-mks	cosf			0060	s_cosf
-mk	cos			0068	s_cos
-mks	__ieee754_coshf		0078	e_coshf
-mk	__ieee754_cosh		0080	e_cosh
-linebreak
-mks	__ieee754_expf		0090	e_expf
-mk	__ieee754_exp		0098	e_exp
-mks	expm1f			00a8	s_expm1f
-mk	expm1			00b0	s_expm1
-linebreak
-mks	__ieee754_log10f	00f0	e_log10f
-mk	__ieee754_log10		00f8	e_log10
-mks	logbf			0108	s_logbf
-mk	logb			0110	s_logb
-linebreak
-mks	__ieee754_logf		0120	e_logf
-mk	__ieee754_log		0128	e_log
-mks	log1pf			0138	s_log1pf
-mk	log1p			0140	s_log1p
-linebreak
-mks	sinf			0198	s_sinf
-mk	sin			01a0	s_sin
-mks	__ieee754_sinhf		01c8	e_sinhf
-mk	__ieee754_sinh		01d0	e_sinh
-linebreak
-mks	tanf			01e0	s_tanf k_tanf
-mk	tan			01e8	s_tan k_tan
-mks	tanhf			01f8	s_tanhf
-mk	tanh			0200	s_tanh
+mks	__ieee754_acosf	''	0000	e_acosf
+mk	__ieee754_acos	''	0008	e_acos
+mks	__ieee754_asinf	''	0018	e_asinf
+mk	__ieee754_asin	''	0020	e_asin
+linebreak
+mks	_atanf		atanf	0030	s_atanf
+mk	_atan		atan	0038	s_atan
+mks	__ieee754_atanhf ''	0048	e_atanhf
+mk	__ieee754_atanh	''	0050	e_atanh
+linebreak
+mks	_cosf		cosf	0060	s_cosf
+mk	_cos		cos	0068	s_cos
+mks	__ieee754_coshf	''	0078	e_coshf
+mk	__ieee754_cosh	''	0080	e_cosh
+linebreak
+mks	__ieee754_expf	''	0090	e_expf
+mk	__ieee754_exp	''	0098	e_exp
+mks	_expm1f		expm1f	00a8	s_expm1f
+mk	_expm1		expm1	00b0	s_expm1
+linebreak
+mks	__ieee754_log10f ''	00f0	e_log10f
+mk	__ieee754_log10	''	00f8	e_log10
+mks	_logbf		logbf	0108	s_logbf
+mk	_logb		logb	0110	s_logb
+linebreak
+mks	__ieee754_logf	''	0120	e_logf
+mk	__ieee754_log	''	0128	e_log
+mks	_log1pf		log1pf	0138	s_log1pf
+mk	_log1p		log1p	0140	s_log1p
+linebreak
+mks	_sinf		sinf	0198	s_sinf
+mk	_sin		sin	01a0	s_sin
+mks	__ieee754_sinhf	''	01c8	e_sinhf
+mk	__ieee754_sinh	''	01d0	e_sinh
+linebreak
+mks	_tanf		tanf	01e0	s_tanf k_tanf
+mk	_tan		tan	01e8	s_tan k_tan
+mks	_tanhf		tanhf	01f8	s_tanhf
+mk	_tanh		tanh	0200	s_tanh
 linebreak
-mks	__ieee754_sqrtf		02e8	e_sqrtf
-mk	__ieee754_sqrt		02f0	e_sqrt
+mks	__ieee754_sqrtf	''	02e8	e_sqrtf
+mk	__ieee754_sqrt	''	02f0	e_sqrt
 
 /bin/cat >> ${REALCODE} << EOJ
 

Reply via email to