<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Thu, Jun 9, 2022 at 2:12 AM Chris Johns <<a href="mailto:chrisj@rtems.org">chrisj@rtems.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On 9/6/2022 4:16 pm, Sebastian Huber wrote:<br>
> On 08/06/2022 16:18, Sebastian Huber wrote:<br>
>> On 08/06/2022 16:11, Joel Sherrill wrote:<br>
>>> On Wed, Jun 8, 2022 at 8:47 AM Sebastian Huber<br>
>>> <<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a><br>
>>> <mailto:<a href="mailto:sebastian.huber@embedded-brains.de" target="_blank">sebastian.huber@embedded-brains.de</a>>> wrote:<br>
>>><br>
>>>     On 08/06/2022 15:39, Joel Sherrill wrote:<br>
>>>      > Is TLS actually supported on all targets except MIPS?<br>
>>><br>
>>>     I only added MIPS since this target has a fundamental issue with the<br>
>>>     TLS<br>
>>>     support.<br>
>>><br>
>>>     Which target would you also exclude?<br>
>>><br>
>>> About half of them.<br>
>><br>
>> It seems to be only bfin, lm32, moxie, or1k, and v850. Are these targets still<br>
>> in use? Do we have a maintainer for these targets?<br>
> <br>
> How do we want to proceed here? Add them to the exclude list in the GCC<br>
> configuration, or encourage current or future users of these targets to add the<br>
> TLS support so that they can use state of the art C++ support? The initial TLS<br>
> support for RTEMS was added in 2013, so this is not really brand new technology.<br>
<br>
I think we should support TLS in C++ for the targets we know work and any others<br>
can use the eh_globals support. It does work and works OK with POSIX keys.<br>
<br>
How we document this is probability a more pressing question? I cannot see any<br>
language specific areas in the User or Classic API manuals.<br></blockquote><div><br></div><div>I thought there were tickets for this.  </div><div><br></div><div>NIOS II - <a href="https://devel.rtems.org/ticket/4214">https://devel.rtems.org/ticket/4214</a></div><div><br></div><div>I also thought I had written up a master list of this at one point. I can't find more</div><div>than the above. But it should have been close to above. </div><div><br></div><div>There isn't a good place in the Classic API Guide for this and I am not sure</div><div>where it would go in the User Guide. There are a few features which are not</div><div>supported on all architectures -- TLS, SMP, and paravirtualization come to</div><div>mind. Distributed multiprocessing is supported but only a few BSPs support it. </div><div><br></div><div>The CPU Supplement has a section for each port on Thread Local Storage. </div><div>My first cut suggestion would be to ensure each port has a section that it </div><div>is or is not supported. If it isn't supported, link to a ticket specific to that </div><div>architecture with keyword TLS. Copy the ticket contents for each architecture</div><div>and make sure update the CPU Supplement is part of it. </div><div><br></div><div>Is there anywhere else it would not get lost?</div><div><br></div><div>--joel</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
<br>
Chris<br>
_______________________________________________<br>
devel mailing list<br>
<a href="mailto:devel@rtems.org" target="_blank">devel@rtems.org</a><br>
<a href="http://lists.rtems.org/mailman/listinfo/devel" rel="noreferrer" target="_blank">http://lists.rtems.org/mailman/listinfo/devel</a></blockquote></div></div>