diff options
author | Jason Molenda <jason@molenda.com> | 2022-12-13 11:37:56 -0800 |
---|---|---|
committer | Jason Molenda <jason@molenda.com> | 2022-12-13 11:42:56 -0800 |
commit | ee11ef6dc0b293161dd916b64581eb37a231709b (patch) | |
tree | 4ac33280f55abc48bedd8ce2f4b93c3b5fafed9e /llvm/lib/Transforms/Utils/InlineFunction.cpp | |
parent | dbf42f0b1269eacb928efc079fd6ee54975c91da (diff) | |
download | llvm-ee11ef6dc0b293161dd916b64581eb37a231709b.zip llvm-ee11ef6dc0b293161dd916b64581eb37a231709b.tar.gz llvm-ee11ef6dc0b293161dd916b64581eb37a231709b.tar.bz2 |
Launch state discoverable in Darwin, use for SafeToCallFunctions
The dynamic linker on Darwin, dyld, can provide status of
the process state for a few significant points early on,
most importantly, when libSystem has been initialized and it
is safe to call functions behind the scenes. Pipe this
information up from debugserver to DynamicLoaderMacOS, for
the DynamicLoader::IsFullyInitialized() method, then have
Thread::SafeToCallFunctions use this information. Finally,
for the two utility functions in the AppleObjCRuntimeV2
LanguageRuntime plugin that I was fixing, call this method
before running our utility functions to collect the list of
objc classes registered in the runtime.
User expressions will still be allowed to run any time -
we assume the user knows what they are doing - but these
two additional utility functions that they are unaware of
will be limited by this state.
Differential Revision: https://reviews.llvm.org/D139054
rdar://102436092
can probably make function calls.
Diffstat (limited to 'llvm/lib/Transforms/Utils/InlineFunction.cpp')
0 files changed, 0 insertions, 0 deletions