\r
@bug Fix text - doc as defined in MSFT EFI specification.\r
\r
- Copyright (c) 2006 - 2008, Intel Corporation All rights reserved.\r
+ Copyright (c) 2006 - 2014, Intel Corporation. All rights reserved.<BR>\r
+ Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>\r
\r
This program and the accompanying materials are licensed and made available\r
under the terms and conditions of the BSD License which accompanies this\r
- distribution. The full text of the license may be found at:\r
+ distribution. The full text of the license may be found at\r
http://opensource.org/licenses/bsd-license.php\r
\r
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
- File Name: PeImage.h\r
-\r
**/\r
\r
#ifndef __PE_IMAGE_H__\r
#define IMAGE_FILE_MACHINE_X64 0x8664\r
#define IMAGE_FILE_MACHINE_ARM 0x01c0 // Thumb only\r
#define IMAGE_FILE_MACHINE_ARMT 0x01c2 // 32bit Mixed ARM and Thumb/Thumb 2 Little Endian\r
+#define IMAGE_FILE_MACHINE_ARM64 0xAA64 // 64bit ARM Architecture, Little Endian\r
\r
//\r
// Support old names for backward compatible\r
#define EFI_IMAGE_MACHINE_EBC IMAGE_FILE_MACHINE_EBC \r
#define EFI_IMAGE_MACHINE_X64 IMAGE_FILE_MACHINE_X64\r
#define EFI_IMAGE_MACHINE_ARMT IMAGE_FILE_MACHINE_ARMT\r
+#define EFI_IMAGE_MACHINE_AARCH64 IMAGE_FILE_MACHINE_ARM64\r
\r
#define EFI_IMAGE_DOS_SIGNATURE 0x5A4D // MZ\r
#define EFI_IMAGE_OS2_SIGNATURE 0x454E // NE\r
#define EFI_IMAGE_FILE_EXECUTABLE_IMAGE 0x0002 // File is executable (i.e. no unresolved externel references).\r
#define EFI_IMAGE_FILE_LINE_NUMS_STRIPPED 0x0004 // Line nunbers stripped from file.\r
#define EFI_IMAGE_FILE_LOCAL_SYMS_STRIPPED 0x0008 // Local symbols stripped from file.\r
+#define EFI_IMAGE_FILE_LARGE_ADDRESS_AWARE 0x0020 // Supports addresses > 2-GB\r
#define EFI_IMAGE_FILE_BYTES_REVERSED_LO 0x0080 // Bytes of machine word are reversed.\r
#define EFI_IMAGE_FILE_32BIT_MACHINE 0x0100 // 32 bit word machine.\r
#define EFI_IMAGE_FILE_DEBUG_STRIPPED 0x0200 // Debugging info stripped from file in .DBG file\r
#define EFI_IMAGE_REL_BASED_HIGHLOW 3\r
#define EFI_IMAGE_REL_BASED_HIGHADJ 4\r
#define EFI_IMAGE_REL_BASED_MIPS_JMPADDR 5\r
+#define EFI_IMAGE_REL_BASED_ARM_MOV32A 5\r
+#define EFI_IMAGE_REL_BASED_ARM_MOV32T 7\r
#define EFI_IMAGE_REL_BASED_IA64_IMM64 9\r
#define EFI_IMAGE_REL_BASED_DIR64 10\r
\r
+\r
///\r
/// Line number format.\r
///\r
//\r
} EFI_IMAGE_DEBUG_CODEVIEW_RSDS_ENTRY;\r
\r
+///\r
+/// Debug Data Structure defined by Apple Mach-O to Coff utility\r
+///\r
+#define CODEVIEW_SIGNATURE_MTOC SIGNATURE_32('M', 'T', 'O', 'C')\r
+typedef struct {\r
+ UINT32 Signature; ///< "MTOC"\r
+ EFI_GUID MachOUuid;\r
+ //\r
+ // Filename of .DLL (Mach-O with debug info) goes here\r
+ //\r
+} EFI_IMAGE_DEBUG_CODEVIEW_MTOC_ENTRY;\r
+\r
//\r
// .pdata entries for X64\r
//\r