util: try to use SSE instructions with MSVC and 32-bit gcc
authorBrian Paul <brianp@vmware.com>
Wed, 17 Aug 2016 16:41:30 +0000 (10:41 -0600)
committerBrian Paul <brianp@vmware.com>
Wed, 17 Aug 2016 18:53:20 +0000 (12:53 -0600)
commit5de29aeef00f6adf4b9ef278415d8f753283ef03
tree779b850f6ff438a00573ffd9c62ee6f8ec546d3f
parent18e6e0796a6b0d714e58ca95d70cff2bbb2027e1
util: try to use SSE instructions with MSVC and 32-bit gcc

The lrint() and lrintf() functions are pretty slow and make some
texture transfers very inefficient.  This patch makes a better effort
at using those intrisics for 32-bit gcc and MSVC.

Note, this patch doesn't address the use of SSE4.1 with MSVC.

v2: get rid of the ROUND_WITH_SSE symbol, per Matt.

Reviewed-by: José Fonseca <jfonseca@vmware.com>
Reviewed-by: Matt Turner <mattst88@gmail.com>
src/util/rounding.h