VirtualBox

source: vbox/trunk/src/VBox/Runtime/include/internal/ldrElf.h@ 31964

Last change on this file since 31964 was 31964, checked in by vboxsync, 14 years ago

Runtime/include: ldrElf additions.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.4 KB
Line 
1/* $Id: ldrElf.h 31964 2010-08-25 15:25:44Z vboxsync $ */
2/** @file
3 * ELF types, current architecture.
4 */
5
6/*
7 * Copyright (C) 2010 Oracle Corporation
8 *
9 * This file is part of VirtualBox Open Source Edition (OSE), as
10 * available from http://www.virtualbox.org. This file is free software;
11 * you can redistribute it and/or modify it under the terms of the GNU
12 * General Public License (GPL) as published by the Free Software
13 * Foundation, in version 2 as it comes in the "COPYING" file of the
14 * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
15 * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
16 */
17
18
19#ifndef ___internal_ldrELF_h
20#define ___internal_ldrELF_h
21
22#if defined(RT_ARCH_AMD64)
23# include "ldrELF64.h"
24typedef Elf64_Addr Elf_Addr;
25typedef Elf64_Half Elf_Half;
26typedef Elf64_Off Elf_Off;
27typedef Elf64_Sword Elf_Sword;
28typedef Elf64_Word Elf_Word;
29typedef Elf64_Size Elf_Size;
30typedef Elf64_Hashelt Elf_Hashelt;
31typedef Elf64_Ehdr Elf_Hdr;
32typedef Elf64_Shdr Elf_Shdr;
33typedef Elf64_Phdr Elf_Phdr;
34typedef Elf64_Nhdr Elf_Nhdr;
35typedef Elf64_Dyn Elf_Dyn;
36typedef Elf64_Rel Elf_Rel;
37typedef Elf64_Rela Elf_Rela;
38typedef Elf64_Sym Elf_Sym;
39
40#define ELF_R_SYM ELF64_R_SYM
41#define ELF_R_TYPE ELF64_R_TYPE
42#define ELF_R_INFO ELF64_R_INFO
43#define ELF_ST_BIND ELF64_ST_BIND
44#define ELF_ST_TYPE ELF64_ST_TYPE
45#define ELF_ST_INFO ELF64_ST_INFO
46
47#elif defined(RT_ARCH_X86)
48# include "ldrELF32.h"
49typedef Elf32_Addr Elf_Addr;
50typedef Elf32_Half Elf_Half;
51typedef Elf32_Off Elf_Off;
52typedef Elf32_Sword Elf_Sword;
53typedef Elf32_Word Elf_Word;
54typedef Elf32_Size Elf_Size;
55typedef Elf32_Hashelt Elf_Hashelt;
56typedef Elf32_Ehdr Elf_Hdr;
57typedef Elf32_Shdr Elf_Shdr;
58typedef Elf32_Phdr Elf_Phdr;
59typedef Elf32_Nhdr Elf_Nhdr;
60typedef Elf32_Dyn Elf_Dyn;
61typedef Elf32_Rel Elf_Rel;
62typedef Elf32_Rela Elf_Rela;
63typedef Elf32_Sym Elf_Sym;
64
65#define ELF_R_SYM ELF64_R_SYM
66#define ELF_R_TYPE ELF64_R_TYPE
67#define ELF_R_INFO ELF64_R_INFO
68#define ELF_ST_BIND ELF32_ST_BIND
69#define ELF_ST_TYPE ELF32_ST_TYPE
70#define ELF_ST_INFO ELF32_ST_INFO
71
72#else
73# error Unknown arch!
74#endif
75
76#endif /* ___internal_ldrELF_h */
77
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette