.loc fileno lineno [column] [options]When emitting DWARF2 line number information,
the .loc directive will add a row to the .debug_line line
number matrix corresponding to the immediately following assembly
instruction. The fileno, lineno, and optional column
arguments will be applied to the .debug_line state machine before
the row is added.
The options are a sequence of the following tokens in any order:
basic_blockbasic_block register in the
.debug_line state machine to true.
prologue_endprologue_end register in the
.debug_line state machine to true.
epilogue_beginepilogue_begin register in the
.debug_line state machine to true.
is_stmt valueis_stmt register in the
.debug_line state machine to value, which must be
either 0 or 1.
isa valueisa register in the .debug_line
state machine to value, which must be an unsigned integer.
discriminator valuediscriminator register in the .debug_line
state machine to value, which must be an unsigned integer.
view value.debug_line in reference to the
current address (which might not be the same as that of the following assembly
instruction), and to associate value with the view register in the
.debug_line state machine. If value is a label, both the
view register and the label are set to the number of prior .loc
directives at the same program location. If value is the literal
0, the view register is set to zero, and the assembler asserts
that there aren't any prior .loc directives at the same program
location. If value is the literal -0, the assembler arrange for
the view register to be reset in this row, even if there are prior
.loc directives at the same program location.