[libcxx-commits] [PATCH] D117372: [libcxx] switch locale from using std::call_once to __libcpp_mutex_t
Eric Fiselier via Phabricator via libcxx-commits
libcxx-commits at lists.llvm.org
Thu Mar 10 15:36:42 PST 2022
EricWF added inline comments.
================
Comment at: libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.no_new_in_libcxx.abilist:1707
-{'is_defined': True, 'name': '__ZNSt3__16locale2id6__initEv', 'type': 'FUNC'}
{'is_defined': True, 'name': '__ZNSt3__16locale2id9__next_idE', 'size': 0, 'type': 'OBJECT'}
{'is_defined': True, 'name': '__ZNSt3__16locale3allE', 'size': 0, 'type': 'OBJECT'}
----------------
The fact this function went away, means the ABI is potentially broken.
================
Comment at: libcxx/src/locale.cpp:717
+ // Before we do anything as expensive as acquire a mutex, check if __id_ has already been set
+ auto id_copy = __libcpp_atomic_load(&__id_, _AO_Relaxed);
+ if (id_copy != 0)
----------------
EricWF wrote:
> Where does `__id_` get initialized?
Nevermind, I see it now.
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D117372/new/
https://reviews.llvm.org/D117372
More information about the libcxx-commits
mailing list