Implementation notes: amd64, scw1b63b1, crypto_stream/rabbit

Computer: scw1b63b1
Architecture: amd64
CPU ID: GenuineIntel-000506f1-0f8bfbff
SUPERCOP version: 20191017
Operation: crypto_stream
Primitive: rabbit
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
68724316 0 116857 784 808e/opt/2/3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
69224316 0 116857 784 808e/opt/2/2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
70704081 0 416003 800 864e/opt/2/3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
70964129 0 416051 800 864e/opt/1/3gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
71044081 0 416003 800 864e/opt/2/2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
71164129 0 416051 800 864e/opt/1/2gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
71244429 0 116969 784 808e/opt/1/2clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
71264129 0 416051 800 864e/opt/1/4gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
71344429 0 116969 784 808e/opt/1/4clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
71364429 0 116969 784 808e/opt/1/3clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72024125 0 115753 784 800e/opt/2/2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72044125 0 116577 784 808e/opt/2/2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72044125 0 116577 784 808e/opt/2/3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72063843 0 414407 784 832e/opt/1/2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
72063866 0 114595 776 800e/opt/2/3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72083843 0 414407 784 832e/opt/1/4gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
72103897 0 114627 776 800e/opt/1/2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72104125 0 115753 784 800e/opt/2/3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72124174 0 115801 784 800e/opt/1/2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72124174 0 116625 784 808e/opt/1/4clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72164125 0 115753 784 800e/opt/2/3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72184125 0 115753 784 800e/opt/2/2clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72224174 0 115801 784 800e/opt/1/2clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72223843 0 414407 784 832e/opt/1/3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
72244174 0 116625 784 808e/opt/1/3clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72244174 0 115801 784 800e/opt/1/3clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72244174 0 115801 784 800e/opt/1/4clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72264174 0 115801 784 800e/opt/1/4clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72283897 0 114627 776 800e/opt/1/3clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72303897 0 114627 776 800e/opt/1/4clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72344174 0 116625 784 808e/opt/1/2clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72363809 0 414375 784 832e/opt/2/2gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
72383866 0 114595 776 800e/opt/2/2clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
72443809 0 414375 784 832e/opt/2/3gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
72504174 0 115801 784 800e/opt/1/3clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
83944262 0 415963 800 864e/opt/2/2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
84084262 0 415963 800 864e/opt/2/3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
84124321 0 416027 800 864e/opt/1/3gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
84144321 0 416027 800 864e/opt/1/4gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
84444321 0 416027 800 864e/opt/1/2gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
89665923 0 420052 808 864e/opt/2/2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
89665923 0 420052 808 864e/opt/2/3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
89765969 0 420100 808 864e/opt/1/3gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
89805969 0 420100 808 864e/opt/1/4gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
90125969 0 420100 808 864e/opt/1/2gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
96724870 0 117305 784 808e/opt/1/1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
97344588 0 115307 776 800e/opt/1/1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
97384870 0 116481 784 800e/opt/1/1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
97444870 0 116481 784 800e/opt/1/1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
98227169 0 421284 808 864e/refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
99544980 0 117521 784 808e/opt/2/1clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
101204688 0 115403 776 800e/opt/2/1clang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
101504949 0 116561 784 800e/opt/2/1clang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
101945061 0 117601 784 808e/opt/1/1clang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
102363214 0 114841 784 800e/refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
103804479 0 415047 784 832e/opt/2/1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
103944833 0 416755 800 864e/opt/2/1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
104164501 0 415063 784 832e/opt/1/1gcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
104344929 0 416851 800 864e/opt/1/1gcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
104444949 0 117385 784 808e/opt/2/1clang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
104484949 0 116561 784 800e/opt/2/1clang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
106623214 0 115665 784 808e/refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
107383214 0 114841 784 800e/refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
122885055 0 416755 800 864e/opt/1/1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
122944964 0 416659 800 864e/opt/2/1gcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
124703645 0 116201 784 808e/refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
125567539 0 421668 808 864e/opt/2/1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
126127585 0 421716 808 864e/opt/1/1gcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
146262842 0 113571 776 800e/refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2019121520191017
149343069 0 414987 800 864e/refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
149422571 0 413127 784 832e/refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017
154982808 0 414499 800 864e/refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2019121520191017

Compiler output

Implementation: e/opt/2/4
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rabbit.c: In file included from rabbit.c:2:
rabbit.c: ./e/rabbit.c:314:4: warning: implicit declaration of function 'RABBIT_G_AND_LATE_COUNTER' is invalid in C99 [-Wimplicit-function-declaration]
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ./e/rabbit.c:314:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:315:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(1, 0x34D34D34)
rabbit.c: ...
rabbit.c: ;
rabbit.c: ./e/rabbit.c:324:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(6, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:326:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(7, 0x4D34D34D)
rabbit.c: ^
rabbit.c: ;
rabbit.c: 1 warning and 8 errors generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/4
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/4
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/4
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/4
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/4

Compiler output

Implementation: e/opt/2/4
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
rabbit.c: In file included from rabbit.c:2:0:
rabbit.c: e/rabbit.c: In function ‘RABBIT_next_state’:
rabbit.c: e/rabbit.c:314:4: warning: implicit declaration of function ‘RABBIT_G_AND_LATE_COUNTER’ [-Wimplicit-function-declaration]
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:315:4: error: expected ‘;’ before ‘RABBIT_G_AND_LATE_COUNTER’
rabbit.c: RABBIT_G_AND_LATE_COUNTER(1, 0x34D34D34)
rabbit.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:93:7: error: expected ‘;’ before ‘p_instance’
rabbit.c: p_instance->x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ...
rabbit.c: ^
rabbit.c: e/rabbit.c:325:4: note: in expansion of macro ‘RABBIT_GEN_X_EVEN’
rabbit.c: RABBIT_GEN_X_EVEN(6, 5, 4)
rabbit.c: ^~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:93:7: error: expected ‘;’ before ‘p_instance’
rabbit.c: p_instance->x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ^
rabbit.c: e/rabbit.c:327:4: note: in expansion of macro ‘RABBIT_GEN_X_ODD’
rabbit.c: RABBIT_GEN_X_ODD(7, 6, 5)
rabbit.c: ^~~~~~~~~~~~~~~~

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/4
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/4
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/4
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/4

Compiler output

Implementation: e/opt/2/5
Security model: unknown
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
rabbit.c: In file included from rabbit.c:2:
rabbit.c: ./e/rabbit.c:37:2: error: this variant does not compile on this platform
rabbit.c: #error this variant does not compile on this platform
rabbit.c: ^
rabbit.c: ./e/rabbit.c:314:4: warning: implicit declaration of function 'RABBIT_G_AND_LATE_COUNTER' is invalid in C99 [-Wimplicit-function-declaration]
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ./e/rabbit.c:314:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ...
rabbit.c: ./e/rabbit.c:1149:9: error: use of undeclared identifier 'i'
rabbit.c: for (i=0; i<4; i++)
rabbit.c: ^
rabbit.c: ./e/rabbit.c:1149:14: error: use of undeclared identifier 'i'
rabbit.c: for (i=0; i<4; i++)
rabbit.c: ^
rabbit.c: ./e/rabbit.c:1149:19: error: use of undeclared identifier 'i'
rabbit.c: for (i=0; i<4; i++)
rabbit.c: ^
rabbit.c: 1 warning and 12 errors generated.

Number of similar (compiler,implementation) pairs: 5, namely:
CompilerImplementations
clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/5
clang -march=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/5
clang -march=native -O -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/5
clang -march=native -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/5
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE e/opt/2/5

Compiler output

Implementation: e/opt/2/5
Security model: unknown
Compiler: gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
rabbit.c: In file included from rabbit.c:2:0:
rabbit.c: e/rabbit.c:37:2: error: #error this variant does not compile on this platform
rabbit.c: #error this variant does not compile on this platform
rabbit.c: ^~~~~
rabbit.c: e/rabbit.c: In function ‘RABBIT_next_state’:
rabbit.c: e/rabbit.c:314:4: warning: implicit declaration of function ‘RABBIT_G_AND_LATE_COUNTER’ [-Wimplicit-function-declaration]
rabbit.c: RABBIT_G_AND_LATE_COUNTER(0, 0xD34D34D3)
rabbit.c: ^~~~~~~~~~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:315:4: error: expected ‘;’ before ‘RABBIT_G_AND_LATE_COUNTER’
rabbit.c: RABBIT_G_AND_LATE_COUNTER(1, 0x34D34D34)
rabbit.c: ...
rabbit.c: ^
rabbit.c: e/rabbit.c:327:4: note: in expansion of macro ‘RABBIT_GEN_X_ODD’
rabbit.c: RABBIT_GEN_X_ODD(7, 6, 5)
rabbit.c: ^~~~~~~~~~~~~~~~
rabbit.c: In file included from rabbit.c:2:0:
rabbit.c: e/rabbit.c: In function ‘crypto_stream_rabbit_e_opt_2_5_ECRYPT_keysetup’:
rabbit.c: e/rabbit.c:1149:9: error: ‘i’ undeclared (first use in this function)
rabbit.c: for (i=0; i<4; i++)
rabbit.c: ^
rabbit.c: e/rabbit.c:1149:9: note: each undeclared identifier is reported only once for each function it appears in

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -march=native -mtune=native -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/5
gcc -march=native -mtune=native -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/5
gcc -march=native -mtune=native -O -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/5
gcc -march=native -mtune=native -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE e/opt/2/5