Module: wine Branch: master Commit: 255a1ebaadfb8795ab76ebd0360708973bb825cc URL: http://source.winehq.org/git/wine.git/?a=commit;h=255a1ebaadfb8795ab76ebd036...
Author: André Hentschel nerv@dawncrow.de Date: Sun Dec 20 17:27:35 2009 +0100
dbghelp: Implement literal dwarf opcodes.
---
dlls/dbghelp/dwarf.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c index 16ea011..d9e52d3 100644 --- a/dlls/dbghelp/dwarf.c +++ b/dlls/dbghelp/dwarf.c @@ -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;