[binutils-gdb] DT_FLAGS_1: Add Solaris bits

H.J.Lu hjl@sourceware.org
Wed Mar 21 19:56:00 GMT 2018


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

commit b1202ffa53484b65d95787fddef1bc6175e05ca9
Author: H.J. Lu <hjl.tools@gmail.com>
Date:   Wed Mar 21 12:55:40 2018 -0700

    DT_FLAGS_1: Add Solaris bits
    
    The following bits in DT_FLAGS_1 are used by Solaris:
    
     #define DF_1_KMOD       0x10000000 /* kernel module */
     #define DF_1_WEAKFILTER 0x20000000 /* apply weak binding to DT_FILTER */
     #define DF_1_NOCOMMON   0x40000000 /* no COMMON symbols exist */
    
    binutils/
    
    	* readelf.c (process_dynamic_section): Also dump DF_1_KMOD,
    	DF_1_WEAKFILTER and DF_1_NOCOMMON.
    
    include/
    
    	* elf/common.h (DF_1_KMOD): New.
    	(DF_1_WEAKFILTER): Likewise.
    	(DF_1_NOCOMMON): Likewise.

Diff:
---
 binutils/ChangeLog   |  5 +++++
 binutils/readelf.c   | 15 +++++++++++++++
 include/ChangeLog    |  6 ++++++
 include/elf/common.h |  3 +++
 4 files changed, 29 insertions(+)

diff --git a/binutils/ChangeLog b/binutils/ChangeLog
index 100942e..cb4e3be 100644
--- a/binutils/ChangeLog
+++ b/binutils/ChangeLog
@@ -1,3 +1,8 @@
+2018-03-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* readelf.c (process_dynamic_section): Also dump DF_1_KMOD,
+	DF_1_WEAKFILTER and DF_1_NOCOMMON.
+
 2018-03-20  Nick Clifton  <nickc@redhat.com>
 
 	* po/es.po: Updated Spanish translation.
diff --git a/binutils/readelf.c b/binutils/readelf.c
index b85db9f..d0bd679 100644
--- a/binutils/readelf.c
+++ b/binutils/readelf.c
@@ -10009,6 +10009,21 @@ process_dynamic_section (Filedata * filedata)
 		      printf (" PIE");
 		      val ^= DF_1_PIE;
 		    }
+		  if (val & DF_1_KMOD)
+		    {
+		      printf (" KMOD");
+		      val ^= DF_1_KMOD;
+		    }
+		  if (val & DF_1_WEAKFILTER)
+		    {
+		      printf (" WEAKFILTER");
+		      val ^= DF_1_WEAKFILTER;
+		    }
+		  if (val & DF_1_NOCOMMON)
+		    {
+		      printf (" NOCOMMON");
+		      val ^= DF_1_NOCOMMON;
+		    }
 		  if (val != 0)
 		    printf (" %lx", val);
 		  puts ("");
diff --git a/include/ChangeLog b/include/ChangeLog
index 82e29fe..448c6e3 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,9 @@
+2018-03-21  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* elf/common.h (DF_1_KMOD): New.
+	(DF_1_WEAKFILTER): Likewise.
+	(DF_1_NOCOMMON): Likewise.
+
 2018-03-14  Kito Cheng  <kito.cheng@gmail.com>
 
 	* opcode/riscv.h (OP_MASK_FUNCT3): New.
diff --git a/include/elf/common.h b/include/elf/common.h
index 61a1ca7..f435472 100644
--- a/include/elf/common.h
+++ b/include/elf/common.h
@@ -1006,6 +1006,9 @@
 #define	DF_1_SINGLETON	0x02000000
 #define	DF_1_STUB	0x04000000
 #define	DF_1_PIE	0x08000000
+#define	DF_1_KMOD	0x10000000
+#define	DF_1_WEAKFILTER	0x20000000
+#define	DF_1_NOCOMMON	0x40000000
 
 /* Flag values for the DT_FLAGS entry.	*/
 #define DF_ORIGIN	(1 << 0)



More information about the Binutils-cvs mailing list