Debugger: Fix value endianness of register data with LLDB

Fixes: QTCREATORBUG-25009
Change-Id: I4de44cee6ef322791e3f4058a369548bfb210e77
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
hjk
2020-11-30 13:14:11 +01:00
parent dda6775325
commit e556463dc7

View File

@@ -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()