From: Chao-ying Fu Date: Mon, 14 Oct 2013 18:45:46 +0000 (+0000) Subject: 2013-10-14 Chao-ying Fu X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=a9f581680fe1de047447931494b70fa0d8da9e42;p=binutils-gdb.git 2013-10-14 Chao-ying Fu * readelf.c (display_mips_gnu_attribute): Support Tag_GNU_MIPS_ABI_MSA. * doc/binutils.texi: Document -Mmsa disassembler option. --- diff --git a/binutils/ChangeLog b/binutils/ChangeLog index a75641c0446..e2d53e0c98d 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2013-10-14 Chao-ying Fu + + * readelf.c (display_mips_gnu_attribute): Support Tag_GNU_MIPS_ABI_MSA. + * doc/binutils.texi: Document -Mmsa disassembler option. + 2013-10-14 Jan-Benedict Glaw * readelf.c (decode_arm_unwind): Don't initialize `addr'. diff --git a/binutils/doc/binutils.texi b/binutils/doc/binutils.texi index 9176d9b5a16..6abcae29dbb 100644 --- a/binutils/doc/binutils.texi +++ b/binutils/doc/binutils.texi @@ -2114,6 +2114,9 @@ Print the 'raw' instruction mnemonic instead of some pseudo instruction mnemonic. I.e., print 'daddu' or 'or' instead of 'move', 'sll' instead of 'nop', etc. +@item msa +Disassemble MSA instructions. + @item virt Disassemble the virtualization ASE instructions. diff --git a/binutils/readelf.c b/binutils/readelf.c index 2156b78258e..79201006300 100644 --- a/binutils/readelf.c +++ b/binutils/readelf.c @@ -11769,6 +11769,30 @@ display_mips_gnu_attribute (unsigned char * p, return p; } + if (tag == Tag_GNU_MIPS_ABI_MSA) + { + unsigned int len; + int val; + + val = read_uleb128 (p, &len, end); + p += len; + printf (" Tag_GNU_MIPS_ABI_MSA: "); + + switch (val) + { + case Val_GNU_MIPS_ABI_MSA_ANY: + printf (_("Any MSA or not\n")); + break; + case Val_GNU_MIPS_ABI_MSA_128: + printf (_("128-bit MSA\n")); + break; + default: + printf ("??? (%d)\n", val); + break; + } + return p; + } + return display_tag_value (tag & 1, p, end); }