]> git.proxmox.com Git - mirror_edk2.git/blobdiff - MdePkg/Include/X64/ProcessorBind.h
1. Remove .extern from GCC assembly.
[mirror_edk2.git] / MdePkg / Include / X64 / ProcessorBind.h
index 71f5277538bde0afe2e66cb36b7f2919fea95cd8..ce198678514367291c7b7fdd149d73004ee0c50e 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   Processor or Compiler specific defines and types x64 (Intel(r) EM64T, AMD64).\r
 \r
-  Copyright (c) 2006 - 2008, Intel Corporation<BR>                                                         \r
+  Copyright (c) 2006 - 2009, Intel Corporation<BR>                                                         \r
   All rights reserved. This program and the accompanying materials                          \r
   are licensed and made available under the terms and conditions of the BSD License         \r
   which accompanies this distribution.  The full text of the license may be found at        \r
@@ -348,7 +348,11 @@ typedef INT64   INTN;
 // use the correct C calling convention. All protocol member functions and\r
 // EFI intrinsics are required to modify their member functions with EFIAPI.\r
 //\r
-#if defined(_MSC_EXTENSIONS)\r
+#ifdef EFIAPI\r
+  ///\r
+  /// If EFIAPI is already defined, then we use that definition.\r
+  ///\r
+#elif defined(_MSC_EXTENSIONS)\r
   ///\r
   /// Microsoft* compiler specific method for EFIAPI calling convension\r
   /// \r
@@ -401,6 +405,11 @@ typedef INT64   INTN;
   #else\r
     #define ASM_PFX(name) _##name\r
   #endif  \r
+  #if defined(__APPLE__)\r
+    #define ASM_GLOBAL .globl\r
+  #else\r
+    #define ASM_GLOBAL .global\r
+  #endif \r
 #endif\r
 \r
 /**\r