This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Ping [Patch] include/coff/xcoff.h: add new macros
- From: Tristan Gingold <gingold at adacore dot com>
- To: Richard Sandiford <rdsandiford at googlemail dot com>
- Cc: binutils <binutils at sourceware dot org>
- Date: Tue, 26 Apr 2011 09:42:49 +0200
- Subject: Ping [Patch] include/coff/xcoff.h: add new macros
- References: <8A947008-BC84-4914-868B-8069CD5FE1DC@adacore.com>
Ping for:
On Apr 18, 2011, at 4:28 PM, Tristan Gingold wrote:
> Hi,
>
> this patch updates include/coff/xcoff.h with new macros. Some were already present
> in AIX 5.3 (F_FDPR_PROF), some were added by AIX 6 (the TLS) and some by AIX 7 (Dwarf).
>
> Ok for trunk ?
>
> Tristan.
>
> include/coff
> 2011-04-18 Tristan Gingold <gingold@adacore.com>
>
> * xcoff.h (F_FDPR_PROF, F_FDPR_OPTI, F_DSA, F_VARPG, F_LPTEXT)
> (F_LPDATA, F_LOADONLY, F_NONEXEC, STYP_DWARF, SSUBTYP_DWINFO)
> (SSUBTYP_DWLINE, SSUBTYP_DWPBNMS, SSUBTYP_DWPBTYP)
> (SSUBTYP_DWARNGE, SSUBTYP_DWABREV, SSUBTYP_DWSTR)
> (SSUBTYP_DWRNGES, STYP_TDATA, STYP_TBSS, R_TLS, R_TLS_IE)
> (R_TLS_LD, R_TLS_LE, R_TLSM, R_TLSML, R_TOCU, R_TOCL, C_DWARF):
> New macros.
>
> Index: include/coff/xcoff.h
> ===================================================================
> RCS file: /cvs/src/src/include/coff/xcoff.h,v
> retrieving revision 1.20
> diff -c -r1.20 xcoff.h
> *** include/coff/xcoff.h 15 Apr 2010 10:26:07 -0000 1.20
> --- include/coff/xcoff.h 18 Apr 2011 14:25:09 -0000
> ***************
> *** 24,29 ****
> --- 24,55 ----
> #ifndef _INTERNAL_XCOFF_H
> #define _INTERNAL_XCOFF_H
>
> + /* XCOFF specific f_flags. */
> +
> + /* File was profiled with fdpr. */
> + #define F_FDPR_PROF 0x0010
> +
> + /* File was reordered with fdpr. */
> + #define F_FDPR_OPTI 0x0020
> +
> + /* File use very large program support. */
> + #define F_DSA 0x0040
> +
> + /* One aux header specifying medium page sizes is non-zero. */
> + #define F_VARPG 0x0100
> +
> + /* Executable requires large pages for text. */
> + #define F_LPTEXT 0x0400
> +
> + /* Executable requires large pages for data. */
> + #define F_LPDATA 0x0800
> +
> + /* Archive member ignored by the linker. */
> + #define F_LOADONLY 0x4000
> +
> + /* Read/write sections are non-executable. */
> + #define F_NONEXEC 0x8000
> +
> /* Linker */
>
> /* Names of "special" sections. */
> ***************
> *** 35,59 ****
> #define _EXCEPT ".except"
> #define _TYPCHK ".typchk"
>
> ! /* XCOFF uses a special .loader section with type STYP_LOADER. */
> ! #define STYP_LOADER 0x1000
>
> ! /* XCOFF uses a special .debug section with type STYP_DEBUG. */
> ! #define STYP_DEBUG 0x2000
>
> ! /* XCOFF handles line number or relocation overflow by creating
> ! another section header with STYP_OVRFLO set. */
> ! #define STYP_OVRFLO 0x8000
>
> /* Specifies an exception section. A section of this type provides
> information to identify the reason that a trap or ececptin occured within
> and executable object program */
> #define STYP_EXCEPT 0x0100
>
> /* Specifies a type check section. A section of this type contains parameter
> argument type check strings used by the AIX binder. */
> #define STYP_TYPCHK 0x4000
>
> #define RS6K_AOUTHDR_OMAGIC 0x0107 /* old: text & data writeable */
> #define RS6K_AOUTHDR_NMAGIC 0x0108 /* new: text r/o, data r/w */
> #define RS6K_AOUTHDR_ZMAGIC 0x010B /* paged: text r/o, both page-aligned */
> --- 61,104 ----
> #define _EXCEPT ".except"
> #define _TYPCHK ".typchk"
>
> ! /* XCOFF uses special .dwXXX sections with the type STYP_DWARF. */
> ! #define STYP_DWARF 0x0010
>
> ! /* High-order 16-bits dwarf subtypes. */
> ! #define SSUBTYP_DWINFO 0x10000
> ! #define SSUBTYP_DWLINE 0x20000
> ! #define SSUBTYP_DWPBNMS 0x30000
> ! #define SSUBTYP_DWPBTYP 0x40000
> ! #define SSUBTYP_DWARNGE 0x50000
> ! #define SSUBTYP_DWABREV 0x60000
> ! #define SSUBTYP_DWSTR 0x70000
> ! #define SSUBTYP_DWRNGES 0x80000
>
> ! /* XCOFF uses a special .loader section with type STYP_LOADER. */
> ! #define STYP_LOADER 0x1000
>
> /* Specifies an exception section. A section of this type provides
> information to identify the reason that a trap or ececptin occured within
> and executable object program */
> #define STYP_EXCEPT 0x0100
>
> + /* Specifies an initialized thread-local data section. */
> + #define STYP_TDATA 0x0400
> +
> + /* Specifies an uninitialized thread-local data section. */
> + #define STYP_TBSS 0x0800
> +
> + /* XCOFF uses a special .debug section with type STYP_DEBUG. */
> + #define STYP_DEBUG 0x2000
> +
> /* Specifies a type check section. A section of this type contains parameter
> argument type check strings used by the AIX binder. */
> #define STYP_TYPCHK 0x4000
>
> + /* XCOFF handles line number or relocation overflow by creating
> + another section header with STYP_OVRFLO set. */
> + #define STYP_OVRFLO 0x8000
> +
> #define RS6K_AOUTHDR_OMAGIC 0x0107 /* old: text & data writeable */
> #define RS6K_AOUTHDR_NMAGIC 0x0108 /* new: text r/o, data r/w */
> #define RS6K_AOUTHDR_ZMAGIC 0x010B /* paged: text r/o, both page-aligned */
> ***************
> *** 84,89 ****
> --- 129,142 ----
> #define R_RBAC (0x19)
> #define R_RBR (0x1a)
> #define R_RBRC (0x1b)
> + #define R_TLS (0x20)
> + #define R_TLS_IE (0x21)
> + #define R_TLS_LD (0x22)
> + #define R_TLS_LE (0x23)
> + #define R_TLSM (0x24)
> + #define R_TLSML (0x25)
> + #define R_TOCU (0x30)
> + #define R_TOCL (0x31)
>
> /* Storage class #defines, from /usr/include/storclass.h that are not already
> defined in internal.h */
> ***************
> *** 91,96 ****
> --- 144,152 ----
> /* Comment string in .info section */
> #define C_INFO 110
>
> + /* Dwarf symbol. */
> + #define C_DWARF 112
> +
> /* Auxillary Symbol Entries */
>
> /* x_smtyp values: */
>