summaryrefslogtreecommitdiffstats
path: root/arch/powerpc/lib/copyuser_64.S
diff options
context:
space:
mode:
authorNicholas Piggin <npiggin@gmail.com>2018-02-21 05:08:26 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2018-04-01 00:47:49 +1100
commit15a3204d24a3c01b116fb7c0692b7c670cac631d (patch)
treec5f46ce738a1044d00b647f0d967c336cc303c62 /arch/powerpc/lib/copyuser_64.S
parentd50614fa45760f5ec1772509625e1bf4abe5d052 (diff)
downloadop-kernel-dev-15a3204d24a3c01b116fb7c0692b7c670cac631d.zip
op-kernel-dev-15a3204d24a3c01b116fb7c0692b7c670cac631d.tar.gz
powerpc/64s: Set assembler machine type to POWER4
Rather than override the machine type in .S code (which can hide wrong or ambiguous code generation for the target), set the type to power4 for all assembly. This also means we need to be careful not to build power4-only code when we're not building for Book3S, such as the "power7" versions of copyuser/page/memcpy. Signed-off-by: Nicholas Piggin <npiggin@gmail.com> [mpe: Fix Book3E build, don't build the "power7" variants for non-Book3S] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch/powerpc/lib/copyuser_64.S')
-rw-r--r--arch/powerpc/lib/copyuser_64.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/lib/copyuser_64.S b/arch/powerpc/lib/copyuser_64.S
index 08da06e..5066773 100644
--- a/arch/powerpc/lib/copyuser_64.S
+++ b/arch/powerpc/lib/copyuser_64.S
@@ -20,11 +20,13 @@
.align 7
_GLOBAL_TOC(__copy_tofrom_user)
+#ifdef CONFIG_PPC_BOOK3S_64
BEGIN_FTR_SECTION
nop
FTR_SECTION_ELSE
b __copy_tofrom_user_power7
ALT_FTR_SECTION_END_IFCLR(CPU_FTR_VMX_COPY)
+#endif
_GLOBAL(__copy_tofrom_user_base)
/* first check for a whole page copy on a page boundary */
cmpldi cr1,r5,16
OpenPOWER on IntegriCloud