arm-opts.patch (1870B)
1 diff --git a/gfx/skia/src/opts/SkBlitRow_opts_arm.cpp b/gfx/skia/src/opts/SkBlitRow_opts_arm.cpp 2 --- a/gfx/skia/src/opts/SkBlitRow_opts_arm.cpp 3 +++ b/gfx/skia/src/opts/SkBlitRow_opts_arm.cpp 4 @@ -549,17 +549,17 @@ static void S32A_Opaque_BlitRow32_neon(S 5 #define S32A_Opaque_BlitRow32_PROC S32A_Opaque_BlitRow32_neon 6 7 #else 8 9 #ifdef TEST_SRC_ALPHA 10 #error The ARM asm version of S32A_Opaque_BlitRow32 does not support TEST_SRC_ALPHA 11 #endif 12 13 -static void S32A_Opaque_BlitRow32_arm(SkPMColor* SK_RESTRICT dst, 14 +static void __attribute((noinline,optimize("-fomit-frame-pointer"))) S32A_Opaque_BlitRow32_arm(SkPMColor* SK_RESTRICT dst, 15 const SkPMColor* SK_RESTRICT src, 16 int count, U8CPU alpha) { 17 18 SkASSERT(255 == alpha); 19 20 /* Does not support the TEST_SRC_ALPHA case */ 21 asm volatile ( 22 "cmp %[count], #0 \n\t" /* comparing count with 0 */ 23 @@ -646,17 +646,17 @@ static void S32A_Opaque_BlitRow32_arm(Sk 24 ); 25 } 26 #define S32A_Opaque_BlitRow32_PROC S32A_Opaque_BlitRow32_arm 27 #endif 28 29 /* 30 * ARM asm version of S32A_Blend_BlitRow32 31 */ 32 -static void S32A_Blend_BlitRow32_arm(SkPMColor* SK_RESTRICT dst, 33 +static void __attribute((noinline,optimize("-fomit-frame-pointer"))) S32A_Blend_BlitRow32_arm(SkPMColor* SK_RESTRICT dst, 34 const SkPMColor* SK_RESTRICT src, 35 int count, U8CPU alpha) { 36 asm volatile ( 37 "cmp %[count], #0 \n\t" /* comparing count with 0 */ 38 "beq 3f \n\t" /* if zero exit */ 39 40 "mov r12, #0xff \n\t" /* load the 0xff mask in r12 */ 41 "orr r12, r12, r12, lsl #16 \n\t" /* convert it to 0xff00ff in r12 */