dbghelp: When the CU is compiled with GCC, deal with some GCC extensions.
This commit is contained in:
parent
87132a3a6a
commit
7fbcd11db8
|
@ -781,7 +781,9 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc,
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
FIXME("Unhandled attr op: %x\n", op);
|
if (op < DW_OP_lo_user) /* as DW_OP_hi_user is 0xFF, we don't need to test against it */
|
||||||
|
FIXME("Unhandled attr op: %x\n", op);
|
||||||
|
/* FIXME else unhandled extension */
|
||||||
return loc_err_internal;
|
return loc_err_internal;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -376,6 +376,18 @@ typedef enum dwarf_operation_e
|
||||||
DW_OP_call2 = 0x98,
|
DW_OP_call2 = 0x98,
|
||||||
DW_OP_call4 = 0x99,
|
DW_OP_call4 = 0x99,
|
||||||
DW_OP_call_ref = 0x9a,
|
DW_OP_call_ref = 0x9a,
|
||||||
|
DW_OP_form_tls_address = 0x9b,
|
||||||
|
DW_OP_call_frame_cfa = 0x9c,
|
||||||
|
DW_OP_bit_piece = 0x9d,
|
||||||
|
|
||||||
|
/* Implementation defined extensions */
|
||||||
|
DW_OP_lo_user = 0xe0,
|
||||||
|
DW_OP_hi_user = 0xff,
|
||||||
|
|
||||||
|
/* GNU extensions */
|
||||||
|
DW_OP_GNU_push_tls_address = 0xe0,
|
||||||
|
DW_OP_GNU_uninit = 0xf0,
|
||||||
|
DW_OP_GNU_encoded_addr = 0xf1,
|
||||||
} dwarf_operation_t;
|
} dwarf_operation_t;
|
||||||
|
|
||||||
enum dwarf_calling_convention
|
enum dwarf_calling_convention
|
||||||
|
|
Loading…
Reference in New Issue