diff options
author | Alexandr Nedvedicky <sashan@openssl.org> | 2025-01-15 16:41:33 +0100 |
---|---|---|
committer | Tomas Mraz <tomas@openssl.org> | 2025-01-17 17:43:39 +0100 |
commit | 42aced5c9f0d7b5c90eecc3684b76762d7f64886 (patch) | |
tree | 680452bf719d9b21dc8a2e0900a633b762fb8f5f /crypto/perlasm/arm-xlate.pl | |
parent | Move rodata to .rodata section for armv8 (diff) | |
download | openssl-42aced5c9f0d7b5c90eecc3684b76762d7f64886.tar.xz openssl-42aced5c9f0d7b5c90eecc3684b76762d7f64886.zip |
Work around to get llvm-mingw working on aarch64
It looks like llvm-mingw tool chain does not understand `.previous` asm
directive (see https://sourceware.org/binutils/docs/as/Previous.html).
As a workaround for win64 flavor (llvm-mingw toolchain) we let xlate
to emit .text instead of emitting .previous.
We also need to revisit usage of win64 flavor here in aarch64. We should
perhaps introduce a mingw flavour on aarch64 as well. win assembly
flavour should be used for microsoft assembler.
Fixes #26415
Reviewed-by: Tom Cosgrove <tom.cosgrove@arm.com>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/26428)
Diffstat (limited to '')
-rwxr-xr-x | crypto/perlasm/arm-xlate.pl | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/crypto/perlasm/arm-xlate.pl b/crypto/perlasm/arm-xlate.pl index aef9595a5e..e07ce2c5c1 100755 --- a/crypto/perlasm/arm-xlate.pl +++ b/crypto/perlasm/arm-xlate.pl @@ -33,6 +33,15 @@ my $rodata = sub { SWITCH: for ($flavour) { /linux/ && return ".section\t.rodata"; /ios/ && return ".section\t__TEXT,__const"; + /win64/ && return ".section\t.rodata"; + last; + } +}; +my $previous = sub { + SWITCH: for ($flavour) { + /linux/ && return ".previous"; + /ios/ && return ".previous"; + /win64/ && return ".text"; last; } }; |