================ @@ -735,6 +735,56 @@ This is a performance optimization, which speeds up debugging by avoiding multiple round-trips for retrieving thread information. The information from this packet can be retrieved using a combination of `qThreadStopInfo` and `m` packets. +### MultiMemRead + +Read memory from multiple memory ranges. + +This packet has one argument: + +* `ranges`: a list of pairs of numbers, formatted in base-16. Each pair is +separated by a `,`, as is each number in each pair. The first number of the +pair denotes the base address of the memory read, the second denotes the number +of bytes to be read. The list must end with a `;`. + +The reply packet starts with a comma-separated list of numbers formatted in +base-16, denoting how many bytes were read from each range, in the same order +as the request packet. The list is followed by a `;`, followed by a sequence of +bytes containing binary encoded data for all memory that was read. The length +of this sequence must be equal to the sum of the numbers provided at the start +of the reply. The order of the binary data is the same as the order of the +ranges in the request packet. + +If an entire range is not readable, the stub may perform a partial read of a +prefix of the range. ---------------- DavidSpickett wrote:
A stub would need a sort of "bisect but anchored to the start of the range" read strategy. As stated, it *could* implement that if it wants to but does not have to. https://github.com/llvm/llvm-project/pull/162675 _______________________________________________ lldb-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
