Commit e688792d2b for ffmpeg

commit e688792d2b0c39eb3a6693cfe4e292c60dd303e5
Author: Kacper Michajłow <kasper93@gmail.com>
Date:   Tue Sep 22 18:34:18 2026 +0200

    tests/fate/libavutil: run the test programs that were only built

    error, lls, log, pca, rational, softfloat and utf8 were compiled by
    make testprogs but never executed.

    Signed-off-by: Kacper Michajłow <kasper93@gmail.com>

diff --git a/tests/fate/libavutil.mak b/tests/fate/libavutil.mak
index b0af093d25..d45c7f5d89 100644
--- a/tests/fate/libavutil.mak
+++ b/tests/fate/libavutil.mak
@@ -107,6 +107,10 @@ fate-encryption-info: libavutil/tests/encryption_info$(EXESUF)
 fate-encryption-info: CMD = run libavutil/tests/encryption_info$(EXESUF)
 fate-encryption-info: CMP = null

+FATE_LIBAVUTIL += fate-error
+fate-error: libavutil/tests/error$(EXESUF)
+fate-error: CMD = run libavutil/tests/error$(EXESUF)
+
 FATE_LIBAVUTIL += fate-eval
 fate-eval: libavutil/tests/eval$(EXESUF)
 fate-eval: CMD = run libavutil/tests/eval$(EXESUF)
@@ -148,6 +152,15 @@ FATE_LIBAVUTIL += fate-lfg
 fate-lfg: libavutil/tests/lfg$(EXESUF)
 fate-lfg: CMD = run libavutil/tests/lfg$(EXESUF)

+FATE_LIBAVUTIL += fate-lls
+fate-lls: libavutil/tests/lls$(EXESUF)
+fate-lls: CMD = run libavutil/tests/lls$(EXESUF)
+
+FATE_LIBAVUTIL += fate-log
+fate-log: libavutil/tests/log$(EXESUF)
+fate-log: CMD = run libavutil/tests/log$(EXESUF)
+fate-log: CMP = null
+
 FATE_LIBAVUTIL += fate-mastering_display_metadata
 fate-mastering_display_metadata: libavutil/tests/mastering_display_metadata$(EXESUF)
 fate-mastering_display_metadata: CMD = run libavutil/tests/mastering_display_metadata$(EXESUF)
@@ -168,6 +181,10 @@ FATE_LIBAVUTIL += fate-parseutils
 fate-parseutils: libavutil/tests/parseutils$(EXESUF)
 fate-parseutils: CMD = run libavutil/tests/parseutils$(EXESUF)

+FATE_LIBAVUTIL += fate-pca
+fate-pca: libavutil/tests/pca$(EXESUF)
+fate-pca: CMD = run libavutil/tests/pca$(EXESUF)
+
 FATE_LIBAVUTIL += fate-pixdesc
 fate-pixdesc: libavutil/tests/pixdesc$(EXESUF)
 fate-pixdesc: CMD = run libavutil/tests/pixdesc$(EXESUF)
@@ -188,6 +205,11 @@ FATE_LIBAVUTIL += fate-random_seed
 fate-random_seed: libavutil/tests/random_seed$(EXESUF)
 fate-random_seed: CMD = run libavutil/tests/random_seed$(EXESUF)

+FATE_LIBAVUTIL += fate-rational
+fate-rational: libavutil/tests/rational$(EXESUF)
+fate-rational: CMD = run libavutil/tests/rational$(EXESUF)
+fate-rational: CMP = null
+
 FATE_LIBAVUTIL += fate-rc4
 fate-rc4: libavutil/tests/rc4$(EXESUF)
 fate-rc4: CMD = run libavutil/tests/rc4$(EXESUF)
@@ -216,6 +238,10 @@ FATE_LIBAVUTIL += fate-side_data_array
 fate-side_data_array: libavutil/tests/side_data_array$(EXESUF)
 fate-side_data_array: CMD = run libavutil/tests/side_data_array$(EXESUF)

+FATE_LIBAVUTIL += fate-softfloat
+fate-softfloat: libavutil/tests/softfloat$(EXESUF)
+fate-softfloat: CMD = run libavutil/tests/softfloat$(EXESUF)
+
 FATE_LIBAVUTIL += fate-spherical
 fate-spherical: libavutil/tests/spherical$(EXESUF)
 fate-spherical: CMD = run libavutil/tests/spherical$(EXESUF)
@@ -250,6 +276,10 @@ FATE_LIBAVUTIL += fate-opt
 fate-opt: libavutil/tests/opt$(EXESUF)
 fate-opt: CMD = run libavutil/tests/opt$(EXESUF)

+FATE_LIBAVUTIL += fate-utf8
+fate-utf8: libavutil/tests/utf8$(EXESUF)
+fate-utf8: CMD = run libavutil/tests/utf8$(EXESUF)
+
 FATE_LIBAVUTIL += fate-uuid
 fate-uuid: libavutil/tests/uuid$(EXESUF)
 fate-uuid: CMD = run libavutil/tests/uuid$(EXESUF)
diff --git a/tests/ref/fate/error b/tests/ref/fate/error
new file mode 100644
index 0000000000..5774451bcc
--- /dev/null
+++ b/tests/ref/fate/error
@@ -0,0 +1,29 @@
+-1179861752: Bitstream filter not found [BSF_NOT_FOUND]
+-558323010: Internal bug, should not have happened [BUG]
+-541545794: Internal bug, should not have happened [BUG2]
+-1397118274: Buffer too small [BUFFER_TOO_SMALL]
+-1128613112: Decoder not found [DECODER_NOT_FOUND]
+-1296385272: Demuxer not found [DEMUXER_NOT_FOUND]
+-1129203192: Encoder not found [ENCODER_NOT_FOUND]
+-541478725: End of file [EOF]
+-1414092869: Immediate exit requested [EXIT]
+-542398533: Generic error in an external library [EXTERNAL]
+-1279870712: Filter not found [FILTER_NOT_FOUND]
+-1668179713: Input changed [INPUT_CHANGED]
+-1094995529: Invalid data found when processing input [INVALIDDATA]
+-1481985528: Muxer not found [MUXER_NOT_FOUND]
+-1414549496: Option not found [OPTION_NOT_FOUND]
+-1668179714: Output changed [OUTPUT_CHANGED]
+-1163346256: Not yet implemented in FFmpeg, patches welcome [PATCHWELCOME]
+-1330794744: Protocol not found [PROTOCOL_NOT_FOUND]
+-1381258232: Stream not found [STREAM_NOT_FOUND]
+-1313558101: Unknown error occurred [UNKNOWN]
+-733130664: Experimental feature [EXPERIMENTAL]
+-1668179713: Input changed [INPUT_AND_OUTPUT_CHANGED]
+-808465656: Server returned 400 Bad Request [HTTP_BAD_REQUEST]
+-825242872: Server returned 401 Unauthorized (authorization failed) [HTTP_UNAUTHORIZED]
+-858797304: Server returned 403 Forbidden (access denied) [HTTP_FORBIDDEN]
+-875574520: Server returned 404 Not Found [HTTP_NOT_FOUND]
+-959591672: Server returned 429 Too Many Requests [HTTP_TOO_MANY_REQUESTS]
+-1482175736: Server returned 4XX Client Error, but not one of 40{0,1,3,4} [HTTP_OTHER_4XX]
+-1482175992: Server returned 5XX Server Error reply [HTTP_SERVER_ERROR]
diff --git a/tests/ref/fate/lls b/tests/ref/fate/lls
new file mode 100644
index 0000000000..fc06f87115
--- /dev/null
+++ b/tests/ref/fate/lls
@@ -0,0 +1,300 @@
+real:-0.828987 order:0 pred:-0.828987 var:0.000000 coeffs:2.166433  0.000000  0.000000
+real:-0.828987 order:1 pred:-0.828987 var:0.000000 coeffs:2.166433  0.000000  0.000000
+real:-0.828987 order:2 pred:-0.828987 var:0.000000 coeffs:2.166433  0.000000  0.000000
+real:-0.326534 order:0 pred:-0.588792 var:0.272632 coeffs:1.427836 -0.385559  0.000000
+real:-0.326534 order:1 pred:-0.326534 var:0.000000 coeffs:3.274787 -1.436430  0.000000
+real:-0.326534 order:2 pred:-0.326534 var:0.000000 coeffs:3.274787 -1.436430  0.000000
+real:-0.496309 order:0 pred:-0.560478 var:0.227332 coeffs:1.343229 -0.128675 -0.372131
+real:-0.496309 order:1 pred:-0.649268 var:0.214850 coeffs:1.541607 -0.245332  0.000000
+real:-0.496309 order:2 pred:-0.496309 var:0.000000 coeffs:1.629421  0.626407 -0.697480
+real: 0.386201 order:0 pred: 0.644642 var:0.263532 coeffs:1.005471 -0.232581 -0.189366
+real: 0.386201 order:1 pred: 0.590550 var:0.236486 coeffs:1.416443 -0.420822  0.000000
+real: 0.386201 order:2 pred: 0.653364 var:0.216704 coeffs:1.417320 -0.084129 -0.312548
+real:-0.193176 order:0 pred:-0.419259 var:0.261372 coeffs:0.886941 -0.255165 -0.256307
+real:-0.193176 order:1 pred:-0.397912 var:0.235146 coeffs:1.347037 -0.459663  0.000000
+real:-0.193176 order:2 pred:-0.320068 var:0.205317 coeffs:1.374542 -0.016455 -0.397716
+real:-0.819346 order:0 pred:-0.817295 var:0.238602 coeffs:0.888617 -0.244921 -0.265042
+real:-0.819346 order:1 pred:-0.767249 var:0.216640 coeffs:1.354697 -0.424767  0.000000
+real:-0.819346 order:2 pred:-0.835666 var:0.187683 coeffs:1.371228 -0.042115 -0.384499
+real:-0.697642 order:0 pred:-0.475989 var:0.238158 coeffs:0.945246 -0.128647 -0.377407
+real:-0.697642 order:1 pred:-0.426975 var:0.233141 coeffs:1.181630 -0.204018  0.000000
+real:-0.697642 order:2 pred:-0.571741 var:0.184410 coeffs:1.295268  0.165694 -0.490134
+real: 0.671639 order:0 pred: 0.851210 var:0.235395 coeffs:0.865894 -0.172820 -0.414246
+real: 0.671639 order:1 pred: 0.819457 var:0.227327 coeffs:1.189691 -0.267353  0.000000
+real: 0.671639 order:2 pred: 0.719424 var:0.173861 coeffs:1.303358  0.163061 -0.513787
+real: 0.505220 order:0 pred: 0.769476 var:0.243622 coeffs:0.784684 -0.091304 -0.508743
+real: 0.505220 order:1 pred: 0.789639 var:0.241713 coeffs:0.944040 -0.136693  0.000000
+real: 0.505220 order:2 pred: 0.630345 var:0.172243 coeffs:1.211361  0.281405 -0.586439
+real: 0.646869 order:0 pred: 0.405190 var:0.244144 coeffs:0.813667 -0.048322 -0.570249
+real: 0.646869 order:1 pred: 0.397323 var:0.243665 coeffs:0.897756 -0.071321  0.000000
+real: 0.646869 order:2 pred: 0.612396 var:0.163872 coeffs:1.213071  0.303110 -0.604217
+real: 0.838898 order:0 pred: 0.953519 var:0.236189 coeffs:0.781903  0.045694 -0.541937
+real: 0.838898 order:1 pred: 0.928701 var:0.235787 coeffs:0.726915  0.052472  0.000000
+real: 0.838898 order:2 pred: 0.986385 var:0.169988 coeffs:0.913062  0.483347 -0.566983
+real: 0.427629 order:0 pred: 0.186681 var:0.236686 coeffs:0.791554  0.057075 -0.413636
+real: 0.427629 order:1 pred: 0.189364 var:0.236112 coeffs:0.722840  0.065468  0.000000
+real: 0.427629 order:2 pred: 0.036153 var:0.203693 coeffs:0.852069  0.379016 -0.401598
+real: 0.630997 order:0 pred: 0.518520 var:0.229679 coeffs:0.803763  0.069837 -0.427707
+real: 0.630997 order:1 pred: 0.526137 var:0.228860 coeffs:0.719394  0.079595  0.000000
+real: 0.630997 order:2 pred: 0.639161 var:0.195717 coeffs:0.851578  0.376072 -0.399236
+real: 0.230755 order:0 pred: 0.412679 var:0.226826 coeffs:0.788797  0.154229 -0.437540
+real: 0.230755 order:1 pred: 0.336289 var:0.223049 coeffs:0.634356  0.151631  0.000000
+real: 0.230755 order:2 pred: 0.301630 var:0.189938 coeffs:0.796911  0.429929 -0.406615
+real: 0.397893 order:0 pred: 0.364459 var:0.219310 coeffs:0.791119  0.146737 -0.436564
+real: 0.397893 order:1 pred: 0.341176 var:0.216013 coeffs:0.647719  0.142379  0.000000
+real: 0.397893 order:2 pred: 0.458829 var:0.184271 coeffs:0.775826  0.428350 -0.389785
+real:-0.524796 order:0 pred:-0.379840 var:0.215516 coeffs:0.801159  0.103667 -0.435614
+real:-0.524796 order:1 pred:-0.353471 var:0.213952 coeffs:0.705119  0.097169  0.000000
+real:-0.524796 order:2 pred:-0.351303 var:0.184162 coeffs:0.833672  0.381942 -0.388931
+real:-0.003007 order:0 pred: 0.252175 var:0.218176 coeffs:0.789632  0.143953 -0.369571
+real:-0.003007 order:1 pred: 0.229010 var:0.215364 coeffs:0.659080  0.133146  0.000000
+real:-0.003007 order:2 pred: 0.312179 var:0.195825 coeffs:0.748724  0.381181 -0.321143
+real:-0.062503 order:0 pred: 0.277550 var:0.226928 coeffs:0.772600  0.011420 -0.329814
+real:-0.062503 order:1 pred: 0.281606 var:0.226912 coeffs:0.762728  0.009861  0.000000
+real:-0.062503 order:2 pred: 0.312656 var:0.213180 coeffs:0.851665  0.218941 -0.285109
+real:-0.928055 order:0 pred:-0.372199 var:0.255970 coeffs:0.807683 -0.148801 -0.299786
+real:-0.928055 order:1 pred:-0.413756 var:0.253684 coeffs:0.928421 -0.123222  0.000000
+real:-0.928055 order:2 pred:-0.398366 var:0.244183 coeffs:1.014101  0.062559 -0.258769
+real:-0.970030 order:0 pred:-1.088345 var:0.251243 coeffs:0.785875 -0.136316 -0.220239
+real:-0.970030 order:1 pred:-1.099254 var:0.249388 coeffs:0.894027 -0.112429  0.000000
+real:-0.970030 order:2 pred:-1.174973 var:0.244477 coeffs:0.931920  0.019760 -0.175312
+real:-0.213946 order:0 pred: 0.022550 var:0.250561 coeffs:0.785155 -0.079985 -0.119158
+real:-0.213946 order:1 pred: 0.040433 var:0.249953 coeffs:0.846953 -0.064299  0.000000
+real:-0.213946 order:2 pred: 0.079653 var:0.248596 coeffs:0.858993  0.010439 -0.089278
+real:-0.901990 order:0 pred:-0.814524 var:0.245589 coeffs:0.794660 -0.075448 -0.089286
+real:-0.901990 order:1 pred:-0.811075 var:0.245061 coeffs:0.853260 -0.060581  0.000000
+real:-0.901990 order:2 pred:-0.788538 var:0.244321 coeffs:0.863519 -0.005681 -0.064479
+real:-0.052210 order:0 pred:-0.170151 var:0.241452 coeffs:0.792244 -0.097536 -0.113901
+real:-0.052210 order:1 pred:-0.150713 var:0.240594 coeffs:0.866871 -0.076738  0.000000
+real:-0.052210 order:2 pred:-0.119568 var:0.239418 coeffs:0.875132 -0.004390 -0.078972
+real: 0.639718 order:0 pred: 0.604742 var:0.236482 coeffs:0.794771 -0.103875 -0.112120
+real: 0.639718 order:1 pred: 0.636286 var:0.235529 coeffs:0.868004 -0.077649  0.000000
+real: 0.639718 order:2 pred: 0.658164 var:0.234414 coeffs:0.868728 -0.002230 -0.075989
+real: 0.833118 order:0 pred: 0.313633 var:0.254216 coeffs:0.812817 -0.113999 -0.263191
+real: 0.833118 order:1 pred: 0.315829 var:0.253192 coeffs:0.893095 -0.085201  0.000000
+real: 0.833118 order:2 pred: 0.394239 var:0.247660 coeffs:0.890912  0.084830 -0.170162
+real:-0.353604 order:0 pred:-0.176128 var:0.251708 coeffs:0.816219 -0.118130 -0.287631
+real:-0.353604 order:1 pred:-0.178888 var:0.250639 coeffs:0.899331 -0.088264  0.000000
+real:-0.353604 order:2 pred:-0.224391 var:0.244209 coeffs:0.895351  0.096002 -0.183610
+real: 0.814291 order:0 pred: 0.574432 var:0.251458 coeffs:0.830889 -0.119747 -0.249363
+real: 0.814291 order:1 pred: 0.575208 var:0.250400 coeffs:0.915090 -0.089470  0.000000
+real: 0.814291 order:2 pred: 0.539932 var:0.245758 coeffs:0.914001  0.068427 -0.157513
+real: 0.682850 order:0 pred: 0.475706 var:0.250094 coeffs:0.840836 -0.149758 -0.204431
+real: 0.682850 order:1 pred: 0.497774 var:0.248487 coeffs:0.943898 -0.110638  0.000000
+real: 0.682850 order:2 pred: 0.456273 var:0.245466 coeffs:0.949485  0.011229 -0.126305
+real:-0.926620 order:0 pred:-0.643276 var:0.251569 coeffs:0.858383 -0.143622 -0.180347
+real:-0.926620 order:1 pred:-0.640320 var:0.250151 coeffs:0.957383 -0.106082  0.000000
+real:-0.926620 order:2 pred:-0.626222 var:0.247899 coeffs:0.962960  0.001308 -0.111068
+real:-0.258917 order:0 pred:-0.309232 var:0.247513 coeffs:0.856949 -0.146436 -0.173184
+real:-0.258917 order:1 pred:-0.300356 var:0.246065 coeffs:0.957955 -0.107959  0.000000
+real:-0.258917 order:2 pred:-0.323259 var:0.244025 coeffs:0.963578 -0.006792 -0.105706
+real: 0.477848 order:0 pred: 0.301952 var:0.245549 coeffs:0.861766 -0.108873 -0.171989
+real: 0.477848 order:1 pred: 0.280671 var:0.244769 coeffs:0.935983 -0.078703  0.000000
+real: 0.477848 order:2 pred: 0.279682 var:0.242812 coeffs:0.941458  0.021912 -0.104975
+real:-0.510115 order:0 pred:-0.398674 var:0.242496 coeffs:0.865740 -0.130960 -0.184497
+real:-0.510115 order:1 pred:-0.427306 var:0.241389 coeffs:0.951796 -0.092341  0.000000
+real:-0.510115 order:2 pred:-0.459140 var:0.239175 coeffs:0.951495  0.019104 -0.110804
+real: 0.748755 order:0 pred: 0.414613 var:0.245893 coeffs:0.877762 -0.058292 -0.134888
+real: 0.748755 order:1 pred: 0.402635 var:0.245683 coeffs:0.915667 -0.040210  0.000000
+real: 0.748755 order:2 pred: 0.385055 var:0.244559 coeffs:0.913614  0.043177 -0.080276
+real: 0.853146 order:0 pred: 0.344285 var:0.257654 coeffs:0.892465 -0.153664 -0.206363
+real: 0.853146 order:1 pred: 0.373079 var:0.256303 coeffs:0.989763 -0.104099  0.000000
+real: 0.853146 order:2 pred: 0.402999 var:0.253848 coeffs:0.982039  0.026043 -0.121452
+real: 0.558712 order:0 pred: 0.835073 var:0.258494 coeffs:0.872881 -0.187788 -0.189840
+real: 0.558712 order:1 pred: 0.812607 var:0.256538 coeffs:0.992466 -0.126241  0.000000
+real: 0.558712 order:2 pred: 0.823735 var:0.254523 coeffs:0.985492 -0.007712 -0.111519
+real: 0.495069 order:0 pred: 0.745996 var:0.258464 coeffs:0.857741 -0.208964 -0.144121
+real: 0.495069 order:1 pred: 0.728704 var:0.256107 coeffs:0.991375 -0.139969  0.000000
+real: 0.495069 order:2 pred: 0.753553 var:0.254978 coeffs:0.986048 -0.052876 -0.083317
+real:-0.847274 order:0 pred:-0.626967 var:0.257595 coeffs:0.868227 -0.252837 -0.123367
+real:-0.847274 order:1 pred:-0.681237 var:0.254219 coeffs:1.023435 -0.165272  0.000000
+real:-0.847274 order:2 pred:-0.667688 var:0.253409 coeffs:1.021521 -0.093274 -0.070851
+real: 0.732250 order:0 pred: 0.723075 var:0.254187 coeffs:0.868714 -0.247558 -0.128723
+real: 0.732250 order:1 pred: 0.781849 var:0.250995 coeffs:1.013024 -0.156987  0.000000
+real: 0.732250 order:2 pred: 0.767256 var:0.250125 coeffs:1.014105 -0.084839 -0.073398
+real: 0.854238 order:0 pred: 0.892120 var:0.250985 coeffs:0.866333 -0.249874 -0.129765
+real: 0.854238 order:1 pred: 0.835958 var:0.247776 coeffs:1.011551 -0.154135  0.000000
+real: 0.854238 order:2 pred: 0.863721 var:0.246903 coeffs:1.014849 -0.087632 -0.072061
+real: 0.128783 order:0 pred: 0.177708 var:0.247949 coeffs:0.865758 -0.253738 -0.131498
+real: 0.128783 order:1 pred: 0.108332 var:0.244682 coeffs:1.008405 -0.150540  0.000000
+real: 0.128783 order:2 pred: 0.129368 var:0.243797 coeffs:1.014937 -0.087788 -0.072004
+real:-0.687176 order:0 pred:-0.724514 var:0.244979 coeffs:0.863967 -0.256417 -0.131282
+real:-0.687176 order:1 pred:-0.696076 var:0.241684 coeffs:1.008559 -0.151153  0.000000
+real:-0.687176 order:2 pred:-0.675786 var:0.240813 coeffs:1.014646 -0.087900 -0.070975
+real:-0.739125 order:0 pred:-0.939293 var:0.244138 coeffs:0.851834 -0.270116 -0.159493
+real:-0.739125 order:1 pred:-0.921187 var:0.240554 coeffs:1.004883 -0.158846  0.000000
+real:-0.739125 order:2 pred:-0.896778 var:0.239292 coeffs:1.012677 -0.081940 -0.085137
+real: 0.507156 order:0 pred: 0.132038 var:0.247980 coeffs:0.854820 -0.324186 -0.129772
+real: 0.507156 order:1 pred: 0.181435 var:0.243002 coeffs:1.035964 -0.188414  0.000000
+real: 0.507156 order:2 pred: 0.170125 var:0.242194 coeffs:1.043360 -0.127110 -0.069002
+real:-0.471621 order:0 pred:-0.781593 var:0.249754 coeffs:0.839977 -0.278769 -0.135313
+real:-0.471621 order:1 pred:-0.818174 var:0.246193 coeffs:0.992584 -0.160555  0.000000
+real:-0.471621 order:2 pred:-0.816134 var:0.245347 coeffs:1.000551 -0.096804 -0.071940
+real:-0.400683 order:0 pred:-0.398789 var:0.246964 coeffs:0.840021 -0.276427 -0.130292
+real:-0.400683 order:1 pred:-0.365041 var:0.243502 coeffs:0.990991 -0.158001  0.000000
+real:-0.400683 order:2 pred:-0.350326 var:0.242726 coeffs:0.997954 -0.095965 -0.068816
+real:-0.771989 order:0 pred:-0.719337 var:0.244393 coeffs:0.842212 -0.280679 -0.121663
+real:-0.771989 order:1 pred:-0.750119 var:0.240863 coeffs:0.993266 -0.159430  0.000000
+real:-0.771989 order:2 pred:-0.722825 var:0.240194 coeffs:1.002433 -0.104835 -0.062539
+real:-0.239982 order:0 pred:-0.517646 var:0.245208 coeffs:0.834104 -0.340736 -0.155665
+real:-0.239982 order:1 pred:-0.434962 var:0.240118 coeffs:1.014311 -0.187652  0.000000
+real:-0.239982 order:2 pred:-0.408481 var:0.239042 coeffs:1.022997 -0.115069 -0.078754
+real:-0.673879 order:0 pred:-0.699182 var:0.242669 coeffs:0.833122 -0.338137 -0.162693
+real:-0.673879 order:1 pred:-0.722229 var:0.237710 coeffs:1.010632 -0.185773  0.000000
+real:-0.673879 order:2 pred:-0.687012 var:0.236547 coeffs:1.022166 -0.113149 -0.080284
+real: 0.303104 order:0 pred: 0.478861 var:0.241508 coeffs:0.828576 -0.352732 -0.157339
+real: 0.303104 order:1 pred: 0.447274 var:0.236193 coeffs:1.013809 -0.193002  0.000000
+real: 0.303104 order:2 pred: 0.452872 var:0.235121 coeffs:1.025080 -0.123093 -0.077591
+real:-0.722316 order:0 pred:-0.498196 var:0.241205 coeffs:0.834477 -0.395507 -0.163294
+real:-0.722316 order:1 pred:-0.589230 var:0.234631 coeffs:1.034111 -0.210503  0.000000
+real:-0.722316 order:2 pred:-0.596214 var:0.233491 coeffs:1.044732 -0.137102 -0.080449
+real: 0.849617 order:0 pred: 0.546192 var:0.242647 coeffs:0.843012 -0.367722 -0.217502
+real: 0.849617 order:1 pred: 0.514865 var:0.237120 coeffs:1.028816 -0.194991  0.000000
+real: 0.849617 order:2 pred: 0.550645 var:0.235156 coeffs:1.043331 -0.100247 -0.105657
+real: 0.428214 order:0 pred: 0.341605 var:0.240604 coeffs:0.844506 -0.369417 -0.197099
+real: 0.428214 order:1 pred: 0.349107 var:0.235087 coeffs:1.030998 -0.195849  0.000000
+real: 0.428214 order:2 pred: 0.309629 var:0.233493 coeffs:1.044971 -0.112173 -0.093792
+real:-0.888929 order:0 pred:-0.396992 var:0.247802 coeffs:0.854188 -0.265236 -0.253082
+real:-0.888929 order:1 pred:-0.345170 var:0.245109 coeffs:0.986502 -0.137882  0.000000
+real:-0.888929 order:2 pred:-0.370454 var:0.242632 coeffs:1.006419 -0.033699 -0.119799
+real: 0.479080 order:0 pred: 0.226084 var:0.247906 coeffs:0.856988 -0.220977 -0.292152
+real: 0.479080 order:1 pred: 0.190553 var:0.246076 coeffs:0.966178 -0.113375  0.000000
+real: 0.479080 order:2 pred: 0.231507 var:0.242843 coeffs:0.991821  0.002189 -0.136887
+real:-0.999723 order:0 pred:-1.166530 var:0.246751 coeffs:0.847381 -0.189276 -0.275134
+real:-0.999723 order:1 pred:-1.196660 var:0.245428 coeffs:0.937883 -0.095773  0.000000
+real:-0.999723 order:2 pred:-1.216971 var:0.242608 coeffs:0.959041  0.014545 -0.128523
+real:-0.449408 order:0 pred:-0.751376 var:0.247948 coeffs:0.836871 -0.240450 -0.303586
+real:-0.449408 order:1 pred:-0.709566 var:0.245857 coeffs:0.951490 -0.119755  0.000000
+real:-0.449408 order:2 pred:-0.676459 var:0.242487 coeffs:0.972956  0.004251 -0.140913
+real:-0.855769 order:0 pred:-0.695050 var:0.246707 coeffs:0.841859 -0.222264 -0.298336
+real:-0.855769 order:1 pred:-0.672279 var:0.244944 coeffs:0.947944 -0.110100  0.000000
+real:-0.855769 order:2 pred:-0.664226 var:0.241736 coeffs:0.968876  0.012139 -0.138424
+real: 0.510468 order:0 pred: 0.220157 var:0.247531 coeffs:0.844632 -0.162354 -0.329557
+real: 0.510468 order:1 pred: 0.189040 var:0.246611 coeffs:0.920980 -0.078929  0.000000
+real: 0.510468 order:2 pred: 0.221261 var:0.242785 coeffs:0.946689  0.052304 -0.152147
+real:-0.037038 order:0 pred:-0.257147 var:0.247097 coeffs:0.842175 -0.169037 -0.290205
+real:-0.037038 order:1 pred:-0.251974 var:0.246115 coeffs:0.921686 -0.082139  0.000000
+real:-0.037038 order:2 pred:-0.298996 var:0.243198 coeffs:0.944179  0.031188 -0.132202
+real:-0.685151 order:0 pred:-0.965214 var:0.247813 coeffs:0.830313 -0.129347 -0.273679
+real:-0.685151 order:1 pred:-0.982022 var:0.247249 coeffs:0.889901 -0.062293  0.000000
+real:-0.685151 order:2 pred:-0.995939 var:0.244712 coeffs:0.909594  0.045362 -0.124501
+real:-0.760963 order:0 pred:-0.870811 var:0.246191 coeffs:0.826292 -0.150866 -0.265666
+real:-0.760963 order:1 pred:-0.838135 var:0.245432 coeffs:0.895276 -0.070865  0.000000
+real:-0.760963 order:2 pred:-0.860156 var:0.243063 coeffs:0.915855  0.030800 -0.120402
+real: 0.219888 order:0 pred: 0.356800 var:0.244819 coeffs:0.824311 -0.130747 -0.287719
+real: 0.219888 order:1 pred: 0.374558 var:0.244256 coeffs:0.883281 -0.060842  0.000000
+real: 0.219888 order:2 pred: 0.328046 var:0.241507 coeffs:0.908874  0.044763 -0.128637
+real: 0.693888 order:0 pred: 0.302142 var:0.247854 coeffs:0.829055 -0.079935 -0.267078
+real: 0.693888 order:1 pred: 0.292034 var:0.247650 coeffs:0.864939 -0.036897  0.000000
+real: 0.693888 order:2 pred: 0.278829 var:0.245353 coeffs:0.888064  0.061796 -0.119260
+real:-0.238932 order:0 pred:-0.433853 var:0.247125 coeffs:0.825667 -0.089630 -0.292470
+real:-0.238932 order:1 pred:-0.429390 var:0.246871 coeffs:0.865930 -0.041320  0.000000
+real:-0.238932 order:2 pred:-0.386389 var:0.244149 coeffs:0.890751  0.066567 -0.129162
+real: 0.559537 order:0 pred: 0.755299 var:0.246450 coeffs:0.819753 -0.102088 -0.297625
+real: 0.559537 order:1 pred: 0.748886 var:0.246124 coeffs:0.865714 -0.046968  0.000000
+real: 0.559537 order:2 pred: 0.740868 var:0.243340 coeffs:0.890972  0.063019 -0.131390
+real: 0.267426 order:0 pred: 0.190705 var:0.244758 coeffs:0.820322 -0.091891 -0.291937
+real: 0.267426 order:1 pred: 0.179436 var:0.244497 coeffs:0.861463 -0.041957  0.000000
+real: 0.267426 order:2 pred: 0.162537 var:0.241841 coeffs:0.885380  0.066706 -0.128659
+real:-0.912624 order:0 pred:-0.873112 var:0.242974 coeffs:0.821659 -0.096275 -0.292511
+real:-0.912624 order:1 pred:-0.885196 var:0.242689 coeffs:0.864001 -0.043599  0.000000
+real:-0.912624 order:2 pred:-0.891796 var:0.240044 coeffs:0.887347  0.065644 -0.128877
+real: 0.789354 order:0 pred: 0.664720 var:0.241664 coeffs:0.824747 -0.102905 -0.268907
+real: 0.789354 order:1 pred: 0.670199 var:0.241341 coeffs:0.869803 -0.046534  0.000000
+real: 0.789354 order:2 pred: 0.626786 var:0.239128 coeffs:0.893091  0.051476 -0.116888
+real: 0.940074 order:0 pred: 0.417138 var:0.248089 coeffs:0.832641 -0.137834 -0.199593
+real: 0.940074 order:1 pred: 0.426336 var:0.247533 coeffs:0.892716 -0.062188  0.000000
+real: 0.940074 order:2 pred: 0.400601 var:0.246364 coeffs:0.911003  0.009160 -0.086025
+real:-0.135795 order:0 pred:-0.193873 var:0.246408 coeffs:0.832236 -0.132965 -0.205141
+real:-0.135795 order:1 pred:-0.204072 var:0.245895 coeffs:0.889947 -0.059814  0.000000
+real:-0.135795 order:2 pred:-0.184905 var:0.244670 coeffs:0.909437  0.012527 -0.088027
+real:-0.380152 order:0 pred:-0.575615 var:0.245780 coeffs:0.828180 -0.170820 -0.219703
+real:-0.380152 order:1 pred:-0.540524 var:0.244943 coeffs:0.901445 -0.075181  0.000000
+real:-0.380152 order:2 pred:-0.520535 var:0.243551 coeffs:0.920794  0.003871 -0.093861
+real: 0.767799 order:0 pred: 0.515128 var:0.245897 coeffs:0.832780 -0.219118 -0.260502
+real: 0.767799 order:1 pred: 0.559634 var:0.244538 coeffs:0.923968 -0.094404  0.000000
+real: 0.767799 order:2 pred: 0.614095 var:0.242603 coeffs:0.940482  0.002169 -0.108694
+real:-0.449221 order:0 pred:-0.127159 var:0.247101 coeffs:0.834209 -0.240424 -0.279751
+real:-0.449221 order:1 pred:-0.143428 var:0.245494 coeffs:0.933963 -0.103346  0.000000
+real:-0.449221 order:2 pred:-0.161440 var:0.243301 coeffs:0.951071  0.000674 -0.116482
+real: 0.834714 order:0 pred: 0.563835 var:0.247464 coeffs:0.839501 -0.188273 -0.330164
+real: 0.834714 order:1 pred: 0.530670 var:0.246494 coeffs:0.917027 -0.079647  0.000000
+real: 0.834714 order:2 pred: 0.587549 var:0.243488 coeffs:0.940071  0.036764 -0.135322
+real:-0.645754 order:0 pred:-0.848549 var:0.246955 coeffs:0.833574 -0.223517 -0.334721
+real:-0.645754 order:1 pred:-0.807251 var:0.245602 coeffs:0.925188 -0.092880  0.000000
+real:-0.645754 order:2 pred:-0.798148 var:0.242542 coeffs:0.948080  0.025837 -0.137136
+real:-0.709879 order:0 pred:-0.512407 var:0.246379 coeffs:0.836945 -0.231150 -0.301903
+real:-0.709879 order:1 pred:-0.521450 var:0.244948 coeffs:0.931459 -0.095977  0.000000
+real:-0.709879 order:2 pred:-0.475690 var:0.242488 coeffs:0.953389  0.009096 -0.122244
+real:-0.039044 order:0 pred: 0.341407 var:0.248602 coeffs:0.832641 -0.251358 -0.331404
+real:-0.039044 order:1 pred: 0.327897 var:0.246946 coeffs:0.935421 -0.104217  0.000000
+real:-0.039044 order:2 pred: 0.300522 var:0.244041 coeffs:0.959116  0.011341 -0.133727
+real:-0.805253 order:0 pred:-0.460031 var:0.250102 coeffs:0.837847 -0.201973 -0.378703
+real:-0.805253 order:1 pred:-0.432726 var:0.249054 coeffs:0.920081 -0.082965  0.000000
+real:-0.805253 order:2 pred:-0.482453 var:0.245335 coeffs:0.948964  0.045074 -0.151454
+real:-0.725547 order:0 pred:-0.681110 var:0.248565 coeffs:0.838830 -0.195719 -0.370417
+real:-0.725547 order:1 pred:-0.659495 var:0.247588 coeffs:0.918499 -0.079896  0.000000
+real:-0.725547 order:2 pred:-0.624121 var:0.244055 coeffs:0.945770  0.046395 -0.147442
+real:-0.235186 order:0 pred:-0.528829 var:0.249202 coeffs:0.833846 -0.196426 -0.410701
+real:-0.235186 order:1 pred:-0.528361 var:0.248233 coeffs:0.913811 -0.080184  0.000000
+real:-0.235186 order:2 pred:-0.466636 var:0.243949 coeffs:0.944688  0.058295 -0.161600
+real: 0.054254 order:0 pred: 0.406221 var:0.250747 coeffs:0.829282 -0.202759 -0.387362
+real: 0.054254 order:1 pred: 0.402578 var:0.249733 coeffs:0.911859 -0.082756  0.000000
+real: 0.054254 order:2 pred: 0.427420 var:0.245996 coeffs:0.940781  0.047400 -0.152101
+real: 0.323351 order:0 pred: 0.639852 var:0.251691 coeffs:0.822807 -0.206646 -0.323421
+real: 0.323351 order:1 pred: 0.637344 var:0.250655 coeffs:0.907012 -0.084336  0.000000
+real: 0.323351 order:2 pred: 0.695630 var:0.248097 coeffs:0.929859  0.022234 -0.124881
+real: 0.082771 order:0 pred:-0.109412 var:0.251059 coeffs:0.822145 -0.208820 -0.346602
+real: 0.082771 order:1 pred:-0.107035 var:0.250010 coeffs:0.907239 -0.085218  0.000000
+real: 0.082771 order:2 pred:-0.059040 var:0.247099 coeffs:0.931429  0.028112 -0.132542
+real: 0.000429 order:0 pred:-0.053163 var:0.249628 coeffs:0.822055 -0.210534 -0.349693
+real: 0.000429 order:1 pred:-0.045949 var:0.248569 coeffs:0.907809 -0.085867  0.000000
+real: 0.000429 order:2 pred:-0.000767 var:0.245623 coeffs:0.931455  0.028146 -0.132601
+real:-0.355315 order:0 pred:-0.321379 var:0.248183 coeffs:0.822398 -0.211249 -0.343417
+real:-0.355315 order:1 pred:-0.326142 var:0.247123 coeffs:0.908373 -0.086137  0.000000
+real:-0.355315 order:2 pred:-0.283881 var:0.244300 coeffs:0.932235  0.024586 -0.129227
+real: 0.466345 order:0 pred: 0.061585 var:0.250567 coeffs:0.823179 -0.198793 -0.362906
+real: 0.466345 order:1 pred: 0.055516 var:0.249649 coeffs:0.904058 -0.081020  0.000000
+real: 0.466345 order:2 pred: 0.073068 var:0.246562 coeffs:0.929429  0.035630 -0.136401
+real:-0.352165 order:0 pred:-0.209196 var:0.249595 coeffs:0.824114 -0.178211 -0.344549
+real:-0.352165 order:1 pred:-0.185739 var:0.248862 coeffs:0.896142 -0.071999  0.000000
+real:-0.352165 order:2 pred:-0.152056 var:0.246106 coeffs:0.918509  0.040036 -0.128869
+real: 0.997183 order:0 pred: 1.107374 var:0.248463 coeffs:0.820286 -0.181364 -0.330040
+real: 0.997183 order:1 pred: 1.102302 var:0.247710 coeffs:0.893734 -0.073242  0.000000
+real: 0.997183 order:2 pred: 1.139052 var:0.245199 coeffs:0.914178  0.032940 -0.122638
+real: 0.338352 order:0 pred: 0.157454 var:0.247807 coeffs:0.821139 -0.147738 -0.342160
+real: 0.338352 order:1 pred: 0.132198 var:0.247312 coeffs:0.880207 -0.058784  0.000000
+real: 0.338352 order:2 pred: 0.152691 var:0.244638 coeffs:0.902707  0.049657 -0.126906
+real:-0.804284 order:0 pred:-1.030523 var:0.247623 coeffs:0.814106 -0.146885 -0.325423
+real:-0.804284 order:1 pred:-1.031056 var:0.247139 coeffs:0.872816 -0.058444  0.000000
+real:-0.804284 order:2 pred:-1.053042 var:0.244747 coeffs:0.893448  0.044480 -0.120412
+real:-0.457167 order:0 pred:-0.702792 var:0.247625 coeffs:0.809065 -0.169147 -0.346438
+real:-0.457167 order:1 pred:-0.687305 var:0.246990 coeffs:0.876702 -0.067014  0.000000
+real:-0.457167 order:2 pred:-0.654256 var:0.244305 coeffs:0.898006  0.043274 -0.127588
+real:-0.021277 order:0 pred:-0.191599 var:0.246916 coeffs:0.808128 -0.173436 -0.346486
+real:-0.021277 order:1 pred:-0.187182 var:0.246253 coeffs:0.877481 -0.068691  0.000000
+real:-0.021277 order:2 pred:-0.187082 var:0.243589 coeffs:0.898787  0.041614 -0.127605
+real: 0.474975 order:0 pred: 0.647991 var:0.246249 coeffs:0.804899 -0.168660 -0.353942
+real: 0.474975 order:1 pred: 0.652517 var:0.245627 coeffs:0.872233 -0.066775  0.000000
+real: 0.474975 order:2 pred: 0.637241 var:0.242870 coeffs:0.894429  0.045632 -0.130228
+real:-0.800855 order:0 pred:-0.767087 var:0.244961 coeffs:0.805633 -0.170547 -0.354244
+real:-0.800855 order:1 pred:-0.778254 var:0.244329 coeffs:0.873329 -0.067374  0.000000
+real:-0.800855 order:2 pred:-0.818120 var:0.241581 coeffs:0.893466  0.045453 -0.129490
+real: 0.209538 order:0 pred: 0.485866 var:0.245326 coeffs:0.801886 -0.146056 -0.392328
+real: 0.209538 order:1 pred: 0.498375 var:0.244867 coeffs:0.859476 -0.057485  0.000000
+real: 0.209538 order:2 pred: 0.442548 var:0.241536 coeffs:0.884225  0.064269 -0.141929
+real:-0.895696 order:0 pred:-0.668009 var:0.245165 coeffs:0.806074 -0.151585 -0.368322
+real:-0.895696 order:1 pred:-0.671663 var:0.244677 coeffs:0.865759 -0.059644  0.000000
+real:-0.895696 order:2 pred:-0.635865 var:0.241772 coeffs:0.889886  0.053766 -0.132604
+real: 0.111128 order:0 pred: 0.138592 var:0.243914 coeffs:0.805971 -0.150357 -0.369829
+real: 0.111128 order:1 pred: 0.144640 var:0.243436 coeffs:0.865102 -0.059113  0.000000
+real: 0.111128 order:2 pred: 0.114828 var:0.240522 coeffs:0.889833  0.053917 -0.132712
+real: 0.848523 order:0 pred: 0.845359 var:0.242667 coeffs:0.806043 -0.150113 -0.366819
+real: 0.848523 order:1 pred: 0.839505 var:0.242192 coeffs:0.865167 -0.058971  0.000000
+real: 0.848523 order:2 pred: 0.801425 var:0.239341 coeffs:0.889835  0.053116 -0.130902
+real:-0.595960 order:0 pred:-0.572420 var:0.241450 coeffs:0.806400 -0.150849 -0.366251
+real:-0.595960 order:1 pred:-0.577667 var:0.240973 coeffs:0.865697 -0.059224  0.000000
+real:-0.595960 order:2 pred:-0.568659 var:0.238145 coeffs:0.890581  0.052531 -0.130660
+real:-0.583917 order:0 pred:-0.129630 var:0.244499 coeffs:0.807938 -0.065007 -0.283182
+real:-0.583917 order:1 pred:-0.117718 var:0.244413 coeffs:0.833099 -0.025089  0.000000
+real:-0.583917 order:2 pred:-0.071912 var:0.242767 coeffs:0.848874  0.063494 -0.099647
diff --git a/tests/ref/fate/pca b/tests/ref/fate/pca
new file mode 100644
index 0000000000..ad8028b9d3
--- /dev/null
+++ b/tests/ref/fate/pca
@@ -0,0 +1,17 @@
+849.650515 743.274745 636.920659 530.755343 424.755389 318.590474 212.484686 106.252862
+849.764697 743.410613 637.245303 531.245347 425.080428 318.974636 212.742812
+849.689859 743.524537 637.524585 531.359673 425.253890 319.022065
+849.776432 743.776498 637.611630 531.505899 425.274066
+849.990362 743.825483 637.719738 531.487907
+850.117802 744.012025 637.780199
+850.269319 744.037498
+850.276172
+0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000
+ 0.290322  0.341674  0.377201  0.395414  0.395503  0.377394  0.341970  0.290771      4624.3 1.000000
+-0.490640 -0.415874 -0.277812 -0.097594  0.097294  0.277591  0.415558  0.490312      1395.2 0.301722
+ 0.474460  0.255049 -0.138721 -0.437194 -0.436778 -0.137807  0.255211  0.473875       310.8 0.067205
+ 0.415804 -0.098502 -0.490554 -0.276775  0.278062  0.490292  0.097473 -0.415874       172.1 0.037219
+ 0.383198 -0.322121 -0.362784  0.343676  0.342516 -0.364096 -0.320857  0.383196       103.2 0.022308
+ 0.277695 -0.491474  0.100186  0.414296 -0.416058 -0.097018  0.490004 -0.277560        76.8 0.016617
+-0.209100  0.462903 -0.455335  0.189296  0.184546 -0.453372  0.463830 -0.209984        61.9 0.013391
+ 0.096450 -0.275620  0.414337 -0.490706  0.491466 -0.416671  0.278467 -0.097806        55.2 0.011938
diff --git a/tests/ref/fate/softfloat b/tests/ref/fate/softfloat
new file mode 100644
index 0000000000..25f744322d
--- /dev/null
+++ b/tests/ref/fate/softfloat
@@ -0,0 +1,12 @@
+test1 double=10369251
+test1 sf    =10369251
+test2 double=1660944384
+test2 sf    =1660944264 (7 830472132)
+test3 double: 1374.5489959717
+test3 softfloat: 1374.5312194824 (0x2af43ff0 11)
+test4 softfloat: -16.0000000000 (0xe0000000 5)
+test4 softfloat: 16.0000000000 (0x20000000 5)
+test4 softfloat: 536870911.0000000000 (0x3ffffffe 29)
+test4 softfloat: -536870911.0000000000 (0xc0000002 29)
+test5 softfloat: 0.0000000000 (0x00000000 -149)
+test6 softfloat: 0.0000000000 (0x00000000 -149) -536870912 536870912
diff --git a/tests/ref/fate/utf8 b/tests/ref/fate/utf8
new file mode 100644
index 0000000000..1402e84944
--- /dev/null
+++ b/tests/ref/fate/utf8
@@ -0,0 +1,31 @@
+41                  65         0x41         1     A
+0A                  10         0xA          1     \n
+C3A9                233        0xE9         2     é
+0A                  10         0xA          1     \n
+E282AC              8364       0x20AC       3     €
+0A                  10         0xA          1     \n
+F09F9880            128512     0x1F600      4     😀
+0A                  10         0xA          1     \n
+F48FBFBF            1114111    0x10FFFF     4     􏿿
+0A                  10         0xA          1     \n
+F4908080            1114112    0x110000     4     invalid code range
+0A                  10         0xA          1     \n
+F888808080          2097152    0x200000     5     invalid code range
+0A                  10         0xA          1     \n
+C080                invalid sequence
+0A                  10         0xA          1     \n
+E08080              invalid sequence
+0A                  10         0xA          1     \n
+EDA080              55296      0xD800       3     invalid code range
+0A                  10         0xA          1     \n
+EFBFBF              65535      0xFFFF       3     invalid code range
+0A                  10         0xA          1     \n
+80                  invalid sequence
+0A                  10         0xA          1     \n
+FE                  invalid sequence
+0A                  10         0xA          1     \n
+C3                  invalid sequence
+41                  65         0x41         1     A
+0A                  10         0xA          1     \n
+E2                  invalid sequence
+82                  invalid sequence