From 59203c63bb777a3bacec32fb8830fba33540e809 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Wed, 12 Jun 2024 07:35:29 +0200 Subject: Adding upstream version 127.0. Signed-off-by: Daniel Baumann --- gfx/cairo/libpixman/src/pixman-vmx.c | 35 +++++++++-------------------------- 1 file changed, 9 insertions(+), 26 deletions(-) (limited to 'gfx/cairo/libpixman/src/pixman-vmx.c') diff --git a/gfx/cairo/libpixman/src/pixman-vmx.c b/gfx/cairo/libpixman/src/pixman-vmx.c index 52de37e69e..d4b5dc8e11 100644 --- a/gfx/cairo/libpixman/src/pixman-vmx.c +++ b/gfx/cairo/libpixman/src/pixman-vmx.c @@ -26,7 +26,7 @@ */ #ifdef HAVE_CONFIG_H -#include +#include #endif #include "pixman-private.h" #include "pixman-combine32.h" @@ -278,21 +278,10 @@ save_128_aligned (uint32_t* data, STORE_VECTOR(data) } -static force_inline vector unsigned int -create_mask_1x32_128 (const uint32_t *src) -{ - vector unsigned int vsrc; - DECLARE_SRC_MASK_VAR; - - COMPUTE_SHIFT_MASK (src); - LOAD_VECTOR (src); - return vec_splat(vsrc, 0); -} - static force_inline vector unsigned int create_mask_32_128 (uint32_t mask) { - return create_mask_1x32_128(&mask); + return (vector unsigned int) {mask, mask, mask, mask}; } static force_inline vector unsigned int @@ -2471,7 +2460,7 @@ vmx_fill (pixman_implementation_t *imp, return FALSE; } - vfiller = create_mask_1x32_128(&filler); + vfiller = create_mask_32_128(filler); while (height--) { @@ -2913,32 +2902,26 @@ scaled_nearest_scanline_vmx_8888_8888_OVER (uint32_t* pd, while (w >= 4) { - vector unsigned int tmp; - uint32_t tmp1, tmp2, tmp3, tmp4; + uint32_t tmp[4]; - tmp1 = *(ps + pixman_fixed_to_int (vx)); + tmp[0] = *(ps + pixman_fixed_to_int (vx)); vx += unit_x; while (vx >= 0) vx -= src_width_fixed; - tmp2 = *(ps + pixman_fixed_to_int (vx)); + tmp[1] = *(ps + pixman_fixed_to_int (vx)); vx += unit_x; while (vx >= 0) vx -= src_width_fixed; - tmp3 = *(ps + pixman_fixed_to_int (vx)); + tmp[2] = *(ps + pixman_fixed_to_int (vx)); vx += unit_x; while (vx >= 0) vx -= src_width_fixed; - tmp4 = *(ps + pixman_fixed_to_int (vx)); + tmp[3] = *(ps + pixman_fixed_to_int (vx)); vx += unit_x; while (vx >= 0) vx -= src_width_fixed; - tmp[0] = tmp1; - tmp[1] = tmp2; - tmp[2] = tmp3; - tmp[3] = tmp4; - - vsrc = combine4 ((const uint32_t *) &tmp, pm); + vsrc = combine4 (tmp, pm); if (is_opaque (vsrc)) { -- cgit v1.2.3