History log of /src/lib/libm/m.mips64.expsym
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: perseant-exfatfs-base-20250801 netbsd-11-base
# 1.4 21-Nov-2024 riastradh

bsd.lib.mk: Exclude MD linker-generated crud from expected symbols.

Not entirely sure why these symbols like _init/_fini/_end on x86 or
__bss_start__/__bss_end__ on aarch64 or _GLOBAL_OFFSET_TABLE_ on hppa
are exported at all, but it's something the linker is doing
automatically -- and unnecessarily, since libraries with explicit
version scripts don't export these -- and I'm not sure there's any way
to suppress it.

This way, most *.expsym lists can be machine-independent, which will
help keep maintenance burden much lower.

Currently we have only one *.expsym file for a library that _doesn't_
use a version script, libm -- fix that up to reduce the crud. (That
one already happens to have a lot of machine-dependent exports
because of differences in floating-point ABIs so the linker-generated
MD symbol crud wasn't much more of a maintenance burden in this case,
but this maintenance burden is why I haven't aggressively gone around
creating *.expsym files for other libraries.)


Revision tags: perseant-exfatfs-base-20240630 perseant-exfatfs-base
# 1.3 09-Jun-2024 riastradh

branches: 1.3.2;
libm: Factor out common expected symbol list.

Should substantially reduce the maintenance burden.


# 1.2 09-Jun-2024 riastradh

libm: Do the weak alias dance for asin, acos, atan.

These are used internally by the complex trig functions, so they need
weak aliases.


# 1.1 09-May-2024 riastradh

libm: Split expected symbols in mips further by 32-bit vs 64-bit.

32-bit has binary64 long double, same as double; 64-bit has binary128
long double, which is implemented with a few more symbols in libm
(which should maybe be hidden internal symbols, but let's get this
diagnostic measure in the build working before we think about
possibly deleting private symbols).