Implementation notes: amd64, icelake, crypto_aead/pi64cipher128v2

Computer: icelake
Architecture: amd64
CPU ID: GenuineIntel-000706e5-bfebfbff
SUPERCOP version: 20200826
Operation: crypto_aead
Primitive: pi64cipher128v2

Test failure

Implementation: T:optimized_nonSSE
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
error 111
crypto_aead_encrypt returns more than crypto_aead_ABYTES extra bytes

Number of similar (compiler,implementation) pairs: 12, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:optimized_nonSSE
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:optimized_nonSSE
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:optimized_nonSSE
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:optimized_nonSSE
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref

Compiler output

Implementation: T:goptv
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:9:
encrypt.c: ./pi-cipher.h:30:13: error: typedef redefinition with different types ('u64' (aka 'unsigned long') vs 'unsigned long long')
encrypt.c: typedef u64 uint64_t;
encrypt.c: ^
encrypt.c: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h:31:28: note: previous definition is here
encrypt.c: typedef unsigned long long uint64_t;
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:goptv
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref3
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref3
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref3

Compiler output

Implementation: T:goptv
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from encrypt.c:9:
encrypt.c: pi-cipher.h:30:13: error: conflicting types for 'uint64_t'
encrypt.c: 30 | typedef u64 uint64_t;
encrypt.c: | ^~~~~~~~
encrypt.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include-fixed/stdint.h:35,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/stdint.h:9,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/resource.h:72,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/wait.h:110,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdlib.h:66,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/mm_malloc.h:27,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/xmmintrin.h:34,
encrypt.c: from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/include/ecrypt-config.h:302,
encrypt.c: from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/include/ecrypt-portable.h:23,
encrypt.c: from pi-cipher.h:26,
encrypt.c: from encrypt.c:9:
encrypt.c: /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/_types/_uint64_t.h:31:28: note: previous declaration of 'uint64_t' was here
encrypt.c: 31 | typedef unsigned long long uint64_t;
encrypt.c: | ^~~~~~~~

Number of similar (compiler,implementation) pairs: 6, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:goptv
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:goptv
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:goptv
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref3
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref3
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref3

Compiler output

Implementation: T:ref2
Security model: timingleaks
Compiler: clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
encrypt.c: In file included from encrypt.c:9:
encrypt.c: ./pi-cipher.h:50:13: error: typedef redefinition with different types ('u64' (aka 'unsigned long') vs 'unsigned long long')
encrypt.c: typedef u64 uint64_t;
encrypt.c: ^
encrypt.c: /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_types/_uint64_t.h:31:28: note: previous definition is here
encrypt.c: typedef unsigned long long uint64_t;
encrypt.c: ^
encrypt.c: 1 error generated.

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
clang -march=icelake-client -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref2
clang -march=icelake-client -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref2
clang -march=icelake-client -Os -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE T:ref2

Compiler output

Implementation: T:ref2
Security model: timingleaks
Compiler: opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE
encrypt.c: In file included from encrypt.c:9:
encrypt.c: pi-cipher.h:50:13: error: conflicting types for 'uint64_t'
encrypt.c: 50 | typedef u64 uint64_t;
encrypt.c: | ^~~~~~~~
encrypt.c: In file included from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include-fixed/stdint.h:35,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/stdint.h:9,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/resource.h:72,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/sys/wait.h:110,
encrypt.c: from /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/stdlib.h:66,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/mm_malloc.h:27,
encrypt.c: from /opt/local/lib/gcc10/gcc/x86_64-apple-darwin19/10.2.0/include/xmmintrin.h:34,
encrypt.c: from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/include/ecrypt-config.h:302,
encrypt.c: from /Users/krovetz/tmp/supercop-20200826/supercop-data/icelake/amd64/include/ecrypt-portable.h:23,
encrypt.c: from pi-cipher.h:46,
encrypt.c: from encrypt.c:9:
encrypt.c: /Library/Developer/CommandLineTools/SDKs/MacOSX10.15.sdk/usr/include/_types/_uint64_t.h:31:28: note: previous declaration of 'uint64_t' was here
encrypt.c: 31 | typedef unsigned long long uint64_t;
encrypt.c: | ^~~~~~~~

Number of similar (compiler,implementation) pairs: 3, namely:
CompilerImplementations
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O2 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref2
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -O3 -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref2
opt-local-bin-gcc -march=icelake-client -mtune=icelake-client -Os -fomit-frame-pointer -fwrapv -fPIC -fPIE T:ref2