[Lldb-commits] [PATCH] D63610: [lldb] [Process] Introduce common helpers to split/recombine YMM data

Michał Górny via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Thu Jun 20 09:46:29 PDT 2019


mgorny created this revision.
mgorny added reviewers: labath, zturner, krytarowski.
Herald added a subscriber: emaste.

Introduce two common helpers to take care of splitting and recombining
YMM registers to/from XSAVE-like data.  Since FreeBSD, Linux and NetBSD
all use XSAVE-like data structures but with potentially different field
layouts, the function takes two pointers -- to XMM register and to YMM
high bits, and copies the data from/to YMMReg type.

While at it, remove support for big endian.  To mine and Pavel Labath's
combined knowledge, there is no such thing on x86.  Furthermore,
assuming that the YMM register data would be swapped for big endian
seems to be a weird assumption.

// NB: I have no clue why FreeBSD code claims to belong in 'POSIX', and Linux does not.


https://reviews.llvm.org/D63610

Files:
  lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_x86_64.cpp
  lldb/source/Plugins/Process/Utility/RegisterContextPOSIX_x86.cpp
  lldb/source/Plugins/Process/Utility/RegisterContext_x86.h

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63610.205842.patch
Type: text/x-patch
Size: 5966 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190620/27dd2497/attachment.bin>


More information about the lldb-commits mailing list