summaryrefslogtreecommitdiff
path: root/include/llvm/Support/ELF.h
diff options
context:
space:
mode:
authorBrian Gaeke <gaeke@uiuc.edu>2004-02-29 06:33:28 +0000
committerBrian Gaeke <gaeke@uiuc.edu>2004-02-29 06:33:28 +0000
commite9f6f2c0492af8097166f1b7d62f131f20ca5714 (patch)
tree2c618e59eef2fd3927abe9c09d677d4f055a8a14 /include/llvm/Support/ELF.h
parentdce363d5ecf0f6add5541c853eb33214d910812f (diff)
downloadllvm-e9f6f2c0492af8097166f1b7d62f131f20ca5714.tar.gz
llvm-e9f6f2c0492af8097166f1b7d62f131f20ca5714.tar.bz2
llvm-e9f6f2c0492af8097166f1b7d62f131f20ca5714.tar.xz
Update comment at head of file. Also fix C 'typedef struct' nonsense I
inadvertently left in here. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@11988 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/llvm/Support/ELF.h')
-rw-r--r--include/llvm/Support/ELF.h16
1 files changed, 9 insertions, 7 deletions
diff --git a/include/llvm/Support/ELF.h b/include/llvm/Support/ELF.h
index c817b8510e..e4b87b9022 100644
--- a/include/llvm/Support/ELF.h
+++ b/include/llvm/Support/ELF.h
@@ -10,9 +10,11 @@
// This header contains common, non-processor-specific data structures and
// constants for the ELF file format.
//
-// The details of this file are largely based on the Tool Interface Standard
-// (TIS) Executable and Linking Format (ELF) Specification Version 1.2,
-// May 1995.
+// The details of the ELF32 bits in this file are largely based on
+// the Tool Interface Standard (TIS) Executable and Linking Format
+// (ELF) Specification Version 1.2, May 1995. The ELF64 stuff is not
+// standardized, as far as I can tell. It was largely based on information
+// I found in OpenBSD header files.
//
//===----------------------------------------------------------------------===//
@@ -67,7 +69,7 @@ struct Elf32_Ehdr {
// 64-bit ELF header. Fields are the same as for ELF32, but with different
// types (see above).
-typedef struct {
+struct Elf64_Ehdr {
unsigned char e_ident[16];
Elf64_Quarter e_type;
Elf64_Quarter e_machine;
@@ -82,7 +84,7 @@ typedef struct {
Elf64_Quarter e_shentsize;
Elf64_Quarter e_shnum;
Elf64_Quarter e_shstrndx;
-} Elf64_Ehdr;
+};
// File types
enum {
@@ -139,7 +141,7 @@ struct Elf32_Shdr {
};
// Section header for ELF64 - same fields as ELF32, different types.
-typedef struct {
+struct Elf64_Shdr {
Elf64_Half sh_name;
Elf64_Half sh_type;
Elf64_Xword sh_flags;
@@ -150,7 +152,7 @@ typedef struct {
Elf64_Half sh_info;
Elf64_Xword sh_addralign;
Elf64_Xword sh_entsize;
-} Elf64_Shdr;
+};
// Special section indices.
enum {