[lldb-dev] Advice on architectures with multiple address spaces
Zdenek Prikryl via lldb-dev
lldb-dev at lists.llvm.org
Thu Apr 19 06:51:00 PDT 2018
Hi lldb developers,
I've been researching using lldb + gdbserver stub that is based on
Harvard architecture with multiple address spaces (one program, multiple
data). The commonly adopted approach is that everything is mapped to a
single "virtual" address space. The stub reads/writes from/to the right
memory based on the "virtual" addresses. But I'd like to use real
addresses with address space id instead. So, I've started looking at
what has to be changed.
I've enhanced read/write commands (e.g. memory read --as <id> ...) and
RSP protocol (new packet) so that the stub can read/write properly. That
wasn't that complicated.
Now I've hit an issue with expressions (LLVMUserExpression.cpp) and
local variables (DWARFExpressions.cpp). There is a lot of memory
read/write functions that take just an address argument. Is the only way
to go to patch all these calls? Has anybody solved it differently?
Thanks for any advice.
More information about the lldb-dev