Test results for amd64, hydra4, crypto_sort/int32
[Page version: 20241024 06:34:08]
Measurements for amd64, hydra4, crypto_sort
Test results for amd64, hydra4, crypto_sort
Test results for crypto_sort/int32
Computer: hydra4
Microarchitecture: amd64; K10 32nm (300f10)
Architecture: amd64
CPU ID: AuthenticAMD-00300f10-178bfbff
SUPERCOP version: 20241022
Operation: crypto_sort
Primitive: int32
Time | Object size | Test size | Implementation | Compiler | Benchmark date | SUPERCOP version |
37327 | 1028 0 0 | 10331 756 920 | T:radix256ml | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
37651 | 2075 0 0 | 14648 812 888 | T:radix256ml | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
37658 | 2075 0 0 | 14648 812 888 | T:radix256ml | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
37718 | 2075 0 0 | 13784 812 888 | T:radix256ml | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
37771 | 1321 0 0 | 11638 804 888 | T:radix256ml | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
37999 | 1221 0 0 | 12256 780 952 | T:radix256ml | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
38131 | 1187 0 0 | 11006 804 888 | T:radix256ml | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43229 | 1249 0 0 | 11591 772 952 | T:radix256ml | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43308 | 950 0 0 | 13512 812 888 | T:herf | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43309 | 950 0 0 | 12648 812 888 | T:herf | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43309 | 950 0 0 | 13512 812 888 | T:herf | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43383 | 653 0 0 | 10950 804 888 | T:herf | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43433 | 522 0 0 | 10318 804 888 | T:herf | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43800 | 3241 0 0 | 14960 812 888 | T:radix256sml | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43823 | 3241 0 0 | 15824 812 888 | T:radix256sml | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43823 | 3241 0 0 | 15824 812 888 | T:radix256sml | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
43908 | 2015 0 0 | 12334 804 888 | T:radix256sml | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
44236 | 1567 0 0 | 10899 756 920 | T:radix256sml | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
44313 | 6581 0 0 | 18808 780 952 | T:radix256sml | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
44709 | 1853 0 0 | 11662 804 888 | T:radix256sml | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
44837 | 1829 0 0 | 12848 780 952 | T:radix256sml | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
45769 | 478 0 0 | 9771 756 920 | T:herf | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
45930 | 566 0 0 | 11576 780 952 | T:herf | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
46786 | 1874 0 0 | 12215 772 952 | T:radix256sml | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
47523 | 565 0 0 | 12784 780 952 | T:herf | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
50895 | 1638 0 0 | 14315 852 888 | T:stdsort | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
56137 | 1715 0 0 | 14018 788 984 | T:stdsort | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
60180 | 531 0 0 | 10831 772 952 | T:herf | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
60362 | 1336 0 0 | 12450 788 984 | T:stdsort | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
60774 | 1744 0 0 | 13595 852 888 | T:stdsort | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
61436 | 1265 0 0 | 11209 844 888 | T:stdsort | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
64003 | 1129 0 0 | 11593 780 984 | T:stdsort | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
69504 | 910 0 0 | 10293 764 952 | T:stdsort | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
70841 | 8892 0 0 | 19904 780 952 | x863 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
70884 | 10812 0 0 | 23024 780 952 | x863 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
73130 | 9400 0 0 | 19727 772 952 | x863 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
75734 | 5274 0 0 | 17864 812 888 | x863 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
75998 | 5274 0 0 | 17864 812 888 | x863 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
78007 | 5214 0 0 | 16936 812 888 | x863 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
79928 | 4042 0 0 | 13838 804 888 | x863 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
81237 | 848 0 0 | 13384 812 888 | portable4 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
81261 | 848 0 0 | 13384 812 888 | portable4 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
82391 | 649 0 0 | 10446 804 888 | portable4 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
83127 | 4565 0 0 | 14902 804 888 | x863 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
85016 | 832 0 0 | 12520 812 888 | portable4 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
88640 | 757 0 0 | 11087 772 952 | portable4 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
89069 | 740 0 0 | 11760 780 952 | portable4 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
89159 | 740 0 0 | 12968 780 952 | portable4 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
90327 | 1654 0 0 | 14216 812 888 | portable5 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
90386 | 1654 0 0 | 14216 812 888 | portable5 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
90722 | 3853 0 0 | 16096 780 952 | T:radix256ml | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
91519 | 1197 0 0 | 10990 804 888 | portable5 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
92366 | 1618 0 0 | 14184 812 888 | x86 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
92367 | 1618 0 0 | 14184 812 888 | x86 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
93617 | 1474 0 0 | 13192 812 888 | portable5 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
94480 | 1183 0 0 | 10958 804 888 | x86 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
95300 | 1553 0 0 | 11854 804 888 | x86 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
95460 | 1458 0 0 | 13160 812 888 | x86 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
101587 | 1368 0 0 | 11695 772 952 | x86 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
101588 | 1352 0 0 | 11663 772 952 | portable5 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
102007 | 1362 0 0 | 12360 780 952 | portable5 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
102007 | 1362 0 0 | 12360 780 952 | x86 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
102017 | 1362 0 0 | 13568 780 952 | portable5 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
102017 | 1362 0 0 | 13568 780 952 | x86 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
102261 | 3854 0 0 | 13187 756 920 | x863 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
103504 | 1071 0 0 | 10355 756 920 | x86 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
107749 | 361 0 0 | 12920 812 888 | compact | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
107749 | 361 0 0 | 12920 812 888 | compact | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
107749 | 361 0 0 | 12920 812 888 | portable3 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
107749 | 361 0 0 | 12920 812 888 | portable3 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
108093 | 357 0 0 | 12056 812 888 | compact | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
108103 | 357 0 0 | 12056 812 888 | portable3 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
114701 | 375 0 0 | 11392 780 952 | portable3 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
114702 | 375 0 0 | 11392 780 952 | compact | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
114973 | 375 0 0 | 12600 780 952 | compact | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
114973 | 375 0 0 | 12600 780 952 | portable3 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
116861 | 366 0 0 | 10663 772 952 | compact | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
116861 | 366 0 0 | 10663 772 952 | portable3 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
117347 | 301 0 0 | 10078 804 888 | compact | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
117397 | 301 0 0 | 10078 804 888 | portable3 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
129419 | 284 0 0 | 9595 756 920 | compact | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
129419 | 284 0 0 | 9595 756 920 | portable3 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
149843 | 987 0 0 | 11294 804 888 | portable4 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
152055 | 3563 0 0 | 14561 844 888 | T:stdsort | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20240626 | 20240625 |
157153 | 1979 0 0 | 12278 804 888 | portable5 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
171504 | 507 0 0 | 10814 804 888 | portable3 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
171813 | 507 0 0 | 10814 804 888 | compact | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
178421 | 631 0 0 | 9939 756 920 | portable4 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
184387 | 1112 0 0 | 10419 756 920 | portable5 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall | 20241011 | 20241011 |
Test failure
error 111
Number of similar (implementation,compiler) pairs: 9, namely:
Implementation | Compiler |
T:krasnov | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:krasnov | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:krasnov | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:krasnov | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:krasnov | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:krasnov | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:krasnov | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:krasnov | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:krasnov | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
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:187:17: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
api.cpp: if (num & 1 == 1)
api.cpp: ^~~~~~~~
api.cpp: ./merger.tcc:187:17: note: place parentheses around the '==' expression to silence this warning
api.cpp: if (num & 1 == 1)
api.cpp: ^
api.cpp: ( )
api.cpp: ./merger.tcc:187:17: note: place parentheses around the & expression to evaluate it first
api.cpp: if (num & 1 == 1)
api.cpp: ^
api.cpp: ( )
api.cpp: ./merger.tcc:196:13: warning: & has lower precedence than ==; == will be evaluated first [-Wparentheses]
api.cpp: if(count&1==1)
api.cpp: ^~~~~
api.cpp: ./merger.tcc:196:13: note: place parentheses around the '==' expression to silence this warning
api.cpp: 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: if(count&1==1)
api.cpp: ^
api.cpp: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:aspas | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aspas | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:aspas | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall |
T:aspas | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In instantiation of 'void aspas::internal::merger(T*&, uint32_t) [with T = int; uint32_t = unsigned int]':
api.cpp: aspas.tcc:48:21: required from 'void aspas::sort(T*, uint32_t) [with T = int; uint32_t = unsigned int]'
api.cpp: api.cpp:7:30: required from here
api.cpp: merger.tcc:187:21: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 187 | if (num & 1 == 1)
api.cpp: | ~~^~~~
api.cpp: merger.tcc:196:15: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 196 | if(count&1==1)
api.cpp: | ~^~~
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In function 'void aspas::internal::merger(T*&, uint32_t) [with T = int]':
api.cpp: merger.tcc:148:27: warning: 'stride' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~
api.cpp: merger.tcc:148:14: warning: 'way' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~~~~~
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::sort<int>(int*, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/aspas.tcc:47: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::internal::sorter<int>(int*&, unsigned int)'
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::internal::merger<int>(int*&, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:161: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O2_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:170: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: collect2: error: ld returned 1 exit status
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aspas | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In instantiation of 'void aspas::internal::merger(T*&, uint32_t) [with T = int; uint32_t = unsigned int]':
api.cpp: aspas.tcc:48:21: required from 'void aspas::sort(T*, uint32_t) [with T = int; uint32_t = unsigned int]'
api.cpp: api.cpp:7:30: required from here
api.cpp: merger.tcc:187:21: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 187 | if (num & 1 == 1)
api.cpp: | ~~^~~~
api.cpp: merger.tcc:196:15: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 196 | if(count&1==1)
api.cpp: | ~^~~
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In function 'void aspas::internal::merger(T*&, uint32_t) [with T = int]':
api.cpp: merger.tcc:148:27: warning: 'stride' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~
api.cpp: merger.tcc:148:14: warning: 'way' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~~~~~
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::sort<int>(int*, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/aspas.tcc:47: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::internal::sorter<int>(int*&, unsigned int)'
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::internal::merger<int>(int*&, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:161: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:170: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:170: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O3_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:161: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: collect2: error: ld returned 1 exit status
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aspas | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In instantiation of 'void aspas::internal::merger(T*&, uint32_t) [with T = int; uint32_t = unsigned int]':
api.cpp: aspas.tcc:48:21: required from 'void aspas::sort(T*, uint32_t) [with T = int; uint32_t = unsigned int]'
api.cpp: api.cpp:7:30: required from here
api.cpp: merger.tcc:187:21: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 187 | if (num & 1 == 1)
api.cpp: | ~~^~~~
api.cpp: merger.tcc:196:15: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 196 | if(count&1==1)
api.cpp: | ~^~~
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In function 'void aspas::internal::merger(T*&, uint32_t) [with T = int]':
api.cpp: merger.tcc:148:27: warning: 'stride' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~
api.cpp: merger.tcc:148:14: warning: 'way' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~~~~~
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::sort<int>(int*, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/aspas.tcc:47: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::internal::sorter<int>(int*&, unsigned int)'
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::internal::merger<int>(int*&, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:161: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-O_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:170: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: collect2: error: ld returned 1 exit status
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aspas | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In instantiation of 'void aspas::internal::merger(T*&, uint32_t) [with T = int; uint32_t = unsigned int]':
api.cpp: aspas.tcc:48:21: required from 'void aspas::sort(T*, uint32_t) [with T = int; uint32_t = unsigned int]'
api.cpp: api.cpp:7:30: required from here
api.cpp: merger.tcc:187:21: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 187 | if (num & 1 == 1)
api.cpp: | ~~^~~~
api.cpp: merger.tcc:196:15: warning: suggest parentheses around comparison in operand of '&' [-Wparentheses]
api.cpp: 196 | if(count&1==1)
api.cpp: | ~^~~
api.cpp: In file included from merger.h:64,
api.cpp: from aspas.tcc:32,
api.cpp: from aspas.h:204,
api.cpp: from api.cpp:3:
api.cpp: merger.tcc: In function 'void aspas::internal::merger(T*&, uint32_t) [with T = int]':
api.cpp: merger.tcc:148:27: warning: 'stride' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~
api.cpp: merger.tcc:148:14: warning: 'way' is used uninitialized in this function [-Wuninitialized]
api.cpp: 148 | uint32_t block_size = stride * way;
api.cpp: | ^~~~~~~~~~
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::sort<int>(int*, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/aspas.tcc:47: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::internal::sorter<int>(int*&, unsigned int)'
try.cpp: /usr/bin/ld: libcrypto_sort_int32.a(api.o): in function `void aspas::internal::merger<int>(int*&, unsigned int)':
try.cpp: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:161: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: /usr/bin/ld: .../supercop-data/hydra4/amd64/try/cpp/g++_-march=native_-mtune=native_-Os_-fwrapv_-fPIC_-fPIE_-gdwarf-4_-Wall/timingleaks/crypto_sort/int32/aspas/work/merger.tcc:170: undefined reference to `std::enable_if<std::is_same<int, int>::value, void>::type aspas::merge<int>(int*, unsigned int, int*, unsigned int, int*)'
try.cpp: collect2: error: ld returned 1 exit status
Number of similar (implementation,compiler) pairs: 1, namely:
Implementation | Compiler |
T:aspas | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
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: 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: int32x8 x0 = int32x8_load(&x[i]);
sort.c: ^
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c: #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: #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: int32x8 x1 = int32x8_load(&x[i+q]);
sort.c: ^
sort.c: sort.c:9:25: note: expanded from macro 'int32x8_load'
sort.c: #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: #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: 5, namely:
Implementation | Compiler |
avx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
avx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
avx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
avx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
avx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
sort.c: sort.c: In function 'int32_sort':
sort.c: sort.c:940:38: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
sort.c: 940 | for (i = q>>3;i < q>>2;++i) y[i] = _mm256_set1_epi32(0x7fffffff);
sort.c: | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sort.c: sort.c: In function 'merge16_finish':
sort.c: sort.c:55:13: note: the ABI for passing parameters with 32-byte alignment has changed in GCC 4.6
sort.c: 55 | static void merge16_finish(int32 *x,int32x8 x0,int32x8 x1,int flagdown)
sort.c: | ^~~~~~~~~~~~~~
sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:51,
sort.c: from sort.c:4:
sort.c: sort.c: In function 'minmax_vector':
sort.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:926:1: error: inlining failed in call to 'always_inline' '_mm256_storeu_si256': target specific option mismatch
sort.c: 926 | _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
sort.c: | ^~~~~~~~~~~~~~~~~~~
sort.c: sort.c:10:28: note: called from here
sort.c: 10 | #define int32x8_store(z,i) _mm256_storeu_si256((__m256i *) (z),(i))
sort.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
sort.c: sort.c:38:5: note: in expansion of macro 'int32x8_store'
sort.c: 38 | int32x8_store(y + n - 8,y0);
sort.c: | ^~~~~~~~~~~~~
sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:51,
sort.c: from sort.c:4:
sort.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:926:1: error: inlining failed in call to 'always_inline' '_mm256_storeu_si256': target specific option mismatch
sort.c: 926 | _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
sort.c: | ^~~~~~~~~~~~~~~~~~~
sort.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
avx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
avx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
avx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
avx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
sort.c: sort.c:133:17: warning: passing 'int32 [n]' to parameter of type 'uint32 *' (aka 'unsigned int *') converts between pointers to integer types with different sign [-Wpointer-sign]
sort.c: RadixSort11(x,y,n);
sort.c: ^
sort.c: sort.c:47:48: note: passing argument to parameter 'sort' here
sort.c: static void RadixSort11(uint32 *array, uint32 *sort, uint32 elements)
sort.c: ^
sort.c: 1 warning generated.
Number of similar (implementation,compiler) pairs: 5, namely:
Implementation | Compiler |
T:herf | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:herf | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:herf | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:herf | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:herf | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
sort.c: sort.c: In function 'crypto_sort_int32_herf_timingleaks':
sort.c: sort.c:133:17: warning: pointer targets in passing argument 2 of 'RadixSort11' differ in signedness [-Wpointer-sign]
sort.c: 133 | RadixSort11(x,y,n);
sort.c: | ^
sort.c: | |
sort.c: | int32 * {aka int *}
sort.c: sort.c:47:48: note: expected 'uint32 *' {aka 'unsigned int *'} but argument is of type 'int32 *' {aka 'int *'}
sort.c: 47 | static void RadixSort11(uint32 *array, uint32 *sort, uint32 elements)
sort.c: | ~~~~~~~~^~~~
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:herf | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:herf | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:herf | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:herf | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
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: __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: __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: _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: _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: _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: _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: 5, namely:
Implementation | Compiler |
oldavx2 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
oldavx2 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
oldavx2 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
oldavx2 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
oldavx2 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
int32_sort.c: int32_sort.c: In function 'minmax8':
int32_sort.c: int32_sort.c:330:11: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
int32_sort.c: 330 | __m256i a = _mm256_loadu_si256((__m256i *) x);
int32_sort.c: | ^
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:51,
int32_sort.c: from int32_sort.c:3:
int32_sort.c: int32_sort.c: In function 'minmax02through1315':
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:926:1: error: inlining failed in call to 'always_inline' '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: 926 | _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
int32_sort.c: | ^~~~~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:25:3: note: called from here
int32_sort.c: 25 | _mm256_storeu_si256((__m256i *) (x + 8),b);
int32_sort.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:51,
int32_sort.c: from int32_sort.c:3:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avxintrin.h:926:1: error: inlining failed in call to 'always_inline' '_mm256_storeu_si256': target specific option mismatch
int32_sort.c: 926 | _mm256_storeu_si256 (__m256i_u *__P, __m256i __A)
int32_sort.c: | ^~~~~~~~~~~~~~~~~~~
int32_sort.c: int32_sort.c:24:3: note: called from here
int32_sort.c: 24 | _mm256_storeu_si256((__m256i *) x,a);
int32_sort.c: | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int32_sort.c: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/include/immintrin.h:53,
int32_sort.c: from int32_sort.c:3:
int32_sort.c: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx2intrin.h:878:1: error: inlining failed in call to 'always_inline' '_mm256_unpackhi_epi64': target specific option mismatch
int32_sort.c: 878 | _mm256_unpackhi_epi64 (__m256i __A, __m256i __B)
int32_sort.c: ...
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
oldavx2 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
oldavx2 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
oldavx2 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
oldavx2 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Compiler output
merge_sort.cpp: merge_sort.cpp:162:7: error: always_inline function '_mm256_load_si256' requires target feature 'avx', but would be inlined into function 'initialize' that is compiled without support for 'avx'
merge_sort.cpp: _mm256_load_si256((__m256i *) &load_store_mask[0]);
merge_sort.cpp: ^
merge_sort.cpp: merge_sort.cpp:162:7: error: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI
merge_sort.cpp: merge_sort.cpp:167:31: warning: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
merge_sort.cpp: global_masks.rev_idx_mask = load_reg256(&rev_idx_mask[0]);
merge_sort.cpp: ^
merge_sort.cpp: merge_sort.cpp:168:27: warning: AVX vector return of type '__m256i' (vector of 4 'long long' values) without 'avx' enabled changes the ABI [-Wpsabi]
merge_sort.cpp: global_masks.swap_128 = load_reg256(&swap_128[0]);
merge_sort.cpp: ^
merge_sort.cpp: 2 warnings and 2 errors generated.
Number of similar (implementation,compiler) pairs: 4, namely:
Implementation | Compiler |
T:sid1607 | clang++ -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:sid1607 | clang++ -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
T:sid1607 | clang++ -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall |
T:sid1607 | clang++ -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
Compiler output
api.cpp: In file included from api.cpp:3:
api.cpp: merge_sort.h: In function '__m256i load_reg256(int*)':
api.cpp: merge_sort.h:17:34: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
api.cpp: 17 | inline __m256i load_reg256(int *a) {
api.cpp: | ^
merge_sort.cpp: In file included from merge_sort.cpp:1:
merge_sort.cpp: merge_sort.h: In function '__m256i load_reg256(int*)':
merge_sort.cpp: merge_sort.h:17:34: warning: AVX vector return without AVX enabled changes the ABI [-Wpsabi]
merge_sort.cpp: 17 | inline __m256i load_reg256(int *a) {
merge_sort.cpp: | ^
merge_sort.cpp: In file included from /usr/lib/gcc/x86_64-linux-gnu/10/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/10/include/avx2intrin.h: In function '__m256i reverse(__m256i&)':
merge_sort.cpp: /usr/lib/gcc/x86_64-linux-gnu/10/include/avx2intrin.h:1041:1: error: inlining failed in call to 'always_inline' '__m256i _mm256_permutevar8x32_epi32(__m256i, __m256i)': target specific option mismatch
merge_sort.cpp: 1041 | _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:
Implementation | Compiler |
T:sid1607 | g++ -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:sid1607 | g++ -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:sid1607 | g++ -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
T:sid1607 | g++ -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
Passed TIMECOP
TIMECOP iterations: 10
Number of similar (implementation,compiler) pairs: 54, namely:
Implementation | Compiler |
compact | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
compact | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
compact | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
compact | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
compact | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
compact | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
compact | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
compact | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
compact | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable3 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable3 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable3 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable3 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable3 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable3 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable3 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable3 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable3 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable4 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable4 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable4 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable4 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable4 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable4 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable4 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable4 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable4 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable5 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable5 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable5 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable5 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable5 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
portable5 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable5 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable5 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
portable5 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x86 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x86 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x86 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x86 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x86 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x86 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x86 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x86 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x86 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x863 | clang -march=native -O2 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x863 | clang -march=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x863 | clang -march=native -O -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x863 | clang -march=native -Os -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x863 | clang -mcpu=native -O3 -fwrapv -Qunused-arguments -fPIC -fPIE -gdwarf-4 -Wall (Debian_Clang_11.0.1) |
x863 | gcc -march=native -mtune=native -O2 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x863 | gcc -march=native -mtune=native -O3 -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x863 | gcc -march=native -mtune=native -O -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |
x863 | gcc -march=native -mtune=native -Os -fwrapv -fPIC -fPIE -gdwarf-4 -Wall (10.2.1_20210110) |