aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar djsollen <djsollen@google.com>2014-09-03 13:38:32 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2014-09-03 13:38:32 -0700
commit6233c7b2d3f0b5dcc331e88d8029523bdf08217a (patch)
treeadccf6f3b9ac3da5832e2acca28d5b3ed1c87d26
parent0c88d8233ba3a8baa9b4dd6ef515def6b3749980 (diff)
Revert to enabling all of -O2 as it exposes a bug in the toolchain.
Instead as a workaround we will temporarily disable tiling the few GMs that produce errors with the existing 64-bit ARM toolchain. BUG=skia:2908 R=mtklein@google.com Author: djsollen@google.com Review URL: https://codereview.chromium.org/537713002
-rw-r--r--gm/bitmaprect.cpp7
-rw-r--r--gm/resizeimagefilter.cpp7
-rw-r--r--gm/tilemodes_scaled.cpp7
-rw-r--r--gyp/common_conditions.gypi7
4 files changed, 21 insertions, 7 deletions
diff --git a/gm/bitmaprect.cpp b/gm/bitmaprect.cpp
index 8b292837f3..badffb9a93 100644
--- a/gm/bitmaprect.cpp
+++ b/gm/bitmaprect.cpp
@@ -45,6 +45,13 @@ protected:
return SkISize::Make(640, 480);
}
+#ifdef SK_CPU_ARM64
+ // Skip tiled drawing on 64-bit ARM until https://skbug.com/2908 is fixed.
+ virtual uint32_t onGetFlags() const SK_OVERRIDE {
+ return kSkipTiled_Flag;
+ }
+#endif
+
virtual void onDraw(SkCanvas* canvas) SK_OVERRIDE {
canvas->drawColor(0xFFCCCCCC);
diff --git a/gm/resizeimagefilter.cpp b/gm/resizeimagefilter.cpp
index e87dff0d35..bb09e0b079 100644
--- a/gm/resizeimagefilter.cpp
+++ b/gm/resizeimagefilter.cpp
@@ -25,6 +25,13 @@ protected:
return SkString("resizeimagefilter");
}
+#ifdef SK_CPU_ARM64
+ // Skip tiled drawing on 64-bit ARM until https://skbug.com/2908 is fixed.
+ virtual uint32_t onGetFlags() const SK_OVERRIDE {
+ return kSkipTiled_Flag;
+ }
+#endif
+
void draw(SkCanvas* canvas,
const SkRect& rect,
const SkSize& deviceSize,
diff --git a/gm/tilemodes_scaled.cpp b/gm/tilemodes_scaled.cpp
index 360539ca49..93a3db3f90 100644
--- a/gm/tilemodes_scaled.cpp
+++ b/gm/tilemodes_scaled.cpp
@@ -73,6 +73,13 @@ protected:
return name;
}
+#ifdef SK_CPU_ARM64
+ // Skip tiled drawing on 64-bit ARM until https://skbug.com/2908 is fixed.
+ virtual uint32_t onGetFlags() const SK_OVERRIDE {
+ return kSkipTiled_Flag;
+ }
+#endif
+
SkISize onISize() { return SkISize::Make(880, 760); }
virtual void onOnceBeforeDraw() SK_OVERRIDE {
diff --git a/gyp/common_conditions.gypi b/gyp/common_conditions.gypi
index 0075b250ea..aa6da5160f 100644
--- a/gyp/common_conditions.gypi
+++ b/gyp/common_conditions.gypi
@@ -240,13 +240,6 @@
'-fno-omit-frame-pointer',
],
}],
- [ 'skia_arch_type == "arm64"', {
- # this flag causes tiling errors with GCC 4.9 (pre-release) toolchain
- # see skbug.com/
- 'cflags': [
- '-fno-expensive-optimizations'
- ],
- }],
[ 'skia_arch_type == "arm" and arm_thumb == 1', {
'cflags': [
'-mthumb',