[PATCH] cipher/Makefile.am: add '-fcoverage-*' to instrumentation munging

Jussi Kivilinna jussi.kivilinna at iki.fi
Sun May 19 16:01:18 CEST 2019


Hello,

On 19.5.2019 14.50, Guido Vranken wrote:
> I was working on resolving it by adding --disable-instrumentation-munging to the configure command. Is this patch a better way?
> 

Probably. If you use --disable-instrumentation-munging you need to make sure some other way that following files are compiled without instrumentation so that compiler does not inject function calls that may modify XMM registers:
 - cipher/cipher-gcm-intel-pclmul.c
 - cipher/crc-intel-pclmul.c
 - cipher/rijndael-aesni.c
 - cipher/rijndael-ssse3-amd64.c
 - cipher/sha1-intel-shaext.c
 - cipher/sha256-intel-shaext.c

Otherwise there is not guarantees that these implementations give correct results.

-Jussi

> On Sun, May 19, 2019 at 1:39 PM Jussi Kivilinna <jussi.kivilinna at iki.fi <mailto:jussi.kivilinna at iki.fi>> wrote:
> 
>     * cipher/Makefile.am: Remove '-fcoverage-*' flag for mixed asm/C
>     i386+amd64 implementations.
>     --
> 
>     Combination '-fprofile-instr-generate -fcoverage-mapping' was causing
>     build error as former was removed by munging and latter requires thay.
> 
>     Signed-off-by: Jussi Kivilinna <jussi.kivilinna at iki.fi <mailto:jussi.kivilinna at iki.fi>>
>     ---
>      0 files changed
> 
>     diff --git a/cipher/Makefile.am b/cipher/Makefile.am
>     index 19420bf4e..690d9d98b 100644
>     --- a/cipher/Makefile.am
>     +++ b/cipher/Makefile.am
>     @@ -155,7 +155,8 @@ tiger.lo: $(srcdir)/tiger.c Makefile
>      if ENABLE_INSTRUMENTATION_MUNGING
>      instrumentation_munging = sed \
>             -e 's/-fsanitize[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g' \
>     -       -e 's/-fprofile[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g'
>     +       -e 's/-fprofile[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g' \
>     +       -e 's/-fcoverage[=,\-][=,a-z,A-Z,0-9,\,,\-]*//g'
>      else
>      instrumentation_munging = cat
>      endif
> 
> 



More information about the Gcrypt-devel mailing list