[PATCH] D129833: Use @llvm.threadlocal.address intrinsic to access TLS

2022-08-29 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D129833#3755135 , @nikic wrote: > In D129833#3727881 , @ChuanqiXu > wrote: > >> And I am working on adding Align properties. But I meet problems since the >> alignment of

[PATCH] D129833: Use @llvm.threadlocal.address intrinsic to access TLS

2022-08-29 Thread Nikita Popov via Phabricator via cfe-commits
nikic added a comment. In D129833#3727881 , @ChuanqiXu wrote: > And I am working on adding Align properties. But I meet problems since the > alignment of threadlocal_address intrinsic depends on its argument so we > can't set the alignment for its

[PATCH] D129833: Use @llvm.threadlocal.address intrinsic to access TLS

2022-08-16 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D129833#3717291 , @jyknight wrote: > Note that this change caused LLVM to no longer be aware that a TLS variable > cannot be NULL. Thus, code like: > > __thread int x; > int main() { > int* y = > return *y; >

[PATCH] D129833: Use @llvm.threadlocal.address intrinsic to access TLS

2022-08-12 Thread Chuanqi Xu via Phabricator via cfe-commits
ChuanqiXu added a comment. In D129833#3717291 , @jyknight wrote: > Note that this change caused LLVM to no longer be aware that a TLS variable > cannot be NULL. Thus, code like: > > __thread int x; > int main() { > int* y = > return *y; >

[PATCH] D129833: Use @llvm.threadlocal.address intrinsic to access TLS

2022-08-11 Thread James Y Knight via Phabricator via cfe-commits
jyknight added a comment. Note that this change caused LLVM to no longer be aware that a TLS variable cannot be NULL. Thus, code like: __thread int x; int main() { int* y = return *y; } built with `clang -O -fsanitize=null` emits a null-pointer check, when it wouldn't