]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Ia32/ProcessorBind.h
MdePkg/ProcessorBind: add defines for page allocation granularity
[mirror_edk2.git] / MdePkg / Include / Ia32 / ProcessorBind.h
index 9874bd836d26c175d2fb569124071efe20e6e697..8ba2348261a2c812275b4f4736f0997a9b050ff9 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Processor or Compiler specific defines and types for IA-32 architecture.\r
 \r
-Copyright (c) 2006 - 2012, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
 This program and the accompanying materials are licensed and made available under \r
 the terms and conditions of the BSD License that accompanies this distribution.  \r
 The full text of the license may be found at\r
@@ -79,7 +79,7 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 #pragma warning ( disable : 4057 )\r
 \r
 //\r
-// ASSERT(FALSE) or while (TRUE) are legal constructes so supress this warning\r
+// ASSERT(FALSE) or while (TRUE) are legal constructs so suppress this warning\r
 //\r
 #pragma warning ( disable : 4127 )\r
 \r
@@ -93,13 +93,33 @@ WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
 //\r
 #pragma warning ( disable : 4206 )\r
 \r
+#if _MSC_VER == 1800 || _MSC_VER == 1900\r
+\r
+//\r
+// Disable these warnings for VS2013.\r
+//\r
+\r
+//\r
+// This warning is for potentially uninitialized local variable, and it may cause false \r
+// positive issues in VS2013 and VS2015 build\r
+//\r
+#pragma warning ( disable : 4701 )\r
+  \r
+//\r
+// This warning is for potentially uninitialized local pointer variable, and it may cause \r
+// false positive issues in VS2013 and VS2015 build\r
+//\r
+#pragma warning ( disable : 4703 )\r
+  \r
+#endif\r
+\r
 #endif\r
 \r
 \r
 #if defined(_MSC_EXTENSIONS)\r
 \r
   //\r
-  // use Microsoft C complier dependent integer width types \r
+  // use Microsoft C compiler dependent integer width types\r
   //\r
 \r
   ///\r
@@ -226,11 +246,23 @@ typedef INT32   INTN;
 ///\r
 #define MAX_ADDRESS   0xFFFFFFFF\r
 \r
+///\r
+/// Maximum legal IA-32 INTN and UINTN values.\r
+///\r
+#define MAX_INTN   ((INTN)0x7FFFFFFF)\r
+#define MAX_UINTN  ((UINTN)0xFFFFFFFF)\r
+\r
 ///\r
 /// The stack alignment required for IA-32.\r
 ///\r
 #define CPU_STACK_ALIGNMENT   sizeof(UINTN)\r
 \r
+///\r
+/// Page allocation granularity for IA-32.\r
+///\r
+#define DEFAULT_PAGE_ALLOCATION_GRANULARITY   (0x1000)\r
+#define RUNTIME_PAGE_ALLOCATION_GRANULARITY   (0x1000)\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
@@ -278,5 +310,9 @@ typedef INT32   INTN;
 **/\r
 #define FUNCTION_ENTRY_POINT(FunctionPointer) (VOID *)(UINTN)(FunctionPointer)\r
 \r
+#ifndef __USER_LABEL_PREFIX__\r
+#define __USER_LABEL_PREFIX__ _\r
+#endif\r
+\r
 #endif\r
 \r