unofficial mirror of libc-alpha@sourceware.org
 help / color / mirror / Atom feed
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
> 

  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).