aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorStuart Menefy <stuart.menefy@st.com>2007-11-02 12:14:09 +0900
committerPaul Mundt <lethal@linux-sh.org>2007-11-02 12:14:09 +0900
commit0e670685e4925930000a678c74eb1cbf23b415fa (patch)
tree49df41f99ede80730c4262efdebd3e802d735d2c /arch
parentsh: Clean up SR.RB Kconfig mess. (diff)
downloadlinux-dev-0e670685e4925930000a678c74eb1cbf23b415fa.tar.xz
linux-dev-0e670685e4925930000a678c74eb1cbf23b415fa.zip
sh: Fix optimized __copy_user() movca.l usage.
movca.l is restricted to SH-4 and up only, though compilers that are unable to support ISA tuning (especially older versions of binutils) will happily compile in the bogus opcode on older parts. Conditionalize it to fix SH-3 regressions noted by Kristoffer. Signed-off-by: Stuart Menefy <stuart.menefy@st.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch')
-rw-r--r--arch/sh/mm/copy_page.S4
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/sh/mm/copy_page.S b/arch/sh/mm/copy_page.S
index a81dbdb05596..3d8409daa4be 100644
--- a/arch/sh/mm/copy_page.S
+++ b/arch/sh/mm/copy_page.S
@@ -255,7 +255,11 @@ EX( mov.l @r5+,r8 )
EX( mov.l @r5+,r9 )
EX( mov.l @r5+,r10 )
EX( mov.l @r5+,r11 )
+#ifdef CONFIG_CPU_SH4
EX( movca.l r0,@r4 )
+#else
+EX( mov.l r0,@r4 )
+#endif
add #-32, r6
EX( mov.l r1,@(4,r4) )
mov #32, r0