search for: elfosabi_linux

Displaying 15 results from an estimated 15 matches for "elfosabi_linux".

2012 Nov 20
3
[LLVMdev] Does LLVM sign ARM ELFs?
...he ARM Architecture" and my best guess has been to inspect .ARM.attributes in the elf-dump's section data, but both LLVM and GCC use "aeabi" for the vendor name. I've found several ways to distinguish the two (such as a magic number where GCC uses ELFOSABI_SYSV and LLVM uses ELFOSABI_LINUX), but hoping for something more reliable, like a toolchain signature. Is there anything like that? Thanks, Greg
2012 Nov 20
0
[LLVMdev] Does LLVM sign ARM ELFs?
...quot;, etc). Amara, Maybe another thing to add to your attributes patch, adding some vendor specific info to it (like clang/version, llvm/version, integrated-as, etc)? > I've found several ways to distinguish the two (such as a magic number > where GCC uses ELFOSABI_SYSV and LLVM uses ELFOSABI_LINUX), but hoping > for something more reliable, like a toolchain signature. I wouldn't rely on that. I'm not sure what's your objective, but in the past when I had to test separate binaries generated from integrated-as and compare to GAS generated objects I just had different names for...
2005 Jan 06
0
[PATCH] ELF headers
...2004-01-30 14:40:51.000000000 -0700 +++ klibc-0.178-fogo/include/sys/elfcommon.h 2004-09-20 09:21:09.000000000 -0600 @@ -2,6 +2,8 @@ * sys/elfcommon.h */ +#include <stdint.h> + #ifndef _SYS_ELFCOMMON_H #define _SYS_ELFCOMMON_H @@ -182,5 +184,33 @@ #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +/* How to extract and insert information held in the st_info field. */ + +#define ST_BIND(val) (((unsigned char) (val)) >> 4) +#define ST_TYPE(val) ((val) & 0xf) +#define ST_INFO(bind, type) (((bind) << 4) + ((type) & 0xf)) + +#define STB_LOCAL 0 /* local symbol */ +#de...
2012 Nov 20
3
[LLVMdev] Does LLVM sign ARM ELFs?
...e another thing to add to your attributes patch, adding some > vendor specific info to it (like clang/version, llvm/version, > integrated-as, etc)? > > >> I've found several ways to distinguish the two (such as a magic number >> where GCC uses ELFOSABI_SYSV and LLVM uses ELFOSABI_LINUX), but hoping >> for something more reliable, like a toolchain signature. > > I wouldn't rely on that. > > I'm not sure what's your objective, but in the past when I had to test > separate binaries generated from integrated-as and compare to GAS > generated object...
2007 Dec 10
1
[git patch] m-i-t support, ipconfig fix
...e ELF64_ST_TYPE(val) ELF32_ST_TYPE (val) + #endif /* _SYS_ELF64_H */ diff --git a/usr/include/sys/elfcommon.h b/usr/include/sys/elfcommon.h index 0d81db5..ad5e459 100644 --- a/usr/include/sys/elfcommon.h +++ b/usr/include/sys/elfcommon.h @@ -184,4 +184,14 @@ #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +/* Legal values for ST_BIND subfield of st_info (symbol binding). */ +#define STB_LOCAL 0 /* Local symbol */ +#define STB_GLOBAL 1 /* Global symbol */ +#define STB_WEAK 2 /* Weak symbol */ +#define STB_NUM 3 /* Number of defined types. */ +#define STB_LOOS 10 /* Start of OS-specific *...
2007 Sep 22
3
[git patch] module-init-tools fixes
...e ELF64_ST_TYPE(val) ELF32_ST_TYPE (val) + #endif /* _SYS_ELF64_H */ diff --git a/usr/include/sys/elfcommon.h b/usr/include/sys/elfcommon.h index 0d81db5..ad5e459 100644 --- a/usr/include/sys/elfcommon.h +++ b/usr/include/sys/elfcommon.h @@ -184,4 +184,14 @@ #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +/* Legal values for ST_BIND subfield of st_info (symbol binding). */ +#define STB_LOCAL 0 /* Local symbol */ +#define STB_GLOBAL 1 /* Global symbol */ +#define STB_WEAK 2 /* Weak symbol */ +#define STB_NUM 3 /* Number of defined types. */ +#define STB_LOOS 10 /* Start of OS-specific *...
2007 Jun 01
2
another RFC patch: bzImage with ELF payload
...hdr { Elf64_Xword sh_addralign; /* Section alignment */ Elf64_Xword sh_entsize; /* Entry size if section holds table */ }; +#endif /* __ASSEMBLY__ */ #define EI_MAG0 0 /* e_ident[] indexes */ #define EI_MAG1 1 @@ -344,6 +355,7 @@ struct elf64_shdr { #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +#define ELFOSABI_STANDALONE 255 #ifndef ELF_OSABI #define ELF_OSABI ELFOSABI_NONE @@ -358,6 +370,7 @@ struct elf64_shdr { #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#ifndef __ASSEMBLY__ /* Note header in a PT_NOTE section */ struct elf32_not...
2007 Jun 01
2
another RFC patch: bzImage with ELF payload
...hdr { Elf64_Xword sh_addralign; /* Section alignment */ Elf64_Xword sh_entsize; /* Entry size if section holds table */ }; +#endif /* __ASSEMBLY__ */ #define EI_MAG0 0 /* e_ident[] indexes */ #define EI_MAG1 1 @@ -344,6 +355,7 @@ struct elf64_shdr { #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +#define ELFOSABI_STANDALONE 255 #ifndef ELF_OSABI #define ELF_OSABI ELFOSABI_NONE @@ -358,6 +370,7 @@ struct elf64_shdr { #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#ifndef __ASSEMBLY__ /* Note header in a PT_NOTE section */ struct elf32_not...
2007 May 31
1
[patch rfc wip] first cut of ELF bzImage
...d sh_addralign; /* Section alignment */ Elf64_Xword sh_entsize; /* Entry size if section holds table */ } Elf64_Shdr; +#endif /* __ASSEMBLY__ */ #define EI_MAG0 0 /* e_ident[] indexes */ #define EI_MAG1 1 @@ -343,6 +354,7 @@ typedef struct elf64_shdr { #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +#define ELFOSABI_STANDALONE 255 #ifndef ELF_OSABI #define ELF_OSABI ELFOSABI_NONE @@ -357,6 +369,7 @@ typedef struct elf64_shdr { #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#ifndef __ASSEMBLY__ /* Note header in a PT_NOTE section */ typedef...
2007 May 31
1
[patch rfc wip] first cut of ELF bzImage
...d sh_addralign; /* Section alignment */ Elf64_Xword sh_entsize; /* Entry size if section holds table */ } Elf64_Shdr; +#endif /* __ASSEMBLY__ */ #define EI_MAG0 0 /* e_ident[] indexes */ #define EI_MAG1 1 @@ -343,6 +354,7 @@ typedef struct elf64_shdr { #define ELFOSABI_NONE 0 #define ELFOSABI_LINUX 3 +#define ELFOSABI_STANDALONE 255 #ifndef ELF_OSABI #define ELF_OSABI ELFOSABI_NONE @@ -357,6 +369,7 @@ typedef struct elf64_shdr { #define NT_PRXFPREG 0x46e62b7f /* copied from gdb5.1/include/elf/common.h */ +#ifndef __ASSEMBLY__ /* Note header in a PT_NOTE section */ typedef...
2007 Jun 06
7
[PATCH RFC 0/7] proposed updates to boot protocol and paravirt booting
This series: 1. Updates the boot protocol to version 2.07 2. Clean up the existing build process, to get rid of tools/build and make the linker do more heavy lifting 3. Make the bzImage payload an ELF file. The bootloader can extract this as a naked ELF file by skipping over boot_params.setup_sects worth of 16-bit setup code. 4. Update the boot_params to 2.07, and update the
2007 Jun 06
7
[PATCH RFC 0/7] proposed updates to boot protocol and paravirt booting
This series: 1. Updates the boot protocol to version 2.07 2. Clean up the existing build process, to get rid of tools/build and make the linker do more heavy lifting 3. Make the bzImage payload an ELF file. The bootloader can extract this as a naked ELF file by skipping over boot_params.setup_sects worth of 16-bit setup code. 4. Update the boot_params to 2.07, and update the
2007 Jun 15
11
[PATCH 00/10] paravirt/subarchitecture boot protocol
This series updates the boot protocol to 2.07 and uses it to implement paravirtual booting. This allows the bootloader to tell the kernel what kind of hardware/pseudo-hardware environment it's coming up under, and the kernel can use the appropriate boot sequence code. Specifically: - Update the boot protocol to 2.07, which adds fields to specify the hardware subarchitecture and some
2007 Jun 15
11
[PATCH 00/10] paravirt/subarchitecture boot protocol
This series updates the boot protocol to 2.07 and uses it to implement paravirtual booting. This allows the bootloader to tell the kernel what kind of hardware/pseudo-hardware environment it's coming up under, and the kernel can use the appropriate boot sequence code. Specifically: - Update the boot protocol to 2.07, which adds fields to specify the hardware subarchitecture and some
2007 Jun 15
11
[PATCH 00/10] paravirt/subarchitecture boot protocol
This series updates the boot protocol to 2.07 and uses it to implement paravirtual booting. This allows the bootloader to tell the kernel what kind of hardware/pseudo-hardware environment it's coming up under, and the kernel can use the appropriate boot sequence code. Specifically: - Update the boot protocol to 2.07, which adds fields to specify the hardware subarchitecture and some