bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug gas/29451] gas-2.39 started adding 0-sized DIEs to functions withou


From: mark at klomp dot org
Subject: [Bug gas/29451] gas-2.39 started adding 0-sized DIEs to functions without .size
Date: Sun, 07 Aug 2022 23:15:47 +0000

https://sourceware.org/bugzilla/show_bug.cgi?id=29451

Mark Wielaard <mark at klomp dot org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |mark at klomp dot org

--- Comment #2 from Mark Wielaard <mark at klomp dot org> ---
(In reply to Sergei Trofimovich from comment #0)
> Discovered in https://sourceware.org/PR29450 where gas-2.38 did not attach
> 0-sized DIE for glibc's _init assembly-written function and gas-2.39 did.
> 
>  <1><22>: Abbrev Number: 2 (DW_TAG_subprogram)
>     <23>   DW_AT_name        : (strp) (offset: 0x49): _init
>     <27>   DW_AT_external    : (flag) 1
>     <28>   DW_AT_low_pc      : (addr) 0x0
>     <2c>   DW_AT_high_pc     : (addr) 0x0
> 
> Would it be fair to say it's a bug to assign zero size here via DW_AT_low_pc
> / DW_AT_high_pc?

Yes it is clearly a bug. Both low_pc and high_pc are invalid values.

The definition of low_pc/high_pc is:

  The value of the DW_AT_low_pc attribute is the address of the first
instruction associated with the entity.

  If the value of the DW_AT_high_pc is of class address, it is the address of
the first location past the last instruction associated with the entity;

So this doesn't even describe a valid contiguous range.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]