|
From: <sv...@va...> - 2007-04-30 09:44:21
|
Author: sewardj
Date: 2007-04-30 10:44:15 +0100 (Mon, 30 Apr 2007)
New Revision: 6714
Log:
Merge r6599 (Correctly handle DW_CFA_def_cfa_sf)
Modified:
branches/VALGRIND_3_2_BRANCH/coregrind/m_debuginfo/readdwarf.c
Modified: branches/VALGRIND_3_2_BRANCH/coregrind/m_debuginfo/readdwarf.c
===================================================================
--- branches/VALGRIND_3_2_BRANCH/coregrind/m_debuginfo/readdwarf.c 2007-04-30 08:48:19 UTC (rev 6713)
+++ branches/VALGRIND_3_2_BRANCH/coregrind/m_debuginfo/readdwarf.c 2007-04-30 09:44:15 UTC (rev 6714)
@@ -2123,7 +2123,7 @@
if (reg < 0 || reg >= N_CFI_REGS)
return 0; /* fail */
ctx->cfa_reg = reg;
- ctx->cfa_offset = off;
+ ctx->cfa_offset = off * ctx->data_a_f;
break;
case DW_CFA_register:
@@ -2377,7 +2377,8 @@
i += nleb;
off = read_leb128( &instr[i], &nleb, 1 );
i += nleb;
- VG_(printf)("DW_CFA_def_cfa_sf(r%d, off %d)\n", reg, off);
+ VG_(printf)("DW_CFA_def_cfa_sf(r%d, off %d x data_a_f)\n",
+ (Int)reg, (Int)off);
break;
case DW_CFA_register:
|