MdePkg: Update Base.h to fix compilation issues with ICC.
authoredk2-devel <edk2-devel-bounces@lists.01.org>
Fri, 29 Jan 2016 23:55:57 +0000 (15:55 -0800)
committerMichael Kinney <michael.d.kinney@intel.com>
Fri, 12 Feb 2016 18:06:54 +0000 (10:06 -0800)
Recent versions of the Intel C compiler define the _MSC_EXTENSIONS
constant. Base.h checks if this constant is defined to decide whether
or not to use a pragma intrinsic, which is unsupported by the latest
version of the Intel C compiler. Thus the check has been modified to
only pass in the case __INTEL_COMPILER is not defined.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Marvin Haeuser <Marvin.Haeuser@outlook.com>
Reviewed-by: Michael Kinney <michael.d.kinney@intel.com>
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com>
MdePkg/Include/Base.h

index 882b5a679375bc47bd8a6d167fbb15533c71c1d0..f45f3442cb3a9bacb493ec8b3531cff349ceb359 100644 (file)
@@ -1027,7 +1027,7 @@ typedef UINTN RETURN_STATUS;
 #define SIGNATURE_64(A, B, C, D, E, F, G, H) \\r
     (SIGNATURE_32 (A, B, C, D) | ((UINT64) (SIGNATURE_32 (E, F, G, H)) << 32))\r
 \r
-#if defined(_MSC_EXTENSIONS) && !defined (MDE_CPU_EBC)\r
+#if defined(_MSC_EXTENSIONS) && !defined (__INTEL_COMPILER) && !defined (MDE_CPU_EBC)\r
   #pragma intrinsic(_ReturnAddress)\r
   /**\r
     Get the return address of the calling funcation.\r