From: Julian Seward Date: Mon, 30 Apr 2007 09:44:15 +0000 (+0000) Subject: Merge r6599 (Correctly handle DW_CFA_def_cfa_sf) X-Git-Tag: svn/VALGRIND_3_2_3~20 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=68e1a76d1d1d7718b37004717143d1904e8855fe;p=thirdparty%2Fvalgrind.git Merge r6599 (Correctly handle DW_CFA_def_cfa_sf) git-svn-id: svn://svn.valgrind.org/valgrind/branches/VALGRIND_3_2_BRANCH@6714 --- diff --git a/coregrind/m_debuginfo/readdwarf.c b/coregrind/m_debuginfo/readdwarf.c index 9288df0b5c..d27246c772 100644 --- a/coregrind/m_debuginfo/readdwarf.c +++ b/coregrind/m_debuginfo/readdwarf.c @@ -2123,7 +2123,7 @@ static Int run_CF_instruction ( /*MOD*/UnwindContext* ctx, 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 @@ static Int show_CF_instruction ( UChar* instr, 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: