On Sat, Jan 14, 2023 at 09:08:38PM +0100, Theo Buehler wrote:
> This moves constants from .text into .rodata.
> 
> All tests pass, gnupg tests work, gpgme and gcr build.

OK

> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/security/libgcrypt/Makefile,v
> retrieving revision 1.81
> diff -u -p -r1.81 Makefile
> --- Makefile  9 Jan 2023 17:27:49 -0000       1.81
> +++ Makefile  14 Jan 2023 19:53:18 -0000
> @@ -1,7 +1,7 @@
>  COMMENT=             crypto library based on code used in GnuPG
>  
>  DISTNAME=            libgcrypt-1.10.1
> -REVISION=            1
> +REVISION=            2
>  CATEGORIES=          security
>  
>  SHARED_LIBS +=  gcrypt               21.0     # 24.1
> @@ -23,7 +23,9 @@ CONFIGURE_STYLE=    gnu
>  CONFIGURE_ARGS=              --enable-static \
>                       --disable-drng-support
>  
> +.if ${MACHINE_ARCH} != aarch64
>  USE_NOEXECONLY=              Yes
> +.endif
>  
>  DEBUG_PACKAGES=              ${BUILD_PACKAGES}
>  
> Index: patches/patch-cipher_camellia-aarch64_S
> ===================================================================
> RCS file: patches/patch-cipher_camellia-aarch64_S
> diff -N patches/patch-cipher_camellia-aarch64_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_camellia-aarch64_S   14 Jan 2023 19:44:18 -0000
> @@ -0,0 +1,11 @@
> +Index: cipher/camellia-aarch64.S
> +--- cipher/camellia-aarch64.S.orig
> ++++ cipher/camellia-aarch64.S
> +@@ -313,6 +313,7 @@ _gcry_camellia_arm_decrypt_block:
> + .ltorg
> + ELF(.size 
> _gcry_camellia_arm_decrypt_block,.-_gcry_camellia_arm_decrypt_block;)
> + 
> ++.rodata
> + /* Encryption/Decryption tables */
> + ELF(.type  _gcry_camellia_arm_tables,@object;)
> + .balign 32
> Index: patches/patch-cipher_chacha20-aarch64_S
> ===================================================================
> RCS file: patches/patch-cipher_chacha20-aarch64_S
> diff -N patches/patch-cipher_chacha20-aarch64_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_chacha20-aarch64_S   14 Jan 2023 19:44:25 -0000
> @@ -0,0 +1,21 @@
> +Index: cipher/chacha20-aarch64.S
> +--- cipher/chacha20-aarch64.S.orig
> ++++ cipher/chacha20-aarch64.S
> +@@ -36,7 +36,7 @@
> + 
> + .cpu generic+simd
> + 
> +-.text
> ++.rodata
> + 
> + #include "asm-poly1305-aarch64.h"
> + 
> +@@ -192,6 +192,8 @@ _gcry_chacha20_aarch64_blocks4_data_rot8:
> +     .byte 7,4,5,6
> +     .byte 11,8,9,10
> +     .byte 15,12,13,14
> ++
> ++.text
> + 
> + .align 3
> + .globl _gcry_chacha20_aarch64_blocks4
> Index: patches/patch-cipher_cipher-gcm-armv8-aarch64-ce_S
> ===================================================================
> RCS file: patches/patch-cipher_cipher-gcm-armv8-aarch64-ce_S
> diff -N patches/patch-cipher_cipher-gcm-armv8-aarch64-ce_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_cipher-gcm-armv8-aarch64-ce_S        14 Jan 2023 
> 19:27:48 -0000
> @@ -0,0 +1,21 @@
> +Index: cipher/cipher-gcm-armv8-aarch64-ce.S
> +--- cipher/cipher-gcm-armv8-aarch64-ce.S.orig
> ++++ cipher/cipher-gcm-armv8-aarch64-ce.S
> +@@ -25,7 +25,7 @@
> + 
> + .cpu generic+simd+crypto
> + 
> +-.text
> ++.rodata
> + 
> + 
> + /* Constants */
> +@@ -170,6 +170,8 @@ gcry_gcm_reduction_constant:
> +         CFI_ADJUST_CFA_OFFSET(-16); \
> +         ldp d8, d9, [sp], #16; \
> +         CFI_ADJUST_CFA_OFFSET(-16);
> ++
> ++.text
> + 
> + /*
> +  * unsigned int _gcry_ghash_armv8_ce_pmull (void *gcm_key, byte *result,
> Index: patches/patch-cipher_crc-armv8-aarch64-ce_S
> ===================================================================
> RCS file: patches/patch-cipher_crc-armv8-aarch64-ce_S
> diff -N patches/patch-cipher_crc-armv8-aarch64-ce_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_crc-armv8-aarch64-ce_S       14 Jan 2023 19:18:35 
> -0000
> @@ -0,0 +1,20 @@
> +Index: cipher/crc-armv8-aarch64-ce.S
> +--- cipher/crc-armv8-aarch64-ce.S.orig
> ++++ cipher/crc-armv8-aarch64-ce.S
> +@@ -25,7 +25,7 @@
> + 
> + .cpu generic+simd+crypto
> + 
> +-.text
> ++.rodata
> + 
> + 
> + /* Structure of crc32_consts_s */
> +@@ -54,6 +54,7 @@
> +   .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
> +   .byte 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff
> + 
> ++.text
> + 
> + /*
> +  * void _gcry_crc32r_armv8_ce_bulk (u32 *pcrc, const byte *inbuf, size_t 
> inlen,
> Index: patches/patch-cipher_sha1-armv8-aarch64-ce_S
> ===================================================================
> RCS file: patches/patch-cipher_sha1-armv8-aarch64-ce_S
> diff -N patches/patch-cipher_sha1-armv8-aarch64-ce_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_sha1-armv8-aarch64-ce_S      14 Jan 2023 19:25:39 
> -0000
> @@ -0,0 +1,20 @@
> +Index: cipher/sha1-armv8-aarch64-ce.S
> +--- cipher/sha1-armv8-aarch64-ce.S.orig
> ++++ cipher/sha1-armv8-aarch64-ce.S
> +@@ -25,7 +25,7 @@
> + 
> + .cpu generic+simd+crypto
> + 
> +-.text
> ++.rodata
> + 
> + 
> + /* Constants */
> +@@ -90,6 +90,7 @@ gcry_sha1_aarch64_ce_K_VEC:
> + 
> + #define CLEAR_REG(reg) movi reg.16b, #0;
> + 
> ++.text
> + 
> + /*
> +  * unsigned int
> Index: patches/patch-cipher_sha256-armv8-aarch64-ce_S
> ===================================================================
> RCS file: patches/patch-cipher_sha256-armv8-aarch64-ce_S
> diff -N patches/patch-cipher_sha256-armv8-aarch64-ce_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_sha256-armv8-aarch64-ce_S    14 Jan 2023 19:18:35 
> -0000
> @@ -0,0 +1,20 @@
> +Index: cipher/sha256-armv8-aarch64-ce.S
> +--- cipher/sha256-armv8-aarch64-ce.S.orig
> ++++ cipher/sha256-armv8-aarch64-ce.S
> +@@ -25,7 +25,7 @@
> + 
> + .cpu generic+simd+crypto
> + 
> +-.text
> ++.rodata
> + 
> + 
> + /* Constants */
> +@@ -100,6 +100,7 @@ gcry_sha256_aarch64_ce_K:
> + 
> + #define CLEAR_REG(reg) movi reg.16b, #0;
> + 
> ++.text
> + 
> + /*
> +  * unsigned int
> Index: patches/patch-cipher_sm3-aarch64_S
> ===================================================================
> RCS file: patches/patch-cipher_sm3-aarch64_S
> diff -N patches/patch-cipher_sm3-aarch64_S
> --- /dev/null 1 Jan 1970 00:00:00 -0000
> +++ patches/patch-cipher_sm3-aarch64_S        14 Jan 2023 19:18:35 -0000
> @@ -0,0 +1,20 @@
> +Index: cipher/sm3-aarch64.S
> +--- cipher/sm3-aarch64.S.orig
> ++++ cipher/sm3-aarch64.S
> +@@ -29,7 +29,7 @@
> + 
> + /* Constants */
> + 
> +-.text
> ++.rodata
> + .align 4
> + ELF(.type _gcry_sm3_aarch64_consts,@object)
> + _gcry_sm3_aarch64_consts:
> +@@ -383,6 +383,7 @@ ELF(.size _gcry_sm3_aarch64_consts,.-_gcry_sm3_aarch64
> + #define SCHED_W_W5W0W1W2W3W4_3(iop_num, round) \
> +         SCHED_W_3_##iop_num(round, W5, W0, W1, W2, W3, W4)
> + 
> ++.text
> + /*
> +  * Transform nblks*64 bytes (nblks*16 32-bit words) at DATA.
> +  *

-- 
Antoine

Reply via email to