Index: gcc/gcc/testsuite/gcc.target/i386/sse3-check.h |
diff --git a/gcc/gcc/testsuite/gcc.target/i386/sse3-check.h b/gcc/gcc/testsuite/gcc.target/i386/sse3-check.h |
index 92930d10a3fa8528c078ca7f41878a82cbac0698..5a0a0b1a02e06e752a52b6b014fb980556ac1c8c 100644 |
--- a/gcc/gcc/testsuite/gcc.target/i386/sse3-check.h |
+++ b/gcc/gcc/testsuite/gcc.target/i386/sse3-check.h |
@@ -1,10 +1,17 @@ |
#include <stdio.h> |
#include <stdlib.h> |
- |
#include "cpuid.h" |
+#include "sse-os-support.h" |
static void sse3_test (void); |
+static void |
+__attribute__ ((noinline)) |
+do_test (void) |
+{ |
+ sse3_test (); |
+} |
+ |
int |
main () |
{ |
@@ -14,8 +21,8 @@ main () |
return 0; |
/* Run SSE3 test only if host has SSE3 support. */ |
- if (ecx & bit_SSE3) |
- sse3_test (); |
+ if ((ecx & bit_SSE3) && sse_os_support ()) |
+ do_test (); |
return 0; |
} |