-
Notifications
You must be signed in to change notification settings - Fork 5.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add picolibc tls support #8392
base: master
Are you sure you want to change the base?
add picolibc tls support #8392
Conversation
之前picolibc的tls的讨论 #8220 (comment) |
src/thread.c
Outdated
@@ -39,6 +39,13 @@ | |||
#include <rtthread.h> | |||
#include <stddef.h> | |||
|
|||
#ifdef RT_USING_PICOLIBC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
rtdef.h中增加了,这里也需要增加吗?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这个确实不需要增加, 我修改下
__tdata_size = SIZEOF(.tdata); | ||
|
||
/* | ||
* TLS zeroed data is relocated as if it immediately followed |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
这部分,如果是其他工具链 + 其他libc会怎么样?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
https://github.com/picolibc/picolibc/blob/main/doc/tls.md
picolibc的tls-mode使用的local-exec模式, 看zephyr的话也是支持这种模式
@@ -1,6 +1,9 @@ | |||
from building import * | |||
|
|||
src = Glob('*.c') | |||
group = DefineGroup('UTest', src, depend = ['RT_USING_NEWLIBC', 'RT_USING_PTHREADS']) | |||
if GetDepend(['RT_USING_PICOLIBC']): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
example/libc目录rtthread现在没有编译,也没有看到选项可以打开去编译,但是这个tls的例子暂时没有找到合适放的位置,就先放在这个下面了
@Rbb666 @mysterywolf |
拉取/合并请求描述:(PR description)
[
为什么提交这份PR (why to submit this PR)
你的解决方案是什么 (what is your solution)
请提供验证的bsp和config (provide the config and bsp)
]
当前拉取/合并请求的状态 Intent for your PR
必须选择一项 Choose one (Mandatory):
代码质量 Code Quality:
我在这个拉取/合并请求中已经考虑了 As part of this pull request, I've considered the following:
#if 0
代码,不包含已经被注释了的代码 All redundant code is removed and cleaned up