tgsi: SSE2 optimized exp2, log2 and pow implementations.
authorJosé Fonseca <jrfonseca@tungstengraphics.com>
Mon, 29 Sep 2008 16:12:52 +0000 (01:12 +0900)
committerJosé Fonseca <jrfonseca@tungstengraphics.com>
Mon, 29 Sep 2008 16:12:52 +0000 (01:12 +0900)
commit5dc8e67078be8b8c42a809311debd275ac7d64a7
tree0ff4d1f3f9e5dc4a013ade7eda29c0d7c44dc705
parent906336cd7ce5ff1cf9d10fb21375b9c0bcd5fe57
tgsi: SSE2 optimized exp2, log2 and pow implementations.

Special care must be taken when calling compiler generated SSE2 functions
from the runtime generated SSE2: saving the xmm registers, and notify gcc
the stack is not 16byte aligned.

It would be more efficient to keep the stack pointer 16byte aligned, but
too hairy, and not consistent in all x86 architectures.

This has been tested in linux x86 and windows x86 userspace. Not tested on
x86-64 because it is broken for other reasons (even without this change).
src/gallium/auxiliary/tgsi/tgsi_sse2.c