On Mon, 2 Mar 2020 at 00:37, Stefan Agner <stefan@xxxxxxxx> wrote: > > Building ARMv7 with Clang's integrated assembler leads to errors such > as: > arch/arm/crypto/ghash-ce-core.S:34:11: error: register name expected > t3l .req d16 > ^ > > Since no FPU has selected yet Clang considers d16 not a valid register. > Moving the FPU directive on-top allows Clang to parse the registers and > allows to successfully build this file with Clang's integrated assembler. > > Signed-off-by: Stefan Agner <stefan@xxxxxxxx> Acked-by: Ard Biesheuvel <ardb@xxxxxxxxxx> > --- > arch/arm/crypto/ghash-ce-core.S | 5 +++-- > 1 file changed, 3 insertions(+), 2 deletions(-) > > diff --git a/arch/arm/crypto/ghash-ce-core.S b/arch/arm/crypto/ghash-ce-core.S > index 534c9647726d..9f51e3fa4526 100644 > --- a/arch/arm/crypto/ghash-ce-core.S > +++ b/arch/arm/crypto/ghash-ce-core.S > @@ -8,6 +8,9 @@ > #include <linux/linkage.h> > #include <asm/assembler.h> > > + .arch armv8-a > + .fpu crypto-neon-fp-armv8 > + > SHASH .req q0 > T1 .req q1 > XL .req q2 > @@ -88,8 +91,6 @@ > T3_H .req d17 > > .text > - .arch armv8-a > - .fpu crypto-neon-fp-armv8 > > .macro __pmull_p64, rd, rn, rm, b1, b2, b3, b4 > vmull.p64 \rd, \rn, \rm > -- > 2.25.1 >