Use the 'current' struct filled by dwarf2_directive_loc, instead of calling
authorNick Clifton <nickc@redhat.com>
Sat, 11 May 2002 10:32:35 +0000 (10:32 +0000)
committerNick Clifton <nickc@redhat.com>
Sat, 11 May 2002 10:32:35 +0000 (10:32 +0000)
dwarf2_where.

gas/ChangeLog
gas/dwarf2dbg.c

index c732aede947a745c70b2139f5345cdeef330bedf..203b2276f83b0a98fad554c29f58bd8b8389a4fb 100644 (file)
@@ -1,3 +1,8 @@
+2002-05-11  Bruno Haible  <bruno@clisp.org>
+
+       * dwarf2dbg.c (dwarf2_emit_insn): Use the 'current' struct filled
+       by dwarf2_directive_loc, instead of calling dwarf2_where.
+
 2002-05-11  Kazu Hirata  <kazu@cs.umass.edu>
 
        * config/obj-coff.h: Fix formatting.
index 2037be39124a1deea52815ae74a35ed7f9d73b96..8b7005b2b5ca31903ef63c578e72eaf705d63aa5 100644 (file)
@@ -290,7 +290,12 @@ dwarf2_emit_insn (size)
     return;
   loc_directive_seen = false;
 
-  dwarf2_where (&loc);
+  /* Use the last location established by a .loc directive, not
+     the value returned by dwarf2_where().  That calls as_where()
+     which will return either the logical input file name (foo.c)
+     or the physical input file name (foo.s) and not the file name
+     specified in the most recent .loc directive (eg foo.h).  */
+  loc = current;
   dwarf2_gen_line_info (frag_now_fix () - size, &loc);
 }