Implementation notes: aarch64, pi3aplus, crypto_hash/jh256

Computer: pi3aplus
Microarchitecture: aarch64; Cortex-A53 (410fd034)
Architecture: aarch64
CPU ID: 410fd034
SUPERCOP version: 20240716
Operation: crypto_hash
Primitive: jh256
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
667985952 0 017221 768 736T:simpleclang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
676566420 0 015815 832 728T:simplegcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
694236388 0 017136 840 744T:simplegcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
729626472 0 014975 816 720T:simplegcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
841358488 0 019757 768 736T:bitslice_opt64clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
8430610164 0 020976 840 744T:bitslice_opt64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
910688020 0 018816 840 744T:bitslice_opt32gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1127935720 0 016536 840 744T:bitslice_ref32gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1152855728 0 016536 840 744T:bitslice_ref64gcc_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1172486592 0 016047 832 728T:bitslice_opt64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1188225468 0 016741 768 736T:bitslice_ref64clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1244577696 0 017063 832 728T:simplegcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1306606580 0 015135 816 720T:bitslice_opt64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1682094536 0 013999 832 728T:bitslice_ref64gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1702504150 0 012727 816 720T:bitslice_ref64gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1715876120 0 017389 768 736T:bitslice_opt32clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1775246740 0 016159 832 728T:bitslice_opt64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1915664400 0 013831 832 728T:bitslice_ref64gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
1997715476 0 016757 768 736T:bitslice_ref32clang_-mcpu=native_-O3_-fwrapv_-Qunused-arguments_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
2258266360 0 015807 832 728T:bitslice_opt32gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
2349476108 0 014663 816 720T:bitslice_opt32gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
2864696412 0 015847 832 728T:bitslice_opt32gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
3271584504 0 013967 832 728T:bitslice_ref32gcc_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
3398014174 0 012759 816 720T:bitslice_ref32gcc_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716
3515014308 0 013751 832 728T:bitslice_ref32gcc_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall2024072120240716

Compiler output


nist.c: In file included from nist.c:2:
nist.c: ./jh_ansi_opt32.h:277:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:       unsigned int i;
nist.c:                    ^
nist.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:bitslice_opt32clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


nist.c: In file included from nist.c:2:
nist.c: jh_ansi_opt32.h: In function 'Final':
nist.c: jh_ansi_opt32.h:277:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:        unsigned int i;
nist.c:                     ^

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

Compiler output


nist.c: In file included from nist.c:2:
nist.c: ./jh_ansi_opt64.h:274:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:       unsigned int i;
nist.c:                    ^
nist.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:bitslice_opt64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


nist.c: In file included from nist.c:2:
nist.c: jh_ansi_opt64.h: In function 'Final':
nist.c: jh_ansi_opt64.h:274:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:        unsigned int i;
nist.c:                     ^

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

Compiler output


nist.c: In file included from nist.c:2:
nist.c: ./jh_bitslice_ref32.h:267:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:       unsigned int i;
nist.c:                    ^
nist.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:bitslice_ref32clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


nist.c: In file included from nist.c:2:
nist.c: jh_bitslice_ref32.h: In function 'Final':
nist.c: jh_bitslice_ref32.h:267:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:        unsigned int i;
nist.c:                     ^

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

Compiler output


nist.c: In file included from nist.c:2:
nist.c: ./jh_bitslice_ref64.h:255:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:       unsigned int i;
nist.c:                    ^
nist.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:bitslice_ref64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


nist.c: In file included from nist.c:2:
nist.c: jh_bitslice_ref64.h: In function 'Final':
nist.c: jh_bitslice_ref64.h:255:20: warning: unused variable 'i' [-Wunused-variable]
nist.c:        unsigned int i;
nist.c:                     ^

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

Compiler output


hash.c: hash.c:201:7: warning: unused variable 'i' [-Wunused-variable]
hash.c:   int i;
hash.c:       ^
hash.c: 1 warning generated.

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
T:simpleclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))

Compiler output


hash.c: hash.c: In function 'crypto_hash_jh256_simple_timingleaks':
hash.c: hash.c:201:7: warning: unused variable 'i' [-Wunused-variable]
hash.c:    int i;
hash.c:        ^

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

Namespace violations


nist.o E8 T
nist.o E8_bitslice_roundconstant R
nist.o F8 T
nist.o Final T
nist.o Hash T
nist.o Init T
nist.o JH224_H0 R
nist.o JH256_H0 R
nist.o JH384_H0 R
nist.o JH512_H0 R
nist.o Update T

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:bitslice_opt32clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:bitslice_opt32gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt32gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt32gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt32gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:bitslice_opt64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_opt64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)

Namespace violations


nist.o E8 T
nist.o E8_bitslice_roundconstant R
nist.o F8 T
nist.o Final T
nist.o Hash T
nist.o Init T
nist.o JH224_H0 R
nist.o JH256_H0 R
nist.o JH384_H0 R
nist.o JH512_H0 R
nist.o LastHalfRound T
nist.o RoundFunction T
nist.o Update T

Number of similar (implementation,compiler) pairs: 10, namely:
ImplementationCompiler
T:bitslice_ref32clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:bitslice_ref32gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref32gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref32gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref32gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref64clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:bitslice_ref64gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref64gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref64gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:bitslice_ref64gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)

Namespace violations


hash.o F8 T
hash.o c R
hash.o iv R

Number of similar (implementation,compiler) pairs: 5, namely:
ImplementationCompiler
T:simpleclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (4.2.1_Compatible_Clang_7.0.1_(tags/RELEASE_701/final))
T:simplegcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:simplegcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:simplegcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)
T:simplegcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (8.3.0)