crypto: x86/aegis128 - Use RIP-relative addressing
authorArd Biesheuvel <ardb@kernel.org>
Wed, 12 Apr 2023 11:00:23 +0000 (13:00 +0200)
committerHerbert Xu <herbert@gondor.apana.org.au>
Thu, 20 Apr 2023 10:20:04 +0000 (18:20 +0800)
Prefer RIP-relative addressing where possible, which removes the need
for boot time relocation fixups.

Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/x86/crypto/aegis128-aesni-asm.S

index cdf3215..ad7f4c8 100644 (file)
@@ -201,8 +201,8 @@ SYM_FUNC_START(crypto_aegis128_aesni_init)
        movdqa KEY, STATE4
 
        /* load the constants: */
-       movdqa .Laegis128_const_0, STATE2
-       movdqa .Laegis128_const_1, STATE1
+       movdqa .Laegis128_const_0(%rip), STATE2
+       movdqa .Laegis128_const_1(%rip), STATE1
        pxor STATE2, STATE3
        pxor STATE1, STATE4
 
@@ -682,7 +682,7 @@ SYM_TYPED_FUNC_START(crypto_aegis128_aesni_dec_tail)
        punpcklbw T0, T0
        punpcklbw T0, T0
        punpcklbw T0, T0
-       movdqa .Laegis128_counter, T1
+       movdqa .Laegis128_counter(%rip), T1
        pcmpgtb T1, T0
        pand T0, MSG