[Lldb-commits] [lldb] [lldb] fix the "RegisterValue::SetValueFromData" method (PR #163646)
David Spickett via lldb-commits
lldb-commits at lists.llvm.org
Thu Oct 16 05:46:02 PDT 2025
https://github.com/DavidSpickett commented:
If I understood this, the code is trying to make the order inside the APInt always:
least significant 64-bit element, most significant 64-bit element
Because internally APInt expects this no matter the platform endian? Haven't verified that but it's implied.
The first element you'd get from a big endian extractor is actually the most significant, so the two elements need to be reversed.
Which was being done but the wrong way around. Little endian is fine, big endian needs to be swapped.
How did you hit this? I thought I could reach it by running an expression on AArch64 that used a `v` register, but because I need to use float or double to do that, it's always marked as a float type and takes that path.
The fix seems correct but I'd like to be able to test this. Though it will likely only get run with little endian, it'd be something.
Might be able to make something synthetic via the SBAPI.
https://github.com/llvm/llvm-project/pull/163646
More information about the lldb-commits
mailing list