RFA: Add new note types to elf/elf.h

Nick Clifton nickc@redhat.com
Fri Apr 21 09:24:00 GMT 2017


Hi Guys,

  I would like to apply a patch to elf/elf.h to add support for two new
  note types.  The first is the GNU Property notes, proposed by H.J. Lu:

    https://github.com/hjl-tools/linux-abi/wiki/property-draft.pdf

  These notes are intended to be used by the dynamic linker to verify
  that the binary being loaded matches the available environment.

  The second note type is the GNU build attributes, proposed by myself:

    https://fedoraproject.org/wiki/Toolchain/Watermark

  These notes are intended for static analysis.  Hence they are not
  stored in an allocatable section.  Both types of note are generated by
  the compiler, although in theory they can also be generated by the
  assembler of linker.

  This patch simply adds the definitions of the note types and some of
  the constant values that they use to the elf/elf.h header file.  This
  is my first time posting here, so I apologise if have made any
  mistakes.  Anyway is this patch OK, and if so, please could it be
  applied ?

Cheers
  Nick

2017-04-21  Nick Clifton  <nickc@redhat.com>

	* elf/elf.h (NT_GNU_PROPERTY_TYPE_0): Define.
	(NOTE_GNU_PROPERTY_SECTION_NAME): Define.
	(GNU_PROPERTY_STACK_SIZE): Define.
	(GNU_PROPERTY_NO_COPY_ON_PROTECTED): Define.
	(GNU_PROPERTY_LOPROC): Define.
	(GNU_PROPERTY_HIPROC): Define.
	(GNU_PROPERTY_LOUSER): Define.
	(GNU_PROPERTY_HIUSER): Define.
	(GNU_PROPERTY_X86_ISA_1_USED): Define.
	(GNU_PROPERTY_X86_ISA_1_NEEDED): Define.
	(GNU_PROPERTY_X86_ISA_1_486): Define.
	(GNU_PROPERTY_X86_ISA_1_586): Define.
	(GNU_PROPERTY_X86_ISA_1_686): Define.
	(GNU_PROPERTY_X86_ISA_1_SSE): Define.
	(GNU_PROPERTY_X86_ISA_1_SSE2): Define.
	(GNU_PROPERTY_X86_ISA_1_SSE3): Define.
	(GNU_PROPERTY_X86_ISA_1_SSSE3): Define.
	(GNU_PROPERTY_X86_ISA_1_SSE4_1): Define.
	(GNU_PROPERTY_X86_ISA_1_SSE4_2): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX2): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512F): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512CD): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512ER): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512PF): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512VL): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512DQ): Define.
	(GNU_PROPERTY_X86_ISA_1_AVX512BW): Define.
	(NT_GNU_BUILD_ATTRIBUTE_OPEN): Define.
	(NT_GNU_BUILD_ATTRIBUTE_FUNC): Define.
	(GNU_BUILD_ATTRS_SECTION_NAME): Define.
	(GNU_BUILD_ATTRIBUTE_TYPE_NUMERIC): Define.
	(GNU_BUILD_ATTRIBUTE_TYPE_STRING): Define.
	(GNU_BUILD_ATTRIBUTE_TYPE_BOOL_TRUE): Define.
	(GNU_BUILD_ATTRIBUTE_TYPE_BOOL_FALSE): Define.
	(GNU_BUILD_ATTRIBUTE_VERSION): Define.
	(GNU_BUILD_ATTRIBUTE_STACK_PROT): Define.
	(GNU_BUILD_ATTRIBUTE_RELRO): Define.
	(GNU_BUILD_ATTRIBUTE_STACK_SIZE): Define.
	(GNU_BUILD_ATTRIBUTE_TOOL): Define.
	(GNU_BUILD_ATTRIBUTE_ABI): Define.
	(GNU_BUILD_ATTRIBUTE_PIC): Define.
	(GNU_BUILD_ATTRIBUTE_SHORT_ENUM): Define.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: elf.h.patch
Type: text/x-patch
Size: 3251 bytes
Desc: not available
URL: <http://sourceware.org/pipermail/libc-alpha/attachments/20170421/d6036a96/attachment.bin>


More information about the Libc-alpha mailing list