WinRT build fix for ARM platforms
authorDavid Ludwig <dludwig@pobox.com>
Sun, 10 Aug 2014 22:21:21 -0400
changeset 9047101109110bf7
parent 9046 c3ec7c3e6c24
child 9048 e5d64ad7fdc5
WinRT build fix for ARM platforms

The _xgetbv intrinsic was being used in ARM builds of SDL/WinRT, which was
leading to linker errors. This commit limits _xgetbv use to the platforms on
which it is available, x86 and x64.
src/cpuinfo/SDL_cpuinfo.c
     1.1 --- a/src/cpuinfo/SDL_cpuinfo.c	Wed Aug 06 11:34:54 2014 -0700
     1.2 +++ b/src/cpuinfo/SDL_cpuinfo.c	Sun Aug 10 22:21:21 2014 -0400
     1.3 @@ -246,7 +246,7 @@
     1.4      a = 0;
     1.5  #if defined(__GNUC__) && (defined(i386) || defined(__x86_64__))
     1.6      asm(".byte 0x0f, 0x01, 0xd0" : "=a" (a) : "c" (0) : "%edx");
     1.7 -#elif defined(_MSC_VER) && (_MSC_FULL_VER >= 160040219) /* VS2010 SP1 */
     1.8 +#elif defined(_MSC_VER) && (defined(_M_IX86) || defined(_M_X64)) && (_MSC_FULL_VER >= 160040219) /* VS2010 SP1 */
     1.9      a = (int)_xgetbv(0);
    1.10  #elif (defined(_MSC_VER) && defined(_M_IX86)) || defined(__WATCOMC__)
    1.11      __asm