diff options
author | 2018-01-18 08:23:44 +0000 | |
---|---|---|
committer | 2018-01-18 08:23:44 +0000 | |
commit | ae3cb403620ab940fbaabb3055fac045a63d56b7 (patch) | |
tree | c9675235761df3e321bc80b853144e5c9788dfbc /lib/libc/arch/sparc64/string | |
parent | Unlike other archs, mips64 needs ld.so to know about symbol visibility and (diff) | |
download | wireguard-openbsd-ae3cb403620ab940fbaabb3055fac045a63d56b7.tar.xz wireguard-openbsd-ae3cb403620ab940fbaabb3055fac045a63d56b7.zip |
Instead of trying to handle ffs() with the normal rename-mark-hidden-and-alias
dance, mark it protected. This works better for both gcc and clang: gcc
blocks overriding of internal calls, while clang permits inlining again.
ok otto@
Diffstat (limited to 'lib/libc/arch/sparc64/string')
-rw-r--r-- | lib/libc/arch/sparc64/string/ffs.S | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/libc/arch/sparc64/string/ffs.S b/lib/libc/arch/sparc64/string/ffs.S index 7fd91f871b6..6d2e6499706 100644 --- a/lib/libc/arch/sparc64/string/ffs.S +++ b/lib/libc/arch/sparc64/string/ffs.S @@ -1,4 +1,4 @@ -/* $OpenBSD: ffs.S,v 1.5 2015/08/31 02:53:57 guenther Exp $ */ +/* $OpenBSD: ffs.S,v 1.6 2018/01/18 08:23:44 guenther Exp $ */ /* * Copyright (c) 1992, 1993 @@ -83,8 +83,10 @@ ENTRY(ffs) ldsb [%o2 + %o0], %o0 retl add %o0, 24, %o0 -END_WEAK(ffs) +END(ffs) +.protected ffs + .section .rodata _C_LABEL(__ffstab): .byte -24,1,2,1,3,1,2,1,4,1,2,1,3,1,2,1 /* 00-0f */ .byte 5,1,2,1,3,1,2,1,4,1,2,1,3,1,2,1 /* 10-1f */ |