[binutils-gdb] Don't emit vendor attribute section if there is no attribute to emit.

Jim Wilson wilson@sourceware.org
Wed Jan 16 21:39:00 GMT 2019


https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=a4bf3d0720b1093dd148b7a728f92ce690a8a034

commit a4bf3d0720b1093dd148b7a728f92ce690a8a034
Author: Jim Wilson <jimw@sifive.com>
Date:   Wed Jan 16 13:37:35 2019 -0800

    Don't emit vendor attribute section if there is no attribute to emit.
    
    	2019-01-16  Kito Cheng  <kito@andestech.com>
    	bfd/
    	* elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
    	for OBJ_ATTR_PROC.
    	gas/
    	* testsuite/gas/riscv/attribute-empty.d: New.

Diff:
---
 bfd/ChangeLog                             | 5 +++++
 bfd/elf-attrs.c                           | 2 +-
 gas/ChangeLog                             | 4 ++++
 gas/testsuite/gas/riscv/attribute-empty.d | 3 +++
 4 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/bfd/ChangeLog b/bfd/ChangeLog
index 529ac73..de44928 100644
--- a/bfd/ChangeLog
+++ b/bfd/ChangeLog
@@ -1,4 +1,9 @@
 2019-01-16  Kito Cheng  <kito@andestech.com>
+
+	* elf-attrs.c (vendor_obj_attr_size): Return 0 if size is 0 even
+	for OBJ_ATTR_PROC.
+
+2019-01-16  Kito Cheng  <kito@andestech.com>
 	    Nelson Chu  <nelson@andestech.com>
 
 	* elfnn-riscv.c (in_subsets): New.
diff --git a/bfd/elf-attrs.c b/bfd/elf-attrs.c
index d238112..bfe135e 100644
--- a/bfd/elf-attrs.c
+++ b/bfd/elf-attrs.c
@@ -106,7 +106,7 @@ vendor_obj_attr_size (bfd *abfd, int vendor)
     size += obj_attr_size (list->tag, &list->attr);
 
   /* <size> <vendor_name> NUL 0x1 <size> */
-  return ((size || vendor == OBJ_ATTR_PROC)
+  return (size
 	  ? size + 10 + strlen (vendor_name)
 	  : 0);
 }
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 3228342..cd80c48 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,4 +1,8 @@
 2019-01-16  Kito Cheng  <kito@andestech.com>
+
+	* testsuite/gas/riscv/attribute-empty.d: New.
+
+2019-01-16  Kito Cheng  <kito@andestech.com>
 	    Nelson Chu  <nelson@andestech.com>
 
 	* config/tc-riscv.c (DEFAULT_RISCV_ATTR): Define to 0 if not defined.
diff --git a/gas/testsuite/gas/riscv/attribute-empty.d b/gas/testsuite/gas/riscv/attribute-empty.d
new file mode 100644
index 0000000..4f0982a
--- /dev/null
+++ b/gas/testsuite/gas/riscv/attribute-empty.d
@@ -0,0 +1,3 @@
+#as: -mno-arch-attr
+#readelf: -A
+#source: empty.s



More information about the Binutils-cvs mailing list