Commit 6d7c2e02 authored by Eric Pouech's avatar Eric Pouech Committed by Alexandre Julliard

dbghelp: In dwarf debug functions, use register name instead of register value.

parent a26ed126
...@@ -677,10 +677,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, ...@@ -677,10 +677,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc,
*/ */
if (!piece_found) if (!piece_found)
{ {
DWORD cvreg = dwarf2_map_register(op - DW_OP_reg0);
if (loc->reg != Wine_DW_no_register) if (loc->reg != Wine_DW_no_register)
FIXME("Only supporting one reg (%d -> %d)\n", FIXME("Only supporting one reg (%s/%d -> %s/%d)\n",
loc->reg, dwarf2_map_register(op - DW_OP_reg0)); dbghelp_current_cpu->fetch_regname(loc->reg), loc->reg,
loc->reg = dwarf2_map_register(op - DW_OP_reg0); dbghelp_current_cpu->fetch_regname(cvreg), cvreg);
loc->reg = cvreg;
} }
loc->kind = loc_register; loc->kind = loc_register;
} }
...@@ -692,10 +694,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, ...@@ -692,10 +694,12 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc,
*/ */
if (!piece_found) if (!piece_found)
{ {
DWORD cvreg = dwarf2_map_register(op - DW_OP_breg0);
if (loc->reg != Wine_DW_no_register) if (loc->reg != Wine_DW_no_register)
FIXME("Only supporting one breg (%d -> %d)\n", FIXME("Only supporting one breg (%s/%d -> %s/%d)\n",
loc->reg, dwarf2_map_register(op - DW_OP_breg0)); dbghelp_current_cpu->fetch_regname(loc->reg), loc->reg,
loc->reg = dwarf2_map_register(op - DW_OP_breg0); dbghelp_current_cpu->fetch_regname(cvreg), cvreg);
loc->reg = cvreg;
} }
stack[++stk] = dwarf2_leb128_as_signed(ctx); stack[++stk] = dwarf2_leb128_as_signed(ctx);
loc->kind = loc_regrel; loc->kind = loc_regrel;
...@@ -763,7 +767,8 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc, ...@@ -763,7 +767,8 @@ compute_location(dwarf2_traverse_context_t* ctx, struct location* loc,
break; break;
case DW_OP_fbreg: case DW_OP_fbreg:
if (loc->reg != Wine_DW_no_register) 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) if (frame && frame->kind == loc_register)
{ {
loc->kind = loc_regrel; loc->kind = loc_regrel;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment