* ia64.h (ELF_STRING_ia64_unwind_hdr): New Macro for HP-UX.
authorAlan Modra <amodra@gmail.com>
Sun, 6 Jan 2002 11:12:39 +0000 (11:12 +0000)
committerAlan Modra <amodra@gmail.com>
Sun, 6 Jan 2002 11:12:39 +0000 (11:12 +0000)
(SHT_IA_64_HP_OPT_ANOT): Ditto
(PT_IA_64_HP_OPT_ANOT): Ditto
(PT_IA_64_HP_HSL_ANOT): Ditto
(PT_IA_64_HP_STACK): Ditto
(SHN_IA_64_ANSI_COMMON): Ditto

include/elf/ChangeLog
include/elf/ia64.h

index 1d0675dbd039d3afe81a7e45b66fdbf58e7aa580..068a4b6696c375620b34d8732e50293b09814361 100644 (file)
@@ -1,3 +1,12 @@
+2002-01-06  Steve Ellcey  <sje@cup.hp.com>
+
+       * ia64.h (ELF_STRING_ia64_unwind_hdr): New Macro for HP-UX.
+       (SHT_IA_64_HP_OPT_ANOT): Ditto
+       (PT_IA_64_HP_OPT_ANOT): Ditto
+       (PT_IA_64_HP_HSL_ANOT): Ditto
+       (PT_IA_64_HP_STACK): Ditto
+       (SHN_IA_64_ANSI_COMMON): Ditto
+
 2001-12-17  Alan Modra  <amodra@bigpond.net.au>
 
        * external.h (Elf_External_Sym_Shndx): Declare.
index edfc7c5b532eb59c9006ef151f3ae2895e81df78..5e632ed010e53d1b91d9b89cd171e890c6e07576 100644 (file)
@@ -49,6 +49,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #define ELF_STRING_ia64_unwind_info    ".IA_64.unwind_info"
 #define ELF_STRING_ia64_unwind_once    ".gnu.linkonce.ia64unw."
 #define ELF_STRING_ia64_unwind_info_once ".gnu.linkonce.ia64unwi."
+/* .IA_64.unwind_hdr is only used by HP-UX.  */
+#define ELF_STRING_ia64_unwind_hdr     ".IA_64.unwind_hdr"
 
 /* Bits in the sh_flags field of Elf64_Shdr:  */
 
@@ -60,6 +62,12 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #define SHT_IA_64_EXT          (SHT_LOPROC + 0)        /* extension bits */
 #define SHT_IA_64_UNWIND       (SHT_LOPROC + 1)        /* unwind bits */
 
+/* SHT_IA_64_HP_OPT_ANOT is only generated by HPUX compilers for its
+   optimization annotation section.  GCC does not generate it but we
+   want readelf to know what they are.  Do not use two capital Ns in
+   annotate or sed will turn it into 32 or 64 during the build.  */
+#define SHT_IA_64_HP_OPT_ANOT  0x60000004
+
 /* Bits in the p_flags field of Elf64_Phdr:  */
 
 #define PF_IA_64_NORECOV       0x80000000
@@ -69,10 +77,24 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #define PT_IA_64_ARCHEXT       (PT_LOPROC + 0) /* arch extension bits */
 #define PT_IA_64_UNWIND        (PT_LOPROC + 1) /* ia64 unwind bits */
 
+/* HP-UX specific values for p_type in Elf64_Phdr.
+   These values are currently just used to make
+   readelf more usable on HP-UX.  */
+
+#define PT_IA_64_HP_OPT_ANOT   (PT_LOOS + 0x12)
+#define PT_IA_64_HP_HSL_ANOT   (PT_LOOS + 0x13)
+#define PT_IA_64_HP_STACK      (PT_LOOS + 0x14)
+
 /* Possible values for d_tag in Elf64_Dyn:  */
 
 #define DT_IA_64_PLT_RESERVE   (DT_LOPROC + 0)
 
+/* This section only used by HP-UX, The HP linker gives weak symbols
+   precedence over regular common symbols.  We want common to override
+   weak.  Using this common instead of SHN_COMMON does that.  */
+
+#define SHN_IA_64_ANSI_COMMON 0xFF00
+
 /* ia64-specific relocation types: */
 
 /* Relocs apply to specific instructions within a bundle.  The least