From: Niels Möller Date: Tue, 17 Dec 2013 21:10:10 +0000 (+0100) Subject: Attempt to get asm rodata working on macosx. X-Git-Tag: nettle_3.0_release_20140607~185 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5c8127d4af4518ca12e14dbc0dd31c0d2fad9191;p=thirdparty%2Fnettle.git Attempt to get asm rodata working on macosx. --- diff --git a/ChangeLog b/ChangeLog index 7b4f9b15..c02241e1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,10 @@ 2013-12-17 Niels Möller + * configure.ac (ASM_RODATA): New substituted variable. Needed for + portability to darwin. + * config.m4.in: Define RODATA, using configure variable ASM_RODATA + * x86_64/gcm-hash8.asm: Use RODATA macro. + * bignum-random-prime.c (_nettle_generate_pocklington_prime): Use stronger variants of Pocklington's theorem, to allow p0 of size down to bits/3. diff --git a/config.m4.in b/config.m4.in index 4c6565f5..da57e253 100644 --- a/config.m4.in +++ b/config.m4.in @@ -6,6 +6,7 @@ define(, <@ASM_TYPE_PROGBITS@>)dnl define(, <@ASM_ALIGN_LOG@>)dnl define(, <@ALIGNOF_UINT64_T@>)dnl define(, <@W64_ABI@>)dnl +define(, <@ASM_RODATA@>)dnl divert(1) @ASM_MARK_NOEXEC_STACK@ divert diff --git a/configure.ac b/configure.ac index a4deaae5..acfc59cd 100644 --- a/configure.ac +++ b/configure.ac @@ -332,10 +332,19 @@ EOF AC_MSG_WARN([No assembler files found.]) fi fi + case "$host_os" in + darwin*) + ASM_RODATA='.section __TEXT,__const' + ;; + *) + ASM_RODATA='.section .rodata' + ;; + esac fi AC_SUBST([OPT_ASM_NETTLE_SOURCES]) AC_SUBST([OPT_ASM_HOGWEED_SOURCES]) +AC_SUBST([ASM_RODATA]) AH_VERBATIM([HAVE_NATIVE], [/* Define to 1 each of the following for which a native (ie. CPU specific) diff --git a/x86_64/gcm-hash8.asm b/x86_64/gcm-hash8.asm index 60f444d0..e742cec6 100644 --- a/x86_64/gcm-hash8.asm +++ b/x86_64/gcm-hash8.asm @@ -188,7 +188,7 @@ ALIGN(16) EPILOGUE(_nettle_gcm_hash8) define(, <0x$2$1>) - .section .rodata + RODATA ALIGN(2) .Lshift_table: .short W(00,00),W(01,c2),W(03,84),W(02,46),W(07,08),W(06,ca),W(04,8c),W(05,4e)