diff src/video/mmx.h @ 1668:4da1ee79c9af SDL-1.3

more tweaking indent options
author Sam Lantinga <slouken@libsdl.org>
date Mon, 29 May 2006 04:04:35 +0000
parents 782fd950bd46
children
line wrap: on
line diff
--- a/src/video/mmx.h	Mon May 29 03:53:21 2006 +0000
+++ b/src/video/mmx.h	Mon May 29 04:04:35 2006 +0000
@@ -54,14 +54,14 @@
     char b[8];                  /* 8 Byte (8-bit) values */
     unsigned char ub[8];        /* 8 Unsigned Byte */
     float s[2];                 /* Single-precision (32-bit) value */
-} __attribute__ ((aligned (8))) mmx_t;  /* On an 8-byte (64-bit) boundary */
+} __attribute__ ((aligned(8))) mmx_t;   /* On an 8-byte (64-bit) boundary */
 
 
 #if 0
 /*	Function to test if multimedia instructions are supported...
 */
 inline extern int
-mm_support (void)
+mm_support(void)
 {
     /* Returns 1 if MMX instructions are supported,
        3 if Cyrix MMX and Extended MMX instructions are supported
@@ -70,85 +70,85 @@
      */
     register int rval = 0;
 
-    __asm__ __volatile__ (
-                             /* See if CPUID instruction is supported ... */
-                             /* ... Get copies of EFLAGS into eax and ecx */
-                             "pushf\n\t"
-                             "popl %%eax\n\t" "movl %%eax, %%ecx\n\t"
-                             /* ... Toggle the ID bit in one copy and store */
-                             /*     to the EFLAGS reg */
-                             "xorl $0x200000, %%eax\n\t"
-                             "push %%eax\n\t" "popf\n\t"
-                             /* ... Get the (hopefully modified) EFLAGS */
-                             "pushf\n\t" "popl %%eax\n\t"
-                             /* ... Compare and test result */
-                             "xorl %%eax, %%ecx\n\t" "testl $0x200000, %%ecx\n\t" "jz NotSupported1\n\t"        /* CPUID not supported */
-                             /* Get standard CPUID information, and
-                                go to a specific vendor section */
-                             "movl $0, %%eax\n\t" "cpuid\n\t"
-                             /* Check for Intel */
-                             "cmpl $0x756e6547, %%ebx\n\t"
-                             "jne TryAMD\n\t"
-                             "cmpl $0x49656e69, %%edx\n\t"
-                             "jne TryAMD\n\t"
-                             "cmpl $0x6c65746e, %%ecx\n"
-                             "jne TryAMD\n\t" "jmp Intel\n\t"
-                             /* Check for AMD */
-                             "\nTryAMD:\n\t"
-                             "cmpl $0x68747541, %%ebx\n\t"
-                             "jne TryCyrix\n\t"
-                             "cmpl $0x69746e65, %%edx\n\t"
-                             "jne TryCyrix\n\t"
-                             "cmpl $0x444d4163, %%ecx\n"
-                             "jne TryCyrix\n\t" "jmp AMD\n\t"
-                             /* Check for Cyrix */
-                             "\nTryCyrix:\n\t"
-                             "cmpl $0x69727943, %%ebx\n\t"
-                             "jne NotSupported2\n\t"
-                             "cmpl $0x736e4978, %%edx\n\t"
-                             "jne NotSupported3\n\t"
-                             "cmpl $0x64616574, %%ecx\n\t"
-                             "jne NotSupported4\n\t"
-                             /* Drop through to Cyrix... */
-                             /* Cyrix Section */
-                             /* See if extended CPUID level 80000001 is supported */
-                             /* The value of CPUID/80000001 for the 6x86MX is undefined
-                                according to the Cyrix CPU Detection Guide (Preliminary
-                                Rev. 1.01 table 1), so we'll check the value of eax for
-                                CPUID/0 to see if standard CPUID level 2 is supported.
-                                According to the table, the only CPU which supports level
-                                2 is also the only one which supports extended CPUID levels.
-                              */
-                             "cmpl $0x2, %%eax\n\t" "jne MMXtest\n\t"   /* Use standard CPUID instead */
-                             /* Extended CPUID supported (in theory), so get extended
-                                features */
-                             "movl $0x80000001, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%eax\n\t"   /* Test for MMX */
-                             "jz NotSupported5\n\t"     /* MMX not supported */
-                             "testl $0x01000000, %%eax\n\t"     /* Test for Ext'd MMX */
-                             "jnz EMMXSupported\n\t" "movl $1, %0:\n\n\t"       /* MMX Supported */
-                             "jmp Return\n\n" "EMMXSupported:\n\t" "movl $3, %0:\n\n\t" /* EMMX and MMX Supported */
-                             "jmp Return\n\t"
-                             /* AMD Section */
-                             "AMD:\n\t"
-                             /* See if extended CPUID is supported */
-                             "movl $0x80000000, %%eax\n\t" "cpuid\n\t" "cmpl $0x80000000, %%eax\n\t" "jl MMXtest\n\t"   /* Use standard CPUID instead */
-                             /* Extended CPUID supported, so get extended features */
-                             "movl $0x80000001, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%edx\n\t"   /* Test for MMX */
-                             "jz NotSupported6\n\t"     /* MMX not supported */
-                             "testl $0x80000000, %%edx\n\t"     /* Test for 3DNow! */
-                             "jnz ThreeDNowSupported\n\t" "movl $1, %0:\n\n\t"  /* MMX Supported */
-                             "jmp Return\n\n" "ThreeDNowSupported:\n\t" "movl $5, %0:\n\n\t"    /* 3DNow! and MMX Supported */
-                             "jmp Return\n\t"
-                             /* Intel Section */
-                             "Intel:\n\t"
-                             /* Check for MMX */
-                             "MMXtest:\n\t" "movl $1, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%edx\n\t"     /* Test for MMX */
-                             "jz NotSupported7\n\t"     /* MMX Not supported */
-                             "movl $1, %0:\n\n\t"       /* MMX Supported */
-                             "jmp Return\n\t"
-                             /* Nothing supported */
-                             "\nNotSupported1:\n\t" "#movl $101, %0:\n\n\t" "\nNotSupported2:\n\t" "#movl $102, %0:\n\n\t" "\nNotSupported3:\n\t" "#movl $103, %0:\n\n\t" "\nNotSupported4:\n\t" "#movl $104, %0:\n\n\t" "\nNotSupported5:\n\t" "#movl $105, %0:\n\n\t" "\nNotSupported6:\n\t" "#movl $106, %0:\n\n\t" "\nNotSupported7:\n\t" "#movl $107, %0:\n\n\t" "movl $0, %0:\n\n\t" "Return:\n\t":"=a" (rval):   /* no input */
-                             :"eax", "ebx", "ecx", "edx");
+    __asm__ __volatile__(
+                            /* See if CPUID instruction is supported ... */
+                            /* ... Get copies of EFLAGS into eax and ecx */
+                            "pushf\n\t"
+                            "popl %%eax\n\t" "movl %%eax, %%ecx\n\t"
+                            /* ... Toggle the ID bit in one copy and store */
+                            /*     to the EFLAGS reg */
+                            "xorl $0x200000, %%eax\n\t"
+                            "push %%eax\n\t" "popf\n\t"
+                            /* ... Get the (hopefully modified) EFLAGS */
+                            "pushf\n\t" "popl %%eax\n\t"
+                            /* ... Compare and test result */
+                            "xorl %%eax, %%ecx\n\t" "testl $0x200000, %%ecx\n\t" "jz NotSupported1\n\t" /* CPUID not supported */
+                            /* Get standard CPUID information, and
+                               go to a specific vendor section */
+                            "movl $0, %%eax\n\t" "cpuid\n\t"
+                            /* Check for Intel */
+                            "cmpl $0x756e6547, %%ebx\n\t"
+                            "jne TryAMD\n\t"
+                            "cmpl $0x49656e69, %%edx\n\t"
+                            "jne TryAMD\n\t"
+                            "cmpl $0x6c65746e, %%ecx\n"
+                            "jne TryAMD\n\t" "jmp Intel\n\t"
+                            /* Check for AMD */
+                            "\nTryAMD:\n\t"
+                            "cmpl $0x68747541, %%ebx\n\t"
+                            "jne TryCyrix\n\t"
+                            "cmpl $0x69746e65, %%edx\n\t"
+                            "jne TryCyrix\n\t"
+                            "cmpl $0x444d4163, %%ecx\n"
+                            "jne TryCyrix\n\t" "jmp AMD\n\t"
+                            /* Check for Cyrix */
+                            "\nTryCyrix:\n\t"
+                            "cmpl $0x69727943, %%ebx\n\t"
+                            "jne NotSupported2\n\t"
+                            "cmpl $0x736e4978, %%edx\n\t"
+                            "jne NotSupported3\n\t"
+                            "cmpl $0x64616574, %%ecx\n\t"
+                            "jne NotSupported4\n\t"
+                            /* Drop through to Cyrix... */
+                            /* Cyrix Section */
+                            /* See if extended CPUID level 80000001 is supported */
+                            /* The value of CPUID/80000001 for the 6x86MX is undefined
+                               according to the Cyrix CPU Detection Guide (Preliminary
+                               Rev. 1.01 table 1), so we'll check the value of eax for
+                               CPUID/0 to see if standard CPUID level 2 is supported.
+                               According to the table, the only CPU which supports level
+                               2 is also the only one which supports extended CPUID levels.
+                             */
+                            "cmpl $0x2, %%eax\n\t" "jne MMXtest\n\t"    /* Use standard CPUID instead */
+                            /* Extended CPUID supported (in theory), so get extended
+                               features */
+                            "movl $0x80000001, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%eax\n\t"    /* Test for MMX */
+                            "jz NotSupported5\n\t"      /* MMX not supported */
+                            "testl $0x01000000, %%eax\n\t"      /* Test for Ext'd MMX */
+                            "jnz EMMXSupported\n\t" "movl $1, %0:\n\n\t"        /* MMX Supported */
+                            "jmp Return\n\n" "EMMXSupported:\n\t" "movl $3, %0:\n\n\t"  /* EMMX and MMX Supported */
+                            "jmp Return\n\t"
+                            /* AMD Section */
+                            "AMD:\n\t"
+                            /* See if extended CPUID is supported */
+                            "movl $0x80000000, %%eax\n\t" "cpuid\n\t" "cmpl $0x80000000, %%eax\n\t" "jl MMXtest\n\t"    /* Use standard CPUID instead */
+                            /* Extended CPUID supported, so get extended features */
+                            "movl $0x80000001, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%edx\n\t"    /* Test for MMX */
+                            "jz NotSupported6\n\t"      /* MMX not supported */
+                            "testl $0x80000000, %%edx\n\t"      /* Test for 3DNow! */
+                            "jnz ThreeDNowSupported\n\t" "movl $1, %0:\n\n\t"   /* MMX Supported */
+                            "jmp Return\n\n" "ThreeDNowSupported:\n\t" "movl $5, %0:\n\n\t"     /* 3DNow! and MMX Supported */
+                            "jmp Return\n\t"
+                            /* Intel Section */
+                            "Intel:\n\t"
+                            /* Check for MMX */
+                            "MMXtest:\n\t" "movl $1, %%eax\n\t" "cpuid\n\t" "testl $0x00800000, %%edx\n\t"      /* Test for MMX */
+                            "jz NotSupported7\n\t"      /* MMX Not supported */
+                            "movl $1, %0:\n\n\t"        /* MMX Supported */
+                            "jmp Return\n\t"
+                            /* Nothing supported */
+                            "\nNotSupported1:\n\t" "#movl $101, %0:\n\n\t" "\nNotSupported2:\n\t" "#movl $102, %0:\n\n\t" "\nNotSupported3:\n\t" "#movl $103, %0:\n\n\t" "\nNotSupported4:\n\t" "#movl $104, %0:\n\n\t" "\nNotSupported5:\n\t" "#movl $105, %0:\n\n\t" "\nNotSupported6:\n\t" "#movl $106, %0:\n\n\t" "\nNotSupported7:\n\t" "#movl $107, %0:\n\n\t" "movl $0, %0:\n\n\t" "Return:\n\t":"=a"(rval):     /* no input */
+                            :"eax", "ebx", "ecx", "edx");
 
     /* Return */
     return (rval);
@@ -157,10 +157,10 @@
 /*	Function to test if mmx instructions are supported...
 */
 inline extern int
-mmx_ok (void)
+mmx_ok(void)
 {
     /* Returns 1 if MMX instructions are supported, 0 otherwise */
-    return (mm_support () & 0x1);
+    return (mm_support() & 0x1);
 }
 #endif