]> git.ipfire.org Git - thirdparty/openssl.git/commitdiff
aes-gcm-avx512.pl: Fixed mingw64 build
authorAndrey Matyukov <andrey.matyukov@intel.com>
Thu, 10 Mar 2022 21:27:33 +0000 (14:27 -0700)
committerTomas Mraz <tomas@openssl.org>
Mon, 14 Mar 2022 16:08:27 +0000 (17:08 +0100)
Decoration prefix for some assembler labels in aes-gcm-avx512.pl was
fixed for mingw64 build.

Reviewed-by: Matt Caswell <matt@openssl.org>
Reviewed-by: Tomas Mraz <tomas@openssl.org>
(Merged from https://github.com/openssl/openssl/pull/17868)

crypto/modes/asm/aes-gcm-avx512.pl
crypto/perlasm/x86_64-xlate.pl

index 1c7ee8769aab1170fca2144641323e1ff19ebcad..a154f9a5ab703ddaf29250650e250ddb463d1b4a 100644 (file)
@@ -4767,7 +4767,7 @@ ___
 .align  8
 .L${func_name}_seh_info:
     .byte   1   # version 1, no flags
-    .byte   \$L\$${func_name}_seh_prolog_end-\$L\$${func_name}_seh_begin
+    .byte   .L${func_name}_seh_prolog_end-.L${func_name}_seh_begin
     .byte   31 # num_slots = 1*8 + 2 + 1 + 2*10
     # FR = rbp; Offset from RSP = $XMM_STORAGE scaled on 16
     .byte   @{[$UWOP_REG_NUMBER{rbp} | (($XMM_STORAGE / 16 ) << 4)]}
@@ -4780,7 +4780,7 @@ ___
       # Scaled-by-16 stack offset
       my $xmm_reg_offset = ($reg_idx - 6);
       $code .= <<___;
-    .byte   \$L\$${func_name}_seh_save_xmm${reg_idx}-\$L\$${func_name}_seh_begin
+    .byte   .L${func_name}_seh_save_xmm${reg_idx}-.L${func_name}_seh_begin
     .byte   @{[$UWOP_SAVE_XMM128 | (${reg_idx} << 4)]}
     .value  $xmm_reg_offset
 ___
@@ -4788,11 +4788,11 @@ ___
 
     $code .= <<___;
     # Frame pointer (occupy 1 slot)
-    .byte   \$L\$${func_name}_seh_setfp-\$L\$${func_name}_seh_begin
+    .byte   .L${func_name}_seh_setfp-.L${func_name}_seh_begin
     .byte   $UWOP_SET_FPREG
 
     # Occupy 2 slots, as stack allocation < 512K, but > 128 bytes
-    .byte   \$L\$${func_name}_seh_allocstack_xmm-\$L\$${func_name}_seh_begin
+    .byte   .L${func_name}_seh_allocstack_xmm-.L${func_name}_seh_begin
     .byte   $UWOP_ALLOC_LARGE
     .value  `($XMM_STORAGE + 8) / 8`
 ___
@@ -4801,7 +4801,7 @@ ___
     # Occupy 1 slot each
     foreach my $reg ("rsi", "rdi", "r15", "r14", "r13", "r12", "rbp", "rbx") {
       $code .= <<___;
-    .byte   \$L\$${func_name}_seh_push_${reg}-\$L\$${func_name}_seh_begin
+    .byte   .L${func_name}_seh_push_${reg}-.L${func_name}_seh_begin
     .byte   @{[$UWOP_PUSH_NONVOL | ($UWOP_REG_NUMBER{$reg} << 4)]}
 ___
     }
index 1830b255659955a2d3af553b5954eab4237f002e..eab46502d06a3178e5aaf50243ef2d4ed3b7ce6a 100755 (executable)
@@ -811,7 +811,7 @@ my %globals;
                                    }
                                    last;
                                  };
-               /\.rva|\.long|\.quad/
+               /\.rva|\.long|\.quad|\.byte/
                            && do { $$line =~ s/([_a-z][_a-z0-9]*)/$globals{$1} or $1/gei;
                                    $$line =~ s/\.L/$decor/g;
                                    last;