Implementation notes: amd64, panther, crypto_core/inv3sntrup1277

Computer: panther
Microarchitecture: amd64; Tiger Lake (806c1)
Architecture: amd64
CPU ID: GenuineIntel-000806c1-00-bfebfbff
SUPERCOP version: 20240425
Operation: crypto_core
Primitive: inv3sntrup1277
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
19539027436 0 041853 828 952avxclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
19590222588 0 036989 828 952avxclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
21002613616 0 024875 820 920avxclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
22471223150 0 037288 780 984avxgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
30651214515 0 026608 780 984avxgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
31615414346 0 026007 772 984avxgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
3331797179 0 018651 820 920avxclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
3625946332 0 016995 756 952avxgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
63567866220 0 020434 788 984refgcc_-march=native_-mtune=native_-O3_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
265059695614 0 020029 828 952refclang_-march=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
266285644382 0 018781 828 952refclang_-march=native_-O2_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
383005702685 0 013939 820 920refclang_-march=native_-Os_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
406737935982 0 019773 828 920refclang_-mcpu=native_-O3_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
56722888855 0 012299 820 920refclang_-march=native_-O_-fomit-frame-pointer_-fwrapv_-Qunused-arguments_-fPIC_-fPIE2024042620240425
107952289830 0 012970 788 984refgcc_-march=native_-mtune=native_-O2_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
117382782820 0 012439 772 984refgcc_-march=native_-mtune=native_-O_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425
137227979675 0 011285 764 952refgcc_-march=native_-mtune=native_-Os_-fomit-frame-pointer_-fwrapv_-fPIC_-fPIE2024042620240425

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: clang -march=native -O2 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
r3_recip.c: r3_recip.c:488:49: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F0[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:488:36: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F0[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:493:49: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F1[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:493:36: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F1[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: 4 warnings generated.

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

Compiler output

Implementation: avx
Security model: constbranchindex
Compiler: clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE
r3_recip.c: r3_recip.c:488:49: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F0[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:488:36: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F0[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:493:49: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F1[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:493:36: warning: implicit conversion from 'long' to 'int' changes value from 2147483648 to -2147483648 [-Wconstant-conversion]
r3_recip.c: F1[4] = _mm256_set_epi32(0,0,0,0,2147483648,0,2147483648,0);
r3_recip.c: ~~~~~~~~~~~~~~~~ ^~~~~~~~~~
r3_recip.c: r3_recip.c:484:11: error: always_inline function '_mm256_set_epi32' requires target feature 'avx', but would be inlined into function 'crypto_core_inv3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
r3_recip.c: F0[0] = _mm256_set_epi32(0,0,0,0,0,0,0,1);
r3_recip.c: ^
r3_recip.c: r3_recip.c:484:11: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
r3_recip.c: r3_recip.c:485:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'avx', but would be inlined into function 'crypto_core_inv3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
r3_recip.c: F0[1] = _mm256_set1_epi32(0);
r3_recip.c: ^
r3_recip.c: r3_recip.c:485:11: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
r3_recip.c: r3_recip.c:486:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'avx', but would be inlined into function 'crypto_core_inv3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
r3_recip.c: F0[2] = _mm256_set1_epi32(0);
r3_recip.c: ^
r3_recip.c: r3_recip.c:486:11: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
r3_recip.c: r3_recip.c:487:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'avx', but would be inlined into function 'crypto_core_inv3sntrup1277_avx_constbranchindex' that is compiled without support for 'avx'
r3_recip.c: ...

Number of similar (compiler,implementation) pairs: 1, namely:
CompilerImplementations
clang -mcpu=native -O3 -fomit-frame-pointer -fwrapv -Qunused-arguments -fPIC -fPIE avx