libc: Purge unneeded cdefs.hThese sys/cdefs.h are not needed. Purge them. They are mostly left-overfrom the $FreeBSD$ removal. A few in libc are still required for macrosthat cdefs.h defines. Kee
libc: Purge unneeded cdefs.hThese sys/cdefs.h are not needed. Purge them. They are mostly left-overfrom the $FreeBSD$ removal. A few in libc are still required for macrosthat cdefs.h defines. Keep those.Sponsored by: NetflixDifferential Revision: https://reviews.freebsd.org/D42385(cherry picked from commit 559a218c9b257775fb249b67945fe4a05b7a6b9f)
show more ...
Remove $FreeBSD$: one-line .c patternRemove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
csu: move common code to libcWhy? Most trivial point, it shaves around 600 bytes from the dynamicbinaries on amd64. Less trivial, the removed code is no longer part ofthe ABI, and we can ship upd
csu: move common code to libcWhy? Most trivial point, it shaves around 600 bytes from the dynamicbinaries on amd64. Less trivial, the removed code is no longer part ofthe ABI, and we can ship updates to it with libc updates. Right now mostof the csu is linked into the binaries and require us to do somewhattricky ABI compat when it needs to change. For instance, the init_arraychange would be much simpler and does not require note tagging if wehave init calling code in libc.This could be improved more, by splitting dynamic and staticinitialization. For instance, &_DYNAMIC tests can be removed then.Such change, nonetheless, would require building libc three times.I left this for later, after this change stabilizes, if ever.Reviewed by: markjDiscussed with: jrtc27 (some objections, see the review), impTested by: markj (aarch64)Sponsored by: The FreeBSD FoundationMFC after: 3 weeksDifferential revision: https://reviews.freebsd.org/D37220