&gt;accepting -march=iwmmxt on x86 is a bug in GCC<br><br>&quot;-march&quot; just tells gcc for what processor it has to generate the code. It does not matter what processor the computer actually has. I mean, it&#39;s ok to compile code for ARM on x86 computer, or the other way around.<br>

<br><br><div class="gmail_quote">On Thu, Oct 6, 2011 at 2:15 PM, Søren Sandmann <span dir="ltr">&lt;<a href="mailto:sandmann@cs.au.dk" target="_blank">sandmann@cs.au.dk</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

<div>Matt Turner &lt;<a href="mailto:mattst88@gmail.com" target="_blank">mattst88@gmail.com</a>&gt; writes:<br>
<br>
&gt; I&#39;m not able to reproduce it, but I have two reports that iwMMXt is<br>
&gt; incorrectly detected on x86 and amd64. This happens because it uses the<br>
&gt; standard _mm_* intrinsic functions. It should fail on x86 and amd64<br>
&gt; because configure will use -march=iwmmxt to compile the test, which<br>
&gt; isn&#39;t a valid option on these platforms.<br>
&gt;<br>
&gt; So, just #error out in the test if the __arm__ preprocessor directive<br>
&gt; isn&#39;t defined.<br>
<br>
</div>Looks good to me, though presumably accepting -march=iwmmxt on x86 is a<br>
bug in GCC. Also, looking at this again, isn&#39;t there a typo in the<br>
compiler check:<br>
<div><br>
    #if defined(__GNUC__) &amp;&amp; (__GNUC__ &lt; 4 || (__GNUC__ == 3 &amp;&amp; __GNUC_MINOR__ &lt; 6))<br>
    #error &quot;Need GCC &gt;= 4.6 for IWMMXT intrinsics&quot;<br>
    #endif<br>
<br>
</div>where __GNUC__ == 3 should be __GNUC__ == 4?<br>
<br>
<br>
Soren<br>
<div><br>
&gt; Fixes <a href="https://bugs.gentoo.org/show_bug.cgi?id=385179" target="_blank">https://bugs.gentoo.org/show_bug.cgi?id=385179</a><br>
&gt;<br>
&gt; Signed-off-by: Matt Turner &lt;<a href="mailto:mattst88@gmail.com" target="_blank">mattst88@gmail.com</a>&gt;<br>
&gt; ---<br>
&gt;  <a href="http://configure.ac" target="_blank">configure.ac</a> |    3 +++<br>
&gt;  1 files changed, 3 insertions(+), 0 deletions(-)<br>
&gt;<br>
&gt; diff --git a/<a href="http://configure.ac" target="_blank">configure.ac</a> b/<a href="http://configure.ac" target="_blank">configure.ac</a><br>
&gt; index 481d0bb..471a127 100644<br>
&gt; --- a/<a href="http://configure.ac" target="_blank">configure.ac</a><br>
&gt; +++ b/<a href="http://configure.ac" target="_blank">configure.ac</a><br>
&gt; @@ -552,6 +552,9 @@ AC_MSG_CHECKING(whether to use ARM IWMMXT intrinsics)<br>
&gt;  xserver_save_CFLAGS=$CFLAGS<br>
&gt;  CFLAGS=&quot;$IWMMXT_CFLAGS $CFLAGS&quot;<br>
&gt;  AC_COMPILE_IFELSE([<br>
&gt; +#ifndef __arm__<br>
&gt; +#error &quot;IWMMXT is only available on ARM&quot;<br>
&gt; +#endif<br>
&gt;  #if defined(__GNUC__) &amp;&amp; (__GNUC__ &lt; 4 || (__GNUC__ == 3 &amp;&amp; __GNUC_MINOR__ &lt; 6))<br>
&gt;  #error &quot;Need GCC &gt;= 4.6 for IWMMXT intrinsics&quot;<br>
&gt;  #endif<br>
</div>_______________________________________________<br>
Pixman mailing list<br>
<a href="mailto:Pixman@lists.freedesktop.org" target="_blank">Pixman@lists.freedesktop.org</a><br>
<a href="http://lists.freedesktop.org/mailman/listinfo/pixman" target="_blank">http://lists.freedesktop.org/mailman/listinfo/pixman</a><br>
</blockquote></div><br>