-
-
Notifications
You must be signed in to change notification settings - Fork 11.1k
Closed
Labels
branch: 3.1Applies to openssl-3.1 (EOL)Applies to openssl-3.1 (EOL)branch: masterApplies to master branchApplies to master branchhelp wantedtriaged: bugThe issue/pr is/fixes a bugThe issue/pr is/fixes a bug
Description
#19364 added vector asm for LoongArch, but actual upstream support for these instructions didn't appear until about a week ago (binutils commit, LLVM patch). We need to gate the asm on assembler support perhaps.
Steps to reproduce:
./Configure linux64-loongarch64
makeError:
crypto/aes/vpaes-loongarch64.S: Assembler messages:
crypto/aes/vpaes-loongarch64.S:24: Error: no match insn: vori.b $vr1,$vr9,0
crypto/aes/vpaes-loongarch64.S:26: Error: no match insn: vld $vr2,$r12,0
crypto/aes/vpaes-loongarch64.S:27: Error: no match insn: vandn.v $vr1,$vr1,$vr0
crypto/aes/vpaes-loongarch64.S:28: Error: no match insn: vld $vr5,$r9,0
crypto/aes/vpaes-loongarch64.S:29: Error: no match insn: vsrli.w $vr1,$vr1,4
crypto/aes/vpaes-loongarch64.S:30: Error: no match insn: vand.v $vr0,$vr0,$vr9
crypto/aes/vpaes-loongarch64.S:31: Error: no match insn: vshuf.b $vr2,$vr0,$vr2,$vr0
crypto/aes/vpaes-loongarch64.S:32: Error: no match insn: vld $vr0,$r12,16
crypto/aes/vpaes-loongarch64.S:33: Error: no match insn: vshuf.b $vr0,$vr1,$vr0,$vr1
crypto/aes/vpaes-loongarch64.S:34: Error: no match insn: vxor.v $vr2,$vr2,$vr5
crypto/aes/vpaes-loongarch64.S:36: Error: no match insn: vxor.v $vr0,$vr0,$vr2
[lots of similar messages omitted]
Config dump:
Details
Command line (with current working directory = .):
/usr/bin/perl ./Configure linux64-loongarch64
Perl information:
/usr/bin/perl
5.36.1 for loongarch64-linux
Enabled features:
afalgeng
apps
argon2
aria
asm
async
autoalginit
autoerrinit
autoload-config
bf
blake2
bulk
cached-fetch
camellia
capieng
cast
chacha
cmac
cmp
cms
comp
ct
default-thread-pool
deprecated
des
dgram
dh
docs
dsa
dso
dtls
dynamic-engine
ec
ec2m
ecdh
ecdsa
ecx
engine
err
filenames
gost
http
idea
legacy
loadereng
makedepend
md4
mdc2
module
multiblock
nextprotoneg
ocb
ocsp
padlockeng
pic
pinshared
poly1305
posix-io
psk
rc2
rc4
rdrand
rfc3779
rmd160
scrypt
secure-memory
seed
shared
siphash
siv
sm2
sm3
sm4
sock
srp
srtp
sse2
ssl
ssl-trace
static-engine
stdio
tests
thread-pool
threads
tls
ts
ui-console
whirlpool
tls1
tls1-method
tls1_1
tls1_1-method
tls1_2
tls1_2-method
tls1_3
dtls1
dtls1-method
dtls1_2
dtls1_2-method
Disabled features:
acvp-tests [cascade] OPENSSL_NO_ACVP_TESTS
asan [default] OPENSSL_NO_ASAN
brotli [default] OPENSSL_NO_BROTLI
brotli-dynamic [default] OPENSSL_NO_BROTLI_DYNAMIC
buildtest-c++ [default]
winstore [not-windows] OPENSSL_NO_WINSTORE
crypto-mdebug [default] OPENSSL_NO_CRYPTO_MDEBUG
devcryptoeng [default] OPENSSL_NO_DEVCRYPTOENG
ec_nistp_64_gcc_128 [default] OPENSSL_NO_EC_NISTP_64_GCC_128
egd [default] OPENSSL_NO_EGD
external-tests [default] OPENSSL_NO_EXTERNAL_TESTS
fips [default]
fips-securitychecks [cascade] OPENSSL_NO_FIPS_SECURITYCHECKS
fuzz-afl [default] OPENSSL_NO_FUZZ_AFL
fuzz-libfuzzer [default] OPENSSL_NO_FUZZ_LIBFUZZER
ktls [default] OPENSSL_NO_KTLS
md2 [default] OPENSSL_NO_MD2 (skip crypto/md2)
msan [default] OPENSSL_NO_MSAN
quic [default] OPENSSL_NO_QUIC
rc5 [default] OPENSSL_NO_RC5 (skip crypto/rc5)
sctp [default] OPENSSL_NO_SCTP
tfo [default] OPENSSL_NO_TFO
trace [default] OPENSSL_NO_TRACE
ubsan [default] OPENSSL_NO_UBSAN
unit-test [default] OPENSSL_NO_UNIT_TEST
uplink [no uplink_arch] OPENSSL_NO_UPLINK
weak-ssl-ciphers [default] OPENSSL_NO_WEAK_SSL_CIPHERS
zlib [default] OPENSSL_NO_ZLIB
zlib-dynamic [default] OPENSSL_NO_ZLIB_DYNAMIC
zstd [default] OPENSSL_NO_ZSTD
zstd-dynamic [default] OPENSSL_NO_ZSTD_DYNAMIC
ssl3 [default] OPENSSL_NO_SSL3
ssl3-method [default] OPENSSL_NO_SSL3_METHOD
Config target attributes:
AR => "ar",
ARFLAGS => "qc",
CC => "gcc",
CFLAGS => "-Wall -O3",
CXX => "g++",
CXXFLAGS => "-Wall -O3",
HASHBANGPERL => "/usr/bin/env perl",
RANLIB => "ranlib",
RC => "windres",
asm_arch => "loongarch64",
bn_ops => "SIXTY_FOUR_BIT_LONG RC4_CHAR",
build_file => "Makefile",
build_scheme => [ "unified", "unix" ],
cflags => "-pthread",
cppflags => "",
cxxflags => "-std=c++11 -pthread",
defines => [ "OPENSSL_BUILDING_OPENSSL" ],
disable => [ ],
dso_ldflags => "-Wl,-z,defs",
dso_scheme => "dlfcn",
enable => [ "afalgeng" ],
ex_libs => "-ldl -pthread",
includes => [ ],
lflags => "",
lib_cflags => "",
lib_cppflags => "-DOPENSSL_USE_NODELETE",
lib_defines => [ ],
module_cflags => "-fPIC",
module_cxxflags => undef,
module_ldflags => "-Wl,-znodelete -shared -Wl,-Bsymbolic",
perl_platform => "Unix",
perlasm_scheme => "linux64",
shared_cflag => "-fPIC",
shared_defflag => "-Wl,--version-script=",
shared_defines => [ ],
shared_ldflag => "-Wl,-znodelete -shared -Wl,-Bsymbolic",
shared_rcflag => "",
shared_sonameflag => "-Wl,-soname=",
shared_target => "linux-shared",
thread_defines => [ ],
thread_scheme => "pthreads",
unistd => "<unistd.h>",
Recorded environment:
AR =
ARFLAGS =
AS =
ASFLAGS =
BUILDFILE =
CC =
CFLAGS =
CPP =
CPPDEFINES =
CPPFLAGS =
CPPINCLUDES =
CROSS_COMPILE =
CXX =
CXXFLAGS =
HASHBANGPERL =
LD =
LDFLAGS =
LDLIBS =
MT =
MTFLAGS =
OPENSSL_LOCAL_CONFIG_DIR =
PERL =
RANLIB =
RC =
RCFLAGS =
RM =
WINDRES =
__CNF_CFLAGS =
__CNF_CPPDEFINES =
__CNF_CPPFLAGS =
__CNF_CPPINCLUDES =
__CNF_CXXFLAGS =
__CNF_LDFLAGS =
__CNF_LDLIBS =
Makevars:
AR = ar
ARFLAGS = qc
ASFLAGS =
CC = gcc
CFLAGS = -Wall -O3
CPPDEFINES =
CPPFLAGS =
CPPINCLUDES =
CXX = g++
CXXFLAGS = -Wall -O3
HASHBANGPERL = /usr/bin/env perl
LDFLAGS =
LDLIBS =
PERL = /usr/bin/perl
RANLIB = ranlib
RC = windres
RCFLAGS =
NOTE: These variables only represent the configuration view. The build file
template may have processed these variables further, please have a look at the
build file for more exact data:
Makefile
build file:
Makefile
build file templates:
Configurations/common0.tmpl
Configurations/unix-Makefile.tmpl
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
branch: 3.1Applies to openssl-3.1 (EOL)Applies to openssl-3.1 (EOL)branch: masterApplies to master branchApplies to master branchhelp wantedtriaged: bugThe issue/pr is/fixes a bugThe issue/pr is/fixes a bug