|
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 */ |