[lldb] Reland "Use translated full ftag values"
authorMichał Górny <mgorny@moritz.systems>
Sun, 15 Nov 2020 17:36:22 +0000 (18:36 +0100)
committerMichał Górny <mgorny@moritz.systems>
Sat, 21 Nov 2020 16:11:38 +0000 (17:11 +0100)
commit8aea95f3cb4ef72cc9146ca5a01af15f036acd19
tree24c06d81ce56ddf09712f2c593e85ba12d7f971d
parent9b7b8de6d12ff2e0bb7aa813f83a8053d302bc2b
[lldb] Reland "Use translated full ftag values"

Translate between abridged and full ftag values in order to expose
the latter in the gdb-remote protocol while the former are used by
FXSAVE/XSAVE...  This matches the gdb behavior.

The Shell/Register tests now rely on the new behavior, and therefore
are run on non-Darwin systems only.  The Python (API) test relies
on the legacy behavior, and is run on Darwin only.

Differential Revision: https://reviews.llvm.org/D91504
13 files changed:
lldb/source/Plugins/Process/FreeBSDRemote/NativeRegisterContextFreeBSD_x86_64.cpp
lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp
lldb/source/Plugins/Process/NetBSD/NativeRegisterContextNetBSD_x86_64.cpp
lldb/source/Plugins/Process/Utility/CMakeLists.txt
lldb/source/Plugins/Process/Utility/RegisterContext_x86.cpp [new file with mode: 0644]
lldb/source/Plugins/Process/Utility/RegisterContext_x86.h
lldb/test/API/commands/register/register/register_command/TestRegisters.py
lldb/test/Shell/Register/x86-64-fp-read.test
lldb/test/Shell/Register/x86-64-fp-write.test
lldb/test/Shell/Register/x86-fp-read.test
lldb/test/Shell/Register/x86-fp-write.test
lldb/unittests/Process/Utility/CMakeLists.txt
lldb/unittests/Process/Utility/RegisterContextTest.cpp [new file with mode: 0644]