This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: CALL_THREAD_FCT usage
- From: Florian Weimer <fweimer at redhat dot com>
- To: Adhemerval Zanella <adhemerval dot zanella at linaro dot org>
- Cc: GNU C Library <libc-alpha at sourceware dot org>
- Date: Tue, 4 Apr 2017 13:59:38 +0200
- Subject: Re: CALL_THREAD_FCT usage
- Authentication-results: sourceware.org; auth=none
- Authentication-results: ext-mx05.extmail.prod.ext.phx2.redhat.com; dmarc=none (p=none dis=none) header.from=redhat.com
- Authentication-results: ext-mx05.extmail.prod.ext.phx2.redhat.com; spf=pass smtp.mailfrom=fweimer at redhat dot com
- Dkim-filter: OpenDKIM Filter v2.11.0 mx1.redhat.com 876F431F41D
- Dmarc-filter: OpenDMARC Filter v1.3.2 mx1.redhat.com 876F431F41D
- References: <a32a8a59-b1d7-3f05-4248-56a9ddbe8e1c@linaro.org>
On 03/31/2017 09:15 PM, Adhemerval Zanella wrote:
While implementing the C11 thread support I noted x86 is the only architecture
that actually defines CALL_THREAD_FCT. The 32 bits version seems to define it
to explicit align the stack to 16 bytes before call the user provided symbol,
while 64 and x32 seems to just make a function call. Do we still really need
such macro for x86?
I don't think so. Stack alignment is handled in the clone
implementation itself. The inline assembly seems to lack a couple of
clobbers, so I'd suggest to get rid of it.
I don't think x32 requires CALL_THREAD_FCT, either.
Thanks,
Florian