commit 3797e05de28ab07bb522898cbf022bdf67a71c99 Author: Brent Cook Date: Sun Feb 4 22:53:59 2024 -0600 align read-only sections on masm/windows to 64 bytes Avoid conflicts where alignment is specified later in the underlying assembly. diff --git a/src/lib/libcrypto/perlasm/x86_64-xlate.pl b/src/lib/libcrypto/perlasm/x86_64-xlate.pl index 5dbed2a8c..d8b607b5c 100755 --- a/src/lib/libcrypto/perlasm/x86_64-xlate.pl +++ b/src/lib/libcrypto/perlasm/x86_64-xlate.pl @@ -567,7 +567,15 @@ my %globals; $v.="$line\tSEGMENT"; if ($line=~/\.([prx])data/) { $v.=" READONLY"; - $v.=" ALIGN(".($1 eq "p" ? 4 : 8).")" if ($masm>=$masmref); + if ($masm>=$masmref) { + if ($1 eq "r") { + $v.=" ALIGN(64)"; + } elsif ($1 eq "p") { + $v.=" ALIGN(4)"; + } else { + $v.=" ALIGN(8)"; + } + } } elsif ($line=~/\.CRT\$/i) { $v.=" READONLY "; $v.=$masm>=$masmref ? "ALIGN(8)" : "DWORD";