Implementation notes: amd64, panther, crypto_hash/prh42s512

Computer: panther
Microarchitecture: amd64; Tiger Lake (806c1)
Architecture: amd64
CPU ID: GenuineIntel-000806c1-00-bfebfbff
SUPERCOP version: 20240808
Operation: crypto_hash
Primitive: prh42s512
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
12693718 0 016872 780 952refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080920240808
13762426 0 013464 780 952refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024080920240808

Compiler output


try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `crypto_hash_prh42s512_ref_constbranchindex':
try.c: .../supercop-data/panther/amd64/try/c/clang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/hash.c:11: undefined reference to `prvhash42s_oneshot'
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
refclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `prvhash42s_oneshot':
try.c: .../supercop-data/panther/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:323: undefined reference to `prvhash42s_init'
try.c: /usr/bin/ld: .../supercop-data/panther/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:324: undefined reference to `prvhash42s_update'
try.c: /usr/bin/ld: .../supercop-data/panther/amd64/try/c/clang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:325: undefined reference to `prvhash42s_final'
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
refclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `crypto_hash_prh42s512_ref_constbranchindex':
try.c: .../supercop-data/panther/amd64/try/c/clang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/hash.c:11: undefined reference to `prvhash42s_oneshot'
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
refclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `crypto_hash_prh42s512_ref_constbranchindex':
try.c: .../supercop-data/panther/amd64/try/c/clang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/hash.c:11: undefined reference to `prvhash42s_oneshot'
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
refclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `prvhash42s_oneshot':
try.c: .../supercop-data/panther/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:323: undefined reference to `prvhash42s_init'
try.c: /usr/bin/ld: .../supercop-data/panther/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:324: undefined reference to `prvhash42s_update'
try.c: /usr/bin/ld: .../supercop-data/panther/amd64/try/c/clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/./prvhash42s.h:325: undefined reference to `prvhash42s_final'
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
refclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1)

Compiler output


hash.c: In file included from hash.c:3:
hash.c: prvhash42s.h:169:31: warning: 'crypto_int64_bitmod_01' is static but used in inline function 'prvhash42s_update' which is not static
hash.c:   169 |  ctx -> fb = (uint8_t) ( 0 - (crypto_int64_bitmod_01( ~Msg[ MsgLen - 1 ],7 )));
hash.c:       |                               ^~~~~~~~~~~~~~~~~~~~~~
hash.c: In file included from prvhash42s.h:37,
hash.c:                  from hash.c:3:
hash.c: prvhash42core.h:176:21: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   176 |  const uint8_t ph = crypto_int64_bottombit_01( Hash ^ hs );
hash.c:       |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: prvhash42core.h:175:22: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   175 |  const uint8_t out = crypto_int64_bottombit_01( Seed ^ hs );
hash.c:       |                      ^~~~~~~~~~~~~~~~~~~~~~~~~

Number of similar (implementation,compiler) pairs: 2, namely:
ImplementationCompiler
refgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)
refgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110)

Compiler output


hash.c: In file included from hash.c:3:
hash.c: prvhash42s.h:169:31: warning: 'crypto_int64_bitmod_01' is static but used in inline function 'prvhash42s_update' which is not static
hash.c:   169 |  ctx -> fb = (uint8_t) ( 0 - (crypto_int64_bitmod_01( ~Msg[ MsgLen - 1 ],7 )));
hash.c:       |                               ^~~~~~~~~~~~~~~~~~~~~~
hash.c: In file included from prvhash42s.h:37,
hash.c:                  from hash.c:3:
hash.c: prvhash42core.h:176:21: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   176 |  const uint8_t ph = crypto_int64_bottombit_01( Hash ^ hs );
hash.c:       |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: prvhash42core.h:175:22: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   175 |  const uint8_t out = crypto_int64_bottombit_01( Seed ^ hs );
hash.c:       |                      ^~~~~~~~~~~~~~~~~~~~~~~~~
try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `prvhash42s_oneshot':
try.c: .../supercop-data/panther/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/prvhash42s.h:324: undefined reference to `prvhash42s_update'
try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `prvhash42s_final':
try.c: .../supercop-data/panther/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/prvhash42s.h:267: undefined reference to `prvhash42s_update'
try.c: /usr/bin/ld: .../supercop-data/panther/amd64/try/c/gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/prvhash42s.h:268: undefined reference to `prvhash42s_update'
try.c: collect2: error: ld returned 1 exit status

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

Compiler output


hash.c: In file included from hash.c:3:
hash.c: prvhash42s.h:169:31: warning: 'crypto_int64_bitmod_01' is static but used in inline function 'prvhash42s_update' which is not static
hash.c:   169 |  ctx -> fb = (uint8_t) ( 0 - (crypto_int64_bitmod_01( ~Msg[ MsgLen - 1 ],7 )));
hash.c:       |                               ^~~~~~~~~~~~~~~~~~~~~~
hash.c: In file included from prvhash42s.h:37,
hash.c:                  from hash.c:3:
hash.c: prvhash42core.h:176:21: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   176 |  const uint8_t ph = crypto_int64_bottombit_01( Hash ^ hs );
hash.c:       |                     ^~~~~~~~~~~~~~~~~~~~~~~~~
hash.c: prvhash42core.h:175:22: warning: 'crypto_int64_bottombit_01' is static but used in inline function 'prvhash42_core2' which is not static
hash.c:   175 |  const uint8_t out = crypto_int64_bottombit_01( Seed ^ hs );
hash.c:       |                      ^~~~~~~~~~~~~~~~~~~~~~~~~
try.c: /usr/bin/ld: libcrypto_hash_prh42s512.a(hash.o): in function `crypto_hash_prh42s512_ref_constbranchindex':
try.c: .../supercop-data/panther/amd64/try/c/gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/constbranchindex/crypto_hash/prh42s512/ref/work/hash.c:11: undefined reference to `prvhash42s_oneshot'
try.c: collect2: error: ld returned 1 exit status

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109CA9
   at 0x...: salsa20.part.0 (try-anything.c:102)
   by 0x...: salsa20 (try-anything.c:85)
   by 0x...: canary (try-anything.c:148)
   by 0x...: input_prepare (try-anything.c:163)
   by 0x...: test (try.c:88)
   by 0x...: main (try-anything.c:345)

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

TIMECOP error (can be valgrind bug)


error 111

Process terminating with default action of signal 4 (SIGILL)
 Illegal opcode at address 0x109B6A
   at 0x...: st32 (try-anything.c:47)
   by 0x...: core (try-anything.c:78)
   by 0x...: salsa20 (try-anything.c:101)
   by 0x...: salsa20 (try-anything.c:81)
   by 0x...: testvector (try-anything.c:124)
   by 0x...: myrandom (try-anything.c:132)
   by 0x...: test (try.c:85)
   by 0x...: main (try-anything.c:345)

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