mirror of
https://git.yoctoproject.org/poky
synced 2026-04-21 21:32:12 +02:00
pixman: update 0.42.2 -> 0.44.0
Drop two backports. Drop iwmmxt support from recipe and patch (upstream has removed it). (From OE-Core rev: 92fb00ad49d43189884c3a3a6ca7f32cec7d3f0f) Signed-off-by: Alexander Kanavin <alex@linutronix.de> Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
committed by
Richard Purdie
parent
bb88ab05f2
commit
40d6946945
@@ -1,8 +1,7 @@
|
||||
From a0f53e1dbb3851bb0f0efcfdbd565b05e4be9cac Mon Sep 17 00:00:00 2001
|
||||
From 0beed8c190b27a07e7f1145a46a7ca8a75864263 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@googlemail.com>
|
||||
Date: Thu, 23 Aug 2012 18:10:57 +0200
|
||||
Subject: [PATCH 1/2] ARM: qemu related workarounds in cpu features detection
|
||||
code
|
||||
Subject: [PATCH] ARM: qemu related workarounds in cpu features detection code
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
@@ -17,14 +16,14 @@ Upstream-Status: Inappropriate [other] qemu fix
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@googlemail.com>
|
||||
---
|
||||
pixman/pixman-arm.c | 82 ++++++++++++++++++++++++++++++++++++++++----------
|
||||
1 files changed, 65 insertions(+), 17 deletions(-)
|
||||
pixman/pixman-arm.c | 77 ++++++++++++++++++++++++++++++++++++---------
|
||||
1 file changed, 62 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/pixman/pixman-arm.c b/pixman/pixman-arm.c
|
||||
index 23374e4..d98bda6 100644
|
||||
index d271e96..8f6e241 100644
|
||||
--- a/pixman/pixman-arm.c
|
||||
+++ b/pixman/pixman-arm.c
|
||||
@@ -129,16 +129,35 @@ detect_cpu_features (void)
|
||||
@@ -128,16 +128,34 @@ detect_cpu_features (void)
|
||||
#include <sys/types.h>
|
||||
#include <sys/stat.h>
|
||||
#include <sys/mman.h>
|
||||
@@ -45,7 +44,6 @@ index 23374e4..d98bda6 100644
|
||||
+ * endian 64-bit host system running qemu and may theoretically fail).
|
||||
+ */
|
||||
+#define ARM_HWCAP_VFP 64
|
||||
+#define ARM_HWCAP_IWMMXT 512
|
||||
+#define ARM_HWCAP_NEON 4096
|
||||
+
|
||||
static arm_cpu_features_t
|
||||
@@ -60,7 +58,7 @@ index 23374e4..d98bda6 100644
|
||||
|
||||
fd = open ("/proc/self/auxv", O_RDONLY);
|
||||
if (fd >= 0)
|
||||
@@ -147,32 +166,61 @@ detect_cpu_features (void)
|
||||
@@ -146,30 +164,59 @@ detect_cpu_features (void)
|
||||
{
|
||||
if (aux.a_type == AT_HWCAP)
|
||||
{
|
||||
@@ -71,8 +69,6 @@ index 23374e4..d98bda6 100644
|
||||
- */
|
||||
- if ((hwcap & 64) != 0)
|
||||
- features |= ARM_VFP;
|
||||
- if ((hwcap & 512) != 0)
|
||||
- features |= ARM_IWMMXT;
|
||||
- /* this flag is only present on kernel 2.6.29 */
|
||||
- if ((hwcap & 4096) != 0)
|
||||
- features |= ARM_NEON;
|
||||
@@ -130,8 +126,6 @@ index 23374e4..d98bda6 100644
|
||||
+ */
|
||||
+ if ((hwcap & ARM_HWCAP_VFP) != 0)
|
||||
+ features |= ARM_VFP;
|
||||
+ if ((hwcap & ARM_HWCAP_IWMMXT) != 0)
|
||||
+ features |= ARM_IWMMXT;
|
||||
+ /* this flag is only present on kernel 2.6.29 */
|
||||
+ if ((hwcap & ARM_HWCAP_NEON) != 0)
|
||||
+ features |= ARM_NEON;
|
||||
@@ -139,6 +133,3 @@ index 23374e4..d98bda6 100644
|
||||
return features;
|
||||
}
|
||||
|
||||
--
|
||||
1.7.6.5
|
||||
|
||||
|
||||
@@ -1,56 +0,0 @@
|
||||
From 1e32984ccd58da1a66ca918d170a6b1829ef9df2 Mon Sep 17 00:00:00 2001
|
||||
From: Changqing Li <changqing.li@windriver.com>
|
||||
Date: Tue, 16 Jul 2024 15:31:16 +0800
|
||||
Subject: [PATCH] pixman-combine-float.c: fix inlining failed in call to
|
||||
always_inline
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Refer [1], always-inline is not suggested to be used if you have indirect
|
||||
calls. so replace force_inline with inline to fix error:
|
||||
In function ‘combine_inner’,
|
||||
inlined from ‘combine_soft_light_ca_float’ at ../pixman/pixman-combine-float.c:655:511:
|
||||
../pixman/pixman-combine-float.c:655:211: error: inlining failed in call to ‘always_inline’ ‘combine_soft_light_c’: function not considered for inlining
|
||||
|
||||
[1] https://gcc.gnu.org/bugzilla/show_bug.cgi?id=115679
|
||||
|
||||
Upstream-Status: Submitted [https://www.mail-archive.com/pixman@lists.freedesktop.org/msg04812.html]
|
||||
|
||||
Signed-off-by: Changqing Li <changqing.li@windriver.com>
|
||||
---
|
||||
pixman/pixman-combine-float.c | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/pixman/pixman-combine-float.c b/pixman/pixman-combine-float.c
|
||||
index f5145bc..f65eb5f 100644
|
||||
--- a/pixman/pixman-combine-float.c
|
||||
+++ b/pixman/pixman-combine-float.c
|
||||
@@ -261,7 +261,7 @@ get_factor (combine_factor_t factor, float sa, float da)
|
||||
}
|
||||
|
||||
#define MAKE_PD_COMBINERS(name, a, b) \
|
||||
- static float force_inline \
|
||||
+ static float inline \
|
||||
pd_combine_ ## name (float sa, float s, float da, float d) \
|
||||
{ \
|
||||
const float fa = get_factor (a, sa, da); \
|
||||
@@ -360,13 +360,13 @@ MAKE_PD_COMBINERS (conjoint_xor, ONE_MINUS_DA_OVER_SA, ONE_MINUS_SA_OVER_DA)
|
||||
*/
|
||||
|
||||
#define MAKE_SEPARABLE_PDF_COMBINERS(name) \
|
||||
- static force_inline float \
|
||||
+ static inline float \
|
||||
combine_ ## name ## _a (float sa, float s, float da, float d) \
|
||||
{ \
|
||||
return da + sa - da * sa; \
|
||||
} \
|
||||
\
|
||||
- static force_inline float \
|
||||
+ static inline float \
|
||||
combine_ ## name ## _c (float sa, float s, float da, float d) \
|
||||
{ \
|
||||
float f = (1 - sa) * d + (1 - da) * s; \
|
||||
--
|
||||
2.25.1
|
||||
|
||||
@@ -1,104 +0,0 @@
|
||||
From 865e6ce00bb79a6b925ed4c2c436e1533e4472aa Mon Sep 17 00:00:00 2001
|
||||
From: Mike Hommey <mh@glandium.org>
|
||||
Date: Fri, 12 Jul 2024 11:11:17 -0400
|
||||
Subject: [PATCH] pixman: Adjust arm assembly for binutils change
|
||||
|
||||
A change in the latest version of binutils broke building pixman for arm.
|
||||
|
||||
The binutils change:
|
||||
https://sourceware.org/git/?p=binutils-gdb.git;a=commit;h=226749d5a6ff0d5c607d6428d6c81e1e7e7a994b
|
||||
|
||||
Closes: https://gitlab.freedesktop.org/pixman/pixman/-/issues/96
|
||||
---
|
||||
pixman/pixman-arm-simd-asm.S | 44 ++++++++++++++++++------------------
|
||||
1 file changed, 22 insertions(+), 22 deletions(-)
|
||||
|
||||
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|
||||
Upstream-Status: Backport [865e6ce00bb79a6b925ed4c2c436e1533e4472aa]
|
||||
|
||||
Index: pixman-0.42.2/pixman/pixman-arm-simd-asm.S
|
||||
===================================================================
|
||||
--- pixman-0.42.2.orig/pixman/pixman-arm-simd-asm.S
|
||||
+++ pixman-0.42.2/pixman/pixman-arm-simd-asm.S
|
||||
@@ -818,13 +818,13 @@ generate_composite_function \
|
||||
.macro over_white_8888_8888_ca_1pixel_tail
|
||||
mvn TMP0, WK1
|
||||
teq WK1, WK1, asr #32
|
||||
- bne 01f
|
||||
- bcc 03f
|
||||
+ bne 1f
|
||||
+ bcc 3f
|
||||
mov WK3, WK1
|
||||
- b 02f
|
||||
-01: over_white_8888_8888_ca_combine WK1, WK3
|
||||
-02: pixst , 4, 3, DST
|
||||
-03:
|
||||
+ b 2f
|
||||
+1: over_white_8888_8888_ca_combine WK1, WK3
|
||||
+2: pixst , 4, 3, DST
|
||||
+3:
|
||||
.endm
|
||||
|
||||
.macro over_white_8888_8888_ca_2pixels_head
|
||||
@@ -835,21 +835,21 @@ generate_composite_function \
|
||||
pixld , 8, 3, DST
|
||||
mvn TMP0, WK1
|
||||
teq WK1, WK1, asr #32
|
||||
- bne 01f
|
||||
+ bne 1f
|
||||
movcs WK3, WK1
|
||||
- bcs 02f
|
||||
+ bcs 2f
|
||||
teq WK2, #0
|
||||
- beq 05f
|
||||
- b 02f
|
||||
-01: over_white_8888_8888_ca_combine WK1, WK3
|
||||
-02: mvn TMP0, WK2
|
||||
+ beq 5f
|
||||
+ b 2f
|
||||
+1: over_white_8888_8888_ca_combine WK1, WK3
|
||||
+2: mvn TMP0, WK2
|
||||
teq WK2, WK2, asr #32
|
||||
- bne 03f
|
||||
+ bne 3f
|
||||
movcs WK4, WK2
|
||||
- b 04f
|
||||
-03: over_white_8888_8888_ca_combine WK2, WK4
|
||||
-04: pixst , 8, 3, DST
|
||||
-05:
|
||||
+ b 4f
|
||||
+3: over_white_8888_8888_ca_combine WK2, WK4
|
||||
+4: pixst , 8, 3, DST
|
||||
+5:
|
||||
.endm
|
||||
|
||||
.macro over_white_8888_8888_ca_process_head cond, numbytes, firstreg, unaligned_src, unaligned_mask, preload
|
||||
@@ -1065,9 +1065,9 @@ generate_composite_function \
|
||||
.if offset != 0
|
||||
ldrb ORIG_W, [SRC, #offset]
|
||||
.endif
|
||||
- beq 01f
|
||||
+ beq 1f
|
||||
teq STRIDE_M, #0xFF
|
||||
- beq 02f
|
||||
+ beq 2f
|
||||
.endif
|
||||
uxtb16 SCRATCH, d /* rb_dest */
|
||||
uxtb16 d, d, ror #8 /* ag_dest */
|
||||
@@ -1077,13 +1077,13 @@ generate_composite_function \
|
||||
uxtab16 d, d, d, ror #8
|
||||
mov SCRATCH, SCRATCH, ror #8
|
||||
sel d, SCRATCH, d
|
||||
- b 02f
|
||||
+ b 2f
|
||||
.if offset == 0
|
||||
48: /* Last mov d,#0 of the set - used as part of shortcut for
|
||||
* source values all 0 */
|
||||
.endif
|
||||
-01: mov d, #0
|
||||
-02:
|
||||
+1: mov d, #0
|
||||
+2:
|
||||
.endm
|
||||
|
||||
.macro in_reverse_8888_8888_tail numbytes, reg1, reg2, reg3, reg4
|
||||
@@ -9,10 +9,8 @@ DEPENDS = "zlib"
|
||||
|
||||
SRC_URI = "https://www.cairographics.org/releases/${BP}.tar.gz \
|
||||
file://0001-ARM-qemu-related-workarounds-in-cpu-features-detecti.patch \
|
||||
file://0001-pixman-combine-float.c-fix-inlining-failed-in-call-t.patch \
|
||||
file://865e6ce00bb79a6b925ed4c2c436e1533e4472aa.patch \
|
||||
"
|
||||
SRC_URI[sha256sum] = "ea1480efada2fd948bc75366f7c349e1c96d3297d09a3fe62626e38e234a625e"
|
||||
SRC_URI[sha256sum] = "89a4c1e1e45e0b23dffe708202cb2eaffde0fe3727d7692b2e1739fec78a7dac"
|
||||
|
||||
# see http://cairographics.org/releases/ - only even minor versions are stable
|
||||
UPSTREAM_CHECK_REGEX = "pixman-(?P<pver>\d+\.(\d*[02468])+(\.\d+)+)"
|
||||
@@ -32,8 +30,6 @@ EXTRA_OEMESON = "-Dgtk=disabled -Dlibpng=disabled"
|
||||
# ld: pixman/libpixman-mmx.a(pixman-mmx.c.o):
|
||||
# linking mips:loongson_2f module with previous mips:isa64 modules
|
||||
EXTRA_OEMESON += "-Dloongson-mmi=disabled"
|
||||
# disable iwmmxt due to compile fails on most arm platforms.
|
||||
EXTRA_OEMESON += "-Diwmmxt=disabled"
|
||||
|
||||
EXTRA_OEMESON:append:class-target:powerpc = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "-Dvmx=enabled", "-Dvmx=disabled", d)}"
|
||||
EXTRA_OEMESON:append:class-target:powerpc64 = " ${@bb.utils.contains("TUNE_FEATURES", "altivec", "-Dvmx=enabled", "-Dvmx=disabled", d)}"
|
||||
Reference in New Issue
Block a user