Resolve assembler complains when including loongarch_arch.h
authorMin Zhou <zhoumin@loongson.cn>
Fri, 25 Aug 2023 10:02:47 +0000 (18:02 +0800)
committerTomas Mraz <tomas@openssl.org>
Mon, 28 Aug 2023 07:59:59 +0000 (09:59 +0200)
The assembler will complain when we include loongarch_arch.h in
an assembly file as following:

crypto/loongarch_arch.h: Assembler messages:
crypto/loongarch_arch.h:12: Fatal error: no match insn: extern unsigned int OPENSSL_loongarch_hwcap_P

So, the sentence of `extern unsigned int OPENSSL_loongarch_hwcap_P`
should be guarded with "#ifndef __ASSEMBLER__".

Fixes #21838.

Signed-off-by: Min Zhou <zhoumin@loongson.cn>
Reviewed-by: Hugo Landau <hlandau@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/21839)

(cherry picked from commit 84a0b1b169197e3afdadcdafc9fea65361ff672f)

crypto/loongarch_arch.h

index 186377acc61a3ae34a867cc8f4ca74638e49f4e1..c7fd42df1e0a8af404aac6e0103f1dbbeaa79bc3 100644 (file)
@@ -9,7 +9,10 @@
 #ifndef OSSL_CRYPTO_LOONGARCH_ARCH_H
 # define OSSL_CRYPTO_LOONGARCH_ARCH_H
 
+# ifndef __ASSEMBLER__
 extern unsigned int OPENSSL_loongarch_hwcap_P;
+# endif
+
 # define LOONGARCH_HWCAP_LSX  (1 << 4)
 # define LOONGARCH_HWCAP_LASX (1 << 5)