mirror of
https://gitlab.com/buildroot.org/buildroot.git
synced 2026-09-30 22:11:59 -09:00
package/wpewebkit: add backported patch to fix NEON build
Import a patch that has been backported by upstream to the 2.44 release
branch that fixes the build when the target is an ARM processor that
supports NEON instructions.
Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
(cherry picked from commit 8502ac71aa)
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
committed by
Peter Korsgaard
parent
1d91c6fda4
commit
ecd49f4552
@@ -0,0 +1,68 @@
|
|||||||
|
From 8863ceb3c8486f31e1ccfcd2c7c602fad9feac52 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Adrian Perez de Castro <aperez@igalia.com>
|
||||||
|
Date: Mon, 27 May 2024 02:09:58 +0300
|
||||||
|
Subject: [PATCH] Cherry-pick 279334@main (36d1b5d7c0ef). <bug>
|
||||||
|
|
||||||
|
Remove ARM-specific declarations in FELighting.h unneeded after 272873@main
|
||||||
|
|
||||||
|
Unreviewed build fix.
|
||||||
|
|
||||||
|
* Source/WebCore/platform/graphics/filters/FELighting.h: Remove unneeded
|
||||||
|
declarations for the getPowerCoefficients() and platformApplyNeon()
|
||||||
|
functions, which are now defined elsewhere; and were causing a build
|
||||||
|
failure due to usage of the protected LightingData type.
|
||||||
|
* Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp:
|
||||||
|
(WebCore::FELightingNeonParallelApplier::applyPlatformParallel const):
|
||||||
|
Add missing LightType:: namespace to uses of LS_POINT and LS_SPOT.
|
||||||
|
|
||||||
|
Canonical link: https://commits.webkit.org/279334@main
|
||||||
|
|
||||||
|
Canonical link: https://commits.webkit.org/274313.261@webkitglib/2.44
|
||||||
|
|
||||||
|
Signed-off-by: Adrian Perez de Castro <aperez@igalia.com>
|
||||||
|
Upstream: https://github.com/WebKit/WebKit/commit/8863ceb3c8486f31e1ccfcd2c7c602fad9feac52
|
||||||
|
---
|
||||||
|
.../cpu/arm/filters/FELightingNeonParallelApplier.cpp | 4 ++--
|
||||||
|
Source/WebCore/platform/graphics/filters/FELighting.h | 5 -----
|
||||||
|
2 files changed, 2 insertions(+), 7 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp
|
||||||
|
index 04d855fa6d71..5f4250d87b61 100644
|
||||||
|
--- a/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp
|
||||||
|
+++ b/Source/WebCore/platform/graphics/cpu/arm/filters/FELightingNeonParallelApplier.cpp
|
||||||
|
@@ -542,14 +542,14 @@ void FELightingNeonParallelApplier::applyPlatformParallel(const LightingData& da
|
||||||
|
floatArguments.colorBlue = color.blue;
|
||||||
|
floatArguments.padding4 = 0;
|
||||||
|
|
||||||
|
- if (data.lightSource->type() == LS_POINT) {
|
||||||
|
+ if (data.lightSource->type() == LightType::LS_POINT) {
|
||||||
|
neonData.flags |= FLAG_POINT_LIGHT;
|
||||||
|
auto& pointLightSource = downcast<PointLightSource>(*data.lightSource);
|
||||||
|
floatArguments.lightX = pointLightSource.position().x();
|
||||||
|
floatArguments.lightY = pointLightSource.position().y();
|
||||||
|
floatArguments.lightZ = pointLightSource.position().z();
|
||||||
|
floatArguments.padding2 = 0;
|
||||||
|
- } else if (data.lightSource->type() == LS_SPOT) {
|
||||||
|
+ } else if (data.lightSource->type() == LightType::LS_SPOT) {
|
||||||
|
neonData.flags |= FLAG_SPOT_LIGHT;
|
||||||
|
auto& spotLightSource = downcast<SpotLightSource>(*data.lightSource);
|
||||||
|
floatArguments.lightX = spotLightSource.position().x();
|
||||||
|
diff --git a/Source/WebCore/platform/graphics/filters/FELighting.h b/Source/WebCore/platform/graphics/filters/FELighting.h
|
||||||
|
index 4efab920b1c3..dcd80b6f42b7 100644
|
||||||
|
--- a/Source/WebCore/platform/graphics/filters/FELighting.h
|
||||||
|
+++ b/Source/WebCore/platform/graphics/filters/FELighting.h
|
||||||
|
@@ -68,11 +68,6 @@ protected:
|
||||||
|
|
||||||
|
std::unique_ptr<FilterEffectApplier> createSoftwareApplier() const override;
|
||||||
|
|
||||||
|
-#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC_COMPATIBLE)
|
||||||
|
- static int getPowerCoefficients(float exponent);
|
||||||
|
- inline void platformApplyNeon(const LightingData&, const LightSource::PaintingData&);
|
||||||
|
-#endif
|
||||||
|
-
|
||||||
|
Color m_lightingColor;
|
||||||
|
float m_surfaceScale;
|
||||||
|
float m_diffuseConstant;
|
||||||
|
--
|
||||||
|
2.45.2
|
||||||
|
|
||||||
Reference in New Issue
Block a user