state machine to @var{value}, which must be an unsigned integer.
@item view @var{value}
-This directive will verify that the @code{view} register in the
-@code{.debug_line} state machine matches @var{value}. In general, the
-@code{view} register counts how many prior @code{.loc} directives are at the
-same program location, but there are a few exceptions, such as that view
-numbers may be forced reset e.g. at function entry points, or they may not be
-reset even when the location changes. The assembler will determine the view
-number for that @code{.loc}. Then, if @var{value} is a label, it will set the
-label to the @var{value}. Otherwise, @var{value} may be either @code{0}, in
-which case the assembler will error out if the computed view number is not
-zero, or @code{-0}, that will cause the assembler to arrange for the
-@code{view} register to be reset for this @code{.loc} even if for @code{0} it
-would have issued an error.
+This option causes a row to be added to @code{.debug_line} in reference to the
+current address (which might not be the same as that of the following assembly
+instruction), and to associate @var{value} with the @code{view} register in the
+@code{.debug_line} state machine. If @var{value} is a label, both the
+@code{view} register and the label are set to the number of prior @code{.loc}
+directives at the same program location. If @var{value} is the literal
+@code{0}, the @code{view} register is set to zero, and the assembler asserts
+that there aren't any prior @code{.loc} directives at the same program
+location. If @var{value} is the literal @code{-0}, the assembler arrange for
+the @code{view} register to be reset in this row, even if there are prior
+@code{.loc} directives at the same program location.
@end table
#include "macro.h"
#include "obstack.h"
#include "ecoff.h"
-#include "dwarf2dbg.h"
#include "dw2gencfi.h"
#include "wchar.h"
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_do_align
md_do_align (n, fill, len, max, just_record_alignment);
#endif
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_cons_align
md_cons_align (1);
#endif
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
/* The m68k MRI assembler has a different meaning for .org. It
means to create an absolute section at a given address. We can't
support that--use a linker script instead. */
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_cons_align
md_cons_align (1);
#endif
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
if (flag_mri)
stop = mri_comment_field (&stopc);
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_cons_align
md_cons_align (1);
#endif
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
do
{
deferred_expression (&exp);
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_cons_align
md_cons_align (1);
#endif
md_flush_pending_output ();
#endif
- dwarf2_emit_insn (0);
-
#ifdef md_cons_align
md_cons_align (1);
#endif
#include "subsegs.h"
#include "obstack.h"
-#include "dwarf2dbg.h"
-
frchainS *frchain_now;
static struct obstack frchains;
mri_common_symbol = NULL;
if (frag_now && frchain_now)
- {
- frchain_now->frch_frag_now = frag_now;
- dwarf2_emit_insn (0);
- }
+ frchain_now->frch_frag_now = frag_now;
gas_assert (frchain_now == 0
|| frchain_now->frch_last == frag_now);