vsk added a comment.

Hey Augusto, thanks for tackling this, I'm just now slowly paging things in.

Is this a correct statement of the problem: LLDB is failing to disable its file 
cache optimization when reading writable segments (say, __DATA) from a MachO 
sourced from the shared cache?

If that's right, then I wonder whether you considered "simply" doing a bounds 
check on the address? The shared region should be mapped at a fixed virtual 
range in the debuggee process, and we can determine that range using dyld APIs.



================
Comment at: lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp:7040
+  // from, since offsets may be changed by the shared cache builder.
+  bool contains_split_info = ContainsLoadCommand(LC_SEGMENT_SPLIT_INFO);
+
----------------
Is LC_SEGMENT_SPLIT_INFO present if and only if the MachO is from the shared 
cache?


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D106584/new/

https://reviews.llvm.org/D106584

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to