[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://r
[lldb][tests] Automatically call compute_mydir (NFC)Eliminate boilerplate of having each test manually assign to `mydir` by calling`compute_mydir` in lldbtest.py.Differential Revision: https://reviews.llvm.org/D128077
show more ...
[lldb][AArch64] Fix corefile memory reads when there are non-address bitsPreviously if you read a code/data mask before there was a valid threadyou would get the top byte mask. This meant the valu
[lldb][AArch64] Fix corefile memory reads when there are non-address bitsPreviously if you read a code/data mask before there was a valid threadyou would get the top byte mask. This meant the value was "valid" as in,don't read it again.When using a corefile we ask for the data mask very early on and thismeant that later once you did have a thread it wouldn't read theregister to get the rest of the mask.This fixes that and adds a corefile test generated from the same programas in my previous change on this theme.Depends on D118794Reviewed By: omjavaidDifferential Revision: https://reviews.llvm.org/D122411
[lldb] Remove non-address bits from read/write addresses in lldbNon-address bits are not part of the virtual address in a pointer.So they must be removed before passing to interfaces like ptrace.
[lldb] Remove non-address bits from read/write addresses in lldbNon-address bits are not part of the virtual address in a pointer.So they must be removed before passing to interfaces like ptrace.Some of them we get way with not removing, like AArch64's top byte.However this is only because of a hardware feature that ignores them.This change updates all the Process/Target Read/Write memory methodsto remove non-address bits before using addresses.Doing it in this way keeps lldb-server simple and also fixes thememory caching when differently tagged pointers for the same locationare read.Removing the bits is done at the ReadMemory level not DoReadMemorybecause particualrly for process, many subclasses override DoReadMemory.Tests have been added for read/write at the command and API level,for process and target. This includes variants likeRead<sometype>FromMemory. Commands are tested to make sure we removeat the command and API level."memory find" is not included because:* There is no API for it.* It already has its own address handling tests.Software breakpoints do use these methods but they are not testedhere because there are bigger issues to fix with those. This willhappen in another change.Reviewed By: omjavaidDifferential Revision: https://reviews.llvm.org/D118794