[Dwarf-discuss] dwarf - debug line number information program state machine registers

Ramanaiah Nalamothu ramana.venkat83@gmail.com
Fri May 11 05:58:13 GMT 2007


Hi,

    I didn't understand the reason behind the provision of "basic_block" and
"end_sequence" line number program state machine registers. For me, it
appears that both are same or carries same information.

     My understanding is this.

Consider the following instructions.
  stw d1, (a5)
  sub 36, a6, a5
  stw d2, (a5)
.LM2:
  sub 16, a6, a4
  sub 28, a6, a5
  ldw (a5),d0
  stw d0, (a4)
.LM3:
  sub 12, a6, a4
  sub 32, a6, a5

The immediate instruction following .LM2 and .LM3 sets start of the basic
block i.e. "basic_block". And that instructions' address flags end of
sequence i.e. "end_sequence".
But if "basic_block" is set, then the associated "address" itself will be
same as "end_sequence". Then why we need another redundant "end_sequence"??
is there any particular use of "end_sequence"??

Hope i am clear about what i wanted to ask.

Thanks in advance for any reply.

Regards,
Ramana
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dwarfstd.org/private.cgi/dwarf-discuss-dwarfstd.org/attachments/20070511/412019cf/attachment.htm>



More information about the Dwarf-discuss mailing list