From: Christian Eggers Date: Sun, 10 Mar 2019 18:21:52 +0000 (+0100) Subject: dwarf2: Fix calculation of line info offset X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=71250b94dc669b285cddcb744a7b3d1c7e2ec94b;p=binutils-gdb.git dwarf2: Fix calculation of line info offset The units of the value returned by "frag_now_fix()" and "size" do not match. "frag_now_fix()" returns bytes (can be 8, 16 or 32 bit), while "size" is octets (exactly 8 bit). * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset. --- diff --git a/gas/ChangeLog b/gas/ChangeLog index 2b8215b77f7..174ff541247 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2019-03-13 Christian Eggers + + * dwarf2dbg.c (dwarf2_emit_insn): Fix calculation of line info offset. + 2019-03-12 Andreas Krebbel * testsuite/gas/s390/zarch-arch13.s: Adjust testcase to optable changes. diff --git a/gas/dwarf2dbg.c b/gas/dwarf2dbg.c index ff7a743630d..45d86a6ee34 100644 --- a/gas/dwarf2dbg.c +++ b/gas/dwarf2dbg.c @@ -579,7 +579,7 @@ dwarf2_emit_insn (int size) dwarf2_where (&loc); - dwarf2_gen_line_info (frag_now_fix () - size, &loc); + dwarf2_gen_line_info ((frag_now_fix_octets () - size) / OCTETS_PER_BYTE, &loc); dwarf2_consume_line_info (); }