Eric Pouech : dbghelp: In dwarf debug functions, use register name instead of register value.
Module: wine Branch: master Commit: 6d7c2e02d827ecacbaacf64c6a9cfe93df1e9879 URL: http://source.winehq.org/git/wine.git/?a=commit;h=6d7c2e02d827ecacbaacf64c6a... Author: Eric Pouech <eric.pouech(a)orange.fr> Date: Sun Mar 13 21:31:17 2011 +0100 dbghelp: In dwarf debug functions, use register name instead of register value. --- dlls/dbghelp/dwarf.c | 19 ++++++++++++------- 1 files changed, 12 insertions(+), 7 deletions(-) diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c index 5d6fd25..1d5aa17 100644 --- a/dlls/dbghelp/dwarf.c +++ b/dlls/dbghelp/dwarf.c @@ -677,10 +677,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, */ if (!piece_found) { + DWORD cvreg = dwarf2_map_register(op - DW_OP_reg0); if (loc->reg != Wine_DW_no_register) - FIXME("Only supporting one reg (%d -> %d)\n", - loc->reg, dwarf2_map_register(op - DW_OP_reg0)); - loc->reg = dwarf2_map_register(op - DW_OP_reg0); + FIXME("Only supporting one reg (%s/%d -> %s/%d)\n", + dbghelp_current_cpu->fetch_regname(loc->reg), loc->reg, + dbghelp_current_cpu->fetch_regname(cvreg), cvreg); + loc->reg = cvreg; } loc->kind = loc_register; } @@ -692,10 +694,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, */ if (!piece_found) { + DWORD cvreg = dwarf2_map_register(op - DW_OP_breg0); if (loc->reg != Wine_DW_no_register) - FIXME("Only supporting one breg (%d -> %d)\n", - loc->reg, dwarf2_map_register(op - DW_OP_breg0)); - loc->reg = dwarf2_map_register(op - DW_OP_breg0); + FIXME("Only supporting one breg (%s/%d -> %s/%d)\n", + dbghelp_current_cpu->fetch_regname(loc->reg), loc->reg, + dbghelp_current_cpu->fetch_regname(cvreg), cvreg); + loc->reg = cvreg; } stack[++stk] = dwarf2_leb128_as_signed(ctx); loc->kind = loc_regrel; @@ -763,7 +767,8 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, break; case DW_OP_fbreg: if (loc->reg != Wine_DW_no_register) - FIXME("Only supporting one reg (%d -> -2)\n", loc->reg); + FIXME("Only supporting one reg (%s/%d -> -2)\n", + dbghelp_current_cpu->fetch_regname(loc->reg), loc->reg); if (frame && frame->kind == loc_register) { loc->kind = loc_regrel;
participants (1)
-
Alexandre Julliard