Implementation notes: amd64, bolero, crypto_sign/pflash1

Computer: bolero
Microarchitecture: amd64; Broadwell+AES (406f1)
Architecture: amd64
CPU ID: GenuineIntel-000406f1-1fc9cbf5
SUPERCOP version: 20240625
Operation: crypto_sign
Primitive: pflash1

Compiler output


GFword.c: GFword.c:109:66: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                  ~~~~~~~~~~~~~~~~~~~~~~~^
GFword.c: GFword.c:109:66: note: place parentheses around the '|' expression to silence this warning
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                  (                      )
GFword.c: GFword.c:109:66: note: place parentheses around the '?:' expression to evaluate it first
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                             (                                    )
GFword.c: 1 warning generated.
SignScheme.c: SignScheme.c:211:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_sign( sk , h , mlen , sm );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:95:29: note: passing argument to parameter 'pri' here
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:152:29: note: passing argument to parameter 'pub' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:24: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                               ^~
SignScheme.c: SignScheme.c:152:42: note: passing argument to parameter 'X' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                                          ^
SignScheme.c: 3 warnings generated.
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_QMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:21: undefined reference to `polyPow88'
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_ivsQMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:69: undefined reference to `polyPow24'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:72: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:74: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:76: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:80: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:83: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:86: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:89: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:91: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:94: undefined reference to `polyPow56'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


GFword.c: GFword.c:109:66: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                  ~~~~~~~~~~~~~~~~~~~~~~~^
GFword.c: GFword.c:109:66: note: place parentheses around the '|' expression to silence this warning
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                  (                      )
GFword.c: GFword.c:109:66: note: place parentheses around the '?:' expression to evaluate it first
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                             (                                    )
GFword.c: 1 warning generated.
SignScheme.c: SignScheme.c:211:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_sign( sk , h , mlen , sm );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:95:29: note: passing argument to parameter 'pri' here
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:152:29: note: passing argument to parameter 'pub' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:24: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                               ^~
SignScheme.c: SignScheme.c:152:42: note: passing argument to parameter 'X' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                                          ^
SignScheme.c: 3 warnings generated.
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_QMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:21: undefined reference to `polyPow88'
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_ivsQMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:69: undefined reference to `polyPow24'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:72: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:74: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:76: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:80: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:83: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:86: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:89: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:91: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:94: undefined reference to `polyPow56'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


GFword.c: GFword.c:109:66: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                  ~~~~~~~~~~~~~~~~~~~~~~~^
GFword.c: GFword.c:109:66: note: place parentheses around the '|' expression to silence this warning
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                  (                      )
GFword.c: GFword.c:109:66: note: place parentheses around the '?:' expression to evaluate it first
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                             (                                    )
GFword.c: 1 warning generated.
SignScheme.c: SignScheme.c:211:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_sign( sk , h , mlen , sm );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:95:29: note: passing argument to parameter 'pri' here
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:152:29: note: passing argument to parameter 'pub' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:24: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                               ^~
SignScheme.c: SignScheme.c:152:42: note: passing argument to parameter 'X' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                                          ^
SignScheme.c: 3 warnings generated.
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_QMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:21: undefined reference to `polyPow88'
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_ivsQMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:69: undefined reference to `polyPow24'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:72: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:74: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:76: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:80: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:83: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:86: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:89: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:91: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:94: undefined reference to `polyPow56'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


GFword.c: GFword.c:109:66: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                  ~~~~~~~~~~~~~~~~~~~~~~~^
GFword.c: GFword.c:109:66: note: place parentheses around the '|' expression to silence this warning
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                  (                      )
GFword.c: GFword.c:109:66: note: place parentheses around the '?:' expression to evaluate it first
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                             (                                    )
GFword.c: 1 warning generated.
SignScheme.c: SignScheme.c:211:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_sign( sk , h , mlen , sm );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:95:29: note: passing argument to parameter 'pri' here
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:152:29: note: passing argument to parameter 'pub' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:24: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                               ^~
SignScheme.c: SignScheme.c:152:42: note: passing argument to parameter 'X' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                                          ^
SignScheme.c: 3 warnings generated.
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_QMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:21: undefined reference to `polyPow88'
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_ivsQMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:69: undefined reference to `polyPow24'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:72: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:74: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:76: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:80: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:83: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:86: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:89: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:91: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:94: undefined reference to `polyPow56'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


GFword.c: GFword.c:109:66: warning: operator '?:' has lower precedence than '|'; '|' will be evaluated first [-Wbitwise-conditional-parentheses]
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                  ~~~~~~~~~~~~~~~~~~~~~~~^
GFword.c: GFword.c:109:66: note: place parentheses around the '|' expression to silence this warning
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                  (                      )
GFword.c: GFword.c:109:66: note: place parentheses around the '?:' expression to evaluate it first
GFword.c:         uint32 logDetA = 255 - (uint32)(logtab[ ((0==logZ0)|(0==logZ0Z1)?0:alogtab[logZ0+logZ0Z1])
GFword.c:                                                                         ^
GFword.c:                                                             (                                    )
GFword.c: 1 warning generated.
SignScheme.c: SignScheme.c:211:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_sign( sk , h , mlen , sm );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:95:29: note: passing argument to parameter 'pri' here
SignScheme.c: int SignScheme_sign( byte * pri , byte * Y , int Ylen , byte * outX )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:19: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                          ^~
SignScheme.c: SignScheme.c:152:29: note: passing argument to parameter 'pub' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                             ^
SignScheme.c: SignScheme.c:227:24: warning: passing 'const unsigned char *' to parameter of type 'byte *' (aka 'unsigned char *') discards qualifiers [-Wincompatible-pointer-types-discards-qualifiers]
SignScheme.c:         SignScheme_GMap( pk , sm , h );
SignScheme.c:                               ^~
SignScheme.c: SignScheme.c:152:42: note: passing argument to parameter 'X' here
SignScheme.c: int SignScheme_GMap( byte * pub , byte * X , byte * outY )
SignScheme.c:                                          ^
SignScheme.c: 3 warnings generated.
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_QMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:21: undefined reference to `polyPow88'
try.c: /usr/bin/ld: libcrypto_sign_pflash1.a(PFLASH.o): in function `PFLASH_ivsQMap':
try.c: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:69: undefined reference to `polyPow24'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:72: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:74: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:76: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:80: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:83: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:86: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:89: undefined reference to `polyPow56'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:91: undefined reference to `polyPow8'
try.c: /usr/bin/ld: .../supercop-data/bolero/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sign/pflash1/ref/work/PFLASH.c:94: undefined reference to `polyPow56'
try.c: clang: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Ubuntu_Clang_14.0.0)

Compiler output


PFLASH.c: PFLASH.c:152:23: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   152 |         memcpy( outZ ,_Z,37);
PFLASH.c:       |                       ^~
PFLASH.c: PFLASH.c:149:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   149 |                         _Z[i-(37- 0)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:148:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   148 |                         _Z[i-(37- 2)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:147:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   147 |                         _Z[i-(37-10)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:146:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   146 |                         _Z[i-(37-12)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:143:24: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   143 |                 temp = _Z[i];
PFLASH.c:       |                        ^~
PFLASH.c: PFLASH.c:136:36: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   136 |                         if( logY ) _Z[i+j] ^= alogtab[logX+logY];
PFLASH.c:       |                                    ^~
PFLASH.c: PFLASH.c:128:11: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   128 |    memset(_Z,0,73);
PFLASH.c:       |           ^~
PFLASH.c: PFLASH.c:122:23: warning: '_Z' is static but used in inline function 'polySqu' which is not static
PFLASH.c: ...

Number of similar (implementation,compiler) pairs: 3, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)
T:refgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)

Compiler output


BLAS.c: In file included from /usr/include/string.h:535,
BLAS.c:                  from BLAS.c:6:
BLAS.c: In function 'memset',
BLAS.c:     inlined from 'BLAS_affineGF16' at BLAS.c:284:2:
BLAS.c: /usr/include/x86_64-linux-gnu/bits/string_fortified.h:59:10: warning: '__builtin_memset' specified size between 18446744072635809792 and 18446744073709551615 exceeds maximum object size 9223372036854775807 [-Wstringop-overflow=]
BLAS.c:    59 |   return __builtin___memset_chk (__dest, __ch, __len,
BLAS.c:       |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
BLAS.c:    60 |                                  __glibc_objsize0 (__dest));
BLAS.c:       |                                  ~~~~~~~~~~~~~~~~~~~~~~~~~~
PFLASH.c: PFLASH.c:152:23: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   152 |         memcpy( outZ ,_Z,37);
PFLASH.c:       |                       ^~
PFLASH.c: PFLASH.c:149:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   149 |                         _Z[i-(37- 0)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:148:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   148 |                         _Z[i-(37- 2)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:147:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   147 |                         _Z[i-(37-10)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:146:25: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   146 |                         _Z[i-(37-12)] ^= temp;
PFLASH.c:       |                         ^~
PFLASH.c: PFLASH.c:143:24: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   143 |                 temp = _Z[i];
PFLASH.c:       |                        ^~
PFLASH.c: PFLASH.c:136:36: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   136 |                         if( logY ) _Z[i+j] ^= alogtab[logX+logY];
PFLASH.c:       |                                    ^~
PFLASH.c: PFLASH.c:128:11: warning: '_Z' is static but used in inline function 'polyMul' which is not static
PFLASH.c:   128 |    memset(_Z,0,73);
PFLASH.c:       |           ^~
PFLASH.c: PFLASH.c:122:23: warning: '_Z' is static but used in inline function 'polySqu' which is not static
PFLASH.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:refgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (11.4.0)