Hello!

+ I have failures on i386 because I am
 running the tests on qemu configured
 as an i386 w/FPU.  That means there is
 no MMX or SSE support at all. I think
 is the root of about 75% (~300) of the
 executable failures.  What is the right
 thing to do and how do I do it?

Does qemu return correct cpuid data for simulated processor?

In gcc.target/i386, supported features are detected using cpuid, i.e. sse in sse-check.h:

--cut here--
 if (!__get_cpuid (1, &eax, &ebx, &ecx, &edx))
   return 0;

 /* Run SSE test only if host has SSE support.  */
 if (edx & bit_SSE)
   sse_test ();

 return 0;
--cut here--

In gcc.dg/vect, the support is checked by trapping SIGILL, if insn is not recignized (tree-vect.h):

--cut here--
#elif defined(__i386__) || defined(__x86_64__)
 /* SSE2 instruction: movsd %xmm0,%xmm0 */
--cut here--

(Although I think that for x86, we could implement feature check using cpuid here, too)


Since all profiling tests fails, you should disable profiling checks for rtems in testsuite/lib/target-supports.exp, function check_profiling_available.

Uros.

Reply via email to