[Lldb-commits] [PATCH] D73802: [lldb] Introduce i386 support in NetBSD Process plugin

Michał Górny via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Fri Jan 31 13:12:20 PST 2020


mgorny created this revision.
mgorny added reviewers: labath, krytarowski.

Introduce support for i386 platform that is shared with amd64
in the same plugin.  The concept is partially based on the Linux
implementation.

The plugin tries to reuse as much code as possible.  As a result, i386
register enums are mapped into amd64 values and those are used in actual
code.  The code for accessing FPU and debug registers is shared,
although general-purpose register layouts do not match between the two
kernel APIs and need to be #ifdef-ed.

This layout will also make it possible to add support for debugging
32-bit programs on amd64 with minimal added code.

In order for this to work, I had to add missing data for debug registers
on i386.


https://reviews.llvm.org/D73802

Files:
  lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
  lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.h
  lldb/source/Plugins/Process/Utility/CMakeLists.txt
  lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_i386.cpp
  lldb/source/Plugins/Process/Utility/RegisterContextNetBSD_i386.h
  lldb/source/Plugins/Process/Utility/RegisterInfos_i386.h
  lldb/source/Plugins/Process/Utility/lldb-x86-register-enums.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D73802.241795.patch
Type: text/x-patch
Size: 44659 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20200131/4e1c835d/attachment-0001.bin>


More information about the lldb-commits mailing list