diff options
Diffstat (limited to 'recipes/xorg-lib/pixman-0.21.2/0016-ARM-added-neon_composite_in_n_8-fast-path.patch')
-rw-r--r-- | recipes/xorg-lib/pixman-0.21.2/0016-ARM-added-neon_composite_in_n_8-fast-path.patch | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/recipes/xorg-lib/pixman-0.21.2/0016-ARM-added-neon_composite_in_n_8-fast-path.patch b/recipes/xorg-lib/pixman-0.21.2/0016-ARM-added-neon_composite_in_n_8-fast-path.patch deleted file mode 100644 index 8a22f54451..0000000000 --- a/recipes/xorg-lib/pixman-0.21.2/0016-ARM-added-neon_composite_in_n_8-fast-path.patch +++ /dev/null @@ -1,97 +0,0 @@ -From 733f68912f4a44c24ad3973049a7e1d98f4c6ea8 Mon Sep 17 00:00:00 2001 -From: Siarhei Siamashka <siarhei.siamashka@nokia.com> -Date: Mon, 29 Nov 2010 09:11:29 +0200 -Subject: [PATCH 16/24] ARM: added 'neon_composite_in_n_8' fast path - ---- - pixman/pixman-arm-neon-asm.S | 52 ++++++++++++++++++++++++++++++++++++++++++ - pixman/pixman-arm-neon.c | 3 ++ - 2 files changed, 55 insertions(+), 0 deletions(-) - -diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S -index 2c0fd37..cf014fa 100644 ---- a/pixman/pixman-arm-neon-asm.S -+++ b/pixman/pixman-arm-neon-asm.S -@@ -1427,6 +1427,58 @@ generate_composite_function \ - - /******************************************************************************/ - -+.macro pixman_composite_in_n_8_process_pixblock_head -+ /* expecting source data in {d0, d1, d2, d3} */ -+ /* and destination data in {d4, d5, d6, d7} */ -+ vmull.u8 q8, d4, d3 -+ vmull.u8 q9, d5, d3 -+ vmull.u8 q10, d6, d3 -+ vmull.u8 q11, d7, d3 -+.endm -+ -+.macro pixman_composite_in_n_8_process_pixblock_tail -+ vrshr.u16 q14, q8, #8 -+ vrshr.u16 q15, q9, #8 -+ vrshr.u16 q12, q10, #8 -+ vrshr.u16 q13, q11, #8 -+ vraddhn.u16 d28, q8, q14 -+ vraddhn.u16 d29, q9, q15 -+ vraddhn.u16 d30, q10, q12 -+ vraddhn.u16 d31, q11, q13 -+.endm -+ -+.macro pixman_composite_in_n_8_process_pixblock_tail_head -+ pixman_composite_in_n_8_process_pixblock_tail -+ vld1.8 {d4, d5, d6, d7}, [DST_R, :128]! -+ cache_preload 32, 32 -+ pixman_composite_in_n_8_process_pixblock_head -+ vst1.8 {d28, d29, d30, d31}, [DST_W, :128]! -+.endm -+ -+.macro pixman_composite_in_n_8_init -+ add DUMMY, sp, #ARGS_STACK_OFFSET -+ vld1.32 {d3[0]}, [DUMMY] -+ vdup.8 d3, d3[3] -+.endm -+ -+.macro pixman_composite_in_n_8_cleanup -+.endm -+ -+generate_composite_function \ -+ pixman_composite_in_n_8_asm_neon, 0, 0, 8, \ -+ FLAG_DST_READWRITE, \ -+ 32, /* number of pixels, processed in a single block */ \ -+ 5, /* prefetch distance */ \ -+ pixman_composite_in_n_8_init, \ -+ pixman_composite_in_n_8_cleanup, \ -+ pixman_composite_in_n_8_process_pixblock_head, \ -+ pixman_composite_in_n_8_process_pixblock_tail, \ -+ pixman_composite_in_n_8_process_pixblock_tail_head, \ -+ 28, /* dst_w_basereg */ \ -+ 4, /* dst_r_basereg */ \ -+ 0, /* src_basereg */ \ -+ 24 /* mask_basereg */ -+ - .macro pixman_composite_add_n_8_8_process_pixblock_head - /* expecting source data in {d8, d9, d10, d11} */ - /* d8 - blue, d9 - green, d10 - red, d11 - alpha */ -diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c -index 1a3741c..e3eca2b 100644 ---- a/pixman/pixman-arm-neon.c -+++ b/pixman/pixman-arm-neon.c -@@ -69,6 +69,8 @@ PIXMAN_ARM_BIND_FAST_PATH_N_DST (SKIP_ZERO_SRC, neon, over_n_8888, - uint32_t, 1) - PIXMAN_ARM_BIND_FAST_PATH_N_DST (SKIP_ZERO_SRC, neon, over_reverse_n_8888, - uint32_t, 1) -+PIXMAN_ARM_BIND_FAST_PATH_N_DST (0, neon, in_n_8, -+ uint8_t, 1) - - PIXMAN_ARM_BIND_FAST_PATH_N_MASK_DST (SKIP_ZERO_SRC, neon, over_n_8_0565, - uint8_t, 1, uint16_t, 1) -@@ -298,6 +300,7 @@ static const pixman_fast_path_t arm_neon_fast_paths[] = - PIXMAN_STD_FAST_PATH (ADD, a8, null, a8, neon_composite_add_8_8), - PIXMAN_STD_FAST_PATH (ADD, a8r8g8b8, null, a8r8g8b8, neon_composite_add_8888_8888), - PIXMAN_STD_FAST_PATH (ADD, a8b8g8r8, null, a8b8g8r8, neon_composite_add_8888_8888), -+ PIXMAN_STD_FAST_PATH (IN, solid, null, a8, neon_composite_in_n_8), - PIXMAN_STD_FAST_PATH (OVER_REVERSE, solid, null, a8r8g8b8, neon_composite_over_reverse_n_8888), - PIXMAN_STD_FAST_PATH (OVER_REVERSE, solid, null, a8b8g8r8, neon_composite_over_reverse_n_8888), - PIXMAN_STD_FAST_PATH (OUT_REVERSE, a8, null, r5g6b5, neon_composite_out_reverse_8_0565), --- -1.6.6.1 - |