]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/Ia32/ProcessorBind.h
Updating processor bindings to not use stdint.h. Also added code to verify at compil...
[mirror_edk2.git] / MdePkg / Include / Ia32 / ProcessorBind.h
index 4e1d585a9c0481ff4f71a4b90bc75f4d700b0e55..0ffb2ee29ad8fa28938febc2975d44823e28d706 100644 (file)
 #endif\r
 \r
 \r
-#if !defined(__GNUC__) && (__STDC_VERSION__ < 199901L)\r
-  //\r
-  // No ANSI C 2000 stdint.h integer width declarations, so define equivalents\r
-  //\r
\r
-  #if defined(_MSC_EXTENSIONS)\r
-\r
-    //\r
-    // use Microsoft C complier dependent integer width types \r
-    //\r
-\r
-    ///\r
-    /// 8-byte unsigned value\r
-    ///\r
-    typedef unsigned __int64    UINT64;\r
-    ///\r
-    /// 8-byte signed value\r
-    ///\r
-    typedef __int64             INT64;\r
-    ///\r
-    /// 4-byte unsigned value\r
-    ///\r
-    typedef unsigned __int32    UINT32;\r
-    ///\r
-    /// 4-byte signed value\r
-    ///\r
-    typedef __int32             INT32;\r
-    ///\r
-    /// 2-byte unsigned value\r
-    ///\r
-    typedef unsigned short      UINT16;\r
-    ///\r
-    /// 2-byte Character.  Unless otherwise specified all strings are stored in the\r
-    /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.\r
-    ///\r
-    typedef unsigned short      CHAR16;\r
-    ///\r
-    /// 2-byte signed value\r
-    ///\r
-    typedef short               INT16;\r
-    ///\r
-    /// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other\r
-    /// values are undefined.\r
-    ///\r
-    typedef unsigned char       BOOLEAN;\r
-    ///\r
-    /// 1-byte unsigned value\r
-    ///\r
-    typedef unsigned char       UINT8;\r
-    ///\r
-    /// 1-byte Character\r
-    ///\r
-    typedef char                CHAR8;\r
-    ///\r
-    /// 1-byte signed value\r
-    ///\r
-    typedef char                INT8;\r
-  #else\r
-\r
-    //\r
-    // Assume standard IA-32 alignment. \r
-    // Need to check portability of long long\r
-    //\r
+#if defined(_MSC_EXTENSIONS)\r
 \r
-    ///\r
-    /// 8-byte unsigned value\r
-    ///\r
-    typedef unsigned long long  UINT64;\r
-    ///\r
-    /// 8-byte signed value\r
-    ///\r
-    typedef long long           INT64;\r
-    ///\r
-    /// 4-byte unsigned value\r
-    ///\r
-    typedef unsigned int        UINT32;\r
-    ///\r
-    /// 4-byte signed value\r
-    ///\r
-    typedef int                 INT32;\r
-    ///\r
-    /// 2-byte unsigned value\r
-    ///\r
-    typedef unsigned short      UINT16;\r
-    ///\r
-    /// 2-byte Character.  Unless otherwise specified all strings are stored in the\r
-    /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.\r
-    ///\r
-    typedef unsigned short      CHAR16;\r
-    ///\r
-    /// 2-byte signed value\r
-    ///\r
-    typedef short               INT16;\r
-    ///\r
-    /// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other\r
-    /// values are undefined.\r
-    ///\r
-    typedef unsigned char       BOOLEAN;\r
-    ///\r
-    /// 1-byte unsigned value\r
-    ///\r
-    typedef unsigned char       UINT8;\r
-    ///\r
-    /// 1-byte Character\r
-    ///\r
-    typedef char                CHAR8;\r
-    ///\r
-    /// 1-byte signed value\r
-    ///\r
-    typedef char                INT8;\r
-  #endif\r
-#else\r
   //\r
-  // Use ANSI C 2000 stdint.h integer width declarations\r
+  // use Microsoft C complier dependent integer width types \r
   //\r
-  #include <stdint.h>\r
 \r
+  ///\r
+  /// 8-byte unsigned value\r
+  ///\r
+  typedef unsigned __int64    UINT64;\r
+  ///\r
+  /// 8-byte signed value\r
+  ///\r
+  typedef __int64             INT64;\r
+  ///\r
+  /// 4-byte unsigned value\r
+  ///\r
+  typedef unsigned __int32    UINT32;\r
+  ///\r
+  /// 4-byte signed value\r
+  ///\r
+  typedef __int32             INT32;\r
+  ///\r
+  /// 2-byte unsigned value\r
+  ///\r
+  typedef unsigned short      UINT16;\r
+  ///\r
+  /// 2-byte Character.  Unless otherwise specified all strings are stored in the\r
+  /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.\r
+  ///\r
+  typedef unsigned short      CHAR16;\r
+  ///\r
+  /// 2-byte signed value\r
+  ///\r
+  typedef short               INT16;\r
   ///\r
   /// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other\r
   /// values are undefined.\r
   ///\r
-  typedef uint8_t   BOOLEAN;\r
+  typedef unsigned char       BOOLEAN;\r
+  ///\r
+  /// 1-byte unsigned value\r
+  ///\r
+  typedef unsigned char       UINT8;\r
+  ///\r
+  /// 1-byte Character\r
+  ///\r
+  typedef char                CHAR8;\r
   ///\r
   /// 1-byte signed value\r
   ///\r
-  typedef int8_t    INT8;\r
+  typedef char                INT8;\r
+#else  \r
   ///\r
-  /// 1-byte unsigned value\r
+  /// 8-byte unsigned value\r
   ///\r
-  typedef uint8_t   UINT8;\r
+  typedef unsigned long long  UINT64;\r
   ///\r
-  /// 2-byte signed value\r
+  /// 8-byte signed value\r
   ///\r
-  typedef int16_t   INT16;\r
+  typedef long long           INT64;\r
   ///\r
-  /// 2-byte unsigned value\r
+  /// 4-byte unsigned value\r
   ///\r
-  typedef uint16_t  UINT16;\r
+  typedef unsigned int        UINT32;\r
   ///\r
   /// 4-byte signed value\r
   ///\r
-  typedef int32_t   INT32;\r
+  typedef int                 INT32;\r
   ///\r
-  /// 4-byte unsigned value\r
+  /// 2-byte unsigned value\r
   ///\r
-  typedef uint32_t  UINT32;\r
+  typedef unsigned short      UINT16;\r
   ///\r
-  /// 8-byte signed value\r
+  /// 2-byte Character.  Unless otherwise specified all strings are stored in the\r
+  /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.\r
   ///\r
-  typedef int64_t   INT64;\r
+  typedef unsigned short      CHAR16;\r
   ///\r
-  /// 8-byte unsigned value\r
+  /// 2-byte signed value\r
+  ///\r
+  typedef short               INT16;\r
+  ///\r
+  /// Logical Boolean.  1-byte value containing 0 for FALSE or a 1 for TRUE.  Other\r
+  /// values are undefined.\r
+  ///\r
+  typedef unsigned char       BOOLEAN;\r
   ///\r
-  typedef uint64_t  UINT64;\r
+  /// 1-byte unsigned value\r
+  ///\r
+  typedef unsigned char       UINT8;\r
   ///\r
   /// 1-byte Character\r
   ///\r
-  typedef char      CHAR8;\r
+  typedef char                CHAR8;\r
   ///\r
-  /// 2-byte Character.  Unless otherwise specified all strings are stored in the\r
-  /// UTF-16 encoding format as defined by Unicode 2.1 and ISO/IEC 10646 standards.\r
+  /// 1-byte signed value\r
   ///\r
-  typedef uint16_t  CHAR16;\r
-\r
+  typedef char                INT8;\r
 #endif\r
 \r
 ///\r