[SDK:CRT] For intrinsics that don't exist on MSVC 2010 we cannot use an implementatio...
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sun, 6 Oct 2019 13:41:30 +0000 (15:41 +0200)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Mon, 7 Oct 2019 00:54:05 +0000 (02:54 +0200)
sdk/include/crt/msc/intrin.h

index 305280b..5fd3001 100644 (file)
@@ -268,6 +268,7 @@ extern "C" {
 #if (_MSC_VER >= 1700)
 #pragma intrinsic(__fastfail)
 #else
+#if defined(_M_IX86)
 __declspec(noreturn) __forceinline
 void __fastfail(unsigned int Code)
 {
@@ -277,6 +278,9 @@ void __fastfail(unsigned int Code)
         int 29h
     }
 }
+#else
+void __fastfail(unsigned int Code);
+#endif // defined(_M_IX86)
 #endif
 #endif
 #if defined(_M_ARM)
@@ -341,6 +345,7 @@ void  __forceinline __invlpg_fixed(void * Address)
 #if (_MSC_VER >= 1800)
 #pragma intrinsic(_sgdt)
 #else
+#if defined(_M_IX86)
 __forceinline
 void _sgdt(void *Destination)
 {
@@ -350,6 +355,9 @@ void _sgdt(void *Destination)
         sgdt [eax]
     }
 }
+#else
+void _sgdt(void *Destination);
+#endif // defined(_M_IX86)
 #endif
 #pragma intrinsic(_mm_pause)
 #endif