[Mesa-dev] [PATCH v2 0/5] Optimizing llvmpipe for POWER8 architecture
Oded Gabbay
oded.gabbay at gmail.com
Sun Jan 3 07:17:48 PST 2016
Hi,
Here is the 2nd version of the patch series. The main change is that the new
code is limited to POWER8 Little-Endian machines, due to a special compiler
flag (power8-vector) that must bu turned on but creates code that can't run
on POWER7 machines.
As only POWER8 has an LE mode (ppc64le), the code can be encomposed with:
#if defined(_ARCH_PWR8) && defined(PIPE_ARCH_LITTLE_ENDIAN)
and because an LE binary can't be run on BE machine anyway, we can safely
enable this code by default for ppc64le architecture.
A few more changes are detailed in each commit message.
Thanks,
- Oded
Oded Gabbay (5):
configure.ac: Detect if running on POWER8 arch
llvmpipe: add POWER8 portability file - u_pwr8.h
llvmpipe: Optimize do_triangle_ccw for POWER8
llvmpipe: Optimize BUILD_MASK(_LINEAR) for POWER8
llvmpipe: Optimize lp_rast_triangle_32_3_16 for POWER8
configure.ac | 55 +++++
src/gallium/auxiliary/util/u_pwr8.h | 310 ++++++++++++++++++++++++++++
src/gallium/drivers/llvmpipe/lp_rast_tri.c | 290 ++++++++++++++++++++++----
src/gallium/drivers/llvmpipe/lp_setup_tri.c | 100 +++++++++
4 files changed, 715 insertions(+), 40 deletions(-)
create mode 100644 src/gallium/auxiliary/util/u_pwr8.h
--
2.5.0
More information about the mesa-dev
mailing list