Test results for amd64, hunsnivy, crypto_sort/int32

[Page version: 20260922 08:20:24]

Measurements for amd64, hunsnivy, crypto_sort Test results for amd64, hunsnivy, crypto_sort Test results for crypto_sort/int32
Computer: hunsnivy
Microarchitecture: amd64; Ivy Bridge+AES (306a9)
Architecture: amd64
CPU ID: GenuineIntel-000306a9-bfebfbff
SUPERCOP version: 20260831
Operation: crypto_sort
Primitive: int32
TimeObject sizeTest sizeImplementationCompilerBenchmark dateSUPERCOP version
1113819437 0 040127 1216 1592sse42gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1143119272 0 038349 1192 1560sse42gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1159224555 0 047007 1216 1592sse42gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1160319874 0 039931 1256 1528sse42clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1169618410 0 038830 1208 1592sse42gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1183220106 0 043267 1256 1528sse42clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1199921418 0 044099 1256 1528sse42clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1211019422 0 038965 1248 1528sse42clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
171611889 0 024651 1256 1528T:radix256mlclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
171961889 0 024643 1256 1528T:radix256mlclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
182583821 0 026587 1256 1528T:radix256smlclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
183001889 0 025131 1256 1528T:radix256mlclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
183282849 0 025619 1256 1528T:radix256smlclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
184971226 0 021347 1256 1528T:radix256mlclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
187841133 0 020685 1248 1528T:radix256mlclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
193341397 0 023703 1216 1592T:radix256mlgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
194142769 0 022899 1256 1528T:radix256smlclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
195541397 0 021959 1216 1592T:radix256mlgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
197141051 0 019965 1192 1560T:radix256mlgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
197221685 0 021245 1248 1528T:radix256smlclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
198713821 0 027067 1256 1528T:radix256smlclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
205052029 0 024327 1216 1592T:radix256smlgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
210212029 0 022583 1216 1592T:radix256smlgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
215682409 0 022670 1208 1592T:radix256smlgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
216481644 0 021918 1208 1592T:radix256mlgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
219041599 0 020501 1192 1560T:radix256smlgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
261776888 8 431915 1352 1528T:aspasclang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
264466872 8 432139 1352 1528T:aspasclang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
27627976 0 023715 1256 1528T:herfclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
27717976 0 023707 1256 1528T:herfclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
27978976 0 024195 1256 1528T:herfclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
28338532 0 020061 1248 1528T:herfclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
28379663 0 021167 1216 1592T:herfgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
28575663 0 022911 1216 1592T:herfgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
28612482 0 019349 1192 1560T:herfgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
28630561 0 020659 1256 1528T:herfclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
360625048 8 427371 1352 1528T:aspasclang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
361864907 8 427393 1360 1528T:aspasclang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
450826502 8 431844 1336 1624T:aspasg++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
458256106 8 430068 1336 1624T:aspasg++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
47719655 0 020870 1208 1592T:herfgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
625074405 8 426060 1312 1592T:aspasg++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
68873842 0 023587 1256 1528portable4clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
69002842 0 023579 1256 1528portable4clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
69314621 0 020165 1248 1528portable4clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
7048510823 0 031319 1216 1592x863gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
7059710595 0 033339 1256 1528x863clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
7065910595 0 033347 1256 1528x863clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
709359235 0 032451 1256 1528x863clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
71094730 0 020827 1256 1528portable4clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
71184762 0 024003 1256 1528portable4clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
713868199 0 027717 1248 1528x863clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
714169051 0 029147 1256 1528x863clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
7229910261 0 030454 1208 1592x863gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
7256411741 0 033991 1216 1592x863gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
78036849 0 023135 1216 1592portable4gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
788206346 8 429837 1320 1624T:aspasg++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
791031416 0 024997 1312 1624T:stdsortg++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
79421857 0 021391 1216 1592portable4gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
79524353 0 023099 1256 1528portable3clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
79528353 0 023099 1256 1528compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
803551160 0 020701 1248 1528x86clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
803811528 0 024283 1256 1528x86clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
805371592 0 024339 1256 1528portable5clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
805811528 0 024275 1256 1528x86clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
806611592 0 024347 1256 1528portable5clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
807221655 0 026364 1328 1528T:stdsortclang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
807411479 0 023444 1328 1528T:stdsortclang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
808121506 0 026469 1312 1624T:stdsortg++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
808571440 0 026364 1328 1528T:stdsortclang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
81023349 0 023587 1256 1528compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
815221400 0 021491 1256 1528portable5clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
81523349 0 023587 1256 1528portable3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
817711400 0 021491 1256 1528x86clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
821351464 0 024699 1256 1528portable5clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
821491448 0 024667 1256 1528x86clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
826621173 0 020701 1248 1528portable5clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
826691324 0 023514 1336 1528T:stdsortclang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
83100372 0 020895 1216 1592portable3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
83311384 0 020863 1216 1592compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
83314372 0 022639 1216 1592portable3gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
83566349 0 020443 1256 1528compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
83782349 0 020443 1256 1528portable3clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
84152353 0 023107 1256 1528compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
84230353 0 023107 1256 1528portable3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
84899384 0 022639 1216 1592compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
851271099 0 019989 1192 1560x86gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
853391374 0 023631 1216 1592x86gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
853721374 0 023663 1216 1592portable5gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
85572917 0 022261 1288 1592T:stdsortg++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
858281390 0 021919 1216 1592portable5gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
858961164 0 024374 1296 1624T:stdsortg++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
859811390 0 021887 1216 1592x86gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
87667401 0 020646 1208 1592portable3gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
88642291 0 019813 1248 1528compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
88735291 0 019813 1248 1528portable3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
913771550 0 021742 1208 1592x86gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
91702391 0 020582 1208 1592compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
91946344 0 019221 1192 1560portable3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
92175344 0 019221 1192 1560compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
926941524 0 021742 1208 1592portable5gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
944854258 0 023173 1192 1560x863gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
107892921 0 021166 1208 1592portable4gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
158641650 0 019541 1192 1560portable4gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831
1628341126 0 020021 1192 1560portable5gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall2026090220260831

Test failure


error 132
Illegal instruction

Number of similar (implementation,compiler) pairs: 9, namely:
ImplementationCompiler
T:krasnovclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:krasnovclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:krasnovclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:krasnovclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:krasnovclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:krasnovgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
T:krasnovgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
T:krasnovgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
T:krasnovgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)

Compiler output


sort.c: sort.c:117:11: error: always_inline function '_mm256_sub_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx2'
sort.c:   117 |   diff1 = int32x8_sub(int32x8_set(8,9,10,11,12,13,14,15),int32x8_broadcast(pos1));
sort.c:       |           ^
sort.c: sort.c:22:21: note: expanded from macro 'int32x8_sub'
sort.c:    22 | #define int32x8_sub _mm256_sub_epi32
sort.c:       |                     ^
sort.c: sort.c:118:36: error: always_inline function '_mm256_permutevar8x32_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx2'
sort.c:   118 |   x1 = int8x32_iftopthenelse(diff1,int32x8_varextract(int32x8_load(x+pos1-8),diff1),infty); // 1 3 5 7 9 11 13 15
sort.c:       |                                    ^
sort.c: sort.c:38:28: note: expanded from macro 'int32x8_varextract'
sort.c:    38 | #define int32x8_varextract _mm256_permutevar8x32_epi32
sort.c:       |                            ^
sort.c: sort.c:118:8: error: always_inline function '_mm256_blendv_epi8' requires target feature 'avx2', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx2'
sort.c:   118 |   x1 = int8x32_iftopthenelse(diff1,int32x8_varextract(int32x8_load(x+pos1-8),diff1),infty); // 1 3 5 7 9 11 13 15
sort.c:       |        ^
sort.c: sort.c:23:38: note: expanded from macro 'int8x32_iftopthenelse'
sort.c:    23 | #define int8x32_iftopthenelse(c,t,e) _mm256_blendv_epi8(e,t,c)
sort.c:       |                                      ^
sort.c: sort.c:120:8: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx2'
sort.c:   120 |   y0 = int32x8_min(x0,x1); // 0 2 4 6 8 10 12 14
sort.c:       |        ^
sort.c: sort.c:34:21: note: expanded from macro 'int32x8_min'
sort.c:    34 | #define int32x8_min _mm256_min_epi32
sort.c:       |                     ^
sort.c: sort.c:121:8: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx2'
sort.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
2026avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
2026avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
2026avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
2026avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


sort.c: sort.c:114:8: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx'
sort.c:   114 |   x0 = int32x8_load(x+0); // 0 2 4 6 8 10 12 14
sort.c:       |        ^
sort.c: sort.c:17:25: note: expanded from macro 'int32x8_load'
sort.c:    17 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:114:8: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
sort.c: sort.c:17:25: note: expanded from macro 'int32x8_load'
sort.c:    17 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:115:11: error: always_inline function '_mm256_set1_epi32' requires target feature 'avx', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx'
sort.c:   115 |   infty = int32x8_broadcast(int32_largest);
sort.c:       |           ^
sort.c: sort.c:37:27: note: expanded from macro 'int32x8_broadcast'
sort.c:    37 | #define int32x8_broadcast _mm256_set1_epi32
sort.c:       |                           ^
sort.c: sort.c:115:11: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
sort.c: sort.c:37:27: note: expanded from macro 'int32x8_broadcast'
sort.c:    37 | #define int32x8_broadcast _mm256_set1_epi32
sort.c:       |                           ^
sort.c: sort.c:117:23: error: always_inline function '_mm256_setr_epi32' requires target feature 'avx', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'avx'
sort.c:   117 |   diff1 = int32x8_sub(int32x8_set(8,9,10,11,12,13,14,15),int32x8_broadcast(pos1));
sort.c:       |                       ^
sort.c: sort.c:36:21: note: expanded from macro 'int32x8_set'
sort.c:    36 | #define int32x8_set _mm256_setr_epi32
sort.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
2026avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:53,
sort.c:                  from sort.c:4:
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h: In function 'int32_threestages_6_down':
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:363:1: error: inlining failed in call to 'always_inline' '_mm256_max_epi32': target specific option mismatch
sort.c:   363 | _mm256_max_epi32 (__m256i __A, __m256i __B)
sort.c:       | ^~~~~~~~~~~~~~~~
sort.c: sort.c:35:21: note: called from here
sort.c:    35 | #define int32x8_max _mm256_max_epi32
sort.c:       |                     ^
sort.c: sort.c:30:7: note: in expansion of macro 'int32x8_max'
sort.c:    30 |   b = int32x8_max(a,b); \
sort.c:       |       ^~~~~~~~~~~
sort.c: sort.c:3246:5: note: in expansion of macro 'int32x8_MINMAX'
sort.c:  3246 |     int32x8_MINMAX(x5,x4);
sort.c:       |     ^~~~~~~~~~~~~~
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:405:1: error: inlining failed in call to 'always_inline' '_mm256_min_epi32': target specific option mismatch
sort.c:   405 | _mm256_min_epi32 (__m256i __A, __m256i __B)
sort.c:       | ^~~~~~~~~~~~~~~~
sort.c: sort.c:34:21: note: called from here
sort.c:    34 | #define int32x8_min _mm256_min_epi32
sort.c:       |                     ^
sort.c: sort.c:29:15: note: in expansion of macro 'int32x8_min'
sort.c:    29 |   int32x8 c = int32x8_min(a,b); \
sort.c:       |               ^~~~~~~~~~~
sort.c: sort.c:3246:5: note: in expansion of macro 'int32x8_MINMAX'
sort.c: ...

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

Compiler output


api.cpp: In file included from api.cpp:3:
api.cpp: In file included from ./aspas.h:204:
api.cpp: In file included from ./aspas.tcc:32:
api.cpp: In file included from ./merger.h:64:
api.cpp: ./merger.tcc:196:13: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
api.cpp:   196 |     if(count&1==1)
api.cpp:       |             ^~~~~
api.cpp: ./merger.tcc:196:13: note: place parentheses around the '==' expression to silence this warning
api.cpp:   196 |     if(count&1==1)
api.cpp:       |             ^
api.cpp:       |              (   )
api.cpp: ./merger.tcc:196:13: note: place parentheses around the & expression to evaluate it first
api.cpp:   196 |     if(count&1==1)
api.cpp:       |             ^
api.cpp:       |        (      )
api.cpp: ./merger.tcc:379:17: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
api.cpp:   379 |         if (num & 1 == 1)
api.cpp:       |                 ^~~~~~~~
api.cpp: ./merger.tcc:379:17: note: place parentheses around the '==' expression to silence this warning
api.cpp:   379 |         if (num & 1 == 1)
api.cpp:       |                 ^
api.cpp:       |                   (     )
api.cpp: ./merger.tcc:379:17: note: place parentheses around the & expression to evaluate it first
api.cpp:   379 |         if (num & 1 == 1)
api.cpp:       |                 ^
api.cpp: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:aspasclang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:aspasclang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:aspasclang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:aspasclang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


api.cpp: In file included from sorter.h:123,
api.cpp:                  from aspas.tcc:31,
api.cpp:                  from aspas.h:204,
api.cpp:                  from api.cpp:3:
api.cpp: sorter_avx.tcc:95:47: warning: ignoring attributes on template argument '__m256' [-Wignored-attributes]
api.cpp:    95 | typename std::enable_if<std::is_same<T, __m256>::value>::type
api.cpp:       |                                               ^
api.cpp: sorter_avx.tcc:149:47: warning: ignoring attributes on template argument '__m256' [-Wignored-attributes]
api.cpp:   149 | typename std::enable_if<std::is_same<T, __m256>::value>::type
api.cpp:       |                                               ^
api.cpp: sorter_avx.tcc:317:47: warning: ignoring attributes on template argument '__m256' [-Wignored-attributes]
api.cpp:   317 | typename std::enable_if<std::is_same<T, __m256>::value>::type
api.cpp:       |                                               ^
api.cpp: sorter_avx.tcc:647:48: warning: ignoring attributes on template argument '__m256i' [-Wignored-attributes]
api.cpp:   647 | typename std::enable_if<std::is_same<T, __m256i>::value>::type
api.cpp:       |                                                ^
api.cpp: sorter_avx.tcc:701:48: warning: ignoring attributes on template argument '__m256i' [-Wignored-attributes]
api.cpp:   701 | typename std::enable_if<std::is_same<T, __m256i>::value>::type
api.cpp:       |                                                ^
api.cpp: sorter_avx.tcc:854:48: warning: ignoring attributes on template argument '__m256i' [-Wignored-attributes]
api.cpp:   854 | typename std::enable_if<std::is_same<T, __m256i>::value>::type
api.cpp:       |                                                ^
api.cpp: sorter_avx.tcc:1184:48: warning: ignoring attributes on template argument '__m256d' [-Wignored-attributes]
api.cpp:  1184 | typename std::enable_if<std::is_same<T, __m256d>::value>::type
api.cpp:       |                                                ^
api.cpp: ...

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

Compiler output


sort.c: sort.c:960:9: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort' that is compiled without support for 'avx2'
sort.c:   960 |         int32x8_MINMAX(x0,x2);
sort.c:       |         ^
sort.c: sort.c:16:15: note: expanded from macro 'int32x8_MINMAX'
sort.c:    16 |   int32x8 c = int32x8_min(a,b); \
sort.c:       |               ^
sort.c: sort.c:11:21: note: expanded from macro 'int32x8_min'
sort.c:    11 | #define int32x8_min _mm256_min_epi32
sort.c:       |                     ^
sort.c: sort.c:960:9: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort' that is compiled without support for 'avx2'
sort.c: sort.c:17:7: note: expanded from macro 'int32x8_MINMAX'
sort.c:    17 |   b = int32x8_max(a,b); \
sort.c:       |       ^
sort.c: sort.c:12:21: note: expanded from macro 'int32x8_max'
sort.c:    12 | #define int32x8_max _mm256_max_epi32
sort.c:       |                     ^
sort.c: sort.c:961:9: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'int32_sort' that is compiled without support for 'avx2'
sort.c:   961 |         int32x8_MINMAX(x1,x3);
sort.c:       |         ^
sort.c: sort.c:16:15: note: expanded from macro 'int32x8_MINMAX'
sort.c:    16 |   int32x8 c = int32x8_min(a,b); \
sort.c:       |               ^
sort.c: sort.c:11:21: note: expanded from macro 'int32x8_min'
sort.c:    11 | #define int32x8_min _mm256_min_epi32
sort.c:       |                     ^
sort.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
avx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
avx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


sort.c: sort.c:940:40: error: always_inline function '_mm256_set1_epi32' requires target feature 'avx', but would be inlined into function 'int32_sort' that is compiled without support for 'avx'
sort.c:   940 |     for (i = q>>3;i < q>>2;++i) y[i] = _mm256_set1_epi32(0x7fffffff);
sort.c:       |                                        ^
sort.c: sort.c:940:40: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
sort.c: sort.c:956:22: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'int32_sort' that is compiled without support for 'avx'
sort.c:   956 |         int32x8 x0 = int32x8_load(&x[i]);
sort.c:       |                      ^
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c:     9 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:956:22: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c:     9 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:957:22: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'int32_sort' that is compiled without support for 'avx'
sort.c:   957 |         int32x8 x1 = int32x8_load(&x[i+q]);
sort.c:       |                      ^
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c:     9 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:957:22: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c:     9 | #define int32x8_load(z) _mm256_loadu_si256((__m256i *) (z))
sort.c:       |                         ^
sort.c: sort.c:958:22: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'int32_sort' that is compiled without support for 'avx'
sort.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
avx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:53,
sort.c:                  from sort.c:4:
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h: In function 'int32_twostages_32':
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:363:1: error: inlining failed in call to 'always_inline' '_mm256_max_epi32': target specific option mismatch
sort.c:   363 | _mm256_max_epi32 (__m256i __A, __m256i __B)
sort.c:       | ^~~~~~~~~~~~~~~~
sort.c: sort.c:12:21: note: called from here
sort.c:    12 | #define int32x8_max _mm256_max_epi32
sort.c:       |                     ^
sort.c: sort.c:17:7: note: in expansion of macro 'int32x8_max'
sort.c:    17 |   b = int32x8_max(a,b); \
sort.c:       |       ^~~~~~~~~~~
sort.c: sort.c:111:7: note: in expansion of macro 'int32x8_MINMAX'
sort.c:   111 |       int32x8_MINMAX(x2,x3);
sort.c:       |       ^~~~~~~~~~~~~~
sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:405:1: error: inlining failed in call to 'always_inline' '_mm256_min_epi32': target specific option mismatch
sort.c:   405 | _mm256_min_epi32 (__m256i __A, __m256i __B)
sort.c:       | ^~~~~~~~~~~~~~~~
sort.c: sort.c:11:21: note: called from here
sort.c:    11 | #define int32x8_min _mm256_min_epi32
sort.c:       |                     ^
sort.c: sort.c:16:15: note: in expansion of macro 'int32x8_min'
sort.c:    16 |   int32x8 c = int32x8_min(a,b); \
sort.c:       |               ^~~~~~~~~~~
sort.c: sort.c:111:7: note: in expansion of macro 'int32x8_MINMAX'
sort.c: ...

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

Compiler output


int32_sort.c: int32_sort.c:332:37: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'minmax8' that is compiled without support for 'avx2'
int32_sort.c:   332 |   _mm256_storeu_si256((__m256i *) x,_mm256_min_epi32(a,b));
int32_sort.c:       |                                     ^
int32_sort.c: int32_sort.c:333:37: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'minmax8' that is compiled without support for 'avx2'
int32_sort.c:   333 |   _mm256_storeu_si256((__m256i *) y,_mm256_max_epi32(a,b));
int32_sort.c:       |                                     ^
int32_sort.c: int32_sort.c:18:15: error: always_inline function '_mm256_unpacklo_epi64' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    18 |   __m256i c = _mm256_unpacklo_epi64(a,b); /* a01b01a45b45 */
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:19:15: error: always_inline function '_mm256_unpackhi_epi64' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    19 |   __m256i d = _mm256_unpackhi_epi64(a,b); /* a23b23a67b67 */
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:20:15: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    20 |   __m256i g = _mm256_min_epi32(c,d);
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:21:15: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    21 |   __m256i h = _mm256_max_epi32(c,d);
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:22:7: error: always_inline function '_mm256_unpacklo_epi64' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    22 |   a = _mm256_unpacklo_epi64(g,h);
int32_sort.c:       |       ^
int32_sort.c: int32_sort.c:23:7: error: always_inline function '_mm256_unpackhi_epi64' requires target feature 'avx2', but would be inlined into function 'minmax02through1315' that is compiled without support for 'avx2'
int32_sort.c:    23 |   b = _mm256_unpackhi_epi64(g,h);
int32_sort.c:       |       ^
int32_sort.c: int32_sort.c:32:15: error: '__builtin_ia32_pshufd256' needs target feature avx2
int32_sort.c: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
oldavx2clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
oldavx2clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
oldavx2clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
oldavx2clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


int32_sort.c: int32_sort.c:330:15: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'minmax8' that is compiled without support for 'avx'
int32_sort.c:   330 |   __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:330:15: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:331:15: error: always_inline function '_mm256_loadu_si256' requires target feature 'avx', but would be inlined into function 'minmax8' that is compiled without support for 'avx'
int32_sort.c:   331 |   __m256i b = _mm256_loadu_si256((__m256i *) y);
int32_sort.c:       |               ^
int32_sort.c: int32_sort.c:331:15: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:332:37: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'minmax8' that is compiled without support for 'avx2'
int32_sort.c:   332 |   _mm256_storeu_si256((__m256i *) x,_mm256_min_epi32(a,b));
int32_sort.c:       |                                     ^
int32_sort.c: int32_sort.c:332:37: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:332:3: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'minmax8' that is compiled without support for 'avx'
int32_sort.c:   332 |   _mm256_storeu_si256((__m256i *) x,_mm256_min_epi32(a,b));
int32_sort.c:       |   ^
int32_sort.c: int32_sort.c:332:3: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:333:37: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'minmax8' that is compiled without support for 'avx2'
int32_sort.c:   333 |   _mm256_storeu_si256((__m256i *) y,_mm256_max_epi32(a,b));
int32_sort.c:       |                                     ^
int32_sort.c: int32_sort.c:333:37: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:333:3: error: always_inline function '_mm256_storeu_si256' requires target feature 'avx', but would be inlined into function 'minmax8' that is compiled without support for 'avx'
int32_sort.c:   333 |   _mm256_storeu_si256((__m256i *) y,_mm256_max_epi32(a,b));
int32_sort.c:       |   ^
int32_sort.c: int32_sort.c:333:3: error: AVX vector argument of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
int32_sort.c: int32_sort.c:364:34: error: always_inline function '_mm_min_epi32' requires target feature 'sse4.1', but would be inlined into function 'minmax4' that is compiled without support for 'sse4.1'
int32_sort.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
oldavx2clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:53,
int32_sort.c:                  from int32_sort.c:3:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h: In function 'minmax8':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:363:1: error: inlining failed in call to 'always_inline' '_mm256_max_epi32': target specific option mismatch
int32_sort.c:   363 | _mm256_max_epi32 (__m256i __A, __m256i __B)
int32_sort.c:       | ^~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:333:3: note: called from here
int32_sort.c:   333 |   _mm256_storeu_si256((__m256i *) y,_mm256_max_epi32(a,b));
int32_sort.c:       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:405:1: error: inlining failed in call to 'always_inline' '_mm256_min_epi32': target specific option mismatch
int32_sort.c:   405 | _mm256_min_epi32 (__m256i __A, __m256i __B)
int32_sort.c:       | ^~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:332:3: note: called from here
int32_sort.c:   332 |   _mm256_storeu_si256((__m256i *) x,_mm256_min_epi32(a,b));
int32_sort.c:       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:405:1: error: inlining failed in call to 'always_inline' '_mm256_min_epi32': target specific option mismatch
int32_sort.c:   405 | _mm256_min_epi32 (__m256i __A, __m256i __B)
int32_sort.c:       | ^~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:332:3: note: called from here
int32_sort.c:   332 |   _mm256_storeu_si256((__m256i *) x,_mm256_min_epi32(a,b));
int32_sort.c:       |   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:363:1: error: inlining failed in call to 'always_inline' '_mm256_max_epi32': target specific option mismatch
int32_sort.c:   363 | _mm256_max_epi32 (__m256i __A, __m256i __B)
int32_sort.c:       | ^~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:333:3: note: called from here
int32_sort.c: ...

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

Compiler output


api.cpp: api.cpp:22:42: warning: variable length arrays in C++ are a Clang extension [-Wvla-cxx-extension]
api.cpp:    22 |   __attribute__((aligned(32))) int32_t y[n];
api.cpp:       |                                          ^
api.cpp: api.cpp:22:42: note: function parameter 'n' with unknown value cannot be used in a constant expression
api.cpp: api.cpp:8:40: note: declared here
api.cpp:     8 | void crypto_sort(void *array,long long n)
api.cpp:       |                                        ^
api.cpp: 1 warning generated.
merge_sort.cpp: merge_sort.cpp:11:10: error: always_inline function '_mm256_permutevar8x32_epi32' requires target feature 'avx2', but would be inlined into function 'reverse' that is compiled without support for 'avx2'
merge_sort.cpp:    11 |   return _mm256_permutevar8x32_epi32(v, global_masks.rev_idx_mask);
merge_sort.cpp:       |          ^
merge_sort.cpp: merge_sort.cpp:31:7: error: always_inline function '_mm256_min_epi32' requires target feature 'avx2', but would be inlined into function 'minmax' that is compiled without support for 'avx2'
merge_sort.cpp:    31 |   a = _mm256_min_epi32(a, b);
merge_sort.cpp:       |       ^
merge_sort.cpp: merge_sort.cpp:32:7: error: always_inline function '_mm256_max_epi32' requires target feature 'avx2', but would be inlined into function 'minmax' that is compiled without support for 'avx2'
merge_sort.cpp:    32 |   b = _mm256_max_epi32(t, b);
merge_sort.cpp:       |       ^
merge_sort.cpp: merge_sort.cpp:134:13: error: '__builtin_ia32_pblendd256' needs target feature avx2
merge_sort.cpp:   134 |   auto a4 = _mm256_blend_epi32(mina, maxa, 0xf0);
merge_sort.cpp:       |             ^
merge_sort.cpp: /usr/lib/llvm-19/lib/clang/19/include/avx2intrin.h:3149:13: note: expanded from macro '_mm256_blend_epi32'
merge_sort.cpp:  3149 |   ((__m256i)__builtin_ia32_pblendd256((__v8si)(__m256i)(V1), \
merge_sort.cpp:       |             ^
merge_sort.cpp: merge_sort.cpp:135:13: error: '__builtin_ia32_pblendd256' needs target feature avx2
merge_sort.cpp:   135 |   auto b4 = _mm256_blend_epi32(minb, maxb, 0xf0);
merge_sort.cpp:       |             ^
merge_sort.cpp: /usr/lib/llvm-19/lib/clang/19/include/avx2intrin.h:3149:13: note: expanded from macro '_mm256_blend_epi32'
merge_sort.cpp:  3149 |   ((__m256i)__builtin_ia32_pblendd256((__v8si)(__m256i)(V1), \
merge_sort.cpp:       |             ^
merge_sort.cpp: merge_sort.cpp:138:15: error: '__builtin_ia32_pshufd256' needs target feature avx2
merge_sort.cpp:   138 |   auto a4_1 = _mm256_shuffle_epi32(a4, 0x4e);
merge_sort.cpp:       |               ^
merge_sort.cpp: /usr/lib/llvm-19/lib/clang/19/include/avx2intrin.h:1937:13: note: expanded from macro '_mm256_shuffle_epi32'
merge_sort.cpp: ...

Number of similar (implementation,compiler) pairs: 4, namely:
ImplementationCompiler
T:sid1607clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:sid1607clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:sid1607clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
T:sid1607clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Compiler output


merge_sort.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/14/include/immintrin.h:53,
merge_sort.cpp:                  from merge_sort.h:1,
merge_sort.cpp:                  from merge_sort.cpp:1:
merge_sort.cpp: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h: In function '__m256i reverse(__m256i&)':
merge_sort.cpp: /usr/lib/gcc/x86_64-linux-gnu/14/include/avx2intrin.h:1044:1: error: inlining failed in call to 'always_inline' '__m256i _mm256_permutevar8x32_epi32(__m256i, __m256i)': target specific option mismatch
merge_sort.cpp:  1044 | _mm256_permutevar8x32_epi32 (__m256i __X, __m256i __Y)
merge_sort.cpp:       | ^~~~~~~~~~~~~~~~~~~~~~~~~~~
merge_sort.cpp: merge_sort.cpp:11:37: note: called from here
merge_sort.cpp:    11 |   return _mm256_permutevar8x32_epi32(v, global_masks.rev_idx_mask);
merge_sort.cpp:       |          ~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

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

Compiler output


sort.c: sort.c:132:99: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'ssse3'
sort.c:   132 |   x2 = int8x16_iftopthenelse(int32x4_smaller_mask(int32x4_set(8,9,10,11),int32x4_broadcast(pos2)),int8x16_varextract(int32x4_load(x+pos2-4),int8x16_sub(int8x16_set(16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31),int8x16_broadcast(4*(pos2&3)))),infty); // 2 6 10 14
sort.c:       |                                                                                                   ^
sort.c: sort.c:44:28: note: expanded from macro 'int8x16_varextract'
sort.c:    44 | #define int8x16_varextract _mm_shuffle_epi8
sort.c:       |                            ^
sort.c: sort.c:132:8: error: always_inline function '_mm_blendv_epi8' requires target feature 'sse4.1', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'sse4.1'
sort.c:   132 |   x2 = int8x16_iftopthenelse(int32x4_smaller_mask(int32x4_set(8,9,10,11),int32x4_broadcast(pos2)),int8x16_varextract(int32x4_load(x+pos2-4),int8x16_sub(int8x16_set(16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31),int8x16_broadcast(4*(pos2&3)))),infty); // 2 6 10 14
sort.c:       |        ^
sort.c: sort.c:23:38: note: expanded from macro 'int8x16_iftopthenelse'
sort.c:    23 | #define int8x16_iftopthenelse(c,t,e) _mm_blendv_epi8(e,t,c)
sort.c:       |                                      ^
sort.c: sort.c:134:101: error: always_inline function '_mm_shuffle_epi8' requires target feature 'ssse3', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'ssse3'
sort.c:   134 |   x3 = int8x16_iftopthenelse(int32x4_smaller_mask(int32x4_set(12,13,14,15),int32x4_broadcast(pos3)),int8x16_varextract(int32x4_load(x+pos3-4),int8x16_sub(int8x16_set(16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31),int8x16_broadcast(4*(pos3&3)))),infty); // 3 7 11 15
sort.c:       |                                                                                                     ^
sort.c: sort.c:44:28: note: expanded from macro 'int8x16_varextract'
sort.c:    44 | #define int8x16_varextract _mm_shuffle_epi8
sort.c:       |                            ^
sort.c: sort.c:134:8: error: always_inline function '_mm_blendv_epi8' requires target feature 'sse4.1', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'sse4.1'
sort.c:   134 |   x3 = int8x16_iftopthenelse(int32x4_smaller_mask(int32x4_set(12,13,14,15),int32x4_broadcast(pos3)),int8x16_varextract(int32x4_load(x+pos3-4),int8x16_sub(int8x16_set(16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31),int8x16_broadcast(4*(pos3&3)))),infty); // 3 7 11 15
sort.c:       |        ^
sort.c: sort.c:23:38: note: expanded from macro 'int8x16_iftopthenelse'
sort.c:    23 | #define int8x16_iftopthenelse(c,t,e) _mm_blendv_epi8(e,t,c)
sort.c:       |                                      ^
sort.c: sort.c:136:8: error: always_inline function '_mm_min_epi32' requires target feature 'sse4.1', but would be inlined into function 'int32_sort_8through16' that is compiled without support for 'sse4.1'
sort.c: ...

Number of similar (implementation,compiler) pairs: 1, namely:
ImplementationCompiler
sse42clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))

Passed TIMECOP


TIMECOP iterations: 10

Number of similar (implementation,compiler) pairs: 62, namely:
ImplementationCompiler
compactclang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactclang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
compactgcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
compactgcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable3clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable3clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable3clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable3clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable3clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable3gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable3gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable3gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable3gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable4clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable4clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable4clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable4clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable4clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable4gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable4gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable4gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable4gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable5clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable5clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable5clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable5clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable5clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
portable5gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable5gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable5gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
portable5gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
sse42clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
sse42clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
sse42clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
sse42clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
sse42gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
sse42gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
sse42gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
sse42gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x86clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x86clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x86clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x86clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x86clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x86gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x86gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x86gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x86gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x863clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x863clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x863clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x863clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x863clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_19.1.7_(3+b1))
x863gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x863gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x863gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)
x863gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (14.2.0)