crypto: arm/ghash-ce - define fpu before fpu registers are referenced
authorStefan Agner <stefan@agner.ch>
Sun, 1 Mar 2020 23:37:14 +0000 (00:37 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Fri, 6 Mar 2020 01:28:25 +0000 (12:28 +1100)
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@agner.ch>
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Acked-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/arm/crypto/ghash-ce-core.S

index 534c9647726ddf1bb035ffd96d5630db769f3657..9f51e3fa45268de9a80b0b2a35cee13750957ad0 100644 (file)
@@ -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