summaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
diff options
context:
space:
mode:
authorJonas Devlieghere <jonas@devlieghere.com>2022-01-13 23:10:22 -0800
committerJonas Devlieghere <jonas@devlieghere.com>2022-01-14 16:03:49 -0800
commit8faca2ed6adebffa76c6eb506f15dfd38ab512a7 (patch)
treee93122629f0acf15c579bfde7252e3624ea8a66f /lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp
parent0d3f2fd269400806f996b8d1fd2cfc0740ac78ef (diff)
[lldb] Fix platform selection on Apple Silicon
Currently, when connecting to a remote iOS device from the command line on Apple Silicon, we end up using the host platform (PlatfromMacOSX) instead of remote-ios (PlatformRemoteiOS). This happens because PlatfromMacOSX includes arm64-apple-ios and arm64e-apple-ios as compatible architectures, presumably to support debugging iOS Apps on Apple Silicon [1]. This is a problem for debugging remote ios devices, because the host platform doesn't look for an expanded shared cache on disk and as a result we end up reading everything from memory, incurring a significant performance hit. The crux of this patch is to make PlatfromMacOSX *not* compatible with arm64(e)-apple-ios. This also means that we now use remote-ios (PlatformRemoteiOS) as the platform for debugging iOS apps on Apple Silicon. This has the (unintended) side effect that unlike we do for the host platform, we no longer check our local shared cache, and incur a performance hit on debugging these apps. To avoid that, PlatformRemoteiOS now also check the local cache to support this use case, which is cheap enough to do unconditionally for PlatformRemoteiOS. [1] https://support.apple.com/guide/app-store/iphone-ipad-apps-mac-apple-silicon-fird2c7092da/mac Differential revision: https://reviews.llvm.org/D117340
Diffstat (limited to 'lldb/source/Plugins/ScriptInterpreter/Python/PythonDataObjects.cpp')
0 files changed, 0 insertions, 0 deletions