dbghelp: Implement literal dwarf opcodes.
This commit is contained in:
parent
4749b079b5
commit
255a1ebaad
|
@ -684,6 +684,15 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc,
|
|||
op = dwarf2_parse_byte(ctx);
|
||||
switch (op)
|
||||
{
|
||||
case DW_OP_lit0: case DW_OP_lit1: case DW_OP_lit2: case DW_OP_lit3:
|
||||
case DW_OP_lit4: case DW_OP_lit5: case DW_OP_lit6: case DW_OP_lit7:
|
||||
case DW_OP_lit8: case DW_OP_lit9: case DW_OP_lit10: case DW_OP_lit11:
|
||||
case DW_OP_lit12: case DW_OP_lit13: case DW_OP_lit14: case DW_OP_lit15:
|
||||
case DW_OP_lit16: case DW_OP_lit17: case DW_OP_lit18: case DW_OP_lit19:
|
||||
case DW_OP_lit20: case DW_OP_lit21: case DW_OP_lit22: case DW_OP_lit23:
|
||||
case DW_OP_lit24: case DW_OP_lit25: case DW_OP_lit26: case DW_OP_lit27:
|
||||
case DW_OP_lit28: case DW_OP_lit29: case DW_OP_lit30: case DW_OP_lit31:
|
||||
stack[++stk] = op - DW_OP_lit0; break;
|
||||
case DW_OP_addr: stack[++stk] = dwarf2_parse_addr(ctx); break;
|
||||
case DW_OP_const1u: stack[++stk] = dwarf2_parse_byte(ctx); break;
|
||||
case DW_OP_const1s: stack[++stk] = (long)(signed char)dwarf2_parse_byte(ctx); break;
|
||||
|
|
Loading…
Reference in New Issue