This is the mail archive of the elfutils-devel@sourceware.org mailing list for the elfutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [[RESEND & PING]PATCH V3 1/1] Add backend support for C-SKY


Hi Mao Han,

On Mon, 2019-06-03 at 16:16 +0800, Mao Han wrote:
> +const char *
> +csky_section_type_name (int type,
> +                      char *buf __attribute__ ((unused)),
> +                      size_t len __attribute__ ((unused)))
> +{
> +  if (type == SHT_CSKY_ATTRIBUTES)
> +    return "CSKY_ATTRIBUTES";
> +
> +  return NULL;
> +}

As far as I can see this is like a SHT_GNU_ATTRIBUTES or
SHT_ARM_ATTRIBUTES section. If so, you will also want something like:

diff --git a/src/readelf.c b/src/readelf.c
index cda7c93..8017dc4 100644
--- a/src/readelf.c
+++ b/src/readelf.c
@@ -3571,7 +3571,9 @@ print_attributes (Ebl *ebl, const GElf_Ehdr
*ehdr)
 
       if (shdr == NULL || (shdr->sh_type != SHT_GNU_ATTRIBUTES
                           && (shdr->sh_type != SHT_ARM_ATTRIBUTES
-                              || ehdr->e_machine != EM_ARM)))
+                              || ehdr->e_machine != EM_ARM)
+                          && (shdr->sh_type != SHT_CSKY_ATTRIBUTES
+                              || ehdr->e_machine != EM_CSKY)))
        continue;
 
       printf (gettext ("\

And then hook check_object_attribute to display any CSKY specific
attribute names/values.

Cheers,

Mark


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]