authorgravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-09-11 18:42:57+02:00
committergravatar for alex@alexrp.comAlex Rønne Petersen <alex@alexrp.com> 2025-09-11 23:28:26+02:00
log4972c987fd41d897148c23ea2e1308811bd797a7
treeb2ddf39c77ca029437484587e86188b69a349f90
parent6b8cef81076dd4577d7b053b555432ea1805d5e5

compiler-rt: export __aeabi_read_tp for arm-freebsd

FreeBSD normally provides this symbol in libc, but it's in the FBSDprivate_1.0 namespace, so it doesn't get included in our abilists file. Fortunately, the implementation is identical for Linux and FreeBSD, so we can just provide it in compiler-rt. It's interesting to note that the same is not true for NetBSD where the implementation is more complex to support older Arm versions. But we do include the symbol in our abilists file for NetBSD libc, so that's fine. closes #25215

1 files changed, 1 insertions(+), 1 deletions(-)

lib/compiler_rt/arm.zig+1-1
......@@ -37,7 +37,7 @@ comptime {
3737 @export(&__aeabi_memclr4, .{ .name = "__aeabi_memclr4", .linkage = common.linkage, .visibility = common.visibility });
3838 @export(&__aeabi_memclr8, .{ .name = "__aeabi_memclr8", .linkage = common.linkage, .visibility = common.visibility });
3939
40 if (builtin.os.tag == .linux) {
40 if (builtin.os.tag == .linux or builtin.os.tag == .freebsd) {
4141 @export(&__aeabi_read_tp, .{ .name = "__aeabi_read_tp", .linkage = common.linkage, .visibility = common.visibility });
4242 }
4343