diff options
Diffstat (limited to 'meta-oe/recipes-graphics')
10 files changed, 41 insertions, 455 deletions
diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0017-add-_pixman_bits_override_accessors.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0017-add-_pixman_bits_override_accessors.patch deleted file mode 100644 index b7983b2081..0000000000 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0017-add-_pixman_bits_override_accessors.patch +++ /dev/null @@ -1,75 +0,0 @@ -From 6593d86679fde724e49efa96b16ca22d9521b288 Mon Sep 17 00:00:00 2001 -From: Siarhei Siamashka <siarhei.siamashka@nokia.com> -Date: Thu, 10 Dec 2009 00:51:50 +0200 -Subject: [PATCH 17/24] add _pixman_bits_override_accessors - -* from patch ARM: HACK: added NEON optimizations for fetch/store r5g6b5 scanline -* used in - 0005-ARM-added-NEON-optimizations-for-fetch-store-r5g6b5-.patch - 0006-ARM-added-NEON-optimizations-for-fetch-store-a8-scan.patch - 0007-ARM-added-NEON-optimizations-for-fetching-x8r8g8b8-s.patch ---- - pixman/pixman-access.c | 23 ++++++++++++++++++++++- - pixman/pixman-private.h | 5 +++++ - 2 files changed, 27 insertions(+), 1 deletions(-) - -diff --git a/pixman/pixman-access.c b/pixman/pixman-access.c -index f1ce0ba..b33da29 100644 ---- a/pixman/pixman-access.c -+++ b/pixman/pixman-access.c -@@ -2836,7 +2836,7 @@ typedef struct - store_scanline_ ## format, store_scanline_generic_64 \ - } - --static const format_info_t accessors[] = -+static format_info_t accessors[] = - { - /* 32 bpp formats */ - FORMAT_INFO (a8r8g8b8), -@@ -2978,6 +2978,27 @@ _pixman_bits_image_setup_accessors (bits_image_t *image) - setup_accessors (image); - } - -+void -+_pixman_bits_override_accessors (pixman_format_code_t format, -+ fetch_scanline_t fetch_func, -+ store_scanline_t store_func) -+{ -+ format_info_t *info = accessors; -+ -+ while (info->format != PIXMAN_null) -+ { -+ if (info->format == format) -+ { -+ if (fetch_func) -+ info->fetch_scanline_32 = fetch_func; -+ if (store_func) -+ info->store_scanline_32 = store_func; -+ return; -+ } -+ info++; -+ } -+} -+ - #else - - void -diff --git a/pixman/pixman-private.h b/pixman/pixman-private.h -index 1662d2c..c0f9af4 100644 ---- a/pixman/pixman-private.h -+++ b/pixman/pixman-private.h -@@ -256,6 +256,11 @@ _pixman_conical_gradient_iter_init (pixman_image_t *image, - int x, int y, int width, int height, - uint8_t *buffer, iter_flags_t flags); - -+void -+_pixman_bits_override_accessors (pixman_format_code_t format, -+ fetch_scanline_t fetch_func, -+ store_scanline_t store_func); -+ - pixman_image_t * - _pixman_image_allocate (void); - --- -1.7.4.rc2 - diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0022-ARM-added-NEON-optimizations-for-fetch-store-r5g6b5-.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0022-ARM-added-NEON-optimizations-for-fetch-store-r5g6b5-.patch deleted file mode 100644 index 129c1f1bb6..0000000000 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0022-ARM-added-NEON-optimizations-for-fetch-store-r5g6b5-.patch +++ /dev/null @@ -1,109 +0,0 @@ -From 60d972afbae8613d700d3a6b3cb107429d7e11c6 Mon Sep 17 00:00:00 2001 -From: Siarhei Siamashka <siarhei.siamashka@nokia.com> -Date: Thu, 10 Dec 2009 00:51:50 +0200 -Subject: [PATCH 22/24] ARM: added NEON optimizations for fetch/store r5g6b5 scanline - ---- - pixman/pixman-arm-neon-asm.S | 20 ++++++++++++++++++++ - pixman/pixman-arm-neon.c | 40 ++++++++++++++++++++++++++++++++++++++++ - 2 files changed, 60 insertions(+), 0 deletions(-) - -diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S -index cf014fa..25f7bf0 100644 ---- a/pixman/pixman-arm-neon-asm.S -+++ b/pixman/pixman-arm-neon-asm.S -@@ -459,6 +459,16 @@ generate_composite_function \ - pixman_composite_src_8888_0565_process_pixblock_tail, \ - pixman_composite_src_8888_0565_process_pixblock_tail_head - -+generate_composite_function_single_scanline \ -+ pixman_store_scanline_r5g6b5_asm_neon, 32, 0, 16, \ -+ FLAG_DST_WRITEONLY | FLAG_DEINTERLEAVE_32BPP, \ -+ 8, /* number of pixels, processed in a single block */ \ -+ default_init, \ -+ default_cleanup, \ -+ pixman_composite_src_8888_0565_process_pixblock_head, \ -+ pixman_composite_src_8888_0565_process_pixblock_tail, \ -+ pixman_composite_src_8888_0565_process_pixblock_tail_head -+ - /******************************************************************************/ - - .macro pixman_composite_src_0565_8888_process_pixblock_head -@@ -494,6 +504,16 @@ generate_composite_function \ - pixman_composite_src_0565_8888_process_pixblock_tail, \ - pixman_composite_src_0565_8888_process_pixblock_tail_head - -+generate_composite_function_single_scanline \ -+ pixman_fetch_scanline_r5g6b5_asm_neon, 16, 0, 32, \ -+ FLAG_DST_WRITEONLY | FLAG_DEINTERLEAVE_32BPP, \ -+ 8, /* number of pixels, processed in a single block */ \ -+ default_init, \ -+ default_cleanup, \ -+ pixman_composite_src_0565_8888_process_pixblock_head, \ -+ pixman_composite_src_0565_8888_process_pixblock_tail, \ -+ pixman_composite_src_0565_8888_process_pixblock_tail_head -+ - /******************************************************************************/ - - .macro pixman_composite_add_8_8_process_pixblock_head -diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c -index 74316a8..f773e92 100644 ---- a/pixman/pixman-arm-neon.c -+++ b/pixman/pixman-arm-neon.c -@@ -448,6 +448,42 @@ BIND_COMBINE_U (over) - BIND_COMBINE_U (add) - BIND_COMBINE_U (out_reverse) - -+void -+pixman_fetch_scanline_r5g6b5_asm_neon (int width, -+ uint32_t *buffer, -+ const uint16_t *pixel); -+void -+pixman_store_scanline_r5g6b5_asm_neon (int width, -+ uint16_t *pixel, -+ const uint32_t *values); -+ -+static void -+neon_fetch_scanline_r5g6b5 (pixman_image_t *image, -+ int x, -+ int y, -+ int width, -+ uint32_t * buffer, -+ const uint32_t *mask) -+{ -+ const uint32_t *bits = image->bits.bits + y * image->bits.rowstride; -+ const uint16_t *pixel = (const uint16_t *)bits + x; -+ -+ pixman_fetch_scanline_r5g6b5_asm_neon (width, buffer, pixel); -+} -+ -+static void -+neon_store_scanline_r5g6b5 (bits_image_t * image, -+ int x, -+ int y, -+ int width, -+ const uint32_t *values) -+{ -+ uint32_t *bits = image->bits + image->rowstride * y; -+ uint16_t *pixel = ((uint16_t *) bits) + x; -+ -+ pixman_store_scanline_r5g6b5_asm_neon (width, pixel, values); -+} -+ - pixman_implementation_t * - _pixman_implementation_create_arm_neon (void) - { -@@ -463,6 +499,10 @@ _pixman_implementation_create_arm_neon (void) - imp->combine_32[PIXMAN_OP_ADD] = neon_combine_add_u; - imp->combine_32[PIXMAN_OP_OUT_REVERSE] = neon_combine_out_reverse_u; - -+ _pixman_bits_override_accessors (PIXMAN_r5g6b5, -+ neon_fetch_scanline_r5g6b5, -+ neon_store_scanline_r5g6b5); -+ - imp->blt = arm_neon_blt; - imp->fill = arm_neon_fill; - --- -1.6.6.1 - diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0023-ARM-added-NEON-optimizations-for-fetch-store-a8-scan.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0023-ARM-added-NEON-optimizations-for-fetch-store-a8-scan.patch deleted file mode 100644 index 7724f5433e..0000000000 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0023-ARM-added-NEON-optimizations-for-fetch-store-a8-scan.patch +++ /dev/null @@ -1,148 +0,0 @@ -From cc99d8d6fcbabd7f9f3ed99e65c78a2fb71792fa Mon Sep 17 00:00:00 2001 -From: Siarhei Siamashka <siarhei.siamashka@nokia.com> -Date: Thu, 23 Sep 2010 21:10:56 +0300 -Subject: [PATCH 23/24] ARM: added NEON optimizations for fetch/store a8 scanline - ---- - pixman/pixman-arm-neon-asm.S | 64 ++++++++++++++++++++++++++++++++++++++++++ - pixman/pixman-arm-neon.c | 42 +++++++++++++++++++++++++++ - 2 files changed, 106 insertions(+), 0 deletions(-) - -diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S -index 25f7bf0..439b06b 100644 ---- a/pixman/pixman-arm-neon-asm.S -+++ b/pixman/pixman-arm-neon-asm.S -@@ -418,6 +418,70 @@ generate_composite_function \ - - /******************************************************************************/ - -+.macro pixman_composite_src_8_8888_process_pixblock_head -+ /* This is tricky part: we can't set these values just once in 'init' macro -+ * because leading/trailing pixels handling part uses VZIP.8 instructions, -+ * and they operate on values in-place and destroy original registers -+ * content. Think about it like VST4.8 instruction corrupting NEON -+ * registers after write in 'tail_head' macro. Except that 'tail_head' -+ * macro itself actually does not need these extra VMOVs because it uses -+ * real VST4.8 instruction. -+ */ -+ vmov.u8 q0, #0 -+ vmov.u8 d2, #0 -+.endm -+ -+.macro pixman_composite_src_8_8888_process_pixblock_tail -+.endm -+ -+.macro pixman_composite_src_8_8888_process_pixblock_tail_head -+ vst4.8 {d0, d1, d2, d3}, [DST_W, :128]! -+ vld1.8 {d3}, [SRC]! -+.endm -+ -+generate_composite_function_single_scanline \ -+ pixman_fetch_scanline_a8_asm_neon, 8, 0, 32, \ -+ FLAG_DST_WRITEONLY | FLAG_DEINTERLEAVE_32BPP, \ -+ 8, /* number of pixels, processed in a single block */ \ -+ default_init, \ -+ default_cleanup, \ -+ pixman_composite_src_8_8888_process_pixblock_head, \ -+ pixman_composite_src_8_8888_process_pixblock_tail, \ -+ pixman_composite_src_8_8888_process_pixblock_tail_head, \ -+ 0, /* dst_w_basereg */ \ -+ 0, /* dst_r_basereg */ \ -+ 3, /* src_basereg */ \ -+ 0 /* mask_basereg */ -+ -+/******************************************************************************/ -+ -+.macro pixman_composite_src_8888_8_process_pixblock_head -+.endm -+ -+.macro pixman_composite_src_8888_8_process_pixblock_tail -+.endm -+ -+.macro pixman_composite_src_8888_8_process_pixblock_tail_head -+ vst1.8 {d3}, [DST_W, :64]! -+ vld4.8 {d0, d1, d2, d3}, [SRC]! -+.endm -+ -+generate_composite_function_single_scanline \ -+ pixman_store_scanline_a8_asm_neon, 32, 0, 8, \ -+ FLAG_DST_WRITEONLY | FLAG_DEINTERLEAVE_32BPP, \ -+ 8, /* number of pixels, processed in a single block */ \ -+ default_init, \ -+ default_cleanup, \ -+ pixman_composite_src_8888_8_process_pixblock_head, \ -+ pixman_composite_src_8888_8_process_pixblock_tail, \ -+ pixman_composite_src_8888_8_process_pixblock_tail_head, \ -+ 3, /* dst_w_basereg */ \ -+ 0, /* dst_r_basereg */ \ -+ 0, /* src_basereg */ \ -+ 0 /* mask_basereg */ -+ -+/******************************************************************************/ -+ - .macro pixman_composite_src_8888_0565_process_pixblock_head - vshll.u8 q8, d1, #8 - vshll.u8 q14, d2, #8 -diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c -index f773e92..55219b3 100644 ---- a/pixman/pixman-arm-neon.c -+++ b/pixman/pixman-arm-neon.c -@@ -484,6 +484,45 @@ neon_store_scanline_r5g6b5 (bits_image_t * image, - pixman_store_scanline_r5g6b5_asm_neon (width, pixel, values); - } - -+void -+pixman_fetch_scanline_a8_asm_neon (int width, -+ uint32_t *buffer, -+ const uint8_t *pixel); -+ -+ -+void -+pixman_store_scanline_a8_asm_neon (int width, -+ uint8_t *pixel, -+ const uint32_t *values); -+ -+static void -+neon_fetch_scanline_a8 (pixman_image_t *image, -+ int x, -+ int y, -+ int width, -+ uint32_t * buffer, -+ const uint32_t *mask) -+{ -+ const uint32_t *bits = image->bits.bits + y * image->bits.rowstride; -+ const uint8_t *pixel = (const uint8_t *) bits + x; -+ -+ pixman_fetch_scanline_a8_asm_neon (width, buffer, pixel); -+} -+ -+static void -+neon_store_scanline_a8 (bits_image_t * image, -+ int x, -+ int y, -+ int width, -+ const uint32_t *values) -+{ -+ uint32_t *bits = image->bits + image->rowstride * y; -+ uint8_t *pixel = (uint8_t *) bits + x; -+ -+ pixman_store_scanline_a8_asm_neon (width, pixel, values); -+} -+ -+ - pixman_implementation_t * - _pixman_implementation_create_arm_neon (void) - { -@@ -502,6 +541,9 @@ _pixman_implementation_create_arm_neon (void) - _pixman_bits_override_accessors (PIXMAN_r5g6b5, - neon_fetch_scanline_r5g6b5, - neon_store_scanline_r5g6b5); -+ _pixman_bits_override_accessors (PIXMAN_a8, -+ neon_fetch_scanline_a8, -+ neon_store_scanline_a8); - - imp->blt = arm_neon_blt; - imp->fill = arm_neon_fill; --- -1.6.6.1 - diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0024-ARM-added-NEON-optimizations-for-fetching-x8r8g8b8-s.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0024-ARM-added-NEON-optimizations-for-fetching-x8r8g8b8-s.patch deleted file mode 100644 index 8253f41b8f..0000000000 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0024-ARM-added-NEON-optimizations-for-fetching-x8r8g8b8-s.patch +++ /dev/null @@ -1,77 +0,0 @@ -From cf3b8fdc53144ff62c4054996559d3a1a4d62b75 Mon Sep 17 00:00:00 2001 -From: Siarhei Siamashka <siarhei.siamashka@nokia.com> -Date: Fri, 24 Sep 2010 18:22:44 +0300 -Subject: [PATCH 24/24] ARM: added NEON optimizations for fetching x8r8g8b8 scanline - ---- - pixman/pixman-arm-neon-asm.S | 14 ++++++++++++++ - pixman/pixman-arm-neon.c | 21 +++++++++++++++++++++ - 2 files changed, 35 insertions(+), 0 deletions(-) - -diff --git a/pixman/pixman-arm-neon-asm.S b/pixman/pixman-arm-neon-asm.S -index 439b06b..3e0dcfe 100644 ---- a/pixman/pixman-arm-neon-asm.S -+++ b/pixman/pixman-arm-neon-asm.S -@@ -1257,6 +1257,20 @@ generate_composite_function \ - 0, /* src_basereg */ \ - 0 /* mask_basereg */ - -+generate_composite_function_single_scanline \ -+ pixman_fetch_scanline_x888_asm_neon, 32, 0, 32, \ -+ FLAG_DST_WRITEONLY, \ -+ 8, /* number of pixels, processed in a single block */ \ -+ pixman_composite_src_x888_8888_init, \ -+ default_cleanup, \ -+ pixman_composite_src_x888_8888_process_pixblock_head, \ -+ pixman_composite_src_x888_8888_process_pixblock_tail, \ -+ pixman_composite_src_x888_8888_process_pixblock_tail_head, \ -+ 0, /* dst_w_basereg */ \ -+ 0, /* dst_r_basereg */ \ -+ 0, /* src_basereg */ \ -+ 0 /* mask_basereg */ -+ - /******************************************************************************/ - - .macro pixman_composite_over_n_8_8888_process_pixblock_head -diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c -index 55219b3..8cef414 100644 ---- a/pixman/pixman-arm-neon.c -+++ b/pixman/pixman-arm-neon.c -@@ -522,6 +522,24 @@ neon_store_scanline_a8 (bits_image_t * image, - pixman_store_scanline_a8_asm_neon (width, pixel, values); - } - -+void -+pixman_fetch_scanline_x888_asm_neon (int width, -+ uint32_t *buffer, -+ const uint32_t *pixel); -+ -+static void -+neon_fetch_scanline_x888 (pixman_image_t *image, -+ int x, -+ int y, -+ int width, -+ uint32_t * buffer, -+ const uint32_t *mask) -+{ -+ const uint32_t *bits = image->bits.bits + y * image->bits.rowstride; -+ const uint32_t *pixel = (const uint32_t *) bits + x; -+ -+ pixman_fetch_scanline_x888_asm_neon (width, buffer, pixel); -+} - - pixman_implementation_t * - _pixman_implementation_create_arm_neon (void) -@@ -544,6 +562,9 @@ _pixman_implementation_create_arm_neon (void) - _pixman_bits_override_accessors (PIXMAN_a8, - neon_fetch_scanline_a8, - neon_store_scanline_a8); -+ _pixman_bits_override_accessors (PIXMAN_x8r8g8b8, -+ neon_fetch_scanline_x888, -+ NULL); - - imp->blt = arm_neon_blt; - imp->fill = arm_neon_fill; --- -1.6.6.1 - diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0018-Generic-C-implementation-of-pixman_blt-with-overlapp.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0001-Generic-C-implementation-of-pixman_blt-with-overlapp.patch index 5b1c1089ed..d925930898 100644 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0018-Generic-C-implementation-of-pixman_blt-with-overlapp.patch +++ b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0001-Generic-C-implementation-of-pixman_blt-with-overlapp.patch @@ -1,7 +1,7 @@ -From 8e8b2809b505486001dc213becab0d50bfd96c1b Mon Sep 17 00:00:00 2001 +From e17f676f1f42239fb4304d75191f373bb06e8fc0 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka <siarhei.siamashka@nokia.com> Date: Tue, 16 Mar 2010 16:55:28 +0100 -Subject: [PATCH 18/24] Generic C implementation of pixman_blt with overlapping support +Subject: [PATCH 1/4] Generic C implementation of pixman_blt with overlapping support Uses memcpy/memmove functions to copy pixels, can handle the case when both source and destination areas are in the same @@ -19,10 +19,10 @@ unrealistic case anyway). 2 files changed, 61 insertions(+), 3 deletions(-) diff --git a/pixman/pixman-general.c b/pixman/pixman-general.c -index 4d234a0..c4d2c14 100644 +index 727affc..fa448f7 100644 --- a/pixman/pixman-general.c +++ b/pixman/pixman-general.c -@@ -280,9 +280,24 @@ general_blt (pixman_implementation_t *imp, +@@ -238,9 +238,24 @@ general_blt (pixman_implementation_t *imp, int width, int height) { @@ -51,7 +51,7 @@ index 4d234a0..c4d2c14 100644 static pixman_bool_t diff --git a/pixman/pixman-private.h b/pixman/pixman-private.h -index 969dfab..352bceb 100644 +index 60060a9..5369ad9 100644 --- a/pixman/pixman-private.h +++ b/pixman/pixman-private.h @@ -10,6 +10,7 @@ @@ -62,7 +62,7 @@ index 969dfab..352bceb 100644 #include <assert.h> #include <stdio.h> #include <string.h> -@@ -869,4 +870,46 @@ void pixman_timer_register (pixman_timer_t *timer); +@@ -899,4 +900,46 @@ void pixman_timer_register (pixman_timer_t *timer); #endif /* PIXMAN_TIMERS */ diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0019-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0002-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch index 5193d38f74..45de8ec7ee 100644 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0019-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch +++ b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0002-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch @@ -1,14 +1,14 @@ -From f5a54f7d5eb1169bc79f0e445e2998e98080ef13 Mon Sep 17 00:00:00 2001 +From 6d8b811414c73df7f75cc192e3b1f1d777615bdc Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka <siarhei.siamashka@nokia.com> Date: Thu, 22 Oct 2009 05:45:47 +0300 -Subject: [PATCH 19/24] Support of overlapping src/dst for pixman_blt_mmx +Subject: [PATCH 2/4] Support of overlapping src/dst for pixman_blt_mmx --- pixman/pixman-mmx.c | 55 +++++++++++++++++++++++++++++--------------------- 1 files changed, 32 insertions(+), 23 deletions(-) diff --git a/pixman/pixman-mmx.c b/pixman/pixman-mmx.c -index 34637a4..f9dd473 100644 +index 0272347..5bcbd0e 100644 --- a/pixman/pixman-mmx.c +++ b/pixman/pixman-mmx.c @@ -2996,34 +2996,43 @@ pixman_blt_mmx (uint32_t *src_bits, diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0020-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0003-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch index f5c0e12f24..7bb2fb60ff 100644 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0020-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch +++ b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0003-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch @@ -1,17 +1,17 @@ -From c8755294fa9ea396f7113370230b17c424a93be1 Mon Sep 17 00:00:00 2001 +From c9ca9dc0f345fa3e2e0f16b2627150e0b696fd7a Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka <siarhei.siamashka@nokia.com> Date: Thu, 22 Oct 2009 05:45:54 +0300 -Subject: [PATCH 20/24] Support of overlapping src/dst for pixman_blt_sse2 +Subject: [PATCH 3/4] Support of overlapping src/dst for pixman_blt_sse2 --- pixman/pixman-sse2.c | 55 +++++++++++++++++++++++++++++-------------------- 1 files changed, 32 insertions(+), 23 deletions(-) diff --git a/pixman/pixman-sse2.c b/pixman/pixman-sse2.c -index 5907de0..25015ae 100644 +index 533b858..9fa7191 100644 --- a/pixman/pixman-sse2.c +++ b/pixman/pixman-sse2.c -@@ -5027,34 +5027,43 @@ pixman_blt_sse2 (uint32_t *src_bits, +@@ -4691,34 +4691,43 @@ pixman_blt_sse2 (uint32_t *src_bits, { uint8_t * src_bytes; uint8_t * dst_bytes; @@ -77,7 +77,7 @@ index 5907de0..25015ae 100644 } while (height--) -@@ -5064,7 +5073,7 @@ pixman_blt_sse2 (uint32_t *src_bits, +@@ -4728,7 +4737,7 @@ pixman_blt_sse2 (uint32_t *src_bits, uint8_t *d = dst_bytes; src_bytes += src_stride; dst_bytes += dst_stride; diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0021-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0004-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch index 0eb9d88eba..6bcc2fa30a 100644 --- a/meta-oe/recipes-graphics/xorg-lib/pixman-0.21.4/0021-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch +++ b/meta-oe/recipes-graphics/xorg-lib/pixman-0.22.0/0004-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch @@ -1,17 +1,17 @@ -From 86c8198598ef6d639e656c04644015795cc249aa Mon Sep 17 00:00:00 2001 +From 604f22b515d4d678df4c301ecec3c7da4987ee16 Mon Sep 17 00:00:00 2001 From: Siarhei Siamashka <siarhei.siamashka@nokia.com> Date: Wed, 18 Nov 2009 06:08:48 +0200 -Subject: [PATCH 21/24] Support of overlapping src/dst for pixman_blt_neon +Subject: [PATCH 4/4] Support of overlapping src/dst for pixman_blt_neon --- pixman/pixman-arm-neon.c | 62 +++++++++++++++++++++++++++++++++++++-------- 1 files changed, 51 insertions(+), 11 deletions(-) diff --git a/pixman/pixman-arm-neon.c b/pixman/pixman-arm-neon.c -index e3eca2b..74316a8 100644 +index e5127a6..b67fed9 100644 --- a/pixman/pixman-arm-neon.c +++ b/pixman/pixman-arm-neon.c -@@ -199,26 +199,66 @@ pixman_blt_neon (uint32_t *src_bits, +@@ -234,26 +234,66 @@ pixman_blt_neon (uint32_t *src_bits, int width, int height) { diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb b/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb deleted file mode 100644 index 237e4efa69..0000000000 --- a/meta-oe/recipes-graphics/xorg-lib/pixman_0.21.4.bb +++ /dev/null @@ -1,28 +0,0 @@ -require pixman.inc - -SRC_URI[md5sum] = "e50975ace979cd416a505827c15191b4" -SRC_URI[sha256sum] = "57783330ee2f96121dc267b7f25b98356fd09fe9de185cd39e72e906b6444013" - -LICENSE = "MIT & MIT-style & Public Domain" -LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3\ - file://pixman/pixman-matrix.c;endline=25;md5=ba6e8769bfaaee2c41698755af04c4be \ - file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ - file://pixman/pixman-x64-mmx-emulation.h;beginline=4;endline=9;md5=4e32716f2efaa6c4659222667c339bb8" - -PR = "${INC_PR}.0" - -SRC_URI += "\ - file://0017-add-_pixman_bits_override_accessors.patch \ - file://0018-Generic-C-implementation-of-pixman_blt-with-overlapp.patch \ - file://0019-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch \ - file://0020-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch \ - file://0021-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch \ - file://0022-ARM-added-NEON-optimizations-for-fetch-store-r5g6b5-.patch \ - file://0023-ARM-added-NEON-optimizations-for-fetch-store-a8-scan.patch \ - file://0024-ARM-added-NEON-optimizations-for-fetching-x8r8g8b8-s.patch \ -" - -NEON = " --disable-arm-neon " -NEON_armv7a = " " - -EXTRA_OECONF = "${NEON} --disable-gtk" diff --git a/meta-oe/recipes-graphics/xorg-lib/pixman_0.22.0.bb b/meta-oe/recipes-graphics/xorg-lib/pixman_0.22.0.bb new file mode 100644 index 0000000000..d256e6812e --- /dev/null +++ b/meta-oe/recipes-graphics/xorg-lib/pixman_0.22.0.bb @@ -0,0 +1,23 @@ +require pixman.inc + +LICENSE = "MIT & MIT-style & Public Domain" +LIC_FILES_CHKSUM = "file://COPYING;md5=14096c769ae0cbb5fcb94ec468be11b3\ + file://pixman/pixman-matrix.c;endline=25;md5=ba6e8769bfaaee2c41698755af04c4be \ + file://pixman/pixman-arm-neon-asm.h;endline=24;md5=9a9cc1e51abbf1da58f4d9528ec9d49b \ + file://pixman/pixman-x64-mmx-emulation.h;beginline=4;endline=9;md5=4e32716f2efaa6c4659222667c339bb8" + +PR = "${INC_PR}.0" + +SRC_URI = "http://xorg.freedesktop.org/archive/individual/lib/${BPN}-${PV}.tar.gz \ + file://0001-Generic-C-implementation-of-pixman_blt-with-overlapp.patch \ + file://0002-Support-of-overlapping-src-dst-for-pixman_blt_mmx.patch \ + file://0003-Support-of-overlapping-src-dst-for-pixman_blt_sse2.patch \ + file://0004-Support-of-overlapping-src-dst-for-pixman_blt_neon.patch \ +" +SRC_URI[md5sum] = "cb8f3cb5ce2c8d7294f73ecb7021fda6" +SRC_URI[sha256sum] = "6b7622256e43912fb77fd456b0753f407268d450f5990c8f86e7c6f006e30da0" + +NEON = " --disable-arm-neon " +NEON_armv7a = " " + +EXTRA_OECONF = "${NEON} --disable-gtk" |