Я пытаюсь читать и записывать значения из регистров в python, используя LLDB API. Для регистров общего назначения я использовал frame.register['register name'].value
для чтения и записи значений регистров, что успешно работает для меня.
Однако, приближаясь к регистрам с плавающей запятой, я обнаружил, что это невозможно сделано больше, поскольку некоторые из регистров, такие как регистры XMM, не имеют атрибута value
, например, frame.register['xmm0'].value
вернет None
.
Я изучил документацию по API LLDB и мог каким-то образом получить значение регистра, используя frame.register['xmm0'].GetData()
, хотя он не возвращает строковый формат, такой как атрибут value
. Однако я все еще не могу найти способ записи в регистры с использованием LLDB API. Я понимаю, что я мог бы сделать это в интерактивном режиме в CLI, используя register write xmm0 "{0x00 0x01 ... 0x0f}"
, как показано в https://www.mail-archive.com/lldb-dev@lists.llvm.org / msg03228. html, но я бы хотел сделать это в python, поскольку я пишу сценарий для выполнения этой задачи.
Итак, есть ли способ для меня записать в регистры XMM или вообще в регистры векторных типов с использованием LLDB API?