svn commit: r339898 - head/lib/libc/amd64/sys
Charlie Li
ml at vishwin.info
Thu Nov 1 13:01:02 UTC 2018
On 29/10/2018 20:11, Konstantin Belousov wrote:
> Author: kib
> Date: Tue Oct 30 00:11:30 2018
> New Revision: 339898
> URL: https://svnweb.freebsd.org/changeset/base/339898
>
> Log:
> Convert amd64_get/set_fs/gsbase to ifunc.
>
> Note that this is the first use of ifuncs in our userspace.
>
> Sponsored by: The FreeBSD Foundation
> MFC after: 1 month
>
> Deleted:
> head/lib/libc/amd64/sys/amd64_detect_rdfsgsbase.c
> head/lib/libc/amd64/sys/amd64_detect_rdfsgsbase.h
> Modified:
> head/lib/libc/amd64/sys/Makefile.inc
> head/lib/libc/amd64/sys/amd64_get_fsbase.c
> head/lib/libc/amd64/sys/amd64_get_gsbase.c
> head/lib/libc/amd64/sys/amd64_set_fsbase.c
> head/lib/libc/amd64/sys/amd64_set_gsbase.c
>
Using LLVM 7 to build world, fails:
--- amd64_get_fsbase.o ---
/usr/src/lib/libc/amd64/sys/amd64_get_fsbase.c:60:1: error: ifunc
resolver function must have no parameters
--- amd64_get_gsbase.o ---
/usr/src/lib/libc/amd64/sys/amd64_get_gsbase.c:60:1: error: ifunc
resolver function must have no parameters
DEFINE_UIFUNC(, int, amd64_get_gsbase, (void **), static)
^
/usr/local/obj/usr/src/amd64.amd64/tmp/usr/include/x86/ifunc.h:43:44:
note: expanded from macro 'DEFINE_UIFUNC'
--- amd64_get_fsbase.o ---
DEFINE_UIFUNC(, int, amd64_get_fsbase, (void **), static)
^
/usr/local/obj/usr/src/amd64.amd64/tmp/usr/include/x86/ifunc.h:43:44:
note: expanded from macro 'DEFINE_UIFUNC'
--- amd64_get_gsbase.o ---
qual ret_type name args __attribute__((ifunc(#name "_resolver"))); \
^
--- amd64_get_fsbase.o ---
qual ret_type name args __attribute__((ifunc(#name "_resolver"))); \
^
1 error generated.
--- amd64_get_gsbase.o ---
1 error generated.
*** [amd64_get_gsbase.o] Error code 1
make[4]: stopped in /usr/src/lib/libc
CI appears green after this commit, so I'm inclined to pin this on yet
another instance of LLVM 7 being stricter than LLVM 6. Backing out this
revision allows the build to continue (successfully).
--
Charlie Li
Can't think of a witty .sigline today…
(This email address is for mailing list use only; replace local-part
with vishwin for off-list communication)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.freebsd.org/pipermail/freebsd-toolchain/attachments/20181101/cdd09c18/attachment.sig>
More information about the freebsd-toolchain
mailing list