aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/opts/SkBlitRow_opts_arm.cpp
diff options
context:
space:
mode:
authorGravatar djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-21 15:27:29 +0000
committerGravatar djsollen@google.com <djsollen@google.com@2bbb7eff-a529-9590-31e7-b0007b416f81>2012-08-21 15:27:29 +0000
commita2efab28cabecb227e604af8667ee7498e926bfd (patch)
tree360c3d96285dc2394717a1d8eed8737743e34ff4 /src/opts/SkBlitRow_opts_arm.cpp
parentdb39996d4639adb9c6027b1dd0349b1981f90353 (diff)
Add check for EDSP to the 565 opaque blitter.
Review URL: https://codereview.appspot.com/6464082 git-svn-id: http://skia.googlecode.com/svn/trunk@5212 2bbb7eff-a529-9590-31e7-b0007b416f81
Diffstat (limited to 'src/opts/SkBlitRow_opts_arm.cpp')
-rw-r--r--src/opts/SkBlitRow_opts_arm.cpp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/opts/SkBlitRow_opts_arm.cpp b/src/opts/SkBlitRow_opts_arm.cpp
index 99cd53eb87..fee2360bf3 100644
--- a/src/opts/SkBlitRow_opts_arm.cpp
+++ b/src/opts/SkBlitRow_opts_arm.cpp
@@ -48,9 +48,15 @@ static void S32A_D565_Opaque(uint16_t* SK_RESTRICT dst,
"ubfx r5, r4, #5, #6 \n\t"
"pld [r0, #16] \n\t"
"lsr r4, r4, #11 \n\t"
+#ifdef SK_ARM_HAS_EDSP
"smulbb r6, r6, r7 \n\t"
"smulbb r5, r5, r7 \n\t"
"smulbb r4, r4, r7 \n\t"
+#else
+ "mul r6, r6, r7 \n\t"
+ "mul r5, r5, r7 \n\t"
+ "mul r4, r4, r7 \n\t"
+#endif
"ubfx r7, r3, #16, #8 \n\t"
"ubfx ip, r3, #8, #8 \n\t"
"and r3, r3, #0xff \n\t"