def _describe_attr_block(attr, die, section_offset):
s = '%s byte block: ' % len(attr.value)
- s += ' '.join('%x' % item for item in attr.value)
+ s += ' '.join('%x' % item for item in attr.value) + ' '
return s
DW_FORM_ref_udata=_describe_attr_ref,
DW_FORM_ref_addr=_describe_attr_hex_addr,
DW_FORM_data4=_describe_attr_hex,
- DW_FORM_data8=_describe_attr_split_64bit,
+ DW_FORM_data8=_describe_attr_hex,
DW_FORM_addr=_describe_attr_hex,
DW_FORM_sec_offset=_describe_attr_hex,
DW_FORM_flag=_describe_attr_debool,
elif 'at_const_value' in lines1[i]:
# On 32-bit machines, readelf doesn't correctly represent
# some boundary LEB128 numbers
- num2 = int(lines2_parts[-1])
+ val = lines2_parts[-1]
+ num2 = int(val, 16 if val.startswith('0x') else 10)
if num2 <= -2**31 and '32' in platform.architecture()[0]:
ok = True
elif 'os/abi' in lines1[i]: