Title: [117048] trunk/Source/WebCore
Revision
117048
Author
[email protected]
Date
2012-05-15 03:09:31 -0700 (Tue, 15 May 2012)

Log Message

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:

Modified Paths

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>
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to