Implementation notes: amd64, saber214, crypto_aead/joltikneq12864v1

Computer: saber214
Microarchitecture: amd64; Bulldozer (600f20)
Architecture: amd64
CPU ID: AuthenticAMD-00600f20-1789c3f5
SUPERCOP version: 20240625
Operation: crypto_aead
Primitive: joltikneq12864v1
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
39281250030 400 064677 1192 928T:vpermgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39326249222 400 063884 1224 856T:vpermclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39331749269 400 066324 1224 872T:vpermclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39335248669 400 061638 1216 856T:vpermclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39417550623 400 066717 1192 928T:vpermgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39451949636 400 064037 1192 928T:vpermgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
39891649469 400 062528 1168 896T:vpermgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
40572448819 400 062236 1224 856T:vpermclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
817928714405 0 031500 816 872T:refclang_-march=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
850959414654 0 030628 816 856T:refclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
905970516478 0 032573 784 928T:refgcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
977780314645 0 029076 816 856T:refclang_-march=native_-O2_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
1658164912746 0 026204 816 856T:refclang_-march=native_-O_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
2042386013530 0 028189 784 928T:refgcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
2216349912649 0 025582 808 856T:refclang_-march=native_-Os_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
2420687512396 0 026853 784 928T:refgcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625
2564337611748 0 024856 760 896T:refgcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024062720240625

Compiler output


joltik.c: In function 'set_nonce_in_tweak',
joltik.c:     inlined from 'joltik_aead_decrypt' at joltik.c:258:5:
joltik.c: joltik.c:55:23: warning: 'tweak' is used uninitialized [-Wuninitialized]
joltik.c:    55 |     tweak[0] =  (tweak[0]&0xe0)    ^ (nonce[0] >> 3);
joltik.c:       |                  ~~~~~^~~
joltik.c: joltik.c: In function 'joltik_aead_decrypt':
joltik.c: joltik.c:240:13: note: 'tweak' declared here
joltik.c:   240 |     uint8_t tweak[8];
joltik.c:       |             ^~~~~

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

Compiler output


joltik.c: joltik.c:29:3: error: "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c:  #error "This implementation requires either SSSE3 or AVX2 instruction sets."
joltik.c:   ^
joltik.c: 1 error generated.

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

Compiler output


joltik.c: In file included from joltik.c:27:
joltik.c: joltik.c: In function 'joltik_aead_decrypt':
joltik.c: joltik-ssse3.c.inc:79:27: warning: 'tweak' is used uninitialized [-Wuninitialized]
joltik.c:    79 |     (tweak)[0] =  ((tweak)[0]&0xe0)    ^ ((nonce)[0] >> 3);     \
joltik.c:       |                    ~~~~~~~^~~
joltik.c: joltik-ssse3.c.inc:347:3: note: in expansion of macro 'set_nonce_in_tweak'
joltik.c:   347 |   set_nonce_in_tweak(tweak, nonce);
joltik.c:       |   ^~~~~~~~~~~~~~~~~~
joltik.c: joltik-ssse3.c.inc:325:21: note: 'tweak' declared here
joltik.c:   325 |   ALIGN(16) uint8_t tweak[16];
joltik.c:       |                     ^~~~~

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