Diff
Modified: trunk/Source/WebCore/ChangeLog (117047 => 117048)
--- trunk/Source/WebCore/ChangeLog 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/ChangeLog 2012-05-15 10:09:31 UTC (rev 117048)
@@ -1,3 +1,26 @@
+2012-05-15 Zoltan Herczeg <[email protected]>
+
+ The ARM NEON optimized filters does not compile on THUMB2
+ https://bugs.webkit.org/show_bug.cgi?id=86457
+
+ Reviewed by Csaba Osztrogonác.
+
+ We should disable the compilation on Thumb2 until we fix the code.
+
+ * platform/graphics/filters/FEComposite.cpp:
+ (WebCore::FEComposite::platformArithmeticSoftware):
+ * platform/graphics/filters/FEGaussianBlur.cpp:
+ (WebCore::FEGaussianBlur::platformApplyWorker):
+ (WebCore::FEGaussianBlur::platformApply):
+ * platform/graphics/filters/FELighting.cpp:
+ (WebCore::FELighting::platformApply):
+ * platform/graphics/filters/arm/FECompositeArithmeticNEON.cpp:
+ * platform/graphics/filters/arm/FECompositeArithmeticNEON.h:
+ * platform/graphics/filters/arm/FEGaussianBlurNEON.cpp:
+ * platform/graphics/filters/arm/FEGaussianBlurNEON.h:
+ * platform/graphics/filters/arm/FELightingNEON.cpp:
+ * platform/graphics/filters/arm/FELightingNEON.h:
+
2012-05-15 MORITA Hajime <[email protected]>
Kill unnecessary RuntimeEnabledFeatures.h inclusion
Modified: trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/FEComposite.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -185,7 +185,7 @@
int length = source->length();
ASSERT(length == static_cast<int>(destination->length()));
// The selection here eventually should happen dynamically.
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
ASSERT(!(length & 0x3));
float coefficients[4] = { k1, k2, k3, k4 };
platformArithmeticNeon(source->data(), destination->data(), length, coefficients);
Modified: trunk/Source/WebCore/platform/graphics/filters/FEGaussianBlur.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/FEGaussianBlur.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/FEGaussianBlur.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -142,7 +142,7 @@
void FEGaussianBlur::platformApplyWorker(PlatformApplyParameters* parameters)
{
IntSize paintSize(parameters->width, parameters->height);
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
parameters->filter->platformApplyNeon(parameters->srcPixelArray.get(), parameters->dstPixelArray.get(),
parameters->kernelSizeX, parameters->kernelSizeY, paintSize);
#else
@@ -221,7 +221,7 @@
}
// The selection here eventually should happen dynamically on some platforms.
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
platformApplyNeon(srcPixelArray, tmpPixelArray, kernelSizeX, kernelSizeY, paintSize);
#else
platformApplyGeneric(srcPixelArray, tmpPixelArray, kernelSizeX, kernelSizeY, paintSize);
Modified: trunk/Source/WebCore/platform/graphics/filters/FELighting.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/FELighting.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/FELighting.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -283,7 +283,7 @@
inline void FELighting::platformApply(LightingData& data, LightSource::PaintingData& paintingData)
{
// The selection here eventually should happen dynamically on some platforms.
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
platformApplyNeon(data, paintingData);
#else
platformApplyGeneric(data, paintingData);
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -29,7 +29,7 @@
#if ENABLE(FILTERS)
#include "FECompositeArithmeticNEON.h"
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
namespace WebCore {
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.h (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.h 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FECompositeArithmeticNEON.h 2012-05-15 10:09:31 UTC (rev 117048)
@@ -30,7 +30,7 @@
#include <wtf/Platform.h>
#if ENABLE(FILTERS)
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
#include "FEComposite.h"
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -27,7 +27,7 @@
#include "config.h"
#include "FEGaussianBlurNEON.h"
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
#include <wtf/Alignment.h>
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.h (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.h 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FEGaussianBlurNEON.h 2012-05-15 10:09:31 UTC (rev 117048)
@@ -29,7 +29,7 @@
#include <wtf/Platform.h>
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
#include "FEGaussianBlur.h"
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.cpp (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.cpp 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.cpp 2012-05-15 10:09:31 UTC (rev 117048)
@@ -27,7 +27,7 @@
#include "config.h"
#include "FELightingNEON.h"
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
#include <wtf/Alignment.h>
Modified: trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.h (117047 => 117048)
--- trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.h 2012-05-15 10:04:49 UTC (rev 117047)
+++ trunk/Source/WebCore/platform/graphics/filters/arm/FELightingNEON.h 2012-05-15 10:09:31 UTC (rev 117048)
@@ -29,7 +29,7 @@
#include <wtf/Platform.h>
-#if CPU(ARM_NEON) && COMPILER(GCC)
+#if CPU(ARM_NEON) && CPU(ARM_TRADITIONAL) && COMPILER(GCC)
#include "FELighting.h"
#include <wtf/Alignment.h>