[PATCH RFC] backends: Add RISC-V object attribute printing
Martin Liška
mliska@suse.cz
Fri Feb 24 08:55:53 GMT 2023
@Andreas: Can you take a look?
Martin
On 2/22/23 23:56, Mark Wielaard wrote:
> Hi,
>
> On Fri, Nov 25, 2022 at 05:29:19PM +0100, Martin Liška wrote:
>> On 10/13/22 16:53, Mark Wielaard wrote:
>>> On Wed, 2022-08-10 at 11:27 +0200, Andreas Schwab via Elfutils-devel
>>> wrote:
>>>> This does not work yet. The RISC-V attribute tags use the same
>>>> convention as the GNU attributes: odd numbered tags take a string
>>>> value,
>>>> even numbered ones an integer value, but print_attributes assumes the
>>>> ARM numbering scheme by default for non-GNU attributes.
>>>
>>> Yeah, I see this comment in print_attributes:
>>>
>>> /* GNU style tags have either a uleb128 value,
>>> when lowest bit is not set, or a string
>>> when the lowest bit is set.
>>> "compatibility" (32) is special. It has
>>> both a string and a uleb128 value. For
>>> non-gnu we assume 6 till 31 only take ints.
>>> XXX see arm backend, do we need a separate
>>> hook? */
>>>
>>> Maybe we need a flag in the backend to tell whether attributes follow
>>> the "gnu_vendor" convention? So that could be checked at:
>>>
>>> bool gnu_vendor = (q - name == sizeof "gnu"
>>> && !memcmp (name, "gnu", sizeof "gnu"));
>>> gnu_vendor |= ebl->has_gnu_attributes;
>>>
>>> Or something similar?
>>
>> Andreas: Can you please take a look at this?
>
> Has anybody had time to look at this?
>
> Thanks,
>
> Mark
More information about the Elfutils-devel
mailing list