This is the mail archive of the
binutils@sources.redhat.com
mailing list for the binutils project.
Re: gas dwarf2 assert failure for misaligned sections?
- From: Alan Modra <amodra at bigpond dot net dot au>
- To: DJ Delorie <dj at redhat dot com>
- Cc: binutils at sources dot redhat dot com
- Date: Tue, 26 Nov 2002 16:29:38 +1030
- Subject: Re: gas dwarf2 assert failure for misaligned sections?
- References: <200211252138.gAPLc1B24961@greed.delorie.com>
On Mon, Nov 25, 2002 at 04:38:01PM -0500, DJ Delorie wrote:
>
> This seems to happen on any port that has DWARF2_LINE_MIN_INSN_LENGTH
> defined to be greater than one (xstormy16 and arm, for example). Has
> anyone seen this before, or is this something new for me to debug? I
> have a hack that just tweaks the size_inc to avoid the problem, but I
> assume there's an assert there for a reason...
>
> .text
> foo:
> nop
> .byte 1
The address skips are encoded in units of DWARF2_LINE_MIN_INSN_LENGTH
for efficiency on processors that have fixed instruction size larger
than one byte (or all multiples of some value). You've just put
nonsense in the instruction stream.
> $ ./as-new -gdwarf2 dj.s
> dj.s: Assembler messages:
> dj.s:4: Internal error!
> Assertion failure in size_inc_line_addr at ../../src/gas/dwarf2dbg.c line 616.
> Please report this bug.
I guess we should be emitting a normal error here rather than using
an assert.
--
Alan Modra
IBM OzLabs - Linux Technology Centre