Implementation notes: armeabi, pi2, crypto_stream/rabbit

Computer: pi2
Architecture: armeabi
CPU ID: unknown CPU ID
SUPERCOP version: 20160731
Operation: crypto_stream
Primitive: rabbit

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/1
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
rabbit.c: In file included from rabbit.c:1:
rabbit.c: ./e/rabbit.c:1313:48: warning: implicit declaration of function 'U32TO32_LITTLE' is invalid in C99 [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x0 ^
rabbit.c: ^
rabbit.c: 1 warning generated.
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/opt/2/1 e/opt/2/2 e/opt/2/3

Compiler output

Implementation: crypto_stream/rabbit/e/ref
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
rabbit.c: In file included from rabbit.c:1:
rabbit.c: ./e/rabbit.c:203:48: warning: implicit declaration of function 'U32TO32_LITTLE' is invalid in C99 [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x[0] ^
rabbit.c: ^
rabbit.c: 1 warning generated.
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/ref

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/4
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
rabbit.c: In file included from rabbit.c:1:
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:316:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(2, 0x4D34D34D)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:318:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(3, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:320:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(4, 0x34D34D34)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:322:44: error: expected ';' after expression
rabbit.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/opt/2/4

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/5
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
rabbit.c: In file included from rabbit.c:1:
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:315:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(1, 0x34D34D34)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:316:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(2, 0x4D34D34D)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:318:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(3, 0xD34D34D3)
rabbit.c: ^
rabbit.c: ;
rabbit.c: ./e/rabbit.c:320:44: error: expected ';' after expression
rabbit.c: RABBIT_G_AND_LATE_COUNTER(4, 0x34D34D34)
rabbit.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/opt/2/5

Compiler output

Implementation: crypto_stream/rabbit/e/opt/1/1
Compiler: clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments
rabbit.c: In file included from rabbit.c:1:
rabbit.c: ./e/rabbit.c:432:48: warning: implicit declaration of function 'U32TO32_LITTLE' is invalid in C99 [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x0 ^
rabbit.c: ^
rabbit.c: 1 warning generated.
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation)

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
clang -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments e/opt/1/1 e/opt/1/2 e/opt/1/3 e/opt/1/4

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/1
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
rabbit.c: In file included from rabbit.c:1:0:
rabbit.c: e/rabbit.c: In function 'ECRYPT_process_bytes':
rabbit.c: e/rabbit.c:1313:48: warning: implicit declaration of function 'U32TO32_LITTLE' [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x0 ^
rabbit.c: ^~~~~~~~~~~~~~
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv e/opt/2/1 e/opt/2/2 e/opt/2/3
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv e/opt/2/1 e/opt/2/2 e/opt/2/3
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv e/opt/2/1 e/opt/2/2 e/opt/2/3
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv e/opt/2/1 e/opt/2/2 e/opt/2/3

Compiler output

Implementation: crypto_stream/rabbit/e/ref
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
rabbit.c: In file included from rabbit.c:1:0:
rabbit.c: e/rabbit.c: In function 'ECRYPT_process_bytes':
rabbit.c: e/rabbit.c:203:48: warning: implicit declaration of function 'U32TO32_LITTLE' [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x[0] ^
rabbit.c: ^~~~~~~~~~~~~~
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 4, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv e/ref
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv e/ref
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv e/ref
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv e/ref

Compiler output

Implementation: crypto_stream/rabbit/e/opt/1/1
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
rabbit.c: In file included from rabbit.c:1:0:
rabbit.c: e/rabbit.c: In function 'ECRYPT_process_bytes':
rabbit.c: e/rabbit.c:432:48: warning: implicit declaration of function 'U32TO32_LITTLE' [-Wimplicit-function-declaration]
rabbit.c: *(u32*)(output+ 0) = *(u32*)(input+ 0) ^ U32TO32_LITTLE(ctx->gt;work_ctx.x0 ^
rabbit.c: ^~~~~~~~~~~~~~
try.c: crypto_stream_rabbit.a(rabbit.o): In function `ECRYPT_process_bytes':
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: rabbit.c:(.text+0x...): undefined reference to `U32TO32_LITTLE'
try.c: crypto_stream_rabbit.a(rabbit.o):rabbit.c:(.text+0x...): more undefined references to `U32TO32_LITTLE' follow
try.c: collect2: error: ld returned 1 exit status

Number of similar (compiler,implementation) pairs: 16, namely:
CompilerImplementations
gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv e/opt/1/1 e/opt/1/2 e/opt/1/3 e/opt/1/4
gcc -mcpu=native -mfpu=neon -O3 -fomit-frame-pointer -fwrapv e/opt/1/1 e/opt/1/2 e/opt/1/3 e/opt/1/4
gcc -mcpu=native -mfpu=neon -O -fomit-frame-pointer -fwrapv e/opt/1/1 e/opt/1/2 e/opt/1/3 e/opt/1/4
gcc -mcpu=native -mfpu=neon -Os -fomit-frame-pointer -fwrapv e/opt/1/1 e/opt/1/2 e/opt/1/3 e/opt/1/4

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/4
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
rabbit.c: In file included from rabbit.c:1: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->gt;x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ^
rabbit.c: e/rabbit.c:319:4: note: in expansion of macro 'RABBIT_GEN_X_ODD'
rabbit.c: RABBIT_GEN_X_ODD(3, 2, 1)
rabbit.c: ^~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:90:7: error: expected ';' before 'p_instance'
rabbit.c: p_instance->gt;x##i = U32V(g##i + ROTL32(g##j,16) + ROTL32(g##k, 16));
rabbit.c: ^
rabbit.c: e/rabbit.c:321:4: note: in expansion of macro 'RABBIT_GEN_X_EVEN'
rabbit.c: RABBIT_GEN_X_EVEN(4, 3, 2)
rabbit.c: ^~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:93:7: error: expected ';' before 'p_instance'
rabbit.c: p_instance->gt;x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ^
rabbit.c: e/rabbit.c:323:4: note: in expansion of macro 'RABBIT_GEN_X_ODD'
rabbit.c: RABBIT_GEN_X_ODD(5, 4, 3)
rabbit.c: ...

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

Compiler output

Implementation: crypto_stream/rabbit/e/opt/2/5
Compiler: gcc -mcpu=native -mfpu=neon -O2 -fomit-frame-pointer -fwrapv
rabbit.c: In file included from rabbit.c:1: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: e/rabbit.c:93:7: error: expected ';' before 'p_instance'
rabbit.c: p_instance->gt;x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ^
rabbit.c: e/rabbit.c:319:4: note: in expansion of macro 'RABBIT_GEN_X_ODD'
rabbit.c: RABBIT_GEN_X_ODD(3, 2, 1)
rabbit.c: ^~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:90:7: error: expected ';' before 'p_instance'
rabbit.c: p_instance->gt;x##i = U32V(g##i + ROTL32(g##j,16) + ROTL32(g##k, 16));
rabbit.c: ^
rabbit.c: e/rabbit.c:321:4: note: in expansion of macro 'RABBIT_GEN_X_EVEN'
rabbit.c: RABBIT_GEN_X_EVEN(4, 3, 2)
rabbit.c: ^~~~~~~~~~~~~~~~~
rabbit.c: e/rabbit.c:93:7: error: expected ';' before 'p_instance'
rabbit.c: p_instance->gt;x##i = U32V(g##i + ROTL32(g##j, 8) + g##k);
rabbit.c: ...

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