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)
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;
}
};