From: Adhemerval Zanella via Libc-alpha <libc-alpha@sourceware.org>
To: Vineet Gupta <Vineet.Gupta1@synopsys.com>,
"libc-alpha@sourceware.org" <libc-alpha@sourceware.org>
Cc: arcml <linux-snps-arc@lists.infradead.org>
Subject: Re: [PATCH v6 03/13] ARC: Thread Local Storage support
Date: Mon, 1 Jun 2020 15:53:27 -0300 [thread overview]
Message-ID: <65de7a88-593f-faa0-4ce6-c62b91b04249@linaro.org> (raw)
In-Reply-To: <18a9ff31-baea-c916-4377-76b77976c169@synopsys.com>
On 27/05/2020 22:36, Vineet Gupta wrote:
> On 5/27/20 12:17 PM, Adhemerval Zanella via Libc-alpha wrote:
>>
>>
>> On 22/04/2020 22:41, Vineet Gupta via Libc-alpha wrote:
>>> This includes all 4 TLS addressing models
>>>
>>> Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
>>
>> As prior patch we do not use DCO, but rather copyright assignment.
>>
>> Looks ok in general, with some comments below.
>
>>> +
>>> +register struct pthread *__thread_self __asm__("r25");
>>
>> This is used on other ports, but I am not sure if this is a valid definition
>> for a global variable.
>
> Not valid from gcc implementation POV ? The syntax seems to work alright in ARC
> linux kernel where we use r25 to cache the current task pointer.
The gcc documentation [1] does specify register global variables, but it
also states that
"[...] it is recommended that you choose a register that is normally saved and
restored by function calls on your machine, so that calls to library routines
will not clobber it."
So I see that the semantic of global register is kind fragile and since
it is usage is solely for asm inline argument I don't see a very compelling
reason to keep using it.
[1] https://gcc.gnu.org/onlinedocs/gcc/Local-Register-Variables.html
>
>> Usually the register specifier is used as an input
>> for inline assembly. Do we really need this global on ARC port? Couldn't
>> we replace it with __builtin_thread_pointer where applicable?
>
> We do use __builtin_thread_pointer and actually __thread_self is not used in ARC
> port :-) so I can just drop it
Ack.
>
> Many thx for reviewing.
> -Vineet
>
next prev parent reply other threads:[~2020-06-01 18:53 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-23 1:41 [PATCH v6 00/13] glibc port to ARC processors Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 01/13] ARC: ABI Implementation Vineet Gupta via Libc-alpha
2020-05-27 18:26 ` Adhemerval Zanella via Libc-alpha
2020-05-27 22:15 ` Vineet Gupta via Libc-alpha
2020-05-29 13:56 ` Adhemerval Zanella via Libc-alpha
2020-06-03 20:05 ` Vineet Gupta via Libc-alpha
2020-06-04 9:04 ` Florian Weimer via Libc-alpha
2020-06-04 19:01 ` Vineet Gupta via Libc-alpha
2020-06-04 23:56 ` Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 02/13] ARC: startup and dynamic linking code Vineet Gupta via Libc-alpha
2020-05-27 19:05 ` Adhemerval Zanella via Libc-alpha
2020-05-28 1:14 ` Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 03/13] ARC: Thread Local Storage support Vineet Gupta via Libc-alpha
2020-05-27 19:17 ` Adhemerval Zanella via Libc-alpha
2020-05-28 1:36 ` Vineet Gupta via Libc-alpha
2020-06-01 18:53 ` Adhemerval Zanella via Libc-alpha [this message]
2020-04-23 1:41 ` [PATCH v6 04/13] ARC: Atomics and Locking primitives Vineet Gupta via Libc-alpha
2020-04-23 17:20 ` Adhemerval Zanella via Libc-alpha
2020-04-24 7:23 ` Vineet Gupta via Libc-alpha
2020-04-27 21:59 ` [PATCH] semaphore: consolidate arch headers into a generic one Vineet Gupta via Libc-alpha
2020-04-27 22:13 ` Vineet Gupta via Libc-alpha
2020-05-05 21:02 ` Adhemerval Zanella via Libc-alpha
2020-05-04 21:21 ` Vineet Gupta via Libc-alpha
2020-05-05 19:05 ` Adhemerval Zanella via Libc-alpha
2020-05-05 19:38 ` Vineet Gupta via Libc-alpha
2020-05-05 21:37 ` Adhemerval Zanella via Libc-alpha
2020-05-05 22:59 ` Vineet Gupta via Libc-alpha
2020-05-08 13:32 ` Adhemerval Zanella via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 05/13] ARC: math soft float support Vineet Gupta via Libc-alpha
2020-05-29 14:02 ` Adhemerval Zanella via Libc-alpha
2020-05-29 23:57 ` Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 06/13] ARC: hardware floating point support Vineet Gupta via Libc-alpha
2020-05-29 14:12 ` Adhemerval Zanella via Libc-alpha
2020-05-29 22:28 ` Vineet Gupta via Libc-alpha
2020-05-29 23:50 ` Vineet Gupta via Libc-alpha
2020-06-02 0:50 ` static inline math functions (was Re: [PATCH v6 06/13] ARC: hardware floating point support) Vineet Gupta via Libc-alpha
2020-06-02 18:13 ` Joseph Myers
2020-06-02 18:35 ` Adhemerval Zanella via Libc-alpha
2020-06-02 17:51 ` [PATCH v6 06/13] ARC: hardware floating point support Joseph Myers
2020-06-05 4:44 ` Vineet Gupta via Libc-alpha
2020-06-05 17:22 ` Adhemerval Zanella via Libc-alpha
2020-06-02 17:48 ` Joseph Myers
2020-04-23 1:41 ` [PATCH v6 07/13] ARC: Linux Syscall Interface Vineet Gupta via Libc-alpha
2020-05-29 16:49 ` Adhemerval Zanella via Libc-alpha
2020-05-30 2:02 ` Vineet Gupta via Libc-alpha
2020-06-03 19:46 ` Vineet Gupta via Libc-alpha
2020-06-03 20:04 ` Adhemerval Zanella via Libc-alpha
2020-06-03 20:17 ` Vineet Gupta via Libc-alpha
2020-06-04 11:06 ` Adhemerval Zanella via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 08/13] ARC: Linux ABI Vineet Gupta via Libc-alpha
2020-05-29 17:05 ` Adhemerval Zanella via Libc-alpha
2020-05-30 0:16 ` Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 09/13] ARC: Linux Startup and Dynamic Loading Vineet Gupta via Libc-alpha
2020-06-03 18:02 ` Adhemerval Zanella via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 10/13] ARC: ABI lists Vineet Gupta via Libc-alpha
2020-06-03 19:29 ` Adhemerval Zanella via Libc-alpha
2020-06-05 2:22 ` Vineet Gupta via Libc-alpha
2020-06-05 18:02 ` Adhemerval Zanella via Libc-alpha
2020-06-05 21:14 ` Vineet Gupta via Libc-alpha
2020-06-08 4:12 ` Vineet Gupta via Libc-alpha
2020-06-08 8:44 ` Florian Weimer via Libc-alpha
2020-06-08 18:17 ` Adhemerval Zanella via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 11/13] ARC: Build Infrastructure Vineet Gupta via Libc-alpha
2020-06-03 19:58 ` Adhemerval Zanella via Libc-alpha
2020-06-04 15:25 ` Vineet Gupta via Libc-alpha
2020-06-04 17:05 ` Adhemerval Zanella via Libc-alpha
2020-06-08 4:18 ` Vineet Gupta via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 12/13] build-many-glibcs.py: Enable ARC builds Vineet Gupta via Libc-alpha
2020-06-04 12:08 ` Adhemerval Zanella via Libc-alpha
2020-04-23 1:41 ` [PATCH v6 13/13] Documentation for ARC port Vineet Gupta via Libc-alpha
2020-06-04 12:16 ` Adhemerval Zanella via Libc-alpha
2020-06-04 15:36 ` Vineet Gupta via Libc-alpha
2020-05-04 21:21 ` [PATCH v6 00/13] glibc port to ARC processors Vineet Gupta via Libc-alpha
2020-05-15 0:45 ` Vineet Gupta via Libc-alpha
2020-05-27 1:49 ` Vineet Gupta via Libc-alpha
2020-05-27 16:41 ` Adhemerval Zanella via Libc-alpha
2020-05-27 18:38 ` Vineet Gupta via Libc-alpha
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/libc/involved.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=65de7a88-593f-faa0-4ce6-c62b91b04249@linaro.org \
--to=libc-alpha@sourceware.org \
--cc=Vineet.Gupta1@synopsys.com \
--cc=adhemerval.zanella@linaro.org \
--cc=linux-snps-arc@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).