From: djsollen Date: Wed, 3 Sep 2014 20:38:32 +0000 (-0700) Subject: Revert to enabling all of -O2 as it exposes a bug in the toolchain. X-Git-Tag: submit/tizen/20180928.044319~5954 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=6233c7b2d3f0b5dcc331e88d8029523bdf08217a;p=platform%2Fupstream%2FlibSkiaSharp.git 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 --- 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',