From e556463dc7918f1c2a345ccc83296f82c226a2ac Mon Sep 17 00:00:00 2001 From: hjk Date: Mon, 30 Nov 2020 13:14:11 +0100 Subject: [PATCH] Debugger: Fix value endianness of register data with LLDB Fixes: QTCREATORBUG-25009 Change-Id: I4de44cee6ef322791e3f4058a369548bfb210e77 Reviewed-by: Christian Stenger --- share/qtcreator/debugger/lldbbridge.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/share/qtcreator/debugger/lldbbridge.py b/share/qtcreator/debugger/lldbbridge.py index 1a114704f53..2b9078db218 100644 --- a/share/qtcreator/debugger/lldbbridge.py +++ b/share/qtcreator/debugger/lldbbridge.py @@ -1309,7 +1309,11 @@ class Dumper(DumperBase): result = 'registers=[' for group in frame.GetRegisters(): for reg in group: - value = ''.join(["%02x" % x for x in reg.GetData().uint8s]) + data = reg.GetData() + if data.GetByteOrder() == lldb.eByteOrderLittle: + value = ''.join(["%02x" % x for x in reversed(data.uint8s)]) + else: + value = ''.join(["%02x" % x for x in data.uint8s]) result += '{name="%s"' % reg.GetName() result += ',value="0x%s"' % value result += ',size="%s"' % reg.GetByteSize()