Bug ID 52362
Summary debugserver: ignores P packets when setting AVX-2 and AVX-512 registers
Product lldb
Version unspecified
Hardware PC
OS Linux
Status NEW
Severity enhancement
Priority P
Component All Bugs
Assignee lldb-dev@lists.llvm.org
Reporter alessandro.arzilli@gmail.com
CC jdevlieghere@apple.com, llvm-bugs@lists.llvm.org
Sending a P packet to debugserver to change the value of a AVX-2 or AVX-512
register will appear to work:
request:
$P5b=cdcccccccccc0840000000000000000000000000000000000000000000000000;thread:39d025;#24
response: $OK#00
but the new register value will not be written to the target process.
This happens because DNBArchImplX86_64::SetRegisterValue at line 2635:
[https://github.com/llvm/llvm-project/blob/2c4a9e830cbb3b91a57902f7ecd508c544701819/lldb/tools/debugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp#L2635](https://github.com/llvm/llvm-project/blob/2c4a9e830cbb3b91a57902f7ecd508c544701819/lldb/tools/debugserver/source/MacOSX/x86_64/DNBArchImplX86_64.cpp#L2635)
returns directly instead of setting success to true and allowing the call to
SetRegisterState to happen.