]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/AArch64/ProcessorBind.h
MdePkg/BaseSafeIntLib: Add SafeIntLib class and instance
[mirror_edk2.git] / MdePkg / Include / AArch64 / ProcessorBind.h
index f100d96be079d0f4c9c2e0b1c289be3840b3e26d..bc473562f9e5b4b2d49331a98256c6676e55111b 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Processor or Compiler specific defines and types for AArch64.\r
 \r
-  Copyright (c) 2006 - 2010, Intel Corporation. All rights reserved.<BR>\r
+  Copyright (c) 2006 - 2017, Intel Corporation. All rights reserved.<BR>\r
   Portions copyright (c) 2008 - 2009, Apple Inc. All rights reserved.<BR>\r
   Portions copyright (c) 2011 - 2013, ARM Ltd. All rights reserved.<BR>\r
 \r
@@ -26,7 +26,7 @@
 //\r
 // Make sure we are using the correct packing rules per EFI specification\r
 //\r
-#ifndef __GNUC__\r
+#if !defined(__GNUC__) && !defined(__ASSEMBLER__)\r
 #pragma pack()\r
 #endif\r
 \r
@@ -99,11 +99,22 @@ typedef INT64   INTN;
 #define MAX_INTN   ((INTN)0x7FFFFFFFFFFFFFFFULL)\r
 #define MAX_UINTN  ((UINTN)0xFFFFFFFFFFFFFFFFULL)\r
 \r
+///\r
+/// Minimum legal AArch64 INTN value.\r
+///\r
+#define MIN_INTN   (((INTN)-9223372036854775807LL) - 1)\r
+\r
 ///\r
 /// The stack alignment required for AARCH64\r
 ///\r
 #define CPU_STACK_ALIGNMENT  16\r
 \r
+///\r
+/// Page allocation granularity for AARCH64\r
+///\r
+#define DEFAULT_PAGE_ALLOCATION_GRANULARITY   (0x1000)\r
+#define RUNTIME_PAGE_ALLOCATION_GRANULARITY   (0x10000)\r
+\r
 //\r
 // Modifier to ensure that all protocol member functions and EFI intrinsics\r
 // use the correct C calling convention. All protocol member functions and\r