<div dir="ltr"><div dir="ltr">Thanks for a comments. I see the most of that patches have no sense, probably, except one:</div><div dir="ltr"><br></div><div dir="ltr"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Yeah, I think we should land that if it fixes the build for 32bit x86.</blockquote><div>Here is: <a href="https://patchwork.freedesktop.org/patch/259176/">https://patchwork.freedesktop.org/patch/259176/</a><br></div></div></div><br><div class="gmail_quote"><div dir="ltr">On Mon, Oct 29, 2018 at 6:04 PM Dylan Baker <<a href="mailto:dylan@pnwbakers.com">dylan@pnwbakers.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Quoting Sergii Romantsov (2018-10-29 01:44:28)<br>
> Hello,<br>
> <br>
>     What problem are we solving?<br>
> <br>
>     That we don't get fast paths in rounding.h by default on i686, I think?<br>
> <br>
> Yes, it adds optimization for rounding.h. On x86_64 msse is enabled by default<br>
> (as example by gcc).<br>
> And additionally helps to fix autotools 32b build (missed linkage with m-lib if<br>
> no optimization).<br>
> <br>
> <br>
>     This will make the code non-portable from an SSE capable system to a<br>
>     non-sse<br>
>     capable system. That's a pretty old system at this point (Pentium III and<br>
>     Athlon<br>
>     XP)<br>
> <br>
> As i found in gcc-docs (<a href="https://gcc.gnu.org/onlinedocs/gcc-4.5.3/gcc/" rel="noreferrer" target="_blank">https://gcc.gnu.org/onlinedocs/gcc-4.5.3/gcc/</a><br>
> i386-and-x86_002d64-Options.html) exactly mentioned systems are supports SSE.<br>
> But in the patch i'm checking if -msse supported by compiler.<br>
> If its incorrect than does it mean that compiler doesn't based on system<br>
> capabilities? And does it mean that adding option -msse4.1 is also enabled in<br>
> wrong way?<br>
<br>
Right, the compiler can support instructions the "build" machine (computer<br>
running the compiler) can't run. Even for builds of the same architecture.<br>
<br>
No, the -msee4.1 case in src/mesa is different. We have a runtime check in<br>
libmesa that detects sse4.1 features at run time and loads the sse4.1 optimized<br>
functions if it can, or falls back to non-sse4.1 versions if it can't.<br>
<br>
> I'm cloning gcc to check how it supports 'sse' and if it based on system<br>
> capabilities. Also we may try to add some possibility to check cpu-capabilities<br>
> (around cpuid).<br>
> But if we don't need such optimization, than it will be nice at least to fix<br>
> autotools 32b build (<a href="https://patchwork.freedesktop.org/patch/258659/" rel="noreferrer" target="_blank">https://patchwork.freedesktop.org/patch/258659/</a>) - i will<br>
> update patch just by linking -lm with mesautil.<br>
<br>
Yeah, I think we should land that if it fixes the build for 32bit x86.<br>
<br>
Dylan<br>
</blockquote></div><br clear="all"><div><br></div>-- <br><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div dir="ltr">Sergii Romantsov<br></div><div dir="ltr"><div style="margin:0px;padding:0px;color:rgb(23,43,77);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,"Fira Sans","Droid Sans","Helvetica Neue",sans-serif;font-size:14px">GlobalLogic Inc.<br><a href="http://www.globallogic.com/" rel="nofollow" style="color:rgb(0,82,204)" target="_blank">www.globallogic.com</a><br></div></div></div></div></div></div>