aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/CodeGen/MachineCSE.cpp
diff options
context:
space:
mode:
authorJason Molenda <jmolenda@apple.com>2018-05-04 00:59:37 +0000
committerJason Molenda <jmolenda@apple.com>2018-05-04 00:59:37 +0000
commit07580ffe4705ae0f85659bf5c8a18afc0137353b (patch)
treef539be67d4566014fc4b7fdee0c422d66d7ec78e /llvm/lib/CodeGen/MachineCSE.cpp
parent4cc0d4e82301910007963a0f96502dc97b560727 (diff)
downloadllvm-07580ffe4705ae0f85659bf5c8a18afc0137353b.zip
llvm-07580ffe4705ae0f85659bf5c8a18afc0137353b.tar.gz
llvm-07580ffe4705ae0f85659bf5c8a18afc0137353b.tar.bz2
The on-ios-device command line lldb has an optimization where
when it and the inferior process both have the same shared cache (a conglomeration of all libraries at the same fixed address for all processes), lldb will read data out of its own memory to speed things up. The shared cache has a UUID, so lldb currently checks that the UUID of its own shared cache matches that of the inferior. This change adds one refinement to that -- it checks that the UUID is the same and that the base address of the shared cache is the same. And only uses its local shared cache if they are both identical. This involved using a different style of SPI with dyld to get lldb's shared cache load address, but it's not especially difficult. One unattractive part of the change is that I'm using the real underlying types of task_t and kern_return_t instead of picking them up from mach/mach.h. The defines that get picked up there (a lot from machine.h but others too) conflict with llvm/Support/MachO.h even when I have mach.h included before our SafeMachO.h which undefines most of the defines before including llvm/Support/MachO.h. I'll need to augment the #undefs in SafeMachO.h to get this to compile cleanly, but that'll be another day. <rdar://problem/39868238> llvm-svn: 331497
Diffstat (limited to 'llvm/lib/CodeGen/MachineCSE.cpp')
0 files changed, 0 insertions, 0 deletions