git: 19a4869d66f5 - main - OpenSSL: aes/asm/bsaes-armv7.pl: Replace adrl with add

From: Kornel Dulęba <kd_at_FreeBSD.org>
Date: Tue, 21 Mar 2023 19:05:03 UTC
The branch main has been updated by kd:

URL: https://cgit.FreeBSD.org/src/commit/?id=19a4869d66f59bf37cf42f657dcfad7c431784bf

commit 19a4869d66f59bf37cf42f657dcfad7c431784bf
Author:     Kornel Dulęba <kd@FreeBSD.org>
AuthorDate: 2023-03-21 17:18:59 +0000
Commit:     Kornel Dulęba <kd@FreeBSD.org>
CommitDate: 2023-03-21 19:04:04 +0000

    OpenSSL: aes/asm/bsaes-armv7.pl: Replace adrl with add
    
    "adrl" is a pseudo-instruction used to calculate an address relative
    to PC. It's not recognized by clang resulting in a compilation error.
    I've stumbled upon it when trying to integrate the bsaes-armv7 assmebly
    logic into FreeBSD kernel, which uses clang as it's default compiler.
    Note that this affect the build only if BSAES_ASM_EXTENDED_KEY is
    defined, which is not the default option in OpenSSL.
    
    The solution here is to replace it with an add instruction.
    This mimics what has already been done in !BSAES_ASM_EXTENDED_KEY logic.
    Because of that I've marked this as trivial CLA.
    
    No objections from: jkim
    Obtained from: OpenSSL commit 27093ba73372935fe4ef91d0a45ce6ea90a1ac8e
    Differential Revision:  https://reviews.freebsd.org/D39091
---
 crypto/openssl/crypto/aes/asm/bsaes-armv7.pl | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl b/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl
index 2b9f241ce8b0..e2a84b380940 100755
--- a/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl
+++ b/crypto/openssl/crypto/aes/asm/bsaes-armv7.pl
@@ -1444,7 +1444,7 @@ bsaes_ctr32_encrypt_blocks:
 .align	2
 0:	add	r12, $key, #248
 	vld1.8	{@XMM[0]}, [$ctr]		@ load counter
-	adrl	$ctr, .LREVM0SR			@ borrow $ctr
+	add	$ctr, $const, #.LREVM0SR-.LM0	@ borrow $ctr
 	vldmia	r12, {@XMM[4]}			@ load round0 key
 	sub	sp, #0x10			@ place for adjusted round0 key
 #endif