aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortomhudson <tomhudson@google.com>2014-12-09 07:09:08 -0800
committerTom Hudson <tomhudson@google.com>2014-12-19 12:21:00 -0500
commit020e13cd605bcc03b00669994e31fef994c63838 (patch)
tree2659257be717833b9b12100459585af974a8613d
parent0908c64a1d63a46b1f78b1b4a32febc20769a92b (diff)
downloadskia-020e13cd605bcc03b00669994e31fef994c63838.tar.gz
Avoid crash on some 64b ARM NEON platforms.
The compiler may choose to use x30 for a local loop counter; ensure it's saved. Patch from kevin.petit@arm.com, verified by benm@google.com. R=djsollen@google.com Review URL: https://codereview.chromium.org/786273003
-rw-r--r--src/opts/SkXfermode_opts_arm_neon.cpp1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/opts/SkXfermode_opts_arm_neon.cpp b/src/opts/SkXfermode_opts_arm_neon.cpp
index dca58eb53..f6fbcd356 100644
--- a/src/opts/SkXfermode_opts_arm_neon.cpp
+++ b/src/opts/SkXfermode_opts_arm_neon.cpp
@@ -824,6 +824,7 @@ void SkNEONProcCoeffXfermode::xfer32(SkPMColor* SK_RESTRICT dst,
*/
"x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9",
"x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18",
+ "x30", /* x30 implicitly clobbered by blr */
"v0", "v1", "v2", "v3", "v4", "v5", "v6", "v7", "v16", "v17",
"v18", "v19", "v20", "v21", "v22", "v23", "v24", "v25", "v26",
"v27", "v28", "v29", "v30", "v31"