mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-05-23 11:38:38 +00:00
Add some basic support for the fission addr forms to DebugInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@168223 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
21414e953a
commit
205e60b223
@ -46,6 +46,8 @@ static const uint8_t form_sizes_addr4[] = {
|
|||||||
0, // 0x18 DW_FORM_exprloc
|
0, // 0x18 DW_FORM_exprloc
|
||||||
0, // 0x19 DW_FORM_flag_present
|
0, // 0x19 DW_FORM_flag_present
|
||||||
8, // 0x20 DW_FORM_ref_sig8
|
8, // 0x20 DW_FORM_ref_sig8
|
||||||
|
4, // 0x1f01 DW_FORM_GNU_addr_index
|
||||||
|
4, // 0x1f02 DW_FORM_GNU_str_index
|
||||||
};
|
};
|
||||||
|
|
||||||
static const uint8_t form_sizes_addr8[] = {
|
static const uint8_t form_sizes_addr8[] = {
|
||||||
@ -76,6 +78,8 @@ static const uint8_t form_sizes_addr8[] = {
|
|||||||
0, // 0x18 DW_FORM_exprloc
|
0, // 0x18 DW_FORM_exprloc
|
||||||
0, // 0x19 DW_FORM_flag_present
|
0, // 0x19 DW_FORM_flag_present
|
||||||
8, // 0x20 DW_FORM_ref_sig8
|
8, // 0x20 DW_FORM_ref_sig8
|
||||||
|
8, // 0x1f01 DW_FORM_GNU_addr_index
|
||||||
|
8, // 0x1f01 DW_FORM_GNU_str_index
|
||||||
};
|
};
|
||||||
|
|
||||||
const uint8_t *
|
const uint8_t *
|
||||||
@ -185,6 +189,12 @@ DWARFFormValue::extractValue(DataExtractor data, uint32_t *offset_ptr,
|
|||||||
case DW_FORM_ref_sig8:
|
case DW_FORM_ref_sig8:
|
||||||
Value.uval = data.getU64(offset_ptr);
|
Value.uval = data.getU64(offset_ptr);
|
||||||
break;
|
break;
|
||||||
|
case DW_FORM_GNU_addr_index:
|
||||||
|
Value.uval = data.getULEB128(offset_ptr);
|
||||||
|
break;
|
||||||
|
case DW_FORM_GNU_str_index:
|
||||||
|
Value.uval = data.getULEB128(offset_ptr);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user