File: 20.3.0.rst

package info (click to toggle)
mesa 25.2.8-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 312,152 kB
  • sloc: ansic: 2,185,354; xml: 1,028,239; cpp: 512,236; python: 76,148; asm: 38,329; yacc: 12,198; lisp: 4,114; lex: 3,429; sh: 855; makefile: 237
file content (4695 lines) | stat: -rw-r--r-- 228,597 bytes parent folder | download | duplicates (7)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
Mesa 20.3.0 Release Notes / 2020-12-03
======================================

Mesa 20.3.0 is a new development release. People who are concerned
with stability and reliability should stick with a previous release or
wait for Mesa 20.3.1.

Mesa 20.3.0 implements the OpenGL 4.6 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 4.6. OpenGL
4.6 is **only** available if requested at context creation.
Compatibility contexts may report a lower version depending on each driver.

Mesa 20.3.0 implements the Vulkan 1.2 API, but the version reported by
the apiVersion property of the VkPhysicalDeviceProperties struct
depends on the particular driver being used.

SHA256 checksum
---------------

::

    2999738e888731531cd62b27519fa37566cc0ea2cd7d4d97f46abaa3e949c630  mesa-20.3.0.tar.xz


New features
------------

- GL 4.5 on llvmpipe

- GL_INTEL_blackhole_render on radeonsi

- GL_NV_copy_depth_to_color for NIR

- GL_NV_half_float

- GL_NV_shader_atomic_int64 on radeonsi

- EGL_KHR_swap_buffers_with_damage on X11 (DRI3)

- VK_PRESENT_MODE_FIFO_RELAXED on X11

- GLX_EXT_swap_control for DRI2 and DRI3

- GLX_EXT_swap_control_tear for DRI3

- VK_KHR_copy_commands2 on RADV

- VK_KHR_shader_terminate_invocation on RADV

- NGG GS support in ACO

- VK_KHR_shader_terminate_invocation on ANV

- driconf: add glx_extension_override

- driconf: add indirect_gl_extension_override

- VK_AMD_mixed_attachment_samples on RADV (GFX6-GFX7).

- GL_MESA_pack_invert on r100 and vieux

- GL_ANGLE_pack_reverse_row_order

- VK_EXT_shader_image_atomic_int64 on RADV

- None


Bug fixes
---------

- \[icl,tgl][iris][i965][regression][bisected\] piglit failures
- shader-db valgrind error
- \[AMDGPU NAVI 5700xt\] Large parts of the Blender viewport does not render correctly if an object with hair is moved.
- \[aco\] problem compiling compute pipeline
- zink: regression after !7606
- glcpp test 084-unbalanced-parentheses fails with bison 3.6.y
- zink+radv: corruption on pre-game menu in quake3
- panfrost massive glitches apitrace opengl 2.1
- \[radeonsi\] After 549ae5f84375dfadb86cfd465f0103acfae3249f commit Firefox Nightly Asan begins crashes
- Amber test NIR validation failed after spirv_to_nir
- zink: add detection for wsi_memory_allocate_info usage
- Follow-up from "nir,spirv: Add generic pointers support"
- v3d  GL_ARB_vertex_array_bgra support
- iris: glClear with FBO imported from DMA-BUF doesn't work
- Fast-clears of GL_ALPHA16 textures are broken on TGL
- NV50_PROG_USE_NIR=1 doesn't work for piglit/bin/pbo-teximage ?
- Follow-up from "st/mesa: Use nir-to-tgsi for builtins if the driver needs TGSI"
- \[spirv-fuzz\] Shader causes an assertion failure in nir_opt_large_constants
- Amber test validate_phi_src
- Regnum Online UBO break after game update
- Current mesa git fails to build in multilib environment?
- radv/aco: Vertex explosion on RPCS3
- llvmpipe-cl should not run for other drivers
- Factorio v1.0 - Linux native - 64 bit - OpenGL/radeonsi - completely broken rendering
- Gnome 3.38 with Xwayland has screen corruption for X11 apps.
- st/va fails to build on old libva in mesa git
- sp_state_shader.c:146: undefined reference to \`nir_to_tgsi'
- anv: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.3d\* failures
- anv: dEQP-VK.api.copy_and_blit.core.blit_image.all_formats.color.3d\* failures
- RADV: Death Stranding glitchy sky rendering
- Crash in glDrawArrays on Intel iris
- GLX_OML_swap_method not fully supported
- deinterlace_vaapi=rate=field does not double output's actual frame rate on AMD
- Steam game Haydee leans on implementation-dependent behavior
- ANV: Support 1 million update-after-bind descriptors
- zink: crash in Blender on start-up
- vc4 in 20.2-rc has regression causing app to crash
- \[RADV\] broken stencil behaviour when using extended dynamic stencil state
- \[RADV/ACO\] Star Citizen Lighting/Shadow Issue
- \[RADV\] Some bindings seem broken with VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT
- \[RADV/ACO\] ACO build error about SMEM operands
- Graphics corruption in Super Mega Baseball 2 with RADV on Navi
- RADV ACO - ground line corruption in Path of Exile with Vulkan renderer
- omx/tizonia build broken with latest mesa git
- Request: VK_EXT_transform_feedback on Intel Gen 7
- iris: Regression in deqp const_write tests
- \[hsw][bisected][regression\] gpu hangs on dEQP-VK.subgroups.(shuffle|quad) tests
- \[RADV/LLVM/ACO\] Serious Sam 4 crashes after first cutscene with ACO backend + flickering black spots sprout up everywhere
- TGL B0 Stepping gpu hangs on many dEQP-VK.subgroups.quad nonconst tests
- \[machines without AVX2/F16C][bisected\] X server crash, wflinfo crash in mesa CI
- nir: Mesa regression on Compute shader
- radv, aco: dEQP-VK.glsl.atomic_operations.*_fragment_reference regressed
- Commit c6c1fa9a263880 causes corruption in Steam UI
- \[spirv-fuzz\] Shader generates a wrong image
- Running Amber test leads to VK_DEVICE_LOST
- \[Regression][Bisected][20.2][radeonsi\] American Truck Simulator continually allocates memory until OOM
- \[radeonsi\] bottom mips of height=1 2D texture is uninitialised after upload
- Missing terrain in Total War:  Warhammer
- anv: dEQP-VK.robustness.robustness2.\* failures on gen12
- AMD VAAPI encoding - applying filters introduces garbled line at the bottom
- AMD VAAPI HEVC encoding not working correctly on Polaris
- \[RADV\] Problems reading primitive ID in fragment shader after tessellation
- Massive memory leak (at least AMD, others unknown)
- Substance Painter 6.1.3 black glitches on Radeon RX570
- \[ivb,hsw,byt,bsw][i965][bisected\] anv_reloc_list_add: Assertion failure
- vkCmdCopyImage broadcasts subsample 0 of MSAA src into all subsamples of dst on RADV
- assert(left \<= -1 && top \<= -1 && right \>= 1 && bottom \>= 1) fails in si_emit_guardband
- Crash in ruvd_end_frame when calling vaBeginPicture/vaEndPicture without rendering anything
- Release signing key is not readily available
- \[iris][bisected\] piglit.spec.nv_copy_depth_to_color.nv_copy_depth_to_color failures
- VAAPI vaDeriveImage returns VA_STATUS_ERROR_OPERATION_FAILED
- X-Plane 11 Installer crashes on startup since \`glsl: declare gl_Layer/gl_ViewportIndex/gl_ViewportMask as vs builtins\`
- piglit spec/glsl-1.50/execution/geometry/clip-distance-vs-gs-out.shader_test fails on Iris
- Amber test opt_peel_loop_initial_if: Assertion failed
- builder_misc.cpp:137:55: error: ‘get’ is not a member of ‘llvm::ElementCount’
- AVX instructions leak outside of CPU feature check and cause SIGILL
- Dirt Rally: Flickering glitches on certain foliage since Mesa 20.1.0 caused by MSAA
- Horizon Zero Dawn graphics corruption with with radv
- Crusader Kings 3 Crashes at start since commit with !6472
- pan_resource.c:733:38: error: use of GNU empty initializer extension \[-Werror,-Wgnu-empty-initializer\]
- \[BRW\] WRC 5 asserts with gallium nine and iris.
- ci/bare-metal: POWER_GOOD detection broken with reboot rework
- radv: Corruption in "The Surge 2"
- \[RADV\] Detroit: Become Human Demo game lock-ups with RADV
- Road Redemption certain  graphic effects rendered white color
- gen_state_llvm.h:54:99: error: invalid conversion from ‘int’ to ‘const llvm::VectorType*’ \[-fpermissive\]
- Using a shared dEQP build script
- vulkan/wsi/x11: deadlock with Xwayland when compositor holds multiple buffers
- \[RADV/ACO\] Death Stranding cause a GPU hung (\*ERROR\* Waiting for fences timed out!)
- lp_bld_init.c:172:7: error: implicit declaration of function ‘LLVMAddConstantPropagationPass’; did you mean ‘LLVMAddCorrelatedValuePropagationPass’? \[-Werror=implicit-function-declaration\]
- ci: Use lld or gold instead of ld.bfd
- Intel Vulkan driver crash with alpha-to-coverage
- radv: blitting 3D images with linear filter
- \[ACO\] Compiling pipelines from RPCS3's shader interpreter spins forever in ACO code
- \[regression][bisected\] nir: nir_intrinsic_io_semantics assert failures in piglit
- error: ‘static_assert’ was not declared in this scope
- Intel Vulkan driver assertion with small xfb buffer
- \<<MESA crashed>\> Array Index Out of Range with Graphicsfuzz application
- EGL_KHR_swap_buffers_with_damage support on X11
- \[spirv-fuzz\] SPIR-V parsing failed "src->type->type == dest->type->type"
- radeonsi: radeonsi crashes in Chrome on chromeos
- \[RADV\] commit d19bc94e4eb94 broke gamescope with Navi
- 4e3a7dcf6ee4946c46ae8b35e7883a49859ef6fb breaks Gamescope showing windows properly.
- anv: crashes in CTS test dEQP-VK.subgroups.*.framebuffer.*_tess_eval
- Intel Vuikan (anv) crash in copy_non_dynamic_state() when using validation layer
- \[tgl][bisected][regression\] GPU hang in The Witcher 3
- Mafia 3: Trees get rendered incorrectly
- radv: dEQP-VK.synchronization.op.multi_queue.timeline_semaphore.write_clear_attachments_*_concurrent fail when forcing DCC.
- Crash on GTA 5 through proton 5.0.9 and GE versions
- Flickering textures in "Divinity Original Sin Enhanced Edition"
- Mesa 20.2.0-rc1 fails to build for AMD
- Assertion failure compiling shader from Zigguart


Changes
-------

Aaron Watry (1):

- clover: Fix incorrect error check in clGetSupportedImageFormats

Adam Jackson (22):

- drisw: Port the MIT-SHM check to XCB
- vulkan: Don't pointlessly depend on libxcb-dri2
- docs: Stop claiming to implement OpenVG
- mesa: Fix GL_CLAMP handling in glSamplerParameter
- mesa: Generate more errors from GetSamplerParameter
- wsi/x11: Hook up VK_PRESENT_MODE_FIFO_RELAXED_KHR
- glx: Use GLX_FUNCTION2 only for actually aliased function names
- glx: Collect all the non-applegl extensions in the GetProcAddress table
- glx: Reject glXSwapIntervalMESA greater than INT_MAX
- glx: Implement GLX_EXT_swap_control for DRI2 and DRI3
- glx/dri3: Implement GLX_EXT_swap_control_tear
- glx: Allow depth-30 pbuffers to work without a depth-30 pixmap format
- wsi/x11: Create a present queue for VK_PRESENT_MODE_FIFO_RELAXED_KHR
- glx: move \__glXGetUST into the DRI1 code
- glx: Delegate the core of glXGetScreenDriver to the GLX screen vtable
- glx: Move glXGet{ScreenDriver,DriverConfig} to common code
- docs/features: Update extensions for softpipe
- docs/features: Update extensions for swr
- loader: Print dlerror() output in the failure message
- mesa: Enable GL_MESA_pack_invert unconditionally
- mesa: Implement GL_ANGLE_pack_reverse_row_order
- docs: Add MESA_pack_invert and ANGLE_pack_reverse_row_order

Alejandro Piñeiro (147):

- v3d/compiler: add v3dv_prog_data_size helper
- v3d/packet: fix typo on Set InstanceID/PrimitiveID packet
- v3d: set instance id to 0 at start of tile
- broadcom/qpu_instr: wait is not a read or write vpm instruction
- nir/lower_io: don't reduce range if parent length is zero
- broadcom/simulator: update to a newer simulator
- broadcom/common: increase V3D_MAX_TEXTURE_SAMPLERS, add specific OpenGL limit
- broadcom/compiler: add V3D_DEBUG_RA option
- v3dv: add v3d vulkan driver skeleton
- gitlab-ci: add broadcom vulkan driver
- v3dv: add support for VK_EXT_debug_report
- v3dv: memory management stubs
- v3dv: add support to use v3d simulator
- v3dv/debug: plug v3d_debug
- v3dv/debug: add v3dv_debug
- v3dv: stubs for graphics pipeline methods
- v3dv: Create/DestroyShaderModule implementation
- v3d/compiler: num_tex_used on v3d_key
- v3dv/format: add v3dv_get_format_swizzle
- v3dv: initial CreateGraphicsPipeline/DestroyPipeline implementation
- v3dv: initial stub for CmdBindPipeline
- v3dv: CmdSetViewport and CmdSetScissor implementation
- v3dv/pipeline: start to track dynamic state
- v3dv/cmd_buffer: init command buffer dynamic state during pipeline bind
- v3dv/cmd_buffer: emit Scissor packets
- v3dv/cmd_buffer: emit Viewport packets
- v3dv/cmd_buffer: emit shader_state packets
- v3dv/cmd_buffer: start to emit draw packets
- v3dv/cmd_buffer: add shader source bos to cmd_buffer
- v3dv: clif format dumping support
- v3dv/cmd_buffer: cache viewport translate/scale
- v3dv: add v3dv_write_uniforms
- v3dv/cmd_buffer: start jobs with CmdBeginRenderPass
- v3d/compiler: update uses_vid/uses_iid check
- v3dv/cmd_buffer: emit CFG_BITS
- v3dv: partial prepack of the gl_shader_state_record
- v3dv: prepack VCM_CACHE_SIZE
- v3dv/pipeline: lower fs/vs inputs/outputs
- v3dv: vertex input support
- v3dv: provide default values for input attributes
- v3dv/format: add R32G32B32A32_SFLOAT format
- v3dv: stubs for Create/DestroyPipelineCache
- v3d/cmd_buffer: emit flat_shade/noperspective/centroid flags
- v3dv/pipeline: adding some nir-based linking
- v3dv/bo: add a bo name
- v3dv: debug nir shader also after spirv_to_nir
- v3dv: initial descriptor set support
- v3dv/descriptor_set: support for array of ubo/ssbo
- v3dv/pipeline: null check for pCreateInfo->pDepthStencilState
- v3dv: no need to manually add assembly bo to the job
- v3d/compiler: handle GL/Vulkan differences in uniform handling
- v3dv/cmd_buffer: support for push constants
- v3dv/descriptor: support for dynamic ubo/ssbo
- v3dv/pipeline: revamp nir lowering/optimizations passes
- v3dv/pipeline: clean up io lowering
- v3dv/descriptor: take into account pPushConstantRanges
- v3dv/device: tweak ssbo/ubo device limits
- v3dv/cmd_bufffer: rename and split emit_graphics_pipeline
- v3dv/cmd_buffer: push constants not using descriptor anymore
- v3dv/uniforms: cleaning up, moving udpate ubo/ssbo uniforms to a function
- v3dv/pipeline: unify local allocator name
- v3dv/pipeline: sampler lowering
- v3dv/descriptor_set: added support for samplers
- v3dv/uniforms: filling up QUNIFORM_TMU_CONFIG_P0/P1
- v3dv/pipeline: add support for shader variants
- v3dv/cmd_buffer: update shader variants at CmdBindDescriptorSets/CmdBindPipeline
- v3dv/cmd_buffer: allow return in the middle of variant update if needed
- v3dv/pipeline: fix adding texture/samplers array elements to texture/sampler map
- v3dv/descriptor_set: support for immutable samplers
- v3dv/descriptor: move descriptor_map_get_sampler, add and use get_image_view
- v3dv/descriptor_set: combine texture and sampler indices
- v3dv/descriptor: handle not having a sampler when combining texture and sampler id
- v3dv/uniforms: fill up texture size-related uniforms
- v3dv/format: expose correctly if a texture format is filterable
- v3dv: handle texture/sampler shader state bo failure with OOM error
- v3dv: properly return OOM error during pipeline creation
- v3dv/meta-copy: ensure valid height/width with compressed formats
- v3dv/cmd_buffer: move variant checking to CmdDraw
- v3dv/pipeline: support for specialization constants
- v3dv/descriptor: add general bo on descriptor pool
- v3dv/descriptor: use descriptor pool bo for image/samplers
- v3dv/meta-copy: add uintptr_t casting to avoid warning
- v3dv/bo: adding a BO cache
- v3dv/bo: add a maximum size for the bo_cache and a envvar to configure it
- v3dv/bo: add dump stats info
- v3d/tex: avoid to ask back for a sampler state if not needed
- v3dv/pipeline: iterate used textures using the combined index map
- v3dv/pipeline: set load_layer_id to zero
- v3dv: initial support for input attachments
- v3dv/descriptors: support for DESCRIPTOR_TYPE_STORAGE_IMAGE
- v3dv/pipeline: lower_image_deref
- v3dv/uniforms: support for some QUNIFORM_IMAGE_XXX
- nir: include texture query lod as one of the ops that requires a sampler
- v3dv/device: expose support for image cube array
- v3dv/image: fix TEXTURE_SHADER_STATE depth for cube arrays
- v3dv/device: add vendorID/deviceID get helpers
- v3dv/device: get proper device ID under simulator
- v3dv/device: proper pipeline cache uuid
- v3dv/pipeline_cache: bare basic support for pipeline cache
- v3dv/pipeline_cache: cache nir shaders
- v3dv/pipeline: add basic ref counting support for variants
- v3dv/pipeline_cache: cache v3dv_shader_variants
- v3dv/pipeline_cache: support to serialize/deserialize cached NIRs
- v3dv/pipeline_cache: MergePipelineCaches implementation
- v3dv/pipeline: provide a shader_sha1 to private ShaderModules
- v3dv/pipeline_cache: add default pipeline cache
- v3dv/pipeline: remove custom variant cache
- v3dv/pipeline: when looking for a variant, check first current variant
- v3dv/pipeline: pre-generate more that one shader variant
- v3dv/pipeline: handle properly OUT_OF_HOST_MEMORY error when allocating p_stage
- v3dv/descriptor: support for UNIFORM/STORAGE_TEXEL_BUFFER
- v3dv: add v3dv_limits file
- v3dv/device: fix minTexelBufferOffsetAlingment
- v3dv/formats: fix exposing FEATURE_UNIFORM/STORAGE_TEXEL_BUFFER_BIT
- v3dv/uniforms: handle texture size for texel buffers
- v3dv/descriptor: remove v3dv_descriptor_map_get_image_view
- v3dv/device: add assert for texture-related limits
- v3dv/device: warn when the pipeline cache is disabled
- v3dv/debug: add v3dv_print_v3d_key
- v3dv/pipeline: fix combined_index_map insertions
- v3dv/meta: fix hash table insertion
- broadcom/compiler: allow GLSL_SAMPLER_DIM_BUF on txs emission
- v3d/simulator: add v3d_simulator_get_mem_size
- v3dv/device: fix compute_heap_size for the simulator
- v3dv/pipeline: use derefs for ubo/ssbo
- v3dv: Call nir_lower_io for push constants
- v3dv/pipeline: track if texture is shadow
- v3dv/pipeline: set 16bit return_size for shadows always
- v3dv/cmd_buffer: set instance id to 0 at start of tile
- v3d/limits: add line width and point size limits
- v3dv/device: fix point-related VkPhysicalDeviceLimits
- v3dv/device: enable largePoints
- v3dv/meta_copy: handle mirroring z component bliting 3D images
- v3dv/formats: properly return unsupported for 1D compressed textures
- v3dv/meta_copy: fix TFU blitting when using 3D images
- v3dv/pipeline_cache: set a max size for the pipeline cache
- v3dv/pipeline_cache: extend pipeline cache envvar
- v3dv/device: Support loader interface version 3.
- nir/lower_io_to_scalar: update io semantics on per-component inst
- docs/features: add v3dv driver
- v3dv/format: use XYZ1 swizzle for three-component formats
- v3d/format: use XYZ1 swizzle for three-component formats
- broadcom/compiler: remove v3d_fs_key depth_enabled field.
- v3dv/util: remove several logging functions
- v3dv/util: log debug ignored stype only on debug builds
- v3dv/device: do nothing when asked physical device pci bus properties
- v3dv/cmd_buffer: missing (uint8_t \*) casting when calling memcmp

Alexandros Frantzis (5):

- tracie: Make tests independent of environment
- tracie: Produce JUnit XML results
- gitlab-ci: Enable unit test reports for normal runner traces jobs
- gitlab-ci: Enable unit test reports for lava traces jobs
- gitlab-ci: Enable unit test report for arm64_a630_traces

Alyssa Rosenzweig (388):

- panfrost: Remove blend prettyprinters
- panfrost: Move format stringify to decode.c
- pan/decode: Remove shader replacement artefact
- panfrost: Inline panfrost-misc.h into panfrost-job.h
- panfrost: Remove panfrost-misc.h
- panfrost: Don't export exception_status
- panfrost: Rename encoder/ to lib/
- panfrost: Move pandecode into lib/
- pan/mdg: Separate disassembler and compiler targets
- pan/bi: Separate disasm/compiler targets
- panfrost: Reduce bit dependency to disassembly only
- panfrost: Add panloader/ to .gitignore
- pan/bi: Drop use of MALI_POSITIVE
- panfrost: Inline max rt into compilers
- panfrost: Treat texture dimension as first-class
- panfrost: Drop compiler cmdstream deps
- nir/lower_ssbo: Don't set align\_\* for atomics
- gallium/dri2: Support Arm modifiers
- panfrost: Set \`initialized\` more conservatively
- panfrost: Remove hint-based AFBC heuristic
- panfrost: Introduce create_with_modifier helper
- panfrost: Use modifier instead of layout throughout
- panfrost: Account for modifiers when creating BO
- panfrost: Respect modifiers in resource management
- panfrost: Import staging routines from freedreno
- panfrost: Choose AFBC when available
- panfrost: Implement YTR availability check
- panfrost: Enable YTR where allowed
- panfrost: Allocate enough space for tiled formats
- panfrost: Ensure AFBC slices are aligned
- panfrost: Implement panfrost_query_dmabuf_modifiers
- panfrost: Add stub midgard.xml
- panfrost: Adopt gen_pack_header.py via v3d
- panfrost: Build midgard_pack.h via meson
- panfrost: Redirect cmdstream includes through GenXML
- pan/decode: Add helper to dump GPU structures
- panfrost: XMLify job_type
- panfrost: XMLify draw_mode
- panfrost: XMLify mali_func
- panfrost: XMLify stencil op
- panfrost: XMLify wrap modes
- panfrost: XMLify viewport
- panfrost: XMLify UBOs
- panfrost: XMLify stencil test
- panfrost: Simplify zsa == NULL case
- panfrost: Simplify depth/stencil/alpha
- panfrost: Don't mask coverage mask to 4-bits
- panfrost: XMLify Midgard samplers
- panfrost: XMLify Bifrost samplers
- panfrost: XMLify Midgard textures
- panfrost: XMLify Bifrost textures
- panfrost: Drop unused mali_channel_swizzle
- panfrost: XMLify Block Format
- panfrost: XMLify MSAA writeout mode
- panfrost: XMLify exception access
- panfrost: XMLify enum mali_format
- panfrost: Set STRIDE_4BYTE_ALIGNED_ONLY
- panfrost: Drop NXR format
- panfrost: Squash 22-bit format field in attr_meta
- panfrost: XMLify mali_channel
- panfrost: XMLify attributes
- panfrost: Merge attribute packing routines
- panfrost: Add XML for attribute buffers
- panfrost: Use better packs for blits
- panfrost: Simplify offset fixup proof
- panfrost: Make attribute-buffer map explicit
- panfrost: Move attr_meta emission to the draw routine
- panfrost: Use packs for attributes
- panfrost: Hoist instance_shift/instance_odd fetch
- panfrost: Inline panfrost_vertex_instanced
- panfrost: Use packs for vertex attribute buffers
- panfrost: Use packs for vertex built-ins
- panfrost: Reword comment
- panfrost: Pass varying descriptors by reference
- panfrost: Factor out general varying case
- panfrost: Use pack for XFB varying
- panfrost: Use pack for general varying
- panfrost: Use MALI_ATTRIBUTE_LENGTH
- pan/bit: Use packs for Bifrost unit tests
- panfrost: Remove mali_attr_meta
- panfrost: Use packs for varying buffers
- panfrost: Drop hand-rolled pandecode for attribute buffers
- panfrost: Drop union mali_attr
- panfrost: Update CI expectations
- panfrost: Decontextualize rasterizer
- panfrost: Drop rasterizer null checks in draw calls
- panfrost: Drop ZSA null checks in draws
- panfrost: Drop panfrost_invalidate_frame
- panfrost: Drop QUADS primitive convert
- panfrost: Hoist add_fbo_bo call
- panfrost: Remove useless comment
- panfrost: Hoist assert from bind to create
- panfrost: Fix WRITES_GLOBAL bit
- panfrost: Fix shared memory size computation
- pan/mdg: Ensure barrier op is set on texture
- pan/mdg: Handle 32-bit offsets from store_shared
- pan/mdg: Identify barrier out-of-order field
- pan/mdg: Fix printing of r26 ld/st sources post-RA
- pan/mdg: Fix auxiliary load/store swizzle packing
- panfrost: Pre-allocate memory for pool
- panfrost: Introduce invisible pool
- panfrost: Avoid minimum stack allocations
- pan/decode: Don't try to dereference heap mapping
- panfrost: Share tiler_heap across batches/contexts
- panfrost: Drop implicit blend pooling
- panfrost: Explicitly handle nr_cbufs=0 case
- panfrost: Drop depth-only case in blend finalize
- panfrost: Keep finalized blend state constant
- panfrost: Fix blend leak for render targets 5-8
- panfrost: Free cloned NIR shader
- panfrost: Free NIR of blit shaders
- panfrost: Free hash_to_temp map
- pan/mdg: Free previous liveness
- panfrost: Use memctx for sysvals
- panfrost: Free batch->dependencies
- panfrost: Pass alignments explicitly
- panfrost: Fix attribute buffer underallocation
- panfrost: Don't overallocate attributes
- panfrost: Don't reserve for NPOT w/o instancing
- panfrost: Reduce attribute buffer allocations
- panfrost: Fix alignment on Bifrost
- gallium: Add util_blend_factor_uses_dest helper
- gallium: Add util_blend_uses_dest helper
- si: Use util_blend_factor_uses_dest
- r300: Use util_blend_factor_uses_dest
- pan/decode: Drop legacy 32-bit job support
- panfrost: Decode nested structs correctly
- panfrost: Hoist blend finalize calls
- panfrost: Separate shader/blend descriptor emits
- panfrost: XMLify blend flags
- panfrost: Simplify make_fixed_blend_mode prototype
- panfrost: Honour load_dest/opaque flags
- panfrost: XMLify blend equation
- panfrost: Combine frag_shader_meta_init functions
- panfrost: Size UBO#0 accurately
- panfrost: Clamp shader->uniform_count
- panfrost: Bake the initial tag into the shader pointer
- panfrost: Specialize compute vs frag shader init
- panfrost: Rename shader emit functions
- panfrost: Clean up blend shader errata handling
- panfrost: Group SFBD state together
- panfrost: XMLify Midgard properties
- panfrost: Pack compute Midgard properties
- panfrost: Use packs for fragment properties
- panfrost: Use pack for shaderless
- panfrost: Fold work_count packing for blend shaders
- panfrost: Simplify bind_blend_state
- panfrost: Remove midgard1 bitfield
- panfrost: XMLify bifrost1
- panfrost: Drop redundant NULL check
- panfrost: Group SFBD code tighter
- panfrost: XMLify Bifrost preload
- panfrost: Identify additional SFBD flags
- panfrost: Support SHADERLESS mode everywhere
- panfrost: Quiet pandecode error
- panfrost: Derive texture/sampler_count from shader
- panfrost: XMLify beginning of shader descriptor
- panfrost: Derive UBO count from shader_info
- panfrost: Pack vertex properties when compiling
- panfrost: Prepack fragment properties/preload
- panfrost: Simplify shaderless packing
- panfrost: Ensure shader-db state is zero-initialized
- panfrost: Allocate a state uploader
- panfrost: Upload shader descriptors at CSO create
- panfrost: Use preuploaded shader descriptors
- panfrost: XMLify the rest of shader_meta
- panfrost: Inherit default values from structs
- panfrost: Use pack for blit shaders
- panfrost: Use pack for Bifrost test state
- panfrost: Add optional opaque packs to GenXML
- panfrost: Use opaque pack for vertex shaders
- panfrost: Use pack for fragment shaders
- pan/decode: Use unpacks for state descriptor
- panfrost: Drop mali_shader_meta
- panfrost: Add opaque midgard_blend XML
- panfrost: Emit explicit REPLACE for disabled colour writeout
- panfrost: Drop blend indirection
- panfrost: Add padded type for instance fields
- panfrost: Add XML for mali_vertex_tiler_postfix
- panfrost: Use draw pack for blit
- panfrost: Separate postfix from emits
- panfrost: Inline vt_update_{rasterizer, occlusion}
- panfrost: Remove postfix parameter from UBO upload
- panfrost: Avoid postfix dep for vertex_data
- panfrost: Don't call panfrost_vt_init for compute
- panfrost: Inline panfrost_vt_init
- panfrost: Inline panfrost_vt_set_draw_info
- panfrost: Detangle postfix from varying emits
- panfrost: Use draw pack for compute jobs
- panfrost: Use pack for draw descriptor
- panfrost: Simplify ZSA bind
- panfrost: Cleanup point sprite linking
- panfrost: Drop point sprite from shader key
- panfrost: XMLify primitive information
- panfrost: Add invocation XML
- panfrost: XMLify invocations
- panfrost: Drop bifrost_payload_fused
- panfrost: Inline bifrost_tiler_only
- panfrost: Use nir_builder_init_simple_shader for blits
- pan/decode: Drop scratchpad size dump
- pan/decode: Drop mali_vertex_tiler_postfix arg
- pan/decode: Print shader-db even for compute
- pan/decode: Fix awkward syntax
- pan/decode: Use generation for vertex_tiler_postfix
- pan/decode: Use unpack for vertex_tiler_postfix_pre
- panfrost: Remove mali_vertex_tiler_postfix
- pan/decode: Drop prefix braces
- panfrost: Emit texture/sampler points for compute
- pan/mdg: Implement i/umul_high
- pan/mdg: Scalarize 64-bit
- pan/mdg: Bounds check swizzle writing globals
- pan/mdg: Implement nir_intrinsic_load_sample_mask_in
- pan/mdg: Refactor texture op/mode handling
- pan/mdg: Add disassembly for shadow gathers
- pan/mdg: Implement texture gathers
- panfrost: Set PIPE_CAP_MAX_TEXTURE_GATHER_COMPONENTS
- docs/features: Add missing Panfrost extensions
- pan/mdg: Fix discard encoding
- pan/mdg: Fix perspective combination
- panfrost: Drop PIPE_CAP_MAX_COMBINED_HW_ATOMIC_COUNTER/BUFFERS
- mesa/st: Don't set alpha if ALPHA_TEST is lowered
- pan/mdg: Obey f2fmp size restriction in fuse_io_16
- panfrost: Fix nonzero stencil mask on vertex/compute
- pan/bit: Set d3d=true for CMP tests
- pan/bit: Fix unit tests
- pan/bi: Lower flrp16
- pan/bi: Add XML describing the instruction set
- pan/bi: Add ISA parser
- pan/bi: Add packing generator
- pan/bi: Add disassembler generator
- pan/bi: Add disassembly prototypes
- pan/bi: Add bi_disasm_dest\_\* helpers
- pan/bi: Export dump_src
- pan/bi: Use new disassembler
- pan/bi: Use canonical syntax for registers/uniforms/imms
- pan/bi: Use canonical syntax for special constants
- pan/bi: Add dummy carry/borrow argument for iadd/isub
- pan/bi: Introduce segments into the IR
- pan/bi: Add format field to IR
- pan/bi: Track compute_lod in IR
- pan/bi: Pass blend descriptor explicitly in IR
- pan/bi: Use 8-bit shifts
- pan/bi: Use src1/dest_invert instead of src_invert[\]
- pan/bi: Move packing helpers to dedicated file
- pan/bi: Use new packing
- pan/bi: Remove unused prints
- pan/bi: Remove unused packing data structures
- pan/bi: Drop \*FMIN reference
- pan/bi: Annotate stop bit (canonically "Z-bit")
- pan/bi: Annotate disassemble with format names
- pan/bi: Inline dump_instr
- pan/bi: Track M values of disassembled constants
- pan/bi: Decode M values in disasm
- pan/bi: Disassemble PC-relative addresses
- pan/bi: Add bifrost_reg_mode enum
- pan/bi: Pass 'first' through disassembler
- pan/bi: Decode all 32-bit register modes
- pan/bi: Rename port -\> slot
- pan/bi: Use canonical register packing
- pan/bi: Remove old register mode definitions
- pan/bi: Fix assert when writing vertex outputs
- pan/bi: Add copy for register COMBINEs
- pan/decode: Ensure mappings are zeroed
- pan/bi: Fix memory corruption in scheduler
- pan/bi: Drop if 0'd combine lowering
- pan/bi: Cull unnecessary edges on the CF graph
- pan/bi: Use canonical floating-point modes
- pan/bi: Canonicalize terminate_discarded_threads
- pan/bi: Use canonical next_clause_prefetch
- pan/bi: Use canonical name for staging registers
- pan/bi: Expand clause type to 5-bit
- pan/bi: Add missing message types
- pan/bi: Print message types as strings
- pan/bi: Use canonical term "message type"
- pan/bi: Use canonical term dependency
- pan/bi: Use canonical flow control enum
- pan/bi: Pass flow_control through directly
- pan/bi: Handle vector moves
- pan/bi: Expose GL 2.1 on Bifrost
- pan/bi: Fix simple txl test
- pan/bi: Use canonical texture op names in IR
- pan/bi: Streamline TEXC/TEXS naming/selection
- pan/bi: Encode skip bit into IR
- pan/bi: Pack skip bit for texture operations
- pan/bi: Add texture operator descriptor
- pan/bi: Stub out TEXC handling
- pan/bi: Add data register passing infrastructure
- pan/bi: Handle nir_tex_src_lod
- pan/bi: Pack TEXC
- pan/bi: Rewrite to fit dest = src constraint
- pan/bi: Prefer 'texture_index' to 'image_index'
- panfrost: Add missing XML for Bifrost samplers
- panfrost: Fix Bifrost filter selection
- panfrost: Fix Bifrost high LOD clamp
- panfrost: Add some missing Bifrost texture XML
- pan/bi: Implement txb
- panfrost: Set helper_invocation_enable for Bifrost
- pan/bi: Fix message type printing
- pan/bi: Don't terminate helper threads
- panfrost: Add panfrost_block_dim helper
- pan/bi: Use new block dimension helper
- panfrost: Fix faults on block-based formats on Bifrost
- pan/bi: Map NIR tex ops to Bifrost ops
- pan/bi: Add bi_emit_lod_cube helper
- pan/bi: Implement FETCH
- panfrost: Update XML for Bifrost early-z/FPK
- panfrost: Set "shader modifies coverage?" flag
- panfrost: Temporarily disable FP16 on Bifrost
- pan/bi: Disable mediump output lowering
- pan/bi: Range check newc/oldc when rewriting
- panfrost: Rename gtransfer to transfer
- panfrost: Use canonical characterization of tls_size
- panfrost: Drop panfrost_vt_emit_shared_memory
- pan/mdg: Cleanup mir_rewrite_index_src_single
- pan/bi: Drop 64-bit constant support
- pan/bi: Fix handling of small constants in bi_lookup_constant
- pan/bi: Stub spilling
- pan/bi: Add no_spill flag to IR
- pan/bi: Implement bi_choose_spill_node
- pan/bi: Add spills/fills parameters
- pan/bi: Add bi_spill helper
- pan/bi: Add bi_fill
- pan/bi: Add bi_rewrite_index_src_single helper
- pan/bi: Add helpers for working with singletons
- pan/bi: Implement bi_spill_register
- pan/bi: Factor out singleton construction from scheduler
- pan/bi: Add bi_foreach_clause_in_block_safe helper
- pan/bi: Pack LOAD/STORE
- pan/bi: Implement spilling
- pan/bi: Pipe through tls_size
- panfrost: Move nir_undef_to_zero to common util/
- pan/bi: Use nir_undef_to_zero
- panfrost: Record architecture major version
- panfrost: Don't export queries
- panfrost: Calculate thread count on Bifrost
- panfrost: Fix component order XML
- panfrost: Implement BGRA textures
- panfrost: Drop PIPE_CAP_GLSL_FEATURE_LEVEL for Bifrost
- panfrost: Don't advertise MSAA on Bifrost
- pan/bi: Account for bool32 ld_ubo reads
- panfrost: Don't double-compose swizzles
- panfrost: Add MALI_EXTRACT_INDEX helper
- panfrost: Use consistent swizzle names in XML
- panfrost: Add a blendable format table
- panfrost: Use panfrost_blendable_formats for MFBD
- panfrost: Use panfrost_blendable_formats for SFBD
- panfrost: Use panfrost_blendable_formats for blending
- panfrost: Complete format_to_bifrost_blend
- panfrost: Remove duplicated format arg for ASTC
- panfrost: Remove panfrost_is_z24s8_variant
- panfrost: Add v7 special colour formats
- panfrost: Add missing depth/stencil formats
- panfrost: Add miscellaneous missing Midgard formats
- panfrost: Add v7-specific depth formats
- panfrost: Split out v6/v7 format tables
- panfrost: Rename VARYING_DISCARD to CONSTANT
- panfrost: Rename VARYING_POS to SNAP4
- panfrost: Add missing 1/2/4/64-bit formats to XML
- panfrost: Use macro for panfrost_get_default_swizzle
- panfrost: Fix RGB5A1 formats
- panfrost: Fix BGR233 component order
- panfrost: Add missing alpha-first special formats
- pan/bi: Suppress disassembly for internal shaders
- pan/bi: Lower +CUBEFACE2
- panfrost: Disable point sprites on Bifrost
- panfrost: Advertise Bifrost support
- panfrost: Drop unused swizzles
- panfrost: Add bi_emit_array_index helper
- pan/bi: Track tex data register swizzles
- pan/bi: Handle 3D/array coordinates
- pan/bi: Don't emit TEXS for array textures
- panfrost: Set .array_size on Bifrost
- nir: Add SRC_TYPE to store_combined_output_pan
- pan/mdg: Deduplicate nir_find_variable_with_driver_location
- pan/mdg: Move writeout lowering to common panfrost
- panfrost: Pass through src_type
- panfrost: Deduplicate shader properties
- pan/bi: Add +ZS_EMIT instruction to IR
- pan/bi: Infer z/stencil flags from sources passed
- pan/bi: Factor out bi_emit_atest
- pan/bi: Factor out bi_emit_blend
- pan/bi: Stub handling for nir_intrinsic_store_combined_output_pan
- pan/bi: Emit +ZS_EMIT as needed
- pan/bi: Lower depth/stencil stores
- pan/bi: Correctly calculate render target index
- pan/mdg: Add missing Collabora copyright notices
- panfrost: Add missing Collabora copyright notices
- pan/bi: Model writemasks correctly

Andreas Baierl (4):

- lima/ppir: Skip instruction merge when having more than one successor
- lima: fix glCopyTexSubImage2D
- lima: set clear depth value to 0x00ffffff as default
- lima/parser: Fix varyings decoding in RSW

Andres Gomez (3):

- gitlab-ci: reuse container_post_build when building the test images
- gitlab-ci: reorder container_post_build call for arm64_test image
- Revert "gitlab-ci: reuse container_post_build when building the test images"

Andrew Randrianasulu (1):

- st/va: fix build with old libva

Andrey Vostrikov (1):

- egl/x11: Free memory allocated for reply structures on error

Andrii Simiklit (4):

- util/xmlconfig: eliminate memory leak
- nir: get rid of OOB dereferences in nir_lower_io_arrays_to_elements
- glx: get rid of memory leak
- glsl: avoid an out-of-bound access while setting up a location for variable

Anthoine Bourgeois (4):

- docs/features: Minor update extensions support
- docs/features: VK_KHR_mir_surface is disabled, remove it
- docs/features: add some extensions we missed
- docs/features.txt: VK_EXT_separate_stencil_usage not exposed on RADV

Antonio Caggiano (1):

- zink: pre-hash gfx-pipeline-state

Anuj Phogat (2):

- intel/gen9: Enable MSC RAW Hazard Avoidance
- intel: Pointer to SCISSOR_RECT array should be 64B aligned

Aníbal Limón (1):

- src/util/disk_cache_os.c: Add missing headers for open/fcntl

Arcady Goldmints-Orlov (7):

- broadcom/compiler: support nir_intrinsic_load_sample_id
- broadcom/compiler: Add a constant folding pass after nir_lower_io
- broadcom/compiler: Enable PER_QUAD for UBO and SSBO loads.
- broadcom/compiler: support varyings with struct types
- broadcom/compiler: use nir io semantics
- broadcom/compiler: Handle non-SSA destinations for tex instructions
- broadcom/compiler: Allow spills of temporaries from TMU reads

Bas Nieuwenhuizen (58):

- radv: Add ETC2 support on RAVEN2.
- radv: Fix assert that is too strict.
- radv: Add forcecompress debug flag.
- radv: Do not consider layouts fast-clearable on compute queue.
- radv: Update CI expectations for the recent descriptor indexing regressions.
- radv: When importing an image, redo the layout based on the metadata.
- radv:  Clean up setting the surface flags.
- radv: Use getter instead of setter to extract value.
- driconf: Support selection by Vulkan applicationName.
- radv: Override the uniform buffer offset alignment for World War Z.
- radv: Fix handling of attribs 16-31.
- radv: Remove conformance warnings with ACO.
- radv: Update CTS version.
- radv: Fix 3d blits.
- radv: Centralize enabling thread trace.
- radv: Allow triggering thread traces by file.
- radv: Fix threading issue with submission refcounts.
- radv: Avoid deadlock on bo_list.
- spirv: Deal with glslang bug not setting the decoration for stores.
- spirv: Deal with glslang not setting NonUniform on constructors.
- radeonsi: Work around Wasteland 2 bug.
- radv,gallium: Add driconf option to reduce advertised VRAM size.
- amd/common: Store non-displayable DCC pitch.
- radeonsi: Put retile map in separate buffers.
- radeonsi: Move display dcc dirty tracking to framebuffer emission.
- ac/surface: Fix depth import on GFX6-GFX8.
- radv,radeonsi: Disable compression on interop depth images
- Revert "radv: set BIG_PAGE to improve performance on GFX10.3"
- Revert "radv: emit {CB,DB}_RMI_L2_CACHE_CONTROL at framebuffer time"
- st/mesa: Deal with empty textures/buffers in semaphore wait/signal.
- radv: Disable NGG on APUs.
- radv: Simplify radv_is_hw_resolve_pipeline.
- radv: Add VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 rendering support.
- radv: Fix emitting SQTT userdata.
- radv: Use correct alignment for SQTT buffer sizes.
- radv: Fix RGP Asic CU info for GFX10+.
- radv: Include flushes in the barrier.
- radv: Record cache flushes for RGP.
- radv: Write correct dispatch size for RGP.
- radeonsi: Fix imports with displayable DCC.
- radv: Use atomics to read query results.
- radv: Set fce metadata correctly on DCC initialization.
- radv: Fix event write cmdbuffer allocation when tracing.
- radv/winsys: Expand scope of allbos lock.
- radv: Fix mipmap extent adjustment on GFX9+.
- aco: Add VK_KHR_shader_terminate_invocation support.
- amd/llvm: Add VK_KHR_shader_terminate_invocation support.
- radv: Advertise VK_KHR_shader_terminate_invocation.
- frontends/va: Initialize drm modifier on import.
- radv: Fix 1D compressed mipmaps on GFX9.
- radv: Do not access set layout during vkCmdBindDescriptorSets.
- radv: Fix variable name collision.
- radv: Skip tiny non-visible VRAM heap.
- radv: Fix budget calculations with large BAR.
- radv: Fix exporting/importing multisample images.
- radv: Fix RB+ blending for VK_FORMAT_E5B9G9R9_UFLOAT_PACK32.
- radv: Fix a hang on CB change by adding flushes.
- radv: Deal with unused attachments in mip flush

BillKristiansen (1):

- compiler/glsl: Initialize local variable to zero to fix MSVC RTC error

Boris Brezillon (141):

- spirv: Move the emit a 'return value' store logic into own function
- compiler/nir: Add new flags to lower pack/unpack split instructions
- nir: Fix i64tof32 lowering
- spirv: Add support for the CL Round instruction
- panfrost: Rename panfrost_create_pool() into panfrost_pool_init()
- panfrost: Avoid accessing pan_pool fields directly
- panfrost: Store transient BOs in a dynamic array
- spirv: Add a vtn_get_mem_operands() helper
- spirv: Don't accept CPacked decoration on struct members
- spirv: Propagate packed information to glsl_type
- glsl: Propagate packed info in get_explicit_type_for_size_align()
- nir/glsl: Consider block interfaces as structs when it comes to size/align calculation
- nir: Expose the packed attribute attached to glsl_type objects
- panfrost: gen_pack: Minor formatting improvement
- panfrost: gen_pack: Fix \__gen_unpack_uint()
- panfrost: gen_pack: Add pan_{unpack,print}() helpers
- panfrost: gen_pack: Move the group get_length() logic to its own method
- panfrost: gen_pack: Add the aggregate concept
- panfrost: gen_pack: Allow empty structs
- panfrost: gen_pack: Add an align() modifier
- panfrost: gen_pack: Add a log2 modifier
- panfrost: gen_pack: Allow enum/define values expressed in hexadecimal
- panfrost: decode: Make the indentation consistent with auto-generated print helpers
- panfrost: decode: Rework the DUMP_{CL,ADDR}() macros
- panfrost: decode: Add a macro to dump unpacked descriptors
- panfrost: decode: Use pan_{unpack,print}() when applicable
- panfrost: XML-ify the local storage descriptor
- panfrost: Clarify what TILED mode is
- panfrost: Add Tiled linear mode to the Block Format enum
- panfrost: XML-ify the midgard tiler descriptor
- panfrost: XML-ify the single target framebuffer descriptor
- panfrost: XML-ify the bifrost tiler descriptors
- panfrost: XML-ify the multi-target framebuffer descriptors
- panfrost: XML-ify the job header descriptor
- panfrost: XML-ify the write value job descriptor
- panfrost: XML-ify the fragment job descriptor
- panfrost: Rename the Blend dither disable flag
- panfrost: XML-ify the compute job descriptor
- panfrost: Avoid copying job descriptors around when we can
- panfrost: decode: Misc formatting improvements
- panfrost: gen_pack: Fix gnu-empty-initializer errors
- ci: Extend meson-clang coverage by compiling all gallium drivers
- panfrost: Fix bifrost tiler descriptor definition
- panfrost: Fix bifrost tiler job emission
- panfrost: Adjust quirks for bifrost v6
- panfrost: Add preliminary support for Mali G72
- kmsro: Add mediatek entry point
- panfrost: Add support for rbg16 formats
- panfrost: decode: Fix decode_bifrost_constant() prototype
- panfrost: decode: Flag pandecode_log_typed() as PRINTFLIKE
- panfrost: bifrost: disassemble: Fix decoding of next_regs
- panfrost: Fix a warning
- panfrost: Adjust the draw descriptor definition
- panfrost: Adjust the primitive desc definition
- panfrost: Adjust the renderer state definition
- panfrost: Get rid of the with_opaque qualifier on the renderer state desc
- panfrost: Drop the with_opaque specifier on midgard blend desc
- panfrost: gen_pack: Drop support for opaque structs
- panfrost: gen_pack: Support overlapping structs
- panfrost: gen_pack: Add a no-direct-packing attribute
- panfrost: Rework fixed-function blending
- panfrost: Rework the render target layout to use overlapping structs
- panfrost: XML-ify the blend descriptors
- panfrost: Fix fixed-function blend on Mali v6
- panfrost: Constify the rt_fmts arg passed to pan_lower_framebuffer()
- panfrost: Move the blend constant mask extraction out of make_fixed_blend_mode()
- panfrost: Pass compile arguments through a struct
- panfrost: Allocate blit_blend with ralloc()
- panfrost: Don't leak NIR blend shaders
- panfrost: Let compile_blend_shader() allocate the blend shader object
- panfrost: Get rid of the constant patching done on blend shader binaries
- panfrost: Move the blend shader cache at the context level
- panfrost: Fix fixed-function blend on bifrost
- panfrost: Extend compile_inputs to pass a blend descriptor
- pan/bi: Copy blend shader info from compile_inputs
- pan/bi: Use canonical name for FAU RAM sources
- pan/bi: Get rid of the regs argument in bi_assign_fau_idx()
- pan/bi: Rework blend descriptor access handling
- pan/bi: Add support for load_blend_const_color_{r,g,b,a}_float
- pan/bi: Support indirect jumps
- panfrost: Add a "Bifrost Internal Blend" descriptor
- panfrost: Scalarize nir_load_blend_const_color_rgba
- panfrost: Flag blend shader function as an entry point
- pan/bi: Add load_output support
- pan/bi: Collect return addresses of blend calls
- pan/bi: Special-case BLEND instruction emission for blend shaders
- pan/bi: Reserve r0-r3 in blend shaders
- pan/bi: Special-case load_input for blend shaders
- panfrost: Add missing tile-buffer formats to the format enum
- panfrost: Add blend shader support to bifrost
- panfrost: Adjust the renderer state definition
- panfrost: Fix tiler job injection
- panfrost: Add the bifrost tiler internal state field
- panfrost: Add specialized preload descriptors
- panfrost: Replace unkown renderer state fields by their real names
- pan/bi: Make sure we don't print special index as a register
- pan/bi: Print blend descriptor source properly
- pan/bi: Add support for load_sample_id
- pan/bi: Support the case where TEXC needs 0 or 1 staging reg
- pan/bi: Add basic support for txf_ms
- panfrost: Make {midgard,bifrost}_compile_shader_nir() return a program object
- panfrost: Build blit shaders on Bifrost too
- panfrost: Use real name for attribute's unknown field
- panfrost: Rename panfrost_transfer to panfrost_ptr
- panfrost: Pass the texture payload through a panfrost_ptr
- panfrost: Split panfrost_load_midg()
- panfrost: Add support for native wallpapering on Bifrost
- panfrost: Use native wallpapering on Bifrost
- panfrost: Get rid of the non-native wallpering bits
- panfrost: Preload primitive flags when gl_FrontFacing is accessed
- pan/bi: Add support for load_front_face
- pan/bi: Add support for load_point_coord
- pan/bi: Lower {i,u}{min,max} instructions
- pan/bi: Add ult support
- pan/bi: Fix ms_idx type to catch missing ms_index source
- panfrost: Leave push_constants pointer to NULL if there's no uniform
- panfrost: Suppress Bifrost prefetching
- panfrost: Add array size to XML
- panfrost: Implement v7 texture payloads
- pan/bi: s/t0/t1/ in bi_disasm_dest_add()
- pan/bi: Move special instruction packing to a separate helper
- pan/bi: Split special class in two
- pan/bi: Hook up cube instructions packing
- pan/bi: Lower cube map coordinates
- panfrost: Force late pixel kill when depth/stencil is written from the FS
- panfrost: Expose GLES3 features on Bifrost when PAN_MESA_DEBUG=deqp
- pan/bi: Extract LD_VAR sample field from ins->load_vary.interp_mode
- pan/bi: Support centroid and sample interpolations
- pan/bi: Fix swizzle handling in bi_copy_src()
- pan/bi: Add support for load_ubo
- pan/bi: Lower uniforms to UBO
- pan/bi: Get rid of bi_emit_ld_uniform()
- pan/bi: Move bitwise op packing out of bi_pack_fma()
- pan/bi: Fix ARSHIFT definitions
- pan/bi: Add support for ishr
- pan/bi: Add support for ushr
- panfrost: Allow linear ZS resources on Bifrost
- pan/bi: Add support for load_vertex_id
- pan/bi: Add support for load_instance_id
- panfrost: Fix Bifrost blend descriptor emission
- panfrost: Fix ->reads_frag_coord assignment

Boyuan Zhang (5):

- vl: add flag and definition for protected playback
- frontends/va: handle protected slice data buffer
- radeon: add decryption params definition header
- radeon/vcn: add defines for drm message buffer
- radeon/vcn: program drm message buffer

Brendan Dougherty (1):

- mesa: Fix vertex_format_to_pipe_format index.

Caio Marcelo de Oliveira Filho (19):

- intel/compiler: Use C99 array initializers for prog_data/key sizes
- nir: Add nir_intrinsic_terminate and nir_intrinsic_terminate_if
- spirv: Update headers and metadata from latest Khronos commit
- spirv: Handle SpvOpTerminateInvocation
- intel/fs: Handle nir_intrinsic_terminate
- vulkan: Update XML and headers to 1.2.158
- anv: Advertise VK_KHR_shader_terminate_invocation
- nir: Use a switch in nir_lower_explicit_io_instr
- intel/fs: Don't emit_uniformize when getting a constant SSBO index
- spirv: Implement SpvCapabilitySubgroupShuffleINTEL from SPV_INTEL_subgroups
- nir: Add nir_intrinsic_{load,store}_deref_block_intel
- spirv: Implement SpvCapabilitySubgroupBufferBlockIOINTEL
- intel/fs: Add A64 OWORD BLOCK opcodes
- intel/fs: Implement nir_intrinsic_{load,store}_global_block_intel
- intel/fs: Add surface OWORD BLOCK opcodes
- intel/fs: Implement nir_intrinsic_{load,store}_ssbo_block_intel
- intel/fs: Implement nir_intrinsic_{load,store}_shared_block_intel
- compiler: Add new Vulkan shader stages
- spirv: Add Ray Tracing execution models

Caleb Callaway (1):

- iris: Add missing newline to debug log message

Chad Versace (2):

- anv/image: Check DISJOINT in vkGetPhysicalDeviceImageFormatProperties2 (v2)
- anv/image: Fix isl_surf_usage_flags for stencil images

Charmaine Lee (3):

- st/mesa: increase size of gl_register_file bitfields
- winsys/svga: fix display corruption after surface_init
- svga: fix draw elements with 8-bits indices

Chia-I Wu (2):

- virgl: move protocol headers to a common place
- virgl: update protocol headers

Christian Gmeiner (17):

- etnaviv: call nir_lower_bool_to_bitsize
- etnaviv: completely turn off MSAA
- ci: do not build libdrm for vc4, reedreno and etnaviv
- etnaviv: call nir_opt_shrink_vectors(..) in opt loop
- etnaviv: shuffle some variant fields
- etnaviv: add disk cache
- etnaviv: simplify linear stride implementation
- ci: piglit: conditionally build OpenCL tests
- ci/bare-metal: suppress 'No such file or directory'
- etnaviv: drop etna_pipe_wait(..)
- ci/x86: speed up piglit testing
- nir: make tgsi_varying_semantic_to_slot(..) public
- etnaviv: convert from tgsi semantic/index to varying-slot
- etnaviv: move etna_dump_shader(..) to generic location
- etnaviv: move etna_destroy_shader(..) to generic location
- etnaviv: nir: do not run opt loop after nir_lower_bool_xxx(..)
- etnaviv/drm: fix evil-twin etna_drm_table_lock

Connor Abbott (59):

- freedreno/afuc: Fix printing preemptleave on a5xx
- freedreno/afuc: Handle setsecure opcode
- freedreno/afuc: Add iret
- freedreno/afuc: Handle xmov modifiers
- freedreno/afuc: Make 0 a valid number
- freedreno/afuc: Install asm/disasm
- freedreno: Add afuc regression test
- nir/spirv: Add the option to keep ViewIndex as an input
- nir/lower_input_attachments: Refactor to use an options struct
- nir/lower_input_attachments: Support loading layer id as an input
- radv: Use an input for the layer when lowering input attachments
- tu: Use an input for the layer when lowering input attachments
- nir/lower_input_attachments: Support loading layer id via gl_ViewIndex
- freedreno/a6xx: Add multiview registers
- ir3: Add support for gl_ViewIndex in VS & FS
- tu: Translate VkRenderPassMultiviewCreateInfo to VkRenderPassCreateInfo2
- tu: Parse multiview render pass info
- tu: Implement multiview clear/resolve interactions
- tu: Improve timestamp queries
- tu: Implement multiview query interactions
- tu: Add multiview lowering pass
- tu: Implement multiview pipeline state
- tu: Enable VK_KHR_multiview
- freedreno/computerator: Use a render node
- tu: Expose shaderStorageImageExtendedFormats
- tu: Expose shaderImageGatherExtended
- ir3: Don't use the format to get the image type
- tu: Expose shaderStorageImage*WithoutFormat
- nir: Add nir_lower_multiview pass
- anv: Use nir_lower_multiview pass
- nir: Count i/o slots correctly for per-view variables
- nir/lower_io_arrays: Fix xfb_offset bug
- nir: Add per_view to IO semantics
- nir: Handle per-view io in nir_io_add_const_offset_to_base()
- tu: Write multiview control registers in binning pass
- tu: Refactor shader compilation flow
- ir3, tu: Run optimization loop twice
- ir3, tu: Link per-view position correctly
- tu: Enable multi-position output
- intel/nir: Use nir control flow helpers
- radv: Use nir control flow insertion helpers
- ttn: Use nir control flow insertion helpers
- nir/lower_returns: Use nir control flow insertion helpers
- nir/opt_if: Remove open-coded nir_ssa_def_rewrite_uses()
- nir/opt_if: Use early returns in opt_if_merge()
- ttn: Fix number of components for IF/UIF
- nir/lower_clip_cull: Store array size for FS inputs
- ir3: Switch tess lowering to use location
- ir3: Handle clip+cull distances
- tu: Implement clip/cull distances
- freedreno/a6xx: Implement user clip/cull distances
- freedreno: Introduce common device info struct
- tu: Use freedreno_dev_info
- freedreno: Use freedreno_dev_info
- freedreno/a6xx: Update SO registers for streams
- ir3: Support geometry streams
- util/bitset: Add a range iterator helper
- tu: Support geometryStreams
- tu: Support rasterizerDiscardEnable and RasterizationStreamSelect

Daniel Abrecht (1):

- etnaviv: Make sure to track different pipe_screens for different DRM device descriptions

Daniel Schürmann (26):

- aco: execute branch instructions in WQM if necessary
- nir,amd: remove trinary_minmax opcodes
- aco/isel: refactor code and remove unnecessary v_mov
- aco/isel: refactor emit_vop3a_instruction() to handle 2 operand instructions
- ac/nir: implement nir_op_[un]pack_[64/32]_\*
- aco: propagate SGPRs into VOP1 instructions early.
- aco: expand create_vector more carefully w.r.t. subdword operands
- aco: use p_create_vector for nir_op_pack_half_2x16
- nir/opt_algebraic: optimize unpack_half_2x16_split_x(ushr, a, 16)
- aco: use p_split_vector for nir_op_unpack_half\_\*
- aco: add validation rules for p_split_vector
- aco: use v_cvt_pkrtz_f16_f32 for pack_half_2x16
- radv,aco: lower_pack_half_2x16
- aco: use VOP2 version of v_cvt_pkrtz_f16_f32 on GFX_6_7_10
- aco: use VOP2 for v_cvt_pkrtz_f16_f32 if possible
- aco: refactor GFX6_7 subdword copy lowering
- aco: improve code sequences for 16bit packing
- aco: use do_pack() for self-intersecting operations.
- aco: fix GFX8 16-bit packing
- aco: implement nir_op_unpack_[64/32]_\*
- ac/nir: implement nir_op_[un]pack_64_4x16
- nir: add options to lower nir_op_pack_[64/32]_\* via nir_lower_alu_to_scalar()
- radv: lower pack_[64/32]_\* via nir_lower_alu_to_scalar()
- radv: remove call to nir_lower_pack()
- aco: refactor split_store_data() to always split into evenly sized elements
- nir/lcssa: consider loops with no back-edge invariant

Daniel Stone (17):

- glsl/test: Don't run whitespace tests in parallel
- CI: Disable Panfrost T860 and AMD Stoney tests
- CI: Skip flaky CS test on VirGL
- CI: Skip another flaky GS test on softpipe
- CI: Disable Panfrost T720/T760 CI
- meson: Add MSVC narrowing-int-to-char warnings
- CI: Windows: Use separate config file for Docker
- CI: Re-enable VS2019 build
- CI: Disable Windows again
- CI: Temporarily disable Panfrost T7xx
- CI: Re-enable Panfrost T7xx
- CI: Disable Panfrost T7xx CI
- CI: Re-enable Panfrost T7xx CI
- CI: Don't run pixmark-piano twice on radeonsi
- CI: Only run OpenCL tests when we need to
- CI: Disable Panfrost T760
- freedreno: Add missing dependency to build

Danylo Piliaiev (19):

- st/mesa: Treat vertex outputs absent in outputMapping as zero in mesa_to_tgsi
- anv/nir: Unify inputs_read/outputs_written between geometry stages
- spirv: Only require bare types to match when copying variables
- ir_constant: Return zero on out-of-bounds vector accesses
- glsl: Eliminate assigments to out-of-bounds elements of vector
- glsl: Eliminate out-of-bounds triop_vector_insert
- intel/disasm: Change visibility of has_uip and has_jip
- intel/disasm: brw_label and support functions
- intel/disasm: Label support in shader disassembly for UIP/JIP
- intel/assembler: Add labels support
- intel/compiler: Fix pointer arithmetic when reading shader assembly
- st/nir: Call st_glsl_to_nir_post_opts before interface unification
- nir/lower_io: Eliminate oob writes and return zero for oob reads
- nir/large_constants: Eliminate out-of-bounds writes to large constants
- nir/lower_samplers: Clamp out-of-bounds access to array of samplers
- intel/fs: Disable sample mask predication for scratch stores
- docs: add INTEL_SHADER_ASM_READ_PATH description
- nir/lower_returns: Append missing phis' sources after "break" insertion
- freedreno/a6xx: Fix typo in height alignment calculation in a6xx layout

Dave Airlie (115):

- anv: add no reloc flags on empty and simple bo paths.
- CI: temp disable t720/t760 jobs.
- llvmpipe: only read 0 for channels being read
- gallium: add an interface for memory allocations.
- gallium: add a resource flag to say no over allocation.
- llvmpipe: add support for memory allocation APIs
- gallivm/nir: add load push constant support
- util/format: add some ZS helpers for vallium
- vulkan/wsi: add sw support. (v2)
- vallium: initial import of the vulkan frontend
- llvmpipe/blit: for 32-bit unorm depth blits just copy 32-bit
- llvmpipe: enable GL 4.5
- vallium: fix input attachment lowering variable shadowing
- llvmpipe/cs: update compute counters not fragment shader.
- gallium/nir/tgsi: reindent some code in the nir->tgsi info (v2)
- gallivm/nir: add imod support
- gallivm/sample: fix lod query on array textures.
- llvmpipe: lower uadd_carry/usub_borrow.
- gallium/nir/tgsi: add support for compact variables
- gallivm/nir: fixup compact TCS variable storage.
- gallivm/nir: split tex/sampler indirect offsets
- llvmpipe: lower cs local index from id
- llvmpipe: lower mul 2x32_64
- llvmpipe/nir: lower some more packing at nir level.
- llvmpipe: add reference counting to fragment shaders.
- vallium: handle 3D image views properly.
- vallium: limit buffer allocations to gallium max.
- gallium/nir/tgsi: fix nir->tgsi info conversion for samplers/image
- gallivm/nir: lower tg4 offsets.
- gallivm/nir: add indirect swizzle output loading support
- gallivm/nir: add quantize to f16 support
- gallivm/nir: fix const compact
- gallivm/nir: lower frexp/ldexp
- gallivm/nir: add subpass sampler type support
- gallivm: use common code to select texel type
- llvmpipe: blend has effects even if no colorbuffers.
- llvmpipe: add array/3d clearing support
- llvmpipe/fs: multisample depth/stencil bad ir generated
- gallivm/nir: allow 64-bit arit ops
- gallivm/nir: add some f16 support
- vallium: disable VK_KHR_shader_float16_int8.
- vulkan/device_select: don't pick a cpu driver as the default
- llvmpipe: include gallivm perf flags in shader cache.
- gallivm: disable brilinear for lod bias and explicit lod.
- vtn: add an option to create a nir library from spirv
- clover/nir: add libclc lowering pass
- util: add missing extern C
- clover: handle libclc shader (v3)
- gallivm: fix pow(0, y) to be 0
- gallivm: fix 64-bit CL intrinsics.
- gallivm/nir: fix up non 32-bit load stores
- gallivm/nir: handle non-32-bit mul high
- llvmpipe: use an alternate env var to enable clover.
- lavapipe: rename vallium to lavapipe
- gallivm/nir: make sure to mask global reads.
- llvmpipe/cs: add in shader shared size.
- gallivm/nir: fix non-32 bit find lsb/msb
- lavapipe: drop dri,dricommon deps.
- ci: move to using clang 10 for meson + clover
- clover: Use core libclc loader
- ci: enable piglit testing of clover/llvmpipe.
- clover: don't call validate spirv at all if not needed
- ci: fix deqp clone + fetch
- CI: build our own spirv tools
- clover/nir: add a constant folding pass before lowering mem const
- llvmpipe: fix sampler/image binding for clover.
- gallivm: add load/store scratch support.
- llvmpipe: fix 8/16 bit global stores
- gallivm: fix 64->16 f2f16
- gallivm: add 16-bit split/merge support.
- gallivm: add b2i8/b216 support
- gallivm: handle sub-32 bit masked stores.
- gallivm: add support for 8/16-bit mul_hi
- gallivm: get correct min/max behaviour for kernels.
- gallivm: lower flrp for all sizes.
- CI: remove llvmpipe cl flake test
- gallivm: zero init the temporary register storage.
- gallium: add a level parameter to resource parameter get
- gallium: add a layer stride pipe resource parameter.
- llvmpipe: add resource get param support.
- lavapipe: use resource get param.
- gallivm: fix f16 quantize.
- lavapipe: don't write to pending clear aspects in cmd buffer
- lavapipe: constify state pointers into command buffers.
- lavapipe: fix dEQP-VK.info.device_properties
- gallivm/nir: handle dvec3/4 inputs properly.
- gallivm/nir: fix vulkan vertex inputs
- lavapipe: fix 3d compressed texture copies.
- lavapipe: stop crashes with 3D z blits
- llvmpipe: add clear_buffer callback. (v2)
- lavapipe: use clear_buffer callback
- lavapipe: don't advertise linear filtering on integer textures.
- gallium: add a non-multisample sample mask out behaviour flag.
- llvmpipe: respect the sample mask in non-multisample flag
- lavapipe: request correct sample mask behaviour
- CL: update CL headers to 3.0
- vtn/opencl: add ctz support
- clover: access 3.0 and deprecated 2.2 API
- clover/llvm: add 3.0 versioning.
- clover/spirv: hook up spir-v environment for 3.0
- clover: add empty cl 3.0 dispatch entries.
- gallium: handle empty cbuf slots in framebuffer samples helper
- u_blitter: port radv 3D blit coords logic.
- lavapipe: enable alpha to one.
- lavapipe: disable SNORM blending for now
- llvmpipe: just use draw_regions in draw/line setup.
- draw: fix tess eval pipeline statistics.
- lavapipe: fixup device allocate + enable private data
- lavapipe: fix wsi acquire fences
- llvmpipe/setup: move point stats collection earlier.
- llvmpipe: fix multisample point rendering.
- llvmpipe: fix multisample lines.
- lavapipe: fixup mipmap precsion bits
- lavapipe: enable pipeline stats queries
- gallium: fix missing bit field in p_state.h

Denis Pauk (1):

- mesa: bptc fixes for decompress rgba_unorm and rgb_float

Duncan Hopkins (10):

- meson: Add xcb-fixes to loader when using x11 and dri3. Fixes undefined symbol for xcb_xfixes_create_region in loader_dri3_helper.c
- zink: clamped maxPerStageDescriptorUniformBuffers limits to INT_MAX when stored as uint32_t.
- zink: Basic framework to check for optional instance layers and instance extensions.
- zink: Added support for MacOS MoltenVK APIs.
- zink: return fail if create_instance fails
- zink: Added inbuilt debug logging from the VK_LAYER_LUNARG_standard_validation layer.
- zink: add support to device info for macro guards and just VkPhysicalDevice*Features with out the have\_.
- zink: have_triangle_fans support.
- zink: For MoltenVk added vkFlushMappedMemoryRanges() to vkMapMemory() to fix empty mapped memory.
- zink: make physical device functions use a dynamic function pointers.

Dylan Baker (31):

- Bump development version and clear new_features
- meson/freedreno: Fix lua requirement
- docs: update calendar for 20.2.0-rc1
- docs: update calendar for 20.2.0-rc2
- meson/anv: Use variable that checks for --build-id
- glsl/xxd.py: fix imports
- clover/meson: use dep.get_variable instead of deprecated get_pkgconfig_variable
- meson: generalize libclc usage
- docs: update calendar and link releases notes for 20.2
- docs/release-calender: Add 20.2 stable releases
- docs: add release notes for 20.2.0
- docs: Add sh256 sums for 20.2.0
- docs: add release notes for 20.2.1
- docs: add SHA256 sums for 20.2.1
- docs: update calendar and link releases notes for 20.2.1
- docs: add release notes for 20.2.2
- dcs: Add sha256 sums for 20.2.2
- docs: update calendar and link releases notes for 20.2.2
- bump version for 20.3-rc1
- .pick_status.json: Update to bf5cea7232f9ee2934c212211ebefb6fe766526d
- .pick_status.json: Update to 87dc3106b077199b829a082e32ec33d0c6d400ab
- .pick_status.json: Update to bac6cc586fe4c1b24351e0574d3a961eb631f6ae
- bump VERSION for 20.3.0-rc2 release
- .pick_status.json: Update to a59b1b18a95af1f8edb0093baf508e974e3251a2
- .pick_status.json: Update to a92f597b98bb032b904c7c8a8c3a9fe798b51915
- .pick_status.json: Update to 9fa1cdfe7ffd9e7ebd83055e2008f3e4b8ada549
- meson: Don't add extra values to shader-cache
- appveyor: disable for now
- bump VERSION for 20.3-rc3
- .pick_status.json: Update to 89f6b72f19dbc503386643c6283047bdb1013bef
- .pick_status.json: Update to d3c67d7e7ec6b9cf10fbea0d08e92751b7b0fbae

Eduardo Lima Mitev (9):

- st: Pass TextureTiling option from texture to memory obj
- freedreno: Implement memory object create/destroy for GL_EXT_memory_object
- freedreno: Refactor fd_resource_create_with_modifiers() into a helper
- freedreno/layout: Move hard-coded minimum width for UBWC to a macro
- freedreno: implement pipe screen's resource_from_memobj
- freedreno: Implement pipe screen's get_device/driver_uuid()
- freedreno: Enable GL_EXT_memory_object and GL_EXT_memory_object_fd
- freedreno: Destroy syncobj too when destroying fence
- turnip: Enable support for KHR_incremental_present

Eleni Maria Stea (3):

- radeonsi: support for external buffers (ext_external_objects)
- iris: handle PIPE_FD_TYPE_SYNCOBJ type
- iris: add support for fence signal capability

Emil Velikov (1):

- radv: restrict exported symbols with static llvm

Emmanuel Vadot (1):

- util/os_misc: os_get_available_system_memory() for FreeBSD

Eric Anholt (221):

- util: Split the pack/unpack functions out of the format desc.
- util: Change a codegenned switch statement to a nice little table.
- util: Fix up indentation in the generated format tables code.
- uitl: Add R1_UNORM to the list of noaccess (no pack/unpack) formats.
- util: Make all 3 fetch_rgba functions occupy the same function slot.
- util: Mark the format description getter functions as const.
- util: Move fetch_rgba to a separate function table.
- gallium: Use unpack_rgba() instead of fetch_rgba in translate_generic
- freedreno/ir3: Fix compiler warning from the setjmp fails path.
- freedreno/cffdec: When .mergedregs is set, don't count half regs.
- freedreno/ir3: Fix assertion failures dumping CS high full regs.
- util: Expose rgba unpack/fetch functions as external functions as well.
- util: Explicitly call the unpack functions from inside bptc pack/unpack.
- radv: Move nir_opt_shrink_vectors() into the opt loop.
- nir/opt_undef: Handle a couple more normal store intrinsics.
- nir: Expand opt_undef to handle undef channels in a store intrinsic.
- nir: Shrink store intrinsic num_components to the size used by the writemask.
- ci/deqp-runner: Drop stale comment from deqp-runner.sh.
- ci/deqp-runner: Drop unused "count" variable
- ci/deqp-runner: Add a post-deqp-run filter list for known flakes.
- ci/freedreno: Move our skips lists over to being known-flakes lists.
- ci/freedreno: List more common flakes reported recently.
- ci/bare-metal: Use a new serial buffer tool.
- ci/bare-metal: Convert the main cros-servo boot code to python
- ci/bare-metal: Retry booting chezas instead of failing when !POWER_GOOD
- ci/bare-metal: Try rebooting chezas again if they get stuck during tftp.
- nir: Make the nir_builder \*_imm helpers consistently handle bit size.
- nir: Add nir_[iu]shr_imm and nir_udiv_imm helpers and use them.
- nir: Add a lowering pass for backends wanting load_ubo with vec4 offsets.
- freedreno/ir3: Replace our custom vec4 UBO intrinsic with the shared lowering.
- nir/load_store_vectorizer: Clean up unit test swizzle assertions.
- freedreno: Drop UNIFORM_BUFFER_OFFSET_ALIGNMENT to 32
- ci: Mark the rest of compswap as flaky on freedreno.
- freedreno/a5xx: Don't set the VARYING flag for fragcoord-only programs.
- ci: Test the KHR-GL\* CTS cases with softpipe.
- nir/opt_copy_prop_vars: Quiet valgrind warning about overlapping memcpy.
- nir: Add a helper for general instruction-modifying passes.
- nir/lower_vec_to_movs: Convert to use nir_shader_instructions_pass().
- nir/opt_undef: Convert to use nir_shader_instructions_pass().
- nir/lower_io_to_scalar: Convert to use nir_shader_instructions_pass().
- nir/nir_lower_wrmasks: Use the nir_lower_instructions_pass() helper.
- nir/lower_discard_to_demote: Use nir_shader_instructions_pass().
- drm-shim: Fix unused variable warnings from asserts in release build.
- panfrost: Fix OOB array access compiler warning.
- panfrost: Fix remaining release-build warnings.
- gallium/tests: Fix compiler warning about unused vars in trivial tests.
- nvc0: Fix compiler warning about unused var that gets asserted.
- vc4: Fix unused var warnings in release builds from assertions.
- nv50: Fix uninitialized var warnings from using assert() as unreachable().
- zink: Fix unused var warnings in release build from assertions.
- etnaviv: Fix unused var warning in release build from assertions.
- lima: Fix unused var/function warnings in release build from assertions.
- lima: Fix uninitialized var warning from using assert() as unreachable().
- virgl: Fix unused var warnings in release build from assertions.
- ci: Add a release build with -Werror enabled.
- nir: Fix printing of individual instructions with io semantics.
- nir: Look up the shader when printing a single instruction.
- ci: Make a missing device name correctly bail out of deqp-runner.sh.
- turnip: Make sure we include the build id.
- pipe-loader: Use real galliumvl if radeonsi is being linked.
- ci: Switch to using gold as the linker.
- nir: Invalidate live SSA def information when making new SSA defs.
- nir: Switch the indexing of block->live_in/out arrays.
- ci: Bump vulkan CTS version to 1.2.3.2, and keep the GL CTS around.
- ci: Use the same VK-GL-CTS tree for GL/GLES as VK.
- ci: Enable KHR-GL30 CTS testing on freedreno a630.
- freedreno/a6xx: Add ARB_depth_clamp and separate clamp support.
- gallivm: Report the unsupported intrinsic instead of just assert(0);
- gallium/tgsi: Add support for PRIMITIVEID as a system value.
- gallium/tgsi: Add some missing opcodes to tgsi_ureg.
- gallium/tgsi: Add a helper for initializing ureg from a shader_info.
- gallium/ureg: Set the next shader stage from the shader info.
- nir: Add simplistic lowering for bany_equal/ball_inequal.
- nir/opt_vectorize: Add a callback for filtering of vectorizing.
- gallium/tgsi_exec: Add missing DFLR opcode support.
- gallium/tgsi_exec: Fix up NumOutputs counting
- ci/bare-metal: Use re.search() instead re.match() for our line matching.
- ci/bare-metal: Fix detection of "POWER_GOOD not seen in time" fails
- ci/bare-metal: Include a timestamp in our serial reads.
- ci/bare-metal: Log why our run restarts when it does.
- ci/bare-metal: Fix capturing of serial output as job artifacts.
- ci/bare-metal: Use python for handling fastboot booting and parsing
- nir/load_store_vectorizer: Use more imm helpers in the tests.
- nir/load_store_vectorizer: Add unit tests for alignment handling.
- nir: Update the comment about nir_lower_uniforms_to_ubo()'s multiplier.
- nir: Add a range_base+range to nir_intrinsic_load_ubo().
- freedreno/ir3: Use the new NIR UBO ranges in UBO analysis.
- freedreno/ir3: Apply the max upload limit to initial range setup
- nir: Use explicit deref information to provide real UBO ranges.
- iris: Add missing range_base/range to our nir_load_ubos.
- turnip: Fix a compiler warning in release builds of the query code.
- freedreno: Make the pack struct have a .qword for wide addresses.
- turnip: Fix truncation of CS shader iovas to 32 bits.
- turnip: Fix truncation of iovas to 32 bits in queries.
- ci/bare-metal: Update the kernel to msm-next-pgtables
- ci/bare-metal: Allow wget of the kernel/dtb for kernel development.
- freedreno: Add another new sysmem flake.
- freedreno/cffdec: Fix up texturator parsing scripts for XML changes.
- freedreno/cffdec: Add support for texturator's 2DMS layout setup.
- freedreno/fdl: Add layout test for the Android CTS's MSAA mustpass surface.
- turnip: Add support for a615.
- turnip/kgsl: Associate fences with submits.
- mesa: Make the android_stub be a set of non-installed shared libraries.
- android: Disable trying to read/write to the disk cache.
- gallium/drm: Deduplicate screen creation for the dynamic (clover) pipe loader.
- gallium/drm: Refactor the stub screen create functions.
- gallium/drm: Define the DRM entrypoints in drm_helper.h
- gallium/drm: Make the pipe loader handle the driconf merging.
- util/xmlconfig: Add a unit test of the code.
- virgl: Clean up the driconf definition of GLES_SAMPLES_PASSED_VALUE.
- driconf: Use nesting macros for defining options.
- mesa: Promote Intel's simple logging façade for Android to util/
- turnip: Replace tu_log*() with mesa_log*()
- ci/freedreno: Sort the traces in the .yml of expectations
- ci/freedreno: Add trace tests for glxgears, 0 A.D., and xonotic.
- nir/lower_clip: Add i/o semantics for load/store intrinsics.
- intel: Add support for i945g to intel_stub_gpu.
- freedreno/ir3: Make sure we run the opt loop after lowering UBOs to vec4.
- nir: Document a bit about how align_mul/offset work.
- nir: Print the alignment information on casts.
- nir/nir_lower_uniforms_to_ubo: Set better alignments on our new instructions.
- nir/gl_nir_lower_buffers: Set up align_mul/offset on UBOs.
- nir: Make the load_store_vectorizer provide align_mul + align_offset.
- nir: Drop the high_offset argument to the load_store_vectorizer filter.
- nir: Make nir_lower_ubo_vec4() handle non-vec4-aligned loads.
- freedreno/ir3: Enable the i/o vectorizer on UBOs.
- ci/bare-metal: Move the "POWER_GOOD not seen in time" check to the right time.
- driconf: Eliminate the DRI_CONF_OPT_BEGIN_B macro.
- driconf: Fix extra quoting on "Jimenez'".
- r200: Reuse DRI_CONF_OPT_F for texture_blend_quality.
- driconf: Make a DRI_CONF_OPT_S() for string options.
- util/xmlconfig: Drop silly open-coded strdup.
- util/xmlconfig: Indent to Mesa style.
- driconf: Delete disjoint range support.
- driconf: Use DRI_CONF_OPT_I for remaining int options
- driconf: Make the driver's declarations be structs instead of XML.
- driconf: Stop quoting true/false in boolean option definitions.
- util/xmlconfig: Drop use of XML_Char in parsing.
- android: Disable the user XML config parsing.
- turnip: Don't expose VK_ANDROID_native_buffer on non-Android.
- turnip: Use mesa's normal PRINTFLIKE macro instead of our own.
- turnip: Mark the vk_errorf helper as bring printflike.
- turnip: Extend the coverage of TU_DEBUG=startup.
- turnip: Always enable TU_DEBUG=startup on debug drivers.
- turnip: Report device loss through \_mesa_loge() instead of fprintf.
- turnip/kgsl: Add strerror decode in BO init failure.
- driconf: Make sure that the range check on the defaults actually works.
- driconf: Restore the ability to override driconf with the environment.
- ci/softpipe: Add another flaky GS test to the skips list.
- freedreno/ir3: Clean up the UBO upload plan setup.
- freedreno/ir3: Don't leave holes the UBO upload plan.
- turnip/kgsl: Fix last minute breakage of the build.
- turnip/kgsl: Add support for importing dma-bufs.
- turnip: Detect Qualcomm gralloc and its UBWC flag on gralloc surfaces.
- turnip: Add support for GetSwapchainGrallocUsage2ANDROID().
- meson: Drop adding -Wl,--gc-sections to project c/cpp arguments.
- glsl/tests: Make the tests skip on Android binary execution failures.
- symbols-check: Add \__cxa_guard_\* to the list of approved symbols.
- ci/android: Switch to using the Android NDK.
- docs: Document how to replicate a CI build locally.
- android_stub: Update platform headers to include gralloc1.h.
- ci/android: Switch build to using platform SDK version 26.
- util: Import a copy of drm's libsync.h
- android: Add pre-4.7 Android kernel compatibility to our libsync header.
- turnip: Drop a dead error checking path in device init.
- turnip: Use Mesa's libsync.h instead of libdrm's libsync.h.
- turnip: Don't link the WSI code if we don't have a WSI extension.
- turnip: Only link libdrm in the DRM case, not KGSL.
- ci: Enable NIR_VALIDATE everywhere.
- nir: Introduce nir_metadata_instr_index for nir_index_instr() being current.
- nir: Replace nir_ssa_def->live_index with nir_instr->index.
- nir: Add a block start/end ip to live instr index metadata.
- nir: Add a call to get a struct describing SSA liveness per instruction.
- nir: Add an option to not lower source mods for f64/u64/i64.
- gallium: Add a nir-to-TGSI pass.
- softpipe: Fix buffer overflows in SSBO atomics.
- softpipe: Switch to using NIR as the shader format from mesa/st.
- meson: Only require libexpat when a part of the build needs it.
- freedreno: Use Android's libsync instead of libdrm's.
- meson: Don't try to build GLX by default on Android.
- meson: Don't enable libunwind by in 'auto' mode on Android.
- docs: Document how to build and install Android drivers.
- freedreno/cffdec: Fix format overflow warning.
- freedreno/tools: Fix compiler warnings about using sz in the error paths.
- freedreno/fdperf: Silence a compiler warning about current counter.
- turnip: Handle some error paths in allocating CS space from a command buffer.
- turnip: Handle the error path for tu/drm's vkResetFences().
- turnip: Add error path handling for descriptor pool init.
- ci: Enable Werror on meson-arm64-build-test.
- gallium/ntt: Add default compiler options for non-native-NIR drivers.
- st/mesa: Drop the TGSI paths for PBOs and use nir-to-tgsi if needed.
- st/mesa: Drop the TGSI paths for drawpixels and use nir-to-tgsi if needed.
- nir: Only validate in passes that might have changed things.
- docs: Move the gallium driver documentation to the top level.
- docs/vmware: Move the vmware driver docs into the drivers section.
- docs/vc4: Move my old vc4 wiki's documentation into docs.mesa3d.org.
- docs/vc4: Add information on the hw documentation available.
- docs/v3d: Add a little stub of v3d documentation.
- docs: Drop extra link to old DRI wiki in the "Help" section.
- docs: Add a link to the linux kernel DRM docs under "Developer Topics"
- docs: Fix "Hosted by" link and drop duplicate.
- ci: Add the new timeout-prone softpipe-gl test to the skips list.
- mesa/st: Fix a use-after-free of the NIR shader stage.
- st/nir: Fix the st->pbo.use_gs case.
- st/nir: Drop setting interp mode on system values in builtins.
- tu: Make sure spirv_to_nir knows we support imageStorageWithoutFormat.
- turnip: Fix image size for 3D vkGetImageSubresourceLayout.
- ci/bare-metal: Apply autopep8 to the bare-metal scripts.
- ci/bare-metal: Reset colors at the end of a line of serial output.
- ci/deqp: Switch to a new dEQP runner written in Rust.
- util/set: Fix the \_mesa_set_clear function to not leave tombstones.
- ci: Only install kernel modules for LAVA devices.
- gallium/draw: Fix rasterizer_discard for wide points/lines.
- freedreno: Fix leak of shader binary on disk cache hits.
- freedreno: Fix warning about uninit size for the size==0 special case.
- gallium: Fix leak of the merged driconf options.
- freedreno: Fix leak of u_transfer_helper.
- gallium: Fix leak of bound SSBOs at CSO context destruction.
- gallivm: Fix max const buffer count.
- gallium: Fix leak of currently bound UBOs at CSO context destruction.
- freedreno: Break out of "should we free the entry" loop once we've freed.

Eric Engestrom (94):

- pick-ui: specify git commands in "resolve cherry pick" message
- egl/entrypoint-check: split sort-check into a function
- egl/entrypoint-check: add check that GLVND and plain EGL have the same entrypoints
- driconf: fix force_gl_vendor description
- meson: bump required glvnd version
- egl: replace \_EGLDriver param with \_EGLDisplay->Driver in \_eglReleaseDisplayResources()
- egl: replace \_EGLDriver param with \_EGLDisplay->Driver in dri{2_x11,3}_create_window_surface()
- egl: replace \_EGLDriver with \_EGLDisplay->Driver in \_eglQuerySurface()
- egl: drop unused \_EGLDriver from Initialize()
- egl: drop unused \_EGLDriver from Terminate()
- egl: drop unused \_EGLDriver from {Create,Destroy}Context()
- egl: drop unused \_EGLDriver from Create{Window,Pixmap,Pbuffer}Surface() & DestroySurface()
- egl: drop unused \_EGLDriver from MakeCurrent()
- egl: drop unused \_EGLDriver from QuerySurface()
- egl: drop unused \_EGLDriver from {Bind,Release}TexImage()
- egl: drop unused \_EGLDriver from SwapInterval()
- egl: drop unused \_EGLDriver from SwapBuffers{,WithDamageEXT,RegionNOK}()
- egl: drop unused \_EGLDriver from CopyBuffers()
- egl: drop unused \_EGLDriver from SetDamageRegion()
- egl: drop unused \_EGLDriver from WaitClient()
- egl: drop unused \_EGLDriver & \_EGLDisplay from WaitNative()
- egl: drop unused \_EGLDriver from GetProcAddress()
- egl: drop unused \_EGLDriver from {Create,Destroy}ImageKHR()
- egl: drop unused \_EGLDriver from {Create,Destroy,ClientWait,Wait,Signal}SyncKHR()
- egl: drop unused \_EGLDriver from DupNativeFenceFDANDROID()
- egl: drop unused \_EGLDriver from {Create,Export}DRMImageMESA()
- egl: drop unused \_EGLDriver from {Bind,Unbind,Query}WaylandDisplayWL()
- egl: drop unused \_EGLDriver from CreateWaylandBufferFromImageWL()
- egl: drop unused \_EGLDriver from PostSubBufferNV()
- egl: drop unused \_EGLDriver from QueryBufferAge()
- egl: drop unused \_EGLDriver from ExportDMABUFImage{,Query}MESA()
- egl: drop unused \_EGLDriver from QueryDmaBuf{Formats,Modifiers}EXT()
- egl: drop unused \_EGLDriver from SetBlobCacheFuncsANDROID()
- egl: drop unused \_EGLDriver from \_eglGetConfigs()/_eglChooseConfig()/_eglGetConfigAttrib()
- egl: drop unused \_EGLDisplay from \_eglSetDamageRegionKHRClampRects()
- egl: drop unused \_EGLDriver & \_EGLDisplay from \_eglQueryContext()
- egl: drop unused \_EGLDriver from \_eglSurfaceAttrib()
- egl: replace \_EGLDriver with \_EGLDisplay->Driver in \_eglGetSyncAttrib()
- egl: replace replace \_EGLDriver with \_EGLDisplay->Driver in eglapi.c
- egl: drop unused \_EGLDriver from MesaGLInteropEGL{QueryDeviceInfo,ExportObject}()
- egl: replace \`&_eglDriver\`/\`NULL\` tested against \`NULL\` with simple \`true\`/\`false\`
- egl: drop unused ${drv}_driver()
- egl: inline \_eglGetDriverProc() into eglGetProcAddress()
- egl: inline \_eglInitializeDisplay() into eglInitialize()
- egl: drop now empty egldriver.c
- egl: drop unused egldriver.h header
- meson: fix trivial s/dir/dri/ typo
- egl/x11_dri3: enable & require xfixes 2.0
- egl/x11_dri3: implement EGL_KHR_swap_buffers_with_damage
- docs: add release notes for 20.1.6
- docs: update calendar and link releases notes for 20.1.6
- gitlab-ci: fix testing whether a variable with a given name is set or not
- gitlab-ci: fix quoting of variables passed down to bare-metal runners
- egl: drop an indentation level in \_eglFindDisplay() by replacing break/if with a goto
- egl: drop another indentation level in \_eglFindDisplay() by inverting an if
- egl: drop invalid shebang
- scons: bump c++ standard to 14 to match meson
- docs/egl: fix typo
- docs/egl: move section around
- docs/egl: complete list of dri2 platforms
- docs/egl: add haiku driver
- docs/egl: add some more documentation
- docs/egl: correct/update DRI2 mention with the shiny new DRI3
- egl: move extension driver functions after core functions
- egl: document which driver hooks are only required by extensions
- egl: inline eglSwapInterval() fallback
- egl: simplify eglSwapInterval() fallback logic
- meson: don't advertise TLS support if glx wasn't build with it
- egl/android: simplify dri2_initialize_android()
- egl/surfaceless: simplify dri2_initialize_surfaceless()
- egl/wayland: simplify dri2_initialize_wayland()
- egl/x11: simplify dri2_initialize_x11()
- docs: add release notes for 20.1.7
- docs: update calendar and link releases notes for 20.1.7
- docs: shift 20.2 rc dates by two weeks to match reality
- meson: drop leftover PTHREAD_SETAFFINITY_IN_NP_HEADER
- docs/download: mention tarball GPG signatures and link to the keys
- docs: add another 20.1.x release to allow for more overlap with 20.2
- docs/release-calendar: update 20.2
- docs: add release notes for 20.1.8
- docs: update calendar and link releases notes for 20.1.8
- bin/gen_release_notes.py: escape special rST characters
- docs: add release notes for 20.1.9
- docs: update calendar and link releases notes for 20.1.9
- add one last 20.1 release to coincide with expected 20.2.1
- radv: add missing u_atomic.h include
- docs: fix relnotes index
- docs: fix release calendar
- docs: fix 20.2.0 relnotes
- docs: add release notes for 20.1.10
- docs: update calendar and link releases notes for 20.1.10
- docs/release-calendar: plan 20.3 release
- gitlab-ci: drop deprecated platforms that snuck in when nobody was watching
- meson: drop deprecated EGL platform build options

Erico Nunes (4):

- lima: dont split vec3 unaligned load inputs
- lima: allocate new bo for stream draw
- lima: fix vertex shader uniform buffer size
- lima: add natively supported vertex buffer formats

Erik Faye-Lund (123):

- st/wgl: do not reject PFD_SUPPORT_GDI
- gallium/util: factor out primitive-restart rewriting logic
- gallium/indices: don't expand prim-type for 8-bit indices
- gallium/indices: generalize primitive-restart logic
- gallium/indices: implement prim-restart for line-loops
- gallium/indices: use prim_restart-helper for polygon
- gallium/indices: implement prim-restart for triangle fans
- gallium/indices: introduce u_primconvert_config
- gallium/indices: translate primitive-restart values
- compiler/nir: make lowering global-id to local-id optional
- nir: add iabs-lowering code
- gallium/util: use uint sampler for stencil-reads
- nir: fix const-cast warning on MSVC
- v3d: remove unused header
- vc4: remove unused header
- gallium/aux: remove unused u_blit.[ch\]
- gallium/util: add shader for stencil-blits
- gallium/util: add blitter-support for stencil-fallback
- mesa: handle GL_FRONT after translating to it
- zink: correct typo in stencil-setup
- zink: store base-object of DSA-state
- zink: only set stencil-ref for back if two-sided
- docs: escape backquote character
- docs: show 'Edit on GitLab'-link
- docs: store prefixes in redirects
- docs: remove webmaster article
- docs: everytime -\> every time
- docs: apis -\> APIs
- docs: scons -\> SCons
- docs: frambuffer -\> framebuffer
- docs: make two acronyms upper-case
- docs: unecessarily -\> unnecessarily
- docs: behaviour -\> behavior
- docs: timeplan -\> time plan
- docs: initialisation -\> initialization
- docs: gitlab -\> GitLab
- docs: url -\> URL
- docs: recognisable -\> recognizable
- docs: drop outdated gallium-docs comment
- docs: clippping -\> clipping
- docs: consistantly -\> consistently
- docs: stabilisation -\> stabilization
- docs: flavours -\> flavors
- docs: debian -\> Debian
- docs: docker -\> Docker
- docs: gallium -\> Gallium
- st/mesa: use roundf instead of floorf for lod-bias rounding
- gallium/util: set right dst-dimensions
- gallium/util: fix texture-coordinates for stencil-fallback
- gallium/util: allow scaling blits for stencil-fallback
- docs: softwara -\> software
- docs: existant -\> existent
- docs: webservice -\> web service
- docs: bpp -\> BPP
- docs: llvm -\> LLVM
- docs: correct reference to meson.build
- docs: meson -\> Meson
- docs: python3 -\> Python 3
- docs: flex -\> Flex
- docs: bison -\> Bison
- docs: mako -\> Mako
- docs: chocolatey -\> Chocolatey
- docs: ninja -\> Ninja
- docs: mingw -\> MinGW
- docs: microsoft -\> Microsoft
- docs: linux -\> Linux
- docs: windows -\> Windows
- docs: visual studio -\> Visual Studio
- docs: gpu -\> GPU
- docs: cmake -\> CMake
- docs: x11 -\> X11
- docs: wayland -\> Wayland
- docs: drm -\> DRM
- docs: android -\> Android
- docs: git -\> Git
- docs: quote "git log"
- docs: scons -\> SCons
- docs: ubuntu -\> Ubuntu
- docs: vmware -\> VMWare
- docs: Sandybridge -\> Sandy Bridge
- docs: cpu -\> CPU
- gallium/util: fix memory-leak
- gallium/util: allow scissored blits for stencil-fallback
- zink: use nir_lower_ubo_vec4 to simplify things a bit
- zink: support non-const offsets
- zink: support loading any UBO
- zink: do not report SSBOs as halfway supported
- zink: add feature-documentation
- zink: reject resource-imports with modifiers
- v3d: do not report alpha-test as supported
- vc4: do not report alpha-test as supported
- nir: drop support for using load_alpha_ref_float
- nir: drop unused alpha_ref_float
- docs: create leading directories for redirects
- docs: verify that targets for relative redirects exist
- docs: specify redirects relative to docs-root
- docs: specify redirects in conf.py instead
- zink: verify geometry shader feature
- docs: do not document required minimum
- docs: document zink's gl \\> 3.0 requirements
- mapi: remove unused function
- mapi: do not call thread-unsafe dispatch getter
- mapi: do not return thread-specific data for wrong thread
- docs: add link to extension spec
- docs: ie. -\> i.e.
- docs: eg. -\> e.g.
- docs: anistropy -\> anisotropy
- docs: api -\> API
- docs: hud -\> HUD
- docs: fbo -\> FBO
- docs: gcc -\> GCC
- docs: clang -\> Clang
- docs: s3tc -\> S3TC
- spirv: correct sematic-typo
- libgl-gdi: support building without softpipe
- gallium/util: do not pass undefined sample-count
- softpipe: correct signature of get_compiler_options
- mesa/main: add missing include in glformats.h
- zink: more accurately track supported blits
- zink: fix layered resolves
- zink: fall back to util_blitter for scaled resolves
- docs: document new zink-flag
- zink: do not require VK_KHR_external_memory

Felix Yan (1):

- Correct a typo in threads_win32.h

Gert Wollny (81):

- gallium + mesa/st: Add PIPE_CAP_NIR_ATOMICS_AS_DEREF and use it
- r600: Set PIPE_CAP_NIR_ATOMICS_AS_DEREF to true
- r600/sfn: Sort uniforms by binding and offset
- r600/sfn: add r600 specific lowering pass for atomics and use it
- r600/sfn: Add a mapping table for atomics
- r600/sfn: correct allocating and emitting of atomics
- r600/sfn: Correct ssbo instruction handling
- r600/sfn: handle querying SSBO size
- r600/sfn: Force a minimum of 4 GPRs, it seems to fix atomics
- r600: Enable compute shaders for NIR code path
- compiler/nir: rewrite lower_fragcoord_wtrans to use nir_lower_instructions
- compiler/nir: extend lower_fragcoord_wtrans to support VARYING_SLOT_POS
- gallium/aux: reorder vertex attributes in triangle fans according to PV
- meson: Make some warnings handled as errors with MSVC
- r600: revert disabling llvm draw
- r600/nir: fetch sources and split uniforms before emittting alu instructions
- r600/sfn: correct ring op patching
- r600/sfn: Fix loading vertex attributes
- r600/sfn: clone shader before lowering to registers and src/dest modifiers
- r600/sfn: Fix ordering of tex param moves
- r600/sfn: avoid some copies
- r600/sfn: Lower \*sign opcodes in nir
- r600/sfn: Fix split_alu_modifiers
- r600/sfn: Fix bitfield ops and 2x16 split_y
- r600/sfn: Fix source swizzle for gradient queries
- r600/sfn: more fixing of vec4 fetching
- r600/sfn: Fix comparison with different signedness
- nir: Add option lower_uniforms_to_ubo
- radeonsi: set compiler flag lower_uniforms_to_ubo
- freedreno/ir3: set lower_uniforms_to_ubo compiler flag
- intel/compiler: Set lower_uniform_to_ubo compiler flag
- llvmpipe: set lower_uniform_to_ubo compiler flag
- gallium+mesa/st: lower uniforms based on compiler flag instead of packed uniforms cap
- r600: enable lowering uniforms to UBO
- r600/sfn: Use load_ubo_vec4 lowering pass
- nir: remove ubo_r600 instrinsic since ubo_vec4 is used now
- r600/sfn: make number of source components a local variable
- r600/sfn: Fix component count for fdph
- r600/sfn: Fix typo in comment
- r600/sfn: use cnde instead of cnde_int
- r600/sfn: run late algebraic optimizations
- r600/sfn: remove a useless if-condition
- r600: Add flag for dual-source blending to shader key
- r600/sfn: Sort the outputs of the FS according to data index
- r600/sfn: Keep info about dual-source blend in FS
- r600/sfn: Handle number of color outputs taking dual source blending into account
- r600/sfn: Take dual source blending output indices into account
- r600/sfn: Acquire the number of FS outputs and the write_all info early
- r600/sfn: Be a bit more verbose when logging skipped FS outputs
- r600/sfn: Fix emitting shared atomics with constant sources
- r600/sfn: Handle nir_op_b2b32
- r600/sfn: lower to scalar for some optimizations and vectortize later
- r600/sfn: Support group memory barrier
- r600/sfn: save some instructions when doing multisample on sample 0
- r600/sfn: use fine gradient evaluation for interpolate_at_offset
- r600/sfn: Fix interpolate at sample
- r600/sfn: Fix indirect const buffer access
- r600/sfn; go back to not lowering uniforms to UBOs
- r600/sfn: replace hand-backed literal check by NIR function
- r600/sfn: remove old code to track uniforms as it is no longer needed
- r600/sfn: Add support for helper invocations
- r600/sfn: Fix enabling the right interpolator for inerpolate_at_sample
- r600/sfn: Fix IDX register ID
- r600/sfn: Add support for more barrier instructions
- r600/sfn: extend life range of all variables by one
- r600/sfn: Don't reuse registers for workgroup ID and local invocation ID
- r600/sfn: Fix ssbo resource offset for buffer loads
- r600/sfn: Fix keepalive patch
- r600/sfn: fix mega fetch count for SSBO/Image atomics result fetch
- r600/sfn: Rework get_temp_register to return a smart pointer to GPRValue
- r600/sfn: use shared pointer to GPR for FS sysvalues
- r600/sfn: Handle mem barrier and image barrier by using ACK
- r600/sfn: use cacheless op for coherent image write
- r600/sfn: use 32 bit bools
- r600/sfn: fix remapping of deleted attributes
- r600/sfn: Use register keep-alive also when scanning the shader
- r600/sfn: Fix the parameter component type
- r600/sfn: Update state docu
- compile/nir: Correct printing dest_type
- r600/sfn: lower bool to int32 only after common optimizations
- r600/sfn: fix component loading from fixed buffer ID

Greg V (1):

- radv,anv: use CLOCK_MONOTONIC_FAST when CLOCK_MONOTONIC_RAW is undefined

Guido Günther (1):

- kmsro: Extend to include imx-dcss

Gurchetan Singh (7):

- virgl: add flags to (\*resource_create) callback
- drm-uapi: virtgpu_drm.h: resource create blob + host visible memory region
- virgl/drm: query for resource blob and host visible memory region
- virgl/drm: add resource create blob function
- virgl: support PIPE_CAP_BUFFER_MAP_PERSISTENT_COHERENT
- virgl: query blob mem
- virgl: fix stride + layer_stride inconsistency

Hoe Hao Cheng (7):

- zink: generate extension infrastructure using a python script
- zink: hook zink_device_info.py to build system
- zink: use the new extension infrastructure in device creation
- zink: use the new, generated extension infrastructure
- zink: remove old extension infrastructure
- zink: implement pipe_device_reset_callback
- zink: call the reset callback not only during a status check

Hyunjun Ko (4):

- freedreno: support GL_EXT_semaphore
- turnip: Refactor structs of tu_query
- turnip: Support pipeline statistics query
- turnip: Implement VK_EXT_host_query_reset

Iago Toral Quiroga (443):

- v3d/compiler: fix V3D double-rounding of .8 fixed-point XY coordinates
- v3dv: add support for valgrind macros
- v3dv: implement vkCreateInstance
- v3dv: implement vkDestroyInstance
- v3dv: implement vkEnumeratePhysicalDevices
- v3dv: pretend to initialize a physical device
- v3dv: Implement vkGetPhysicalDeviceProperties
- v3dv: retrieve device name from device info
- v3dv: add a comment to clarify how we should implement uuid / deviceID retrieval
- v3dv: implement vkGetPhysicalDeviceMemoryProperties
- v3dv: implement vkGetPhysicalDeviceFeatures
- v3dv: implement vkEnumerateDeviceExtensionProperties
- v3dv: amend vkEnumerateInstanceExtensionProperties to handle layers
- v3dv: implement vkGetPhysicalDeviceQueueFamilyProperties
- v3dv: implement vkCreateDevice
- v3dv: implement vkGetDeviceQueue
- v3dv: add dummy implementations for the packet definition generator
- v3dv: add stubs for the format table and vkGetPhysicalDeviceFormatProperties
- v3dv: add some basic support for format properties
- v3dv: implement vkEnumerate{Instance,Device}LayerProperties
- v3dv: add stub for vkDeviceWaitIdle
- v3dv: implement vkCreateImage
- v3dv: implement vkGetImageMemoryRequirements
- v3dv: initialize mememory heaps in the physical device
- v3dv: implement vkAllocateMemory
- v3dv: implement vkFreeMemory
- v3dv: implement vkMapMemory
- v3dv: implement vkUnmapMemory
- v3dv: implement vkBindImageMemory
- v3dv: implement vkCreateImageView
- v3dv: implement vk{Create,Destroy}Buffer
- v3dv: implement vkGetBufferMemoryRequirements
- v3dv: implement vkBindBufferMemory
- v3dv: implement vkCreateRenderPass
- v3dv: implement vk{Create,Destroy}RenderPass
- v3dv: implement vk{Create,Destroy}Framebuffer
- v3dv: implement vkCreateCommandPool
- v3dv: implement vk{Allocate,Free}CommandBuffers
- v3dv: create a v3dv_bo struct and reference it from v3dv_device_memory
- v3dv: add a concept of a command list
- v3dv: implement vkBeginCommandBuffer
- v3dv: start handling command buffer status
- v3dv: implement vkGetPhysicalDeviceImageFormatProperties
- v3dv: make v3dv_bo_alloc allocate memory for the bo struct
- v3dv: compute tile size for framebuffer
- v3dv: implement vkCmdBeginRenderPass
- v3dv: make the command buffer own the command list BOs
- v3dv: add a few more API stubs
- v3dv: store base mip level in the image view
- v3dv: add the tile state and alloc BOs to the command buffer BO list
- v3dv: revert the decision that the command buffer takes ownership of BOs
- v3dv: implement vkDestroyImage and vkDestroyImageView
- v3dv: make v3dv_layer_offset public
- v3dv: plug leak when destroying device
- v3dv: precompute more tiling info at framebuffer creation time
- v3dv: emit scissor to render area and precompute hw color clear values
- v3dv: emit the render command list
- v3dv: implement vkEndCommandBuffer
- v3dv: create the command buffer BO set before we init CLs
- v3dv: keep track of the numbre of BOs in a command buffer
- v3dv: clear set of BOs in the command buffer on reset
- v3dv: implement vkQueueSubmit
- v3dv: be more conservative resetting command buffer state
- v3dv: setup color clear values at subpass setup time
- v3dv: emit tile loads
- v3dv: flush at the end of each subpass
- v3dv: split framebuffer internal bpp calculations from tiling calculations
- v3dv: rename and make compute_tile_size_for_framebuffer() public
- v3dv: implement vkCmdCopyImageToBuffer
- v3dv: add the concept of a job
- v3dv: implement vkCmdNextSubpass
- v3dv: use the correct miplevel slice for the tile load operation
- v3dv: implement vkCmdPipelineBarrier
- v3dv: do not automatically emit a binner flush when finishing jobs
- v3dv: fix clipping against render area
- v3dv: add a note on interactions between clearing and scissor
- v3dv: rewrite attachment state tracking
- v3dv: only clear attachments on the first subpass that uses them
- v3dv: merge subpasses into the same job when possible
- v3dv: fix tile buffer loading
- v3dv: rewrite the attachment needs clearing condition
- v3dv: create a helper to start a new frame
- v3dv/cmd_buffer: rename render pass RCL emission helpers to be more explicit
- v3dv: handle VK_ATTACHMENT_UNUSED properly in more places
- v3dv: implement vkDeviceWaitIdle
- v3dv: implement vk{Create,Destroy}Semaphore
- v3dv: implement semaphore waits and signals on queue submissions
- v3dv: implement fences
- v3dv: support queue submissions with multiple command buffers
- v3dv: implement vkGetPhysicalDeviceSparseImageFormatProperties
- v3dv: include Vulkan version 1.1 as unsupported.
- v3dv: implement VK_KHR_get_physical_device_properties2
- v3dv: implement VK_KHR_external_memory_capabilities
- v3dv: implement VK_KHR_external_memory{_fd,_dma_buf}
- v3dv: fix copy image to buffer
- v3dv: implement vkGetImageSubresourceLayout
- v3dv: implement DRM modifier setup for WSI
- v3dv: hook up WSI support
- v3dv: implement device detection on actual hardware
- v3dv: allocate winsys BOs properly
- v3dv: rename drm device fields so they are more explict
- v3dv: don't swap RB channels when copying images to buffers
- v3dv: implement support for depth testing
- v3dv: don't always skip tile buffer stores
- v3dv: compute subpass ranges for attachments at render pass creation time
- v3dv: select the depth/stencil buffer from the attachment aspect mask
- v3dv: select correct internal type for depth/stencil formats
- v3dv: support depth testing on combined depth/stencil formats
- v3dv: implement stencil testing
- v3dv: fix indentation
- v3dv: support copying depth/stencil aspects to buffer
- v3dv: fix viewport state from pipeline
- v3dv: implement early Z optimization
- v3dv: clamp stencil masks and reference value to supported limits
- v3dv: implement dynamic stencil states
- v3dv: fix the mess with dynamic state handling
- v3dv: add a helper to compute the hardware clear color
- v3dv: add a helper to get the Z/S buffer from an aspect mask
- v3dv: implement vkCmdClearAttachments
- v3dv: implement indexed draws
- v3dv: fix clockwise primitive setting
- v3dv: ignore image view aspects for depth/stencil attachments
- v3dv: take the number of layers from the framebuffer
- v3dv: Add more supported formats to our format table
- v3dv: don't advertise texel buffer support yet.
- v3dv: implement vkCmdCopyBuffer
- v3dv: implement vkCmdUpdateBuffer
- v3dv: implement vkCmdFillBuffer
- v3dv: move the framebuffer setup code for buffer copy/fill to a helper
- v3dv: add a concept of a fake framebuffer for meta-copy operations
- v3dv: refactor common code in meta copy operations
- v3dv: fix copy size for image to buffer copies
- v3dv: implement vkCmdCopyImage
- v3dv: implement vkCmdClearColorImage
- v3dv: fix buffer automatic stride for image to buffer copies
- v3dv: implement vkCmdClearDepthStencilImage
- v3dv: implement vkCmdCopyBufferToImage for color formats
- v3dv: vkCmdCopyBufferToImage for depth/stencil formats
- v3dv: add an assert to catch applications trying to clear invalid aspects
- v3dv: implement indirect draws
- v3dv: add support for primitive restarts on indexed draw calls
- v3dv: initialize in_sync_bcl in our submits
- v3dv: implement vkResetCommandBuffer
- v3dv: add assertions for unimplemented fallback paths
- v3dv: honor swizzle for non-copy operations of color formats
- v3dv: implement vkQueueWaitIdle
- v3dv: destroy wsi device during physical device termination
- v3dv: implement vk{Create,Destroy}BufferView
- v3dv: implement host-side event handling functions
- v3dv: adjust a few limits to comply with CTS minimum requirements
- v3dv: declare that we support robust buffer access
- v3dv: meet requirements for supported format features and properties
- v3dv: implement vkResetCommandPool
- v3dv: don't swap R/B channels for VK_FORMAT_R5B6G5_UNORM_PACK16
- v3dv: don't use TLB path for formats that are not supported for rendering
- v3dv: fix image clearing with VK_REMAINING\_\*
- v3dv: don't support image formats that we can rendet to or texture from
- v3dv: fix fill buffer with VK_WHOLE_SIZE
- v3dv: implement vkGetRenderAreaGranularity
- v3dv: fix supertile coverage when render are size is 0.
- v3dv: take memory format from appropriate miplevel for image load/store
- v3dv: fix framebuffer format when computing fragment shader key
- v3dv: fix subpass tracking in the command buffer state
- v3dv: rewrite frame tiling setup
- v3dv: more frame tiling refactors
- v3dv: trivial refactors in a few meta copy helpers
- v3dv: assign driver locations on fragment shader output variables
- v3dv: don't reset loader data on command buffers
- v3dv: drop incorrect assertion
- v3dv: add a no-op fragment shader if we don't have one
- v3dv: implement interpolation qualifiers
- v3d/compiler: implement nir_op_fquantize2f16
- v3dv: call nir_lower_io_arrays_to_elements_no_indirects on vertex shaders
- v3dv: fix incorrect sizing of the vertex attribute state array
- v3dv: split fragment shader array outputs
- v3dv: lower usubborrow and uaddcarry
- v3dv: lower {i,u}mulExtended
- v3dv: don't assume that VkPipelineColorBlendStateCreateInfo is provided
- v3dv: drop incorrect assertion
- v3dv: drop assert for map of a mapped buffer
- v3dv: fix image tiling configuration
- v3dv: fix scissor outside viewport
- v3dv: fix viewport Z
- v3dv: work around viewport Z scale hardware bug
- v3dv: don't leak job allocations
- v3dv: handle the case where we fail to allocate a new job gracefully
- v3dv: only export the last job sync object once
- v3dv: support submits without a command buffer
- v3dv: return OOM error if we fail to import or export sync objects
- v3dv: use vk_error() for all queue/submit errors
- v3dv: fix copies and clears of 3D images
- v3dv: fix depth/stencil clear color
- v3dv: implement color blending
- v3dv: only expose blending on formats that support it
- v3dv: add an 'always flush' mode
- v3dv: always flush draw calls if we are doing sRGB blending
- v3dv: implement dynamic state for blend constants
- v3dv: only emit blend state if the pipeline is dirty
- v3dv: rewrite dirty state handling
- v3dv: drop redundant emission of stencil state
- v3dv: stencil state fixes
- v3dv: only emit config bits and varyings packets if needed
- v3dv: use perp end caps rasterization mode for lines
- v3dv: drop incorrect assertion on number of clear values at render pass begin
- v3dv: disable depth/stencil testing if we don't have a depth/stencil attachment
- v3dv: assert on vkCreateComputePipelines
- v3dv: improve assert handling for fallback paths on meta copy/clear operations
- v3dv: check support for transfer usage flags
- v3dv: make sure we only expose transfer features for formats we can use
- v3dv: use compatible TLB formats if possible during copies and clears
- v3dv: fix incorrect image slice selection
- v3dv: fix clearing of 3D images
- v3dv: fix job subpass index for vkCmdClearAttachments jobs
- v3dv: don't emit the subpass RCL for jobs that have emitted their own
- v3dv: fix a1r5g5b5 format
- v3dv: allow to create shader modules from NIR
- v3dv: improve asserts for VkPipelineColorBlendStateCreateInfo handling
- v3dv: implement partial color attachment clears
- v3dv: implement partial depth/stencil attachment clears
- v3dv: implement proper caching for partial clear pipelines
- v3dv: store the clip window in the command buffer state
- v3dv: check the render area against the clip window
- v3dv: fix v3dv_GetRenderAreaGranularity to account for attachment bpp
- v3dv: don't always assert that we have an active job
- v3dv: use the TLB to clear attachments even if we have an active scissor
- v3dv: restrict render pass clears to the render area
- v3dv: handle stencil load/store operations
- v3dv: assert on subpasses that use input or resolve attachments
- v3dv: push/pop more state during meta operations
- v3dv: create a v3dv_cmd_buffer_subpass_resume helper
- v3dv: set render area for partial clears to match clear rect
- v3dv: compute tile granularity for each subpass
- v3dv: fix incorrect attachment reference
- v3dv: fix incorrect attachment reference
- v3dv: simplify partial clearing code
- v3dv: handle partial clears of just one aspect of combined DS targets
- v3d/compiler: implement nir_intrinsic_load_base_instance
- v3dv: emit instanced draw calls when requested
- v3dv: fix subpass merge tests
- v3dv: reset all state to dirty when we start a new job for a command buffer
- v3dv: implement occlusion queries
- v3dv: submit a no-op job if a command buffer doesn't have any jobs.
- v3dv: simplify handling of no-op jobs
- v3dv: add a bunch of API stubs
- v3dv: implement TFU blits
- v3dv: reset subpass index at render pass end
- v3dv: meta operations can happen outside a render pass
- v3dv: save and restore descriptor state during meta operations if needed
- v3dv: save and restore push constant state during meta operations
- v3dv: implement shader draw fallback for vkCmdBlitImage
- v3dv: require optimal tiling for features that reqiure sampling
- v3dv: move early-Z update to pre-draw
- v3dv: don't leak NIR code in pipelines
- v3dv: don't leak host memory allocated for shader variants
- v3dv: don't leak default pipeline attributes BO
- v3dv: don't leak prog_data from shader variants
- v3dv: don't leak the compiler from the physical device
- v3dv: don't leak the texture shader state BO from image views
- v3dv: don't leak state BO from samplers
- v3dv/blit: fix integer blits from larger to lower bit size
- v3dv: handle miplevel correctly for blits
- v3dv: support depth blits
- v3dv: don't support blitting of combined depth/stencil formats
- v3dv: don't support 1D depth/stencil for transfer sources or sampling
- v3dv: remove incorrect assert
- v3dv: support blits with 1D and 3D images
- v3dv: add framework for private driver objects
- v3dv: fix leaks during recording of meta blits
- v3dv: use the private object framework in the meta clear path
- v3dv: implement fallback for partial image copies
- v3dv: implement stencil aspect blits for combined depth/stencil format
- v3d: fix Tile Rendering Mode Cfg (Color) packet description
- v3dv: limit software integer RT clamp to rgb10a2
- v3dv: handle copies from/to compressed formats
- v3dv: implement partial buffer copies to color images
- v3dv: support blitting both depth and stencil aspects at the same time
- v3dv: implement partial buffer copies to depth/stencil images
- v3dv: always return true from a fallback path if it can handle the case
- v3dv: fix image addressing calculations to account for suballocation
- v3dv: only require 4-byte alignment for linear images
- v3dv: implement partial image to buffer copies
- v3dv: do not rewrite blit spec for combined depth/stencil in get_blit_pipeline
- v3dv: drop blit path for depth/stencil formats
- v3dv: implement depth bias
- v3dv: ignore dynamic updates of depth bounds state
- v3dv: implement wide lines
- v3dv: fix dynamic blend constants
- v3dv: fix the command buffer private object framework for 32-bit
- v3dv: fix depth/stencil clears on hardware
- v3dv: make the driver more robust against OOM
- v3dv: implement events
- v3dv: don't leak BOs from CLs when using BRANCH
- v3dv: fix vkResetCommandPool
- v3dv: make TLB clearing paths return true/false
- v3dv: drop the extra BO handling from the command buffer
- v3dv: remove some unnecessary / unused functions
- v3dv: assert command buffers are executable when submitting to a queue
- v3dv: check that GPU device matches requirements
- v3dv: ensure BCL space is available before emitting packets
- v3dv: handle OOM properly during command buffer recording in more places
- v3dv: fix bogus command buffer allocation scopes
- v3dv: add basic support for secondary command buffers
- v3dv: implement vkCmdWaitEvents for secondary command buffers
- v3dv: support vkCmdClearAttachments in secondary command buffers
- v3dv: don't leak attachment state
- v3dv: add stubs for missing API implementations
- v3dv: warn users that this is not a conformant driver
- v3dv: fix BCL start offset in presence of chained BOs
- v3dv: regen BO lists for CLs inside cloned jobs
- v3dv: fix a few cases where we were ignoring suballocated buffers
- v3dv: fix release build warnings
- v3dv: actually enable early Z
- v3dv: try harder to skip emission of redundant state
- v3dv: add a TFU path for buffer to image copies
- v3dv: add a CPU path for buffer to image copies
- v3dv: try to use TFU path when creating tiled images from linear buffers
- v3dv: always map full BOs
- v3dv: support compute pipelines
- v3dv: handle separate binding points for compute and graphics
- v3dv: implement compute dispatch
- v3dv: handle unsized arrays in SSBOs
- v3dv: always emit index buffer state for new jobs
- v3dv: implement indirect compute dispatch
- v3dv: return a proper error for too large buffer allocations
- v3dv: assert that our framebuffers are single sampled
- v3dv: don't free BOs from imported memory objects
- v3dv: pipeline initialization fixes for disabled rasterization
- v3dv: handle empty set layouts
- v3dv: don't reset descriptor state after a meta operation
- v3dv: lower unpack_{u,s}norm_2x16
- v3dv: lower frexp
- v3dv: implement support for shader spilling
- v3dv: fix GFXH-930 workaround
- v3dv: add workaround for GFXH-1602
- v3dv: improve handling of too large image sizes
- v3dv: handle draw after barrier
- v3dv: fix vkCmdCopyBuffer unaligned TLB access
- v3dv: fix textureSize() for cube arrays
- v3dv: fix srcSubresource description for image to buffer blits
- v3dv: fix blit_shader() to honor the region's aspect mask
- v3dv: handle unnormalized coordinates in samplers
- v3dv: use swizzle X001 with D/S formats
- v3dv: fix regressions for cubemap array load/store
- v3dv: fix color border clamping with specific formats
- v3dv: make sure we emit vertex attributes in location order
- v3d/compiler: support swapping R/B channels in vertex attributes.
- v3dv: handle VK_FORMAT_B8G8R8A8_UNORM vertex attributes
- v3dv: don't support sRGB buffer formats
- v3dv: improve pipeline barrier handling
- v3dv: use a binning sync for CL jobs waiting on a semaphore
- v3dv: ignore stencil load operation if attachment format doesn't have stencil
- v3dv: only use per-buffer clear bit for cases were we are already storing
- v3dv: avoid prime blit path when presenting WSI images
- v3dv: only care about barriers between GPU jobs
- v3dv: emit new shader state if viewport is dirty
- v3dv: only clear depth/stencil attachments if any aspect needs clearing
- v3dv: add a fast path for vkCmdClearAttachments
- v3dv: enable shaderClipDistance
- v3dv: enable fillModeNonSolid
- v3dv: fix dynamic state after meta operation
- v3dv: consider MSAA when computing frame tiling
- v3dv: process VkPipelineMultisampleStateCreateInfo properly
- v3dv: implement subpass multisample rendering and resolve
- v3dv: implement vkCmdResolveImage for whole images
- v3dv: handle multisampled image copies in the TLB path
- v3dv: setup texture shader state correctly for multisampled images
- v3dv: add a blit fallback path for vkCmdResolveImage
- v3dv: handle multisampled image copies with the blit path
- broadcom/compiler: handle gl_SampleMask writes in fragment shaders
- v3dv: amend tile size tables with smallest tile sizes available
- nir/glsl: add a glsl_ivec4_type() helper
- v3dv: fix blitting of signed integer formats
- v3dv: handle multisample resolve of integer formats
- v3dv: handle multisample resolves for formats that don't support TLB resolves
- v3dv: handle multisample image clears
- broadcom/compiler: implement nir_intrinsic_load_sample_pos
- broadcom/compiler: track if the fragment shader forces per-sample MSAA
- v3dv: enable sample rate shading if fragment shader reads gl_SampleID
- v3dv: implement nir_texop_texture_samples
- v3dv: handle multisample rasterization with empty framebuffers
- nir/lower_io: add an option to lower interpolateAt functions
- v3dv: lower interpolateAt functions in NIR and enable sample rate shading
- v3dv: only require texel-size alignment for linear images
- v3dv: fix 3D image blits
- v3dv: don't cache subpass color clear pipelines
- v3dV: move meta init/finish to meta implementation files
- nir: add a nir_get_ubo_size intrinsic
- v3d/compiler: implement nir_intrinsic_get_ubo_size
- v3dv: handle QUNIFORM_GET_UBO_SIZE
- broadcom/compiler: rename QUNIFORM_GET_BUFFER_SIZE to QUNIFORM_GET_SSBO_SIZE
- v3d/compiler: add a lowering pass for robust buffer access
- v3dv: hook up robust buffer access
- v3dv: fix color clear pipeline destruction for 32-bit architectures
- v3dv: handle VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO
- v3dv: expose DRM modifiers based on supported features
- v3dv: fix offset computed by vkGetImageSubresourceLayout for array images
- v3dv: fix size computed by vkGetImageSubresourceLayout for 3D images
- v3dv: do not expose VK_IMAGE_USAGE_SAMPLED_BIT for swapchains
- v3dv: signal semaphore/fence if needed after acquiring a swapchain image
- v3dv: fix sampling from stencil aspect of a combined depth/stencil image
- v3dv: honor VkPipelineDepthStencilStateCreateInfo::depthWriteEnable
- v3dv: don't leak dumb BO handles allocated for swapchain images
- v3dv: clean-up after obtaining an XCB connection
- v3dv: free noop job if needed when finishing the queue
- v3d/compiler: allow to batch spills
- v3dv: always program a reasonable internal depth type for copies/clears
- v3dv: only advertise one memory type
- v3dv: flag tmu_dirty_rcl in primaries when linking secondaries that have it set
- v3dv: implement workaround for GFXH-1461
- v3dv: implement workaround for GFXH-1918
- v3dv: fixes for barriers in secondary command buffers
- v3dv: fix blit path for copies from 3D compressed images
- v3dv: generate proper UUIDs for device and driver
- v3dv: limit blit framebuffer dimensions to max coordinates
- v3dv: drop a couple of obsolete comments
- v3dv: fix buffer copies to compressed images on the blit path
- broadcom/compiler: track partially interpolated fragment inputs
- v3d/compiler: implement load interpolated input intrinsics
- v3dv: skip unnecessary tile loads when blitting
- v3dv: fix multi-layered buffer to image copies on the blit path
- v3dv: do not attempt to blit from a linear image source
- v3dv: fix Z coordinate for 3D blits
- v3dv: handle compressed image to buffer copies on the blit path
- v3dv: handle buffer to linear depth/stencil image copies in blit path
- broadcom/cle: fix vec size dump when set to 0
- v3d/compiler: fix BGRA vertex attributes for vec2/float size.
- v3dv: compute swap_rb flag after applying all swizzles
- v3dv: properly describe swap_color_rb
- v3dv: enable the logicOp feature
- v3dv: grow meta descriptor pool dynamically
- v3dv: enable alphaToOne feature
- v3dv: add image view debug checks for VK_KHR_maintenance1
- v3dv: fix base slice selection for copies involving 3D images
- v3dv: update assertion to match VK_KHR_maintenance1 semantics
- v3dv: implement vkTrimCommandPool
- v3dv: expose VK_KHR_maintenance1
- v3dv: add support for timestamp queries
- v3dv: fix occlusion query inheritance in secondary command buffers
- zink: require Vulkan timestamp queries for time query caps
- zink: add VK_STRUCTURE_TYPE_WSI_MEMORY_ALLOCATE_INFO_MESA for WSI allocations
- v3dv: add a v3dv_bo_init helper
- v3dv: expose more features
- zink: fix pNext chain for resource memory allocation

Ian Romanick (34):

- intel/vec4: Silence unused paramter warnings in brw_vec4_generator.cpp
- intel/compiler: Silence unused parameter warning in brw_surface_payload_size
- intel/compiler: Don't fallback to vec4 when scalar GS compile fails \[v2\]
- intel/vec4: Remove inline lowering of LRP
- intel/compiler: Remove INTEL_SCALAR\_... env variables
- intel/vec4: Remove all support for Gen8+ \[v2\]
- intel/vec4: Remove everything related to VS_OPCODE_SET_SIMD4X2_HEADER_GEN9
- i965: Allow viewport array extensions with allow_higher_compat_version
- intel: Silence many unused parameter warnings in blorp_genX_exec.h
- i965: Silence many unused parameter warnings in genX_blorp_exec.c
- i965: Silence many unused parameter warnings in genX_state_upload.c
- i965: Make MOCS index tables static const
- i965: Rename gen10_emit_isp_disable to gen7_emit_isp_disable
- intel: Disable all support for Gen10
- intel/compiler: Remove Gen10-specific code
- i965: Remove Gen10-specific state setup and workarounds
- i965: Don't build Gen10-specific files and libraries
- intel: Remove Gen10-specific cache config code
- intel/isl: Don't generate Gen10-specific functions
- iris: Don't generate Gen10-specific functions
- anv: Don't generate Gen10-specific functions
- intel: Remove Gen10-speicific perf support
- intel: Remove Gen10-specific device entries
- i965: Silence unused parameter warnings
- mesa/st: Silence unused parameter warnings in st_context.c
- mesa: Pass the correct caller string to \_mesa_lookup_or_create_texture
- glx: rework \__glXCalculateUsableExtensions to be more readable
- nir: Rename replicated-result dot-product instructions
- mesa: Open-code hash walk in \_mesa_HashPrint
- mesa: Store the atlas Id in the gl_bitmap_atlas structure
- i965: Get the gl_perf_query_object Id from the object
- mesa: Remove the key parameter from the \_mesa_HashWalk callback
- mesa: Remove the key parameter from the \_mesa_HashDeleteAll callback
- intel/compiler: Rotate instructions ROR and ROL cannot have source modifiers

Icecream95 (27):

- panfrost: Fix border colour
- docs/features: Add missing Panfrost extensions
- panfrost: Cleanup panfrost_get_param
- panfrost: Remove old comment on broken depth reload
- panfrost: Correctly set modifier_constant
- panfrost: Seperate resource setup and bo creation
- panfrost: Move tiled-linear conversion checking to a new function
- panfrost: AFBC to linear layout conversion
- pan/mdg: Fix spilling of non-32-bit types
- panfrost: Set modifier_constant to true for exported resources
- pan/mdg: Return a bool from midgard_nir_lod_errata
- pan/mdg: Use nir_shader_instructions_pass for nir_lod_errata
- pan/mdg: Use nir_shader_instructions_pass for fdot2 lowering
- Revert "panfrost: Drop implicit blend pooling"
- panfrost: Clamp uniform buffer size
- panfrost: Handle non-positive viewport positions
- panfrost: Remove redundant casts of viewport position
- panfrost: Mark blit shaders as internal
- pan/mdg: Infer whether to disassemble shaders from info.internal
- panfrost: Add a debug flag to disable AFBC
- panfrost: Precise occlusion query support
- panfrost: Only enable occlusion queries when active
- panfrost: Move zs format handling code out of the !afbc case
- panfrost: Z16 depth buffer support
- panfrost: AFBC compress Z16 depth buffers
- panfrost: Fix AFBC blits of resources with faked RGTC
- panfrost: Fix stack shift calculation

Igor V. Kovalenko (1):

- r600: amend space check for chips older than EVERGREEN

Ilia Mirkin (1):

- panfrost: enable DrawTransformFeedback\*

Indrajit Kumar Das (5):

- mesa: add NV_copy_depth_to_color support for nir
- gallium: prepare framework for supporting GL_NV_shader_atomic_int64
- mesa,glsl: add support for GL_NV_shader_atomic_int64
- radeonsi: enable support for GL_NV_shader_atomic_int64
- radeonsi/gfx10: fix stream index for multi-stream overflow query

Italo Nicola (12):

- nir: add shared/global atomics to nir_get_io_offset_src()
- panfrost: fix undefined value access on mir_set_intr_mask()
- panfrost: add atomic_cmpxchg opcode
- panfrost: add LDST_ADDRESS property to atomic ops
- panfrost: introduce LDST_ATOMIC property
- panfrost: add support for src[3\] in LOAD_STORE ops
- panfrost: add atomic ops infrastructure
- panfrost: add support for atomics
- nir/algebraic: fold some nested comparisons with ball and bany
- pan/mdg: remove unused arg from ALU_CHECK_CMP and ALU_CASE_CMP
- pan/mdg: map uabs_i/usub to i/uabsdiff
- pan/mdg: fix LOCAL_STORAGE wls_instances packing

Iván Briano (1):

- anv: restrict number of subgroups per group

James Park (16):

- amd/addrlib: Fix warning list for msvc
- radv: Increased const usage
- util: Hide timespec_passed on Windows
- radv: Only close local_fd when valid
- ac,amd/llvm,radv: Initialize structs with {0}
- util,radv,radv/winsys: Cross-platform rwlock API
- util,ac,aco,radv: Cross-platform memstream API
- util: Fix rwlock Windows include for MinGW
- util/xmlconfig: Disable for Windows like Android
- aco: Clean up some C++ usages
- vulkan/util,vulkan/wsi,radv: Add typed outarray API
- aco: Fix accidental copies, attempt two
- nir: Stabilize compact_components sort
- amd/llvm,aco: Replace VLA with alloca
- radv,radv/winsys: Move RADV_MAX_IBS_PER_SUBMIT
- radv: Fix leak in radv_amdgpu_winsys_destroy()

Jan Beich (1):

- spirv: switch to util_bswap32 to improve portability

Jan Ziak (1):

- Add driver override to envvars.rst

Faith Ekstrand (296):

- iris: no-op implement set_compute_resources
- iris: Implement set_global_binding
- iris: Add support for serialized NIR
- intel/cs_intrinsics: Handle 64-bit intrinsics
- intel/compiler: Allow MESA_SHADER_KERNEL
- iris: Use blob_write_uint32 for num_system_values
- iris: Add a kernel_input_size field for compiled shaders
- iris/disk_cache: Stop assuming stage == cache_id
- iris: Copy dest size from the original intrinsic in setup_uniforms
- iris: Upload kernel inputs with system values
- iris: Add support for MESA_SHADER_KERNEL in the disk cache
- nir: Add and use nir_foreach_block_unstructured helpers
- nir/lower_goto_if: Document some data structures
- nir/lower_goto_if: Clean up ralloc usage
- nir/lower_goto_if: Use util/list instead of exec_list
- nir/lower_goto_if: Rework handling of skip targets
- nir/lower_goto_if: Rework some set union logic
- nir/lower_goto_if: Sort blocks in select_fork
- nir/lower_goto_if: Add a block_for_singular_set helper
- nir/lower_goto_if: Replace a tripple loop with a double loop
- nir/lower_goto_if: Add a route::outside set
- nir/lower_goto_if: Add some debug prints
- spirv: Add a MESA_SPIRV_FORCE_UNSTRUCTURED environment variable
- nir/builder: Make nir_get_ptr_bitsize take a nir_shader
- spirv: Don't emit RMW for vector indexing in shared or global
- clover/nir: Stop setting ubo_addr_format
- clover/nir: Stop computing the global address format twice
- clover/nir: Use the correct address mode for shared
- nir: Initialize nir_ssa_def::live_index
- nir/builder: Add a nir_iand_imm helper
- nir/find_array_copies: Handle cast derefs
- nir/large_constants: Handle incomplete derefs
- compiler/types: Allow interfaces in get_explicit_type_for_size_align
- nir/opt_large_constants: Fix a type/deref_type typo
- nir: Add an LOD parameter to image_*_size
- iris: Stop advertising PIPE_SHADER_IR_NIR_SERIALIZED
- iris: Stop advertising clover-only caps
- iris: ref/unref the GLSL type singleton in screen_create/destroy
- iris: Normalize all compute shaders to MESA_SHADER_COMPUTE
- iris: Always re-upload sysvals when we have kernel inputs
- intel/fs: Fix an assert in load_scratch
- intel/nir: Allow splitting a single load into up to 32 loads
- clover/spirv: Don't call llvm::regularizeLlvmForSpirv
- clover: Call clang with -O0 for the SPIR-V path
- nir: Report progress properly in nir_lower_bool_to\_\*
- intel/nir: Pass the nir_builder by reference in lower_alpha_to_coverage
- intel/nir: Rewrite the guts of lower_alpha_to_coverage
- intel/nir: Clean up lower_alpha_to_coverage a bit
- nir: Use a switch in nir_inline_function_impl
- nir: Take a variable remap parameter in nir_inline_function_impl
- intel/fs: Add support for vec8 and vec16 ops
- intel/nir: Lower things with \\> 4 components in lower_mem_access_bit_sizes
- spirv: Support big-endian strings
- spirv: Delete some dead workgroup variable handling code
- nir: Rename num_shared to shared_size
- nir: Improve the comment on num_inputs and friends
- intel/fs: Fix MOV_INDIRECT and BROADCAST of Q types on Gen11+
- nir: Add a new nir_var_mem_constant variable mode
- nir: Add a load_global_constant intrinsic
- nir/lower_io: Use the variable mode for load_scratch_base_ptr checks
- nir/lower_io: Add a build_addr_for_var helper
- nir/lower_io: Add support for nir_var_mem_constant
- nir: Allow opt_large_constants to be run with constant_data_size \\> 0
- spirv: Use nir_var_mem_constant for UniformConstant data in CL
- intel/fs: Implement nir_intrinsic_load_global_constant
- nouveau/nir: Implement load_global_constant
- llvmpipe: Add support for load_global_constant
- clover/nir: Use nir_var_mem_constant for \__constant memory
- spirv: Drop the constant_as_global as option
- nir/lower_explicit_io: Assert that compute address sizes match derefs
- clover: Use 64-bit offsets for shader_in on 64-bit GPUs
- nir/clone: Add a helper for cloning most instruction types
- intel/compiler: Get rid of the global compaction table pointers
- intel/compiler: Get rid of struct gen_disasm
- iris: Use gen_disassemble
- intel/eu: Add some new helpers
- intel/fs,vec4: Stuff the constant data from NIR in the end of the program
- anv: Stop storing the shader constant data side-band
- intel/eu: Include brw_compiler.h in brw_eu.h
- intel/eu: Add a mechanism for emitting relocatable constant MOVs
- intel/fs: Add support for a new load_reloc_const intrinsic
- anv: Properly cache brw_stage_prog_data::relocs
- nir/builder: Add load/store_global helpers
- anv: Patch constant data pointers into shaders with using softpin
- iris: Patch constant data pointers into shaders
- intel/fs: Don't copy-propagate stride=0 sources into ddx/ddy
- intel/fs: Use a single untyped surface read for load_num_work_groups
- intel/nir: Lower load_num_work_groups to 32-bit if needed
- iris: Re-emit push constants if we have a varying workgroup size
- intel/compiler: Handle all indirect lowering choices in brw_nir.c
- nir/lower_indirect_derefs: Add a threshold
- intel/nir: Stop using nir_lower_vars_to_scratch
- nir: Don't bail too early in lower_mem_constant_vars
- clover: Call nir_lower_mem_constant_vars
- compiler/types: Make booleans 32-bit for cl_size/align
- nir/glsl: Add an explicit_alignment field to glsl_type
- nir: Add alignment information to cast derefs
- nir: Handle all array stride cases in nir_deref_instr_array_stride
- nir: Add a helper for getting the alignment of a deref
- nir/lower_io: Apply alignments from derefs when available
- nir/opt_deref: Don't remove casts with alignment information
- nir/opt_deref: Remove restrictive alignment information from casts
- spirv: Add pointer helper vars to OpCopyMemory
- spirv: Propagate alignments to deref chains via casts
- nir: Allow var_mem_global in nir_lower_vars_to_explicit_types
- nir: Allow uniform in nir_lower_vars_to_explicit_types
- clover: Use args.size() to compute new var locations
- spirv: Stop counting inputs in entry_point_wrapper
- clover/nir: Use lower_vars_to_explicit for uniform and global
- spirv: Drop the OpenCL type layout code
- anv: Set alignments on UBO/SSBO root derefs
- compiler/types: Fix deserializing structs with \>= 15 members
- spirv: Improve the "Entry point not found" error message
- spirv2nir: Rework argument handling
- nir/lower_io: Fix the unknown-array-index case in get_deref_align
- nir: Add a dominance validation pass
- spirv: Run repair_ssa if there are discard instructions
- intel/nir: Call validate_ssa_dominance at both ends of the NIR compile
- nir: More NIR_MAX_VEC_COMPONENTS fixes
- nir/idiv_const: Use the modern nir_src_as\_\* constant helpers
- anv: Fix the target_bo assertion in anv_reloc_list_add
- clover: Pull the stride from pipe_transfer for image maps
- spirv: Access qualifiers are not a bitfield
- spirv: Plumb access qualifiers through from image types
- nir: Add a pass for lowering CL-style image ops to texture ops
- intel/fs/swsb: SCHEDULING_FENCE only emits SYNC_NOP
- nir: Rename get_buffer_size to get_ssbo_size
- radeonsi: Only call nir_lower_var_copies at the end of the opt loop
- spirv: vtn_fail with a nice message on unsupported rounding modes
- nir/liveness: Consider if uses in nir_ssa_defs_interfere
- compiler/types: Add glsl_baseN_t_type(bit_size) helpers
- spirv: Use the new types helpers
- nir: Add a new memcpy intrinsic
- nir: Add a lowering pass to lower memcpy
- spirv: Add support for OpCopyMemorySized
- clover/nir: Call the memcpy lowering pass
- nir: Allow creating variables with nir_var_mem_push_const.
- nir/lower_io: Add support for push constants
- anv,radv,tu,val: Call nir_lower_io for push constants
- spirv: Use derefs for push constants
- vallium: Stop using lower_ubo_ssbo_access_to_offsets
- spirv: Delete the legacy offset/index UBO/SSBO lowering
- nir/copy_propagate: Copy-prop into jump conditions
- nir: Disallow goto and goto_if in clone and \[de]serialize
- nir/cf: Better handle intra-block splits
- nir/validate: Improve the validation of blocks
- nir/lower_goto_ifs: Don't destroy SSA form in the process
- nir/dominance: Use \_mesa_set_clear instead ofhand-rolling it
- spirv: Only run repair_ssa if structured
- nir/lower_goto_ifs: Use rzalloc
- nir/lower_goto_ifs: Add asserts for SSA forks
- nir/lower_goto_ifs: Always include level dom_frontiers in prev_frontier
- Revert "nir/lower_goto_if: Add a route::outside set"
- anv: Allow HiZ clears for multi-view
- anv: Use more temp vars in cmd_buffer_begin_subpass
- anv: Skip HiZ and CCS ambiguates which preceed fast-clears
- nir: Split NIR_INTRINSIC_TYPE into separate src/dest indices
- nir: Add a conversion and rounding intrinsic
- nir: Add builder helpers for OpenCL type conversions
- nir: Add a passes for nir_intrinsic_convert_alu_types
- spirv: Add some conversion handling helpers
- spirv: Handle all OpenCL conversion ops with full rounding
- spirv/opencl: Drop dest_type from handle_v_load_store
- clover/nir: Call nir_lower_convert_alu_types
- nir: Add lowering from regular ALU conversions to the intrinsic
- intel/fs: NoMask initialize the address register for shuffles
- nir: Fix a misspelling
- nir/find_array_copies: Properly discard copies for casts
- nir: Handle memcpy in copy_prop_vars and combine_stores
- nir: Add a memcpy optimization pass
- nir/opt_load_store_vectorize: Use bit sizes when checking mask compatibility
- nir: Add component mask re-interpret helpers
- nir/opt_deref: Add an instruction type switch
- nir/opt_deref: Add an optimization for bitcasts
- nir: Add a pass to lower vec3s to vec4s
- intel/fs: Don't use NoDDClk/NoDDClr for split SHUFFLEs
- iris: Fix the constant data address calculation
- anv: Implement VK_EXT_transform_feedback on Gen7
- spirv: Make the clc_shader const
- nir/constant_folding: Use the builder
- nir/constant_folding: Use nir_shader_instruction_pass
- nir: Validate constant initializers
- nir/constant_folding: Fold load_deref of nir_var_mem_constant
- iris: Add pipe-loader support
- iris: Handle runtime-specified local memory size
- iris: Add support for load_work_dim as a system value
- iris: Fill out compute caps and enable clover support
- gallium/pipe: Add a GALLIUM_PIPE_SEARCH_DIR override env var
- util/xxd.py: Add an option for binary files
- spirv: Add a shared libclc loader
- spirv: Move nir_lower_libclc to src/compiler/spirv
- intel/nir: Don't try to emit vector load_scratch instructions
- intel/nir: Lower load_global_constant in lower_mem_access_bit_sizes
- i965: Take an isl_format in emit_buffer_surface_state
- intel/fs: Add an alignment to VARYING_PULL_CONSTANT_LOAD_LOGICAL
- intel/fs: Add an option to use dataport messages for UBOs
- anv: Add a device parameter to format_for_descriptor_type
- anv: Use format_for_descriptor_type for descriptor buffers
- anv: Plumb the device into \*bits_for_access_flags
- anv: Use the data cache for indirect UBO pulls on Gen8+
- iris: Use the data cache for indirect UBO pulls
- clover: Stop leaking NIR shaders
- nir/opt_deref: Fix the vector bitcast optimization
- nir: Allow more deref modes in phis
- intel/batch_decoder: Don't clame vec4 vs/gs/tcs shaders on Gen11+
- intel/fs: Copy the PTSS from g0 for scratch reads/writes
- intel/fs: Add a SCRATCH_HEADER opcode
- intel/fs/ra: Increment spill_offset as part of the emit_spill loop
- intel/fs/ra: Refactor handling of Gen7 scratch reads
- intel/fs/ra: Store the last non-spill VGRF node
- intel/fs/ra: Sanity-check our IP counts
- intel/fs/ra: Use a set to track added spill/fill instructions
- intel/fs: Rework scratch handling on Gen9+
- intel/fs: Allow constant-propagation into SAMPLEINFO and IMAGE_SIZE
- anv: Go back to using the sampler for UBO pulls
- Revert "iris: Use the data cache for indirect UBO pulls"
- anv: Bump the number of update-after-bind descriptors to 1M
- anv: Add a descriptor_count to descriptor sets
- anv: Implement VariableDescriptorCount
- iris: Flush caches based on brw_compiler::indirect_ubos_use_sampler
- anv,iris: Use the data cache for UBO pulls on Gen12+
- spirv: Add 0.5 to integer coordinates for OpImageSampleExplicitLod
- nir/lower_io: Assert non-zero power-of-two alignments
- compiler/types: Assert non-zero alignments in get_explicit_type_for_size_align
- compiler/types: Allow images and samplers in get_explicit_type_for_size_align
- clover/nir: Calculate sizes of images and samplers properly
- clover/nir: Add an image lowering pass
- spirv: Fix OpCopyMemorySized
- nir/lower_memcpy: Don't mask the store
- docs: Specify when branch points happen
- nir/validate: Explain why we don't use nir_foreach_block
- mesa/spirv: Lower variable initializers for global variables
- nir/builder: Add a nir_ieq_imm helper
- nir/phis_to_scalar: Use a deny-list for load_deref modes
- nir: Handle incomplete derefs in split_struct_vars
- nir: Use var->data.mode instead of deref->mode in a few cases
- nir: Disallow writes to system values and mem_constant
- nir/opt_find_array_copies: Allow copies from mem_constant
- nir: Add and use some deref mode helpers
- nir/lower_array_deref_of_vec: Use nir_deref_mode_must_be
- nir/lower_io: Use nir_deref_mode\_\* helpers
- nir/phis_to_scalar,gcm: Use nir_deref_mode_may_be
- nir: Only force loop unrolling if we know it's a in/out/temp
- nir/vars_to_ssa: Use nir_deref_must_be
- nir/vec3_to_vec4: Use nir_deref_must_be
- nir: Use nir_deref_mode_may_be in deref optimizations
- nir/find_array_copies: Prepare for generic pointers
- nir/split_*_vars: Prepare for generic pointers
- nir: Make nir_deref_instr::mode a bitfield
- nir: Add support for generic pointers
- spirv: Add generic pointer support
- nir/opt_deref: Add a deref mode specialization optimization
- nir/opt_deref: Add an optimization for deref_mode_is
- nir/lower_io: Add a mode parameter to build_addr_iadd
- nir/lower_io: Add a mode parameter to addr_format_is\_\*
- nir/lower_io: Add support for 32/64bit_global for shared
- nir/lower_io: Add support for lowering deref_mode_is
- nir/lower_io: Support generic pointer access
- nir/lower_io: Add a new 62bit_generic address format
- nir/opt_intrinsics: Report progress for the gl_SampleMask optimization
- nir/constant_folding: Use a switch in try_fold_intrinsic
- nir/constant_folding: Use the standard variable naming convention
- nir: Move constant folding of vote to opt_constant_folding
- nir/constant_folding: Fold subgroup shuffle intrinsics
- nir/opt_intrinsics: Refactor a bit
- nir/opt_intrinsic: Optimize bcsel(b, shuffle(x, i), shuffle(x, j))
- nir/find_array_copies: Don't assume all children exist
- nir/deref: Fix a typo
- spirv: Add basic plumbing for ray-tracing capabilities
- spirv: Remove a redundant vtn_fail_if
- spirv: Add a guard for OpTypeForwardPointer storage classes
- spirv: Pass the deref type to storage_class_to_mode for non-forward pointers
- spirv: Add support for OpTypeAccelerationStructureKHR
- spirv,nir: Add support for ray-tracing built-ins
- nir/builder: Add a select_from_ssa_def_array helper
- nir: Add intrinsics for object to/from world RT sysvals
- nir: Add new variable modes for ray-tracing
- spirv: Implement the new ray-tracing storage classes
- nir,spirv: Add support for the ShaderCallKHR scope
- spirv,nir: Add ray-tracing intrinsics
- nir: Handle ray-tracing intrinsics and storage classes in copy-prop etc.
- spirv: Update headers and metadata from latest Khronos commit
- nir: Print formats on image intrinsics as text
- nir: Validate image atomic formats
- util,gallium: Add new 64-bit integer formats
- compiler/types: Add 64-bit image types
- nir: Allow 64-bit image atomics
- spirv: Add support for SPV_EXT_shader_image_atomic_int64
- nir/lower_bit_size: Don't cast comparison results
- nir/lower_bit_size: Pass a nir_instr to the callback
- nir/lower_bit_size: Add support for lowering subgroup ops
- intel/nir: Refactor lower_bit_size_callback
- intel/nir: Lower 8-bit scan/reduce ops to 16-bit
- intel/nir: Lower 8-bit ops to 16-bit in NIR on Gen11+
- intel/fs: Fix use of undefined value in fixup_nomask_control_flow
- spirv: Call repair SSA for OpTerminateInvocation

Jesse Natalie (61):

- nir: nir_range_analysis needs to be updated for vec16
- u_debug_stack_test: Fix MSVC compiling by using ATTRIBUTE_NOINLINE
- util/macros: Add ATTRIBUTE_NOINLINE definition for MSVC
- glsl: Add 'bare' shadow sampler type
- nir: Fix serialize/deserialize of void samplers/images
- nir: Optimize mask+downcast to just downcast
- nir: Add nir_address_format_32bit_offset_as_64bit
- nir: Add nir_address_format_32bit_index_offset_pack64
- nir/vtn: CL SPIR-V callers should specify address modes
- mesa: Move ATTRIBUTE_NOINLINE for glsl_to_tgsi_visitor::visit_expression for MSVC
- nir: Add fisnormal op
- nir/vtn: Support SpvOpIsNormal via fisnormal
- nir: Add fisfinite op
- nir/vtn: Support SpvOpIsFinite via fisfinite
- nir/vtn: Handle LessOrGreater deprecated opcode
- nir/vtn: Support OpOrdered and OpUnordered opcodes
- nir/glsl: Add glsl_get_cl_type_size_align helper
- nir: Use 'unsigned' instead of enum types in nir_variable::data
- wgl: Switch to Win10 version defines to enable usage of Win10 WGL callbacks
- nir: Populate some places where existing system values were missing
- nir: Add new system values and intrinsics for dealing with CL work offsets
- nir: Move compute system value lowering to a separate pass
- nir: Add options to nir_lower_compute_system_values to control compute ID base lowering
- spirv: Use new global invocation offset system value
- nir: Add a lowering pass to split 64bit phis
- nir: Relax opt_if logic to prevent re-merging 64bit phis for loop headers
- nir_lower_bit_size: Support lowering ops with differing source/dest sizes
- nir: Implement mul_high lowering for bit sizes other than 32
- nir: Remove 32bit restriction for uadd_carry optimization
- nir: Add bit_count to lower_int64 pass
- nir/vtn: SPIR-V bit count opcodes (core and extension) dest size mismatches nir
- clover/nir/spirv: Use uniform rather than shader_in for kernel inputs
- nir/vtn: Add type constant to image intrinsics
- nir/vtn: Add support for kernel images to SPIRV-to-NIR.
- nir/vtn: Use return type rather than image type for tex ops
- nir/vtn: Handle integer sampling coordinates
- nir/vtn: ImageSizeLod op can be applied to images
- nir/vtn: Add intrinsics for CL image format/order queries
- nir/vtn: Convert constant samplers to variables with data
- nir_dominance: Use uint32_t instead of int16_t for dominance counters
- nir: More NIR_MAX_VEC_COMPONENTS fixes
- spirv: Handle OpTypeOpaque
- glsl_type: Add packed to structure type comparison for hash map
- nir_lower_system_values: Fix load_global_invocation_id to use base_work_group_id even with no base_global id
- nir: Add an internal flag to shader_info
- nir: Add glsl_base_type unsigned -\> signed version helper
- nir/vtn: Add handling for SPIR-V event variables
- vtn/opencl: Rework type handling for CL extension opcodes
- vtn/opencl: Add infrastructure for calling out to libclc
- vtn/opencl: Implement a lot of opcodes via libclc
- vtn/opencl: Rework handle_instr to be able to handle core SPIR-V opcodes via libclc
- vtn/opencl: Hook up OpenCL async copy and group wait opcodes via libclc
- vtn/opencl: Switch non-native trig to use libclc
- vtn/opencl: Switch exp/pow/log to use libclc
- vtn/opencl: Switch division-related ops to use libclc
- vtn/opencl: Switch some nir-sequence ops to use libclc
- vtn/opencl: Only use libclc ldexp when lower_ldexp is set
- vtn/opencl: Switch fma to conditionally use libclc for 32bit floats
- spirv: Implement vload[a]_half[n\] and vstore[a]_half[n][_r\]
- util: Move xxd.py to util
- util: Make xxd.py output char array instead of string

John Bates (1):

- disk_cache: build option for disabled-by-default

Jonathan Gray (13):

- util: unbreak endian detection on OpenBSD
- util/anon_file: add OpenBSD shm_mkstemp() path
- meson: build with \_ISOC11_SOURCE on OpenBSD
- meson: don't build with USE_ELF_TLS on OpenBSD
- meson: conditionally include -ldl in gbm pkg-config file
- util: futex fixes for OpenBSD
- util/u_thread: include pthread_np.h if found
- anv: use os_get_total_physical_memory()
- util/os_misc: add os_get_available_system_memory()
- anv: use os_get_available_system_memory()
- util/os_misc: os_get_available_system_memory() for OpenBSD
- radv: remove seccomp includes
- vulkan: make VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT conditional

Jonathan Marek (57):

- panfrost: add missing dependency on midgard_pack.h
- util/format: expose generated format packing functions through a header
- turnip: implement VK_EXT_custom_border_color
- turnip: remove dead tu_minify/typed_memcpy functions
- turnip: delete a blit_image TODO that has already been resolved
- turnip: fix CmdBlitImage with D32_SFLOAT_S8_UINT
- turnip: rework format_to_ifmt
- turnip: call packing functions directly for pack_gmem_clear_value
- turnip: add missing tu_bo_list_add in CmdWriteTimestamp
- freedreno/ir3: remove indirect input load
- freedreno/ir3: improve handling of aliased inputs
- freedreno/ir3: rework setup_{input,output} to make struct varyings work
- freedreno/regs: add 7nm DSI PHY/PLL regs
- turnip: delete tu_physical_device path field
- turnip: delete unused tu_image fields
- turnip: fix the type of tu_shader_module code field, delete unused sha1
- turnip: delete unused "tu_cmd_buffer_upload"
- turnip: remove some unnecessary regs init
- turnip: rework vertex buffers draw state handling
- turnip: device global bo list
- turnip: avoid heap allocations in QueueSubmit when semaphores are used
- freedreno/ir3: allow layer/viewport output for VS/GS/DS
- freedreno/ir3: add view_zero to shader key
- turnip: multiViewport and VK_EXT_shader_viewport_index_layer
- vulkan/wsi/display: add option for display fence to signal syncobj
- turnip: delete unused tu_fence_signal function
- turnip: add a fd field to tu_device
- turnip: require syncobj support
- turnip: rework fences to use syncobjs
- radv: fix incorrect ResetFences path for WSI fence
- radv: use syncobj for wsi fence
- turnip: fix wrong indentation in tu6_draw_common
- turnip: move A6XX_RB_ALPHA_CONTROL write to init_hw
- turnip: implement VK_EXT_extended_dynamic_state
- turnip: remove unused cmd_buffer/device arguments in descriptor sets
- turnip: delete unused/broken pipeline layout hashing code
- turnip: initial implementation of VK_KHR_push_descriptor
- turnip: clean up tu_device_memory
- turnip: always create permanent syncobj for semaphore
- turnip: set MSM_SUBMIT_SYNCOBJ_RESET for submit pWaitSemaphores
- turnip: semaphores simplification (only syncobj semaphores supported)
- turnip: rework GetSemaphoreFdKHR
- turnip: rework ImportSemaphoreFdKHR
- turnip: remove remaining uses of drmSyncobj helpers
- turnip: share code between semaphores/fences + fence import/export
- turnip: signal fence and semaphore in AcquireNextImage2KHR
- turnip: implement legacy API functions separately
- freedreno/cffdec: fix decoding of bindless descriptors
- turnip: remove pre-emption marker
- turnip: implement timestamp fences/semaphores for kgsl backend
- turnip: rework android gralloc path so it doesn't call tu_image_create
- turnip: don't implement CreateImage as two separate functions
- turnip: LAYOUT_PREINITIALIZED is not different for optimal tiling
- turnip: remove useless tu_image asserts
- turnip: remove unnecessary/redundant tu_image fields
- turnip: don't always fallback to linear for mutable formats
- turnip: enable VK_EXT_image_drm_format_modifier

Jordan Justen (4):

- anv, iris: Set MediaSamplerDOPClockGateEnable for gen12+
- anv: Drop warning about gen12 not being supported
- intel/dev: Add device info for ADL-S
- intel/mi_builder: Support gen11 command-streamer based register offsets

Jose Maria Casanova Crespo (7):

- vc4: Avoid negative scissor caused by no intersection
- nir/algebraic: optimize iand/ior of (n)eq zero when umax/umin not available
- vc4: Enable lower_umax and lower_umin
- vc4: enable lower_isign for VC4
- vc4: Add missing load_ubo set_align in yuv_blit fs.
- vc4: Add missing range_base/range at nir_load_ubos in yuv_blit fs.
- vc4: Enable nir_lower_io for uniforms

Joshua Ashton (1):

- zink: Fix 32-bit compilation

Juan A. Suarez Romero (7):

- intel: split driver/device UUID generators
- iris: plumb device/driver UUID generators
- intel/uuid: use git-sha1/package for the driver UUID
- st/mesa: initialize lower alpha func to ALWAYS
- v3d/compiler: extend swapping R/B support to all vertex attributes
- v3dv: mark the right bit to swap R/B vertex attributes
- v3d: Add GL_ARB_vertex_array_bgra support

Julian Winkler (1):

- nir: Add a structurizer

Karol Herbst (48):

- util/set: add \_mesa_set_intersects
- spirv: rename vtn_emit_cf_list to vtn_emit_cf_list_structured
- nir: Add a structured flag to nir_shader
- nir: Add goto_if jump instruction
- spirv: extract switch parsing into its own function
- spirv: parse unstructured CFG
- clover/nir: fix mem_shared by using address_format_32bit_offset
- nv50/ir/nir: fix smem size
- nv50/ir/nir: rework indirect function_temp handling
- clover/nir: Call vars_to_explicit_types for shared memory
- nve4: fix uploading unaligned sized input buffers
- nv50/ir/nir: assert on unknown alu ops
- clover/nir: support int64 atomics if the device supports it
- nv50/ir/nir: fix global_atomic_comp_swap
- nvc0: handle nr being 0 in nvc0_set_global_bindings
- nv50/ir/nir: support load_work_dim
- clover/spirv: rework handling of spirv extensions
- clover/spirv: pass list of supported extensions to the translator
- nir: rename nir_op_fne to nir_op_fneu
- nir: fix nir_variable_create for kernels
- clover/nir: add support for global invocation id offsets
- nv50/ir: remove symbol table support for compute shaders
- nv50/ir: add nv50_ir_prog_info_out
- nir: use nir_var_all to get rid of casting
- util: add helpers to define bitwise operators on enums for C++
- nir: use enum operator helper for nir_variable_mode and nir_metadata
- clover/nir: Lower function_temp to scratch.
- nv50/ir: fix cas lowering for 64 bit
- clover/nir: use offset for temp memory
- clover/llvm: undefine \__IMAGE_SUPPORT_\_ for devices without image support
- nvc0/ir: fix load propagation for sub 4 byte addressing
- spirv: fix 64 bit atomic inc and dec
- nvc0/cl: hande 64 bit pointers in nvc0_set_global_handle
- clover/spirv: fix vec3 alignment
- nir/serialize: fix serialization of system values
- clover/util: add id_type_equals to support symbols with multiple sections
- clover: bind constant buffer if one is provided
- clover/nir: extract constant buffer into its own section
- clover/spirv: parse arg_info
- clover/spirv: support CL_KERNEL_COMPILE_WORK_GROUP_SIZE
- clover: use pipe_image_view for images instead of set_compute_resources
- clover: support custom driver strides
- clover/device: use PIPE_MAX_SHADER_SAMPLER_VIEWS for max_images_read
- clover/nir: set kernel_image cap
- nouveau: hide SVM support behing a variable for now as kernel space is broken
- nvc0/CL: enable images
- llvmpipe: enable CL images
- nv50/ir/nir: don't use designated initializers

Kenneth Graunke (15):

- iris: Fix headerless sampler messages in compute shaders with preemption
- nir: Copy semantics to nir_intrinsic_load_fs_input_interp_deltas
- nir: Move new edgeflag assert into the io_lowered case
- iris: Reorder the loops in iris_fence_await() for clarity.
- iris: Drop stale syncobj references in fence_server_sync
- Revert "nir: replace lower_ffma and fuse_ffma with has_ffma"
- intel/compiler, anv: Delete cs_prog_data->slm_size
- iris: Fix doubling of shared local memory (SLM) sizes.
- anv: Set only one ISL usage bit (RT/texture) for CopyBuffer sources
- isl, anv, iris: Add a centralized helper to select MOCS based on usage
- isl: Enable Tigerlake HDC:L1 caches via MOCS in various cases.
- iris: fix source/destination layers for 3D blits
- iris: Move blit scissoring earlier.
- intel/fs: Fix sampler message headers on Gen11+ when using scratch
- nir/algebraic: Avoid creating new fp64 ops when using softfp64

Khem Raj (1):

- vc4: use intmax_t for formatted output of timespec members

Kristian Høgsberg (12):

- egl/android: Call createImageFromDmaBufs directly
- egl/android: Look up prime fds in droid_create_image_from_prime_fds()
- egl/android: Drop unused ctx argument
- egl/android: Simplify droid_create_image_from_name() path
- egl/android: Move droid_create_image_from_prime_fds() function up
- egl/android: Use droid_create_image_from_prime_fds() in get_back_bo()
- egl/android: Add support for CrOS buffer info perform op
- turnip: Add kgsl backend
- util/formats: Add PIPE_FORMAT_R8_G8B8_420_UNORM
- st/mesa: Add NV12 lowering to PIPE_FORMAT_R8_G8B8_420_UNORM
- freedreno/a6xx: Generalize pointers in struct fd6_pipe_sampler_view
- freedreno/a6xx: Support PIPE_FORMAT_R8_G8B8_420_UNORM for texturing

Krunal Patel (2):

- gallium/auxiliary/vl: Odd Dimensions are failing
- radeon/vcn: Bitrate not updated when changing framerate

Leo Liu (2):

- frontends/omx/dec: Use the known codec profile when allocating buffers
- frontends/omx/h265: Check the pps set before the scaling data

Lepton Wu (1):

- util/ralloc: fix ralloc alignment.

Lionel Landwerlin (36):

- anv: fix incorrect realloc failure handling
- intel/dump_gpu: only write BOs mapped by the driver
- intel/dump_gpu: further track mapping of BOs
- intel/dump_gpu: set default device_override
- intel/dump_gpu: add an only-capture option
- intel/dump_gpu: only map in GTT buffers not previously mapped
- anv: track the current frame and write it into the driver identifier BO
- intel/dump_gpu: fix --platform option
- intel/dump_gpu: add an option to capture a single frame
- anv: centralize vk to gen arrays
- anv: fix up dynamic clip emission
- anv: don't fail userspace relocation with perf queries
- intel/perf: store query symbol name
- intel/perf: fix raw query kernel metric selection
- anv: fix transform feedback surface size
- anv: move push constant allocation tracking into gfx pipeline state
- anv: simplify push constant emissions
- anv: VK_INTEL_performance_query interaction with VK_EXT_private_data
- anv: fix robust buffer access
- include/drm-uapi: bump headers
- anv: add new gem/drm helpers
- anv: implement shareable timeline semaphores
- intel/genxml: make sure test assert are compiled in
- intel/compiler: fixup Gen12 workaround for array sizes
- vulkan: bump headers/registry to 1.2.154
- anv: implement VK_KHR_copy_commands2
- intel/perf: fix crash when no perf queries are supported
- intel/dev: add a small non installable tool to print device info
- intel/dev: fix 32bit build issue
- genxml: drop gen10
- blorp: identify copy kernels in NIR
- blorp: allow blits with floating point source layers
- anv: fix source/destination layers for 3D blits
- anv: report latest extension spec versions
- intel/dev: Bump Max EU per subslice/dualsubslice
- anv: fix descriptor pool leak in VMA object

Louis Li (1):

- radeon/radeon_vce: fix out of target bitrate in CBR mode (H.264)

Louis-Francis Ratté-Boulianne (6):

- st/mesa: factor ucp-lowering logic into helper
- st/mesa: Enable clip planes lowering for geometry shaders
- pipebuffer: Remove unused buffer event in slab bufmgr
- st/mesa: Replace UsesStreams by ActiveStreamMask for GS
- glsl/linker: Add support for XFB varying lowering in geometry shader
- gallium: Fix NIR validation when lowering polygon stipple

Lucas Stach (19):

- etnaviv: stop leaking the dummy texure descriptor BO
- gallium/dri: allow create image for formats that only support SV or RT binding
- etnaviv: drm: fix BO refcount race
- etnaviv: blt: properly program surface TS offset for clears
- etnaviv: update headers from rnndb
- etnaviv: tex_desc: fix TS compression enable
- etnaviv: cosmetic etna_resource_alloc fixes
- etnaviv: do proper cpu prep/fini when clearing allocated buffer
- etnaviv: simplify etna_screen_bo_from_handle
- etnaviv: pass correct layout to etna_resource_alloc for scanout resources
- etnaviv: don't import allocated scanout resources via from_handle
- Revert "gallium/dri: fix dri2_from_planar for multiplanar images"
- etnaviv: emit RA_EARLY_DEPTH on dirty ZSA
- etnaviv: flush depth cache when changing depth config
- etnaviv: update headers from rnndb
- etnaviv: expose shader discard usage in etna_shader_variant
- etnaviv: rework ZSA into a derived state
- gallium: document convention for get_handle calls on multi-planar resources
- etnaviv: fix disabling of INT filter for real

Lukas F. Hartmann (1):

- etnaviv: Fix disabling early-z rejection on GC7000L (HALTI5)

Marcin Ślusarz (50):

- intel/perf: fix calculation of used counter space
- intel/perf: fix how pipeline stats are stored
- intel/perf: streamline error handling in read_oa_samples_until
- intel/perf: fix performance counters availability after glFinish
- intel/perf: split load_oa_metrics
- intel/perf: export performance counters sorted by \[group|set\] and name
- glsl: fix crashes on out of bound matrix access using constant index
- gitlab: ask for more detailed info about GPU
- mesa: fix formatting of messages printed using \_mesa_log
- anv: refresh cached current batch bo after emitting some commands
- iris: handle os_dupfd_cloexec failure
- iris: verify color component width in convert_fast_clear_color
- i965: verify format width in blorp_get_client_bo
- intel/perf: don't generate logically dead code
- intel/compiler/test: use TEST_DEBUG env var consistently
- intel/compiler: mark debug constant as const
- intel/fs,vec4: remove unused assignments
- intel: add INTEL_DEBUG=shaders
- intel/fs: add hint how to get more info when shader validation fails
- intel/compiler: match brw_compile\_\* declarations with their definitions
- intel/compiler: use the same name for nir shaders in brw_compile\_\* functions
- intel/compiler: move extern C functions out of namespace brw
- intel/compiler: print dispatch width when shader fails to compile
- intel/compiler: fix typo in a comment
- anv: fix minor gen_ioctl(I915_PERF_IOCTL_CONFIG) error handling issue
- intel/compiler: remove unused fs_validator::param_size
- intel/compiler: initialize remaining fields of various classes
- intel/tools: fix possible memory leak in the error path
- intel/tools: handle ftell errors
- intel/compiler: quiet Coverity warnings
- intel/tools: fix possible randomly increased verbosity of error2aub
- intel: add INTEL_DEBUG expected value in declaration
- iris: drop likely/unlikely around INTEL_DEBUG
- i965: drop likely/unlikely around INTEL_DEBUG
- anv: drop likely/unlikely around INTEL_DEBUG
- intel: drop likely/unlikely around INTEL_DEBUG
- vulkan/wsi: fix possible random stalls in wsi_display_wait_for_event
- intel/tools: fix invalid type in argument to printf
- intel/genxml: don't generate identical code for different branches
- anv: always annotate memory returned from anv_gem_mmap
- intel: remove dead code
- i965: remove prototypes of not-existing functions
- intel/compiler: use C++ template instead of preprocessor
- intel/compiler: remove branch weight heuristic
- intel/tools: allow --color option to be used without arg
- anv: remove dead code from anv_create_cmd_buffer
- intel/tools: handle some failures
- intel/tools: refactor logging to be easier to follow by static analyzers
- intel/tools: add missing new lines to few remaining fail_if users
- nir: handle float atomics in copy propagation pass

Marek Olšák (278):

- radeonsi: enable ETC2 hw acceleration on Raven2
- ac/gpu_info: set num_tiles_pipes on gfx10+ too
- Revert "radeonsi: honor a user-specified pitch on gfx10.3"
- radeonsi: use correct wave size in gfx10_ngg_calculate_subgroup_info
- radeonsi: use the same units for esgs_ring_size and ngg_emit_size
- radeonsi: increase minimum NGG vertex count requirement per workgroup on gfx 10.3
- radeonsi: fix applying the NGG minimum vertex count requirement
- radeonsi: don't count unusable vertices to the NGG LDS size
- radeonsi: add a common function for getting the size of gs_ngg_scratch
- radeonsi: remove the NGG hack decreasing LDS usage to deal with overflows
- radeonsi: various fixes for gfx10.3
- radeonsi: disable NGG culling on gfx10.3 because of hangs
- radeonsi: fix compute-based culling with VERTEX_COUNTER_GDS_MODE == 1
- compiler: add glsl_print_type
- nir: remove nir_strip stub declaration
- nir: handle load_input_vertex in nir_get_io_offset_src
- nir: save IO semantics in lowered IO intrinsics
- nir: gather all IO info from IO intrinsics
- nir: update IO semantics in nir_io_add_const_offset_to_base
- nir: print IO semantics (v2)
- nir: properly identify texcoords for lowered IO in nir_lower_drawpixels
- nir: add shader_info::io_lowered
- nir: add interpolation qualifiers for color sysvals into shader_info
- nir: generate lowered IO in nir_lower_passthrough_edgeflags
- st/mesa: don't pass NIR to draw module if IO is lowered
- st/mesa: don't generate NIR for ARB_vp/fp if NIR is not preferred
- st/mesa: handle lowered IO in st_nir_assign_vs_in_locations
- gallium/tgsi: add helper tgsi_get_interp_mode
- radeonsi: fix tess levels coming as scalar arrays from SPIR-V
- st/mesa: remove useless code for lowered IO in st_nir_assign_vs_in_locations
- gallivm: fix build on LLVM 12 due to LLVMAddConstantPropagationPass removal
- amd/registers: expose the canonicalize.py program as a function
- amd/registers: sort registers by offset in json
- amd/registers: add a script that generates json from kernel headers
- amd/registers: add non-gfx10 register files generated from kernel headers
- amd/registers: switch to new generated register definitions
- nir: fix a bug in is_dual_slot in nir_io_add_const_offset_to_base
- st/mesa: fix lowered IO - don't call st_nir_assign_vs_in_locations twice
- radeonsi: don't crash if input_usage_mask is 0 for a VS input
- radeonsi: get color interpolation info from shader_info
- radeonsi: clean up code for loading VS inputs
- ac/nir: handle all lowered IO intrinsics
- radeonsi: lower IO intrinsics - complete rewrite of input/output scanning
- radeonsi: remove in/out/uniform variables from NIR after lowering IO
- radeonsi: don't lower indirect IO in GLSL
- radeonsi: don't execute LDS stores for TCS outputs that are never read
- radeonsi: simplify handling color interp modes in si_emit_spi_map
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_shader_selector::type)
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_shader_context::type)
- radeonsi: change PIPE_SHADER to MESA_SHADER (debug flags)
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_compile_llvm)
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_get_shader_part)
- radeonsi: remove unused si_shader_context::type
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_shader_dump_disassembly)
- radeonsi: precompute si_*_descriptors_idx in si_shader_selector
- radeonsi: change PIPE_SHADER to MESA_SHADER (si_dump_descriptors)
- radeonsi: remove si_shader_selector::type
- compiler: add INTERP_MODE_COLOR for radeonsi
- radeonsi: replace TGSI_INTERPOLATE with INTERP_MODE
- radeonsi: replace TGSI_SEMANTIC with VARYING_SLOT and FRAG_RESULT
- radeonsi: optimize out the loop in si_get_ps_input_cntl
- ac/llvm: fix unaligned VS input loads on gfx10.3
- nir: get ffma support from NIR options for nir_lower_flrp
- nir/algebraic: trivially enable existing 32-bit patterns for all bit sizes
- nir/algebraic: add 16-bit versions of a few 32-bit patterns
- glsl_to_nir: fix crashes with int16 shifts
- radeonsi: remove redundant no-signed-zero-fp-math LLVM attribute
- radeonsi: move nir_shader_compiler_options into si_screen
- Revert "ac: generate FMA for inexact instructions for radeonsi"
- ac/llvm: remove stub prototype for fmed3
- ac/llvm: fix amdgcn.rcp for v2f16
- ac/llvm: fix amdgcn.fract for v2f16
- ac/llvm: fix amdgcn.rsq for v2f16
- ac/llvm: fix bcsel for v2*16
- ac/llvm: remove dead code handling for fmod
- ac/llvm: add better code for isign
- ac/llvm: add better code for fsign
- ac/llvm: fix b2f for v2f16
- radeonsi: stop using TGSI_PROPERTY_NEXT_SHADER
- radeonsi: stop using TGSI_PROPERTY_VS_WINDOW_SPACE_POSITION / VS_BLIT_SGPRS_AMD
- radeonsi: stop using TGSI_PROPERTY_TCS_VERTICES_OUT
- radeonsi: stop using TGSI_PROPERTY_TES_POINT_MODE / TES_PRIM_MODE
- radeonsi: stop using TGSI_PROPERTY_TES_SPACING
- radeonsi: stop using TGSI_PROPERTY_TES_VERTEX_ORDER_CW
- radeonsi: stop using TGSI_PROPERTY_GS\_\*
- radeonsi: stop using TGSI_PROPERTY_CS\_\*
- radeonsi: stop using TGSI_PROPERTY_FS_EARLY_DEPTH_STENCIL
- radeonsi: stop using TGSI_PROPERTY_FS_POST_DEPTH_COVERAGE
- radeonsi: stop using TGSI_PROPERTY_FS_COORD_PIXEL_CENTER
- radeonsi: stop using TGSI_PROPERTY_FS_DEPTH_LAYOUT
- radeonsi: stop using TGSI_PROPERTY_CS_LOCAL_SIZE
- radeonsi: stop using TGSI_PROPERTY_FS_COLOR0_WRITES_ALL_CBUFS
- radeonsi: remove \info::samplers_declared, image_buffers, msaa_images_declared
- radeonsi: remove redundant si_shader_info::shader_buffers_declared
- radeonsi: remove redundant si_shader_info::images_declared
- radeonsi: remove redundant si_shader_info::const_buffers_declared
- radeonsi: remove redundant si_shader_info:\*(clip|cull)\* fields
- radeonsi: remove unused si_shader_info::uses_(vertexid|basevertex)
- radeonsi: merge uses_persp_opcode_interp_sample/uses_linear_opcode_interp_sample
- radeonsi: remove redundant si_shader_info::uses_kill
- radeonsi: reduce type sizes in si_shader_selector
- radeonsi: rename num_memory_instructions -\> num_memory_stores
- radeonsi: remove redundant si_shader_info::writes_memory
- radeonsi: remove redundant GS variables in si_shader_selector
- radeonsi: remove redundant si_shader_selector::max_gs_stream
- radeonsi: remove redundant si_shader_info::uses_derivatives
- radeonsi: use shader_info::cs::local_size_variable to clean up some code
- radeonsi: deduplicate setting key.mono.u.vs_export_prim_id
- radeonsi: kill point size VS output if it's not used by the rasterizer
- radeonsi: set outputs_written_before_ps for geometry shaders too
- radeonsi: eliminate unused shader outputs for separate NGG geometry shaders
- radeonsi: remove swizzle == ~0 dead code in si_llvm_load_input_gs
- ac,radeonsi: lower 64-bit IO to 32 bits and remove all dead code
- radeonsi: inline trivial PS functions
- nir: add mediump flag to IO semantics
- nir: fix lower_mediump_outputs to not require variables
- nir/algebraic: add flrp patterns for 16 and 64 bits
- nir/algebraic: expand existing 32-bit patterns to all bit sizes using loops
- nir: remove redundant opcode u2ump
- nir: enforce 32-bit src type requirement for f2fmp and i2imp
- nir: add new mediump opcodes f2[ui]mp, i2fmp, u2fmp
- nir/algebraic: collapse conversion opcodes (many patterns)
- nir/algebraic: add late optimizations that optimize out mediump conversions (v3)
- nir/opt_vectorize: don't lose exact and no_*_wrap flags
- st/mesa: don't enable NV_copy_depth_to_color if NIR doesn't support FP64
- nir,radeonsi: move ffma fusing to late optimizations for better codegen
- radeonsi: clean up ffma handling
- Revert "radeonsi: set BIG_PAGE fields on gfx10.3"
- Revert "radeonsi: move L2_CACHE_CONTROL registers into si_emit_framebuffer_state"
- radeonsi: don't lower pack for better 16-bit vectorization
- radeonsi: set flags for FP16 in shaders
- radeonsi: implement 16-bit FS color outputs
- radeonsi: vectorize IO for better ALU vectorization
- radeonsi: don't scalarize 16-bit vec2 ALU opcodes
- radeonsi: add 16-bit ALU vectorization
- gallium: rename PIPE_TRANSFER\_\* -\> PIPE_MAP\_\*
- gallium: rename pipe_transfer_usage -\> pipe_map_flags
- gallium: rename transfer flags -\> map flags in comments
- radeon: rename RADEON_TRANSFER\_\* -\> RADEON_MAP\_\*
- radeonsi: set TRUNC_COORD=0 for Total War: WARHAMMER to fix it
- radeonsi: move debug options from si_disk_cache_create to si_get_ir_cache_key
- radeonsi: remove KILL_PS_INF_INTERP/CLAMP_DIV_BY_ZERO, use screen::options
- amd: add Dimgrey Cavefish support
- amd: add VanGogh support
- radeonsi: set KEEP_TOGETHER_ENABLE if needed
- radeonsi: move binning parameters into si_screen
- radeonsi: break a binning batch on a new PS if bins can use multiple state sets
- radeonsi: add a tweak for PS wave CU utilization for gfx10.3
- nir: split fuse_ffma into fuse_ffma16/32/64
- nir: split lower_ffma into lower_ffma16/32/64
- radeonsi: fuse or lower ffma optimally on all chips
- nir: replace lower_ffma and fuse_ffma with has_ffma
- radeonsi: use optimal order of operations when setting up a compute dispatch
- radeonsi: call si_upload_graphics_shader_descriptors before the big conditional
- radeonsi: move a displaced comment in si_draw_vbo
- radeonsi: don't call emit_cache_flush after uploading bindless descriptors
- radeonsi: reorganize the code around the gfx9 scissor bug
- radeonsi: move si_upload_vertex_buffer_descriptors into si_state_draw.c
- radeonsi: add unlikely statements into si_draw_vbo
- radeonsi: lift the conditional for skipping si_upload_vertex_buffer_descriptors
- radeonsi: always inline draw-related functions that have only one use
- nir: gather indirect info from lowered IO intrinsics
- nir: gather tess.tcs_cross_invocation info from lowered IO intrinsics
- nir: set system_values_read for all intrinsics
- nir: gather fs.uses_sample_qualifier from lowered IO
- nir: fix input/output info gathering for lowered IO
- nir: gather information about fbfetch and dual source color
- radeonsi: fix indirect dispatches with variable block sizes
- radeonsi: call nir_shader_gather_info after lowering and optimizing NIR
- radeonsi: use info.system_values_read
- radeonsi: get information about FS color outputs from shader_info directly
- radeonsi: get input/output usage flags from shader_info directly
- radeonsi: run NIR optimizations that glsl_to_nir runs but other places might not
- radeonsi: assume that constant load_local_group_size has been optimized out
- radeonsi: remove redundant variables from struct si_compute
- radeonsi: remove redundant info.uses_fbfetch
- gallivm: add support for lowered IO in vertex shaders
- util: implement f16c - fast half<->float conversions
- util: move util_half_to_float code into \_mesa_half_to_float_slow
- util: remove util_float_to_half and util_half_to_float wrappers
- gallium/util: remove redundant util_float_to_half_rtz
- gallium/util: remove empty file u_half.h
- radeonsi: Fix dead lock with aux_context_lock in si_screen_clear_buffer.
- radeonsi: simplify NGG culling enablement and add radeonsi_shader_culling option
- radeonsi: kill disabled clip distances and planes at per-channel granularity
- radeonsi: move si_set_active_descriptors_for_shader into si_update_common_shader_state
- radeonsi: use staging buffer uploads for most VRAM buffers
- radeonsi: call nir_lower_bool_to_int32 last because it breaks nir_opt_if
- radeonsi: restructure si_pipe_set_constant_buffer
- mesa: factor out layout parsing for glInterleavedArrays
- gl_marshal.py: inline print_sync_dispatch
- driconf: force the vendor string to NVIDIA to fix viewperf energy tests
- driconf: enable force_glsl_extensions_warn for viewperf
- st/mesa: enable GL name reuse for queries based on the driconf option
- util/idalloc: resize if ID is too large for reservation
- gallium/util: add set_frontend_noop into driver_noop and u_threaded_context
- radeonsi: remove dead variable postponed_kill
- radeonsi: implement GL_INTEL_blackhole_render
- gallium/u_threaded_context: don't call memcpy in tc_set_constant_buffer
- gallium/u_threaded_context: always flush asynchronously if requested
- gallium/u_threaded_context: fix use-after-free in transfer_unmap
- util: implement F16C using inline assembly on x86_64
- util: move util_half_to_float code into \_mesa_half_to_float_slow
- util: remove util_float_to_half and util_half_to_float wrappers
- gallium/util: remove redundant util_float_to_half_rtz
- gallium/util: remove empty file u_half.h
- mesa: don't use GET_DISPATCH because it doesn't work with glthread
- mesa: remove api_loopback to remove call indirections
- glthread: handle glInterleavedArrays
- nir/algebraic: always lower idiv to shifts if bitops are allowed
- util: add \_mesa_set_create_u32_keys where keys are not pointers
- nir: add new helper passes that lower uniforms to literals
- gallium: add pipe_context::set_inlinable_constants
- st/mesa: pass inlinable uniforms to drivers if they requested it
- ac/surface: fix valgrind warnings in DCC retile tile lookups
- winsys/amdgpu: rework the VM alignment optimizations
- winsys/amdgpu: apply the VM alignment optimization to the physical alignment too
- radeonsi: update the DMA perf test
- radeonsi: disable SDMA on gfx6-7 and gfx10.3 to decrease CPU overhead
- Revert "radeonsi/gfx10: disable vertex grouping"
- radeonsi: don't disable NGG culling on gfx10.3
- radeonsi: enable NGG culling by default on gfx10.3 dGPUs
- radeonsi: optimize out LDS bank conflicts in the NGG culling shader
- radeonsi: remove indirection when loading position at the end for NGG culling
- radeonsi: write VS/TES system values into LDS after culling
- radeonsi: pack LDS better for NGG culling
- radeonsi: tweak LATE_ALLOC_GS numbers for faster NGG culling
- radeonsi: enable NGG on Navi14 PRO cards
- radeonsi: enable NGG culling by default on Navi1x PRO cards
- ac/llvm: don't lower bool to int32, switch to native i1 bool
- amd: update addrlib
- nir: consider load_color intrinsics as both inputs and sysval in gathering
- Revert "st/mesa: don't pass NIR to draw module if IO is lowered"
- st/mesa: make sure prog->info is up to date for NIR (v2)
- amd: regenerate gfx103.json from kernel headers
- amd: correct typos in gfx10-rsrc.json
- amd: update gfx10-rsrc.json for gfx10.3
- amd: replace 0x028848 with the register definition
- amd: print NUM_PKRS with AMD_DEBUG=info on gfx10.3
- Revert "radeonsi: use staging buffer uploads for most VRAM buffers"
- util: remove unused util_get_L3_for_pinned_thread
- util: consolidate thread_get_time functions
- st/mesa: remove random L3 pinning heuristic for glthread
- util: add util_set_thread_affinity helpers including Windows support
- util: add util_get_current_cpu using sched_getcpu and Windows equivalent
- util: completely rewrite and do AMD Zen L3 cache pinning correctly
- glthread: pin driver threads to the same L3 as the main thread regularly
- radeonsi: implement inlinable uniforms
- gallium: move pipe_draw_info::start/count to the beginning and pad empty space
- gallium: add pipe_context::multi_draw
- winsys/amdgpu: remove incorrect assertion check against max_check_space_size
- radeonsi: add num_draws parameter into si_need_gfx_cs_space
- radeonsi don't get count from pipe_draw_info in si_num_prims_for_vertices
- radeonsi: don't check info->count == 0
- radeonsi: implement multi_draw but supporting only 1 draw
- radeonsi: add support for multi draws
- radeonsi: set NOT_EOP for back-to-back draws on gfx10+
- radeonsi: implement multi_draw for compute-based primitive culling
- gallium/u_threaded: move a structure up to be used later
- gallium/u_threaded: merge consecutive draw calls within batches
- st/mesa: fix use-after-free when updating shader info in st_link_nir
- radeonsi: fix min_direct_count value
- radeonsi: do VGT_FLUSH when switching NGG -\> legacy on Sienna Cichlid
- radeonsi: only do VGT_FLUSH for fast launch if previous draw was normal launch
- radeonsi: determine correctly if switching from normal launch to fast launch
- radeonsi: add options.inline_uniforms to the shader cache key
- ac: fix detection of Pro graphics
- ac: fix min/max_good_num_cu_per_sa on gfx10.3 with disabled SEs
- radeonsi: fix NGG streamout regression
- radeonsi: fix scan_instruction for bindless inc_wrap/dec_wrap atomics
- nir: fix gathering TCS cross invocation access with lowered IO
- nir: fix gathering patch IO usage with lowered IO
- ac/nir: fix a typo in ac_are_tessfactors_def_in_all_invocs
- mesa: call FLUSH_VERTICES before changing sampler uniforms
- st/mesa: fix uninitialized/random clip plane state vars in lower_ucp
- radeonsi: fix a memory leak in si_create_dcc_retile_cs
- radeonsi: fix a nasty bug in si_pm4.c
- radeonsi: disable WGP mode on gfx10.3 to prevent hangs

Marek Vasut (2):

- etnaviv: Remove etna_resource_get_status()
- etnaviv: Add lock around pending_ctx

Marijn Suijten (5):

- util: Makefile.sources: Add disk_cache_os.{c,h}
- android: gallium/auxiliary: Deduplicate nir_to_tgsi.c inclusion
- scons: gallium/auxiliary: Unconditionally compile NIR regardless of LLVM
- android: panfrost: Move nir_undef_to_zero to util
- android: freedreno: Add freedreno_dev_info.[ch\] to Makefile.sources

Mark Janes (2):

- intel/fs: Assert if lower_source_modifiers converts 32x16 to 32x32 multiplication
- intel/fs: work around gen12 lower-precision source modifier limitation

Mark Menzynski (5):

- nv50/ir: Use a bit field in info_out structure
- nv50/ir: Add nv50_ir_prog_info_out serialize and deserialize
- nv50/ir: Add prog_info_out print
- nv50/ir: Add nv50_ir_prog_info serialize
- nvc0: Add shader disk caching

Martin Peres (11):

- driconf: bump the maximum string size from 25 to 1024
- driconf: initialize the option value before using it
- dri/DRI2ConfigQueryExtension: add support for string options
- glx/extensions: split set_glx_extension into find\_ and set\_
- glx: stop using hardcoded array sizes for bitfields
- glx: initial plumbing to let users force-enable/disable extensions
- glx: let users force-enable/disable indirect GL extensions
- driconf: add a way to override GLX extensions
- driconf: add a way to override indirect-GL extensions
- driconf: disable GLX_OML_swap_method by default on Brink
- driconf: allow higher compat version for Brink

Matt Turner (3):

- intel/tools: Disassemble WAIT's argument as a destination
- Revert F16C series (MR 6774)
- glcpp: Handle bison-3.6 error message changes

Mauro Rossi (28):

- android: panfrost: Rename encoder/ to lib/
- android: panfrost: Move pandecode into lib/
- android: pan/mdg: Separate disassembler and compiler targets
- android: pan/bi: Separate disasm/compiler targets
- android: panfrost: Redirect cmdstream includes through GenXML
- android: panfrost/bifrost: add libpanfrost_lib static dependency
- android: panfrost: Redirect cmdstream includes through GenXML (v2)
- android: util/format: fix generated sources rules
- android: amd/registers: switch to new generated register definitions
- android: util: fix missing include path
- android: nv50/ir: Add nv50_ir_prog_info_out serialize and deserialize
- android: freedreno: Implement pipe screen's get_device/driver_uuid()
- android: freedreno/common: add libmesa_git_sha1 static dependency
- egl/android: HAVE_DRM_GRALLOC path fixes (v2)
- android: aco/isel: Move context initialization code to a dedicated file
- android: pan/bi: Use new disassembler
- android: pan/bi: Use new packing
- android: pan/bi: fix typo in bifrost_gen_disasm.c gen rules
- android: gallium/iris: cleanup iris_driinfo.h gen rules
- android: gallium/radeonsi: cleanup si_driinfo.h gen rules
- android: gallium/virgl: cleanup virgl_driinfo.h gen rules
- android: util: add log.c to Makefile.sources
- android: pan/bi: Use new disassembler (v2)
- android: panfrost: use python3 for generated sources rules
- android: util: Move xxd.py to util
- android: util,ac,aco,radv: Cross-platform memstream API
- android: fix libsync dependencies (v2)
- android: aco: add aco_form_hard_clauses.cpp to Makefile.sources

Michael Olbrich (1):

- meson.build: xxf86vm is not needed for -Dglx-direct=false

Michael Tretter (2):

- etnaviv: fix comment for source of etna_mesa_debug
- etnaviv: free tgsi tokens when shader state is deleted

Michel Dänzer (31):

- ci: Fix up rules for post-merge / main project branch pipelines
- ci: Create test-docs job in mesa/mesa pipelines for MRs
- ci: Don't exclude "success" job from mesa/mesa pipelines for MRs
- ci: Restrict "success" job to pipelines for MRs
- ci: Do not create manual test-docs job in post-merge pipelines
- ci: Remove any existing results directory before running piglit
- ci: Add "is scheduled pipeline" YAML anchor
- ci: Add "is master branch of main project" YAML anchor
- ci: Add "is pre-merge pipeline for Marge Bot" YAML anchor
- ci: Add "is post-merge pipeline, not for Marge Bot" YAML anchor
- ci: Add "is forked branch or pre-merge pipeline" YAML anchor
- ci: Add "is forked branch" YAML anchor
- ci: Add "is post-merge pipeline" YAML anchor
- ci: Add "is pre-merge pipeline" YAML anchor
- ci: Add "is for Marge Bot" YAML anchor
- ci: Always use CI_PROJECT_NAMESPACE instead of CI_PROJECT_PATH
- ci: Prevent pages job from running in pre-merge pipelines
- ci: Don't create test-docs job if the pages one exists in the pipeline
- ci: Use ignore_scheduled_pipelines anchor in .radeonsi-rules
- gallium: Make pipe_viewport_state swizzle_x/y/z/w bit-fields 8 bits wide
- ci: Move test-docs job to deploy stage
- ci: Add empty needs: to pages job
- ci: Add jobs running ci-fairy checks
- loader/dri3: Only allocate additional buffers if needed
- loader/dri3: Keep current number of back buffers if frame was skipped
- loader/dri3: Allocate up to 4 back buffers for page flips
- ci: Add "check mr" job to needs: of build jobs
- ci: Run git_archive job if all_paths matches
- i965/bufmgr: Handle NULL bufmgr in brw_bufmgr_get_for_fd
- iris/bufmgr: Handle NULL bufmgr in iris_bufmgr_get_for_fd
- ac: Don't negate strstr return values in ac_query_gpu_info

Michel Zou (9):

- swr: fix build with mingw
- swr: missing \_BitScanForward64 on 32 bits win
- swr: fix \_BitScanForward64 on unix
- util: drop non-posix header fnmatch
- lavapipe: fix usleep usage in lvp_device
- wsi: move drm code to wsi_common_drm.c
- gallium: use libpipe_loader_links
- lavapipe: configure suffix in icd json
- util: use dllexport for mingw too

Mike Blumenkrantz (118):

- zink: basic primitive restart support for strip/fan topologies
- zink: move 8bit index handling out of u_primconvert path
- zink: use util_draw_vbo_without_prim_restart for unsupported prim modes
- zink: set primitive restart cap
- zink: move shader state methods for pipe_context into zink_program.c
- zink: adjust zink_shader struct to contain full streamout info
- zink: refcount zink_gfx_program objects
- zink: split up creating zink_shader objects and VkShaderModule objects
- zink: use ZINK_SHADER_COUNT instead of PIPE_SHADER_TYPES - 1 everywhere
- zink: start using per-stage flags for new shaders, refcount shader modules
- zink: always compile shaders in pipeline order
- zink: rename zink_gfx_program::stages to 'modules'
- gallium: add pipe_transfer_usage for z/s only mappings
- gallium/u_transfer_helper: add util functions for doing deinterleaving during map
- zink: print error when getprocaddr fails for extension functions
- zink: change pipeline hashes to index based on vk primitive type
- zink: handle more draw modes
- zink: invalidate pipeline hash on more changes
- zink: use u_transfer_helper to split/merge interleaved depth/stencil formats
- zink: add note about buffer<->image copy functions not handling multisample
- zink: generically handle matrix types
- anv: improve error message when failing to open device path
- anv: assert that the target bo is valid when adding a reloc list
- zink: use correct value for color buffer sample count when creating renderpass
- zink: use correct number of samples on framebuffer in set_framebuffer_state
- zink: use correct layer count when creating framebuffer
- zink: clamp min created fb size to 1x1
- zink: verify that src and dst aspects are the same in resource_copy_region hook
- zink: implement ARB_instanced_arrays
- zink: move viewport count to zink_gfx_pipeline_state
- zink: set multiviewport cap in ntv when gl_ViewportIndex is a written output
- zink: correctly set up fb-sized scissors for each viewport
- zink: apply viewport count when creating pipelines
- zink: reorder create_stream_output_target to fix failure case leak
- zink: combine all surface layout-setting for src/dst into util function
- zink: unify all occurrences of waiting on a fence
- zink: correctly handle ARB_arrays_of_arrays in ntv for samplers
- zink: run nir_lower_uniforms_to_ubo conditionally
- zink: fix shader buffer size caps to use 65536
- zink: always emit descriptor set 0 in ntv
- zink: emit ubo variables sized based on the overall ubo block size
- zink: don't emit ubos or bindings for ubo variables
- zink: correctly set up ubo bindings and buffer indices
- zink: use sizeof(vec4) multiplier for nir_lower_uniforms_to_ubo
- zink: hook up driconf
- xmlconfig: fix scandir_filter
- zink: handle timestamp queries
- zink: handle TIME_ELAPSED queries
- zink: add pipe_context::get_timestamp hook
- zink: enable pipe caps for ARB_timer_query
- anv: remove VkPipelineCacheCreateInfo::flags assert
- radv: remove VkPipelineCacheCreateInfo::flags assert
- util/hash_table: add function for reserving size in a hash table
- zink: enable VK_KHR_vulkan_memory_model extension
- zink: add VK_EXT_custom_border_color
- zink: support VK_EXT_blend_operation_advanced
- zink: support VK_EXT_extended_dynamic_state
- zink: add VK_EXT_pipeline_creation_cache_control
- zink: enable VK_EXT_shader_stencil_export
- zink: ARB_uniform_buffer_object is now implemented, so add cap and feature doc
- glsl: fix up location setting for variables pointing to a UBO's base
- nir: update ubo locations in nir_lower_uniforms_to_ubo
- zink: add a mechanism to track current resource usage in batches
- zink: optimize transfer_map for resources with pending reads/writes
- zink: add more explicit fencing for transfer maps
- zink: explicitly flag fb attachments as being written to in render passes
- zink: don't leak sampler view textures
- zink: redo slot mapping again for the last time really I mean it
- zink: export PIPE_CAP_MAX*_VARYINGS values
- zink: unify code for emitting named uint-based variable instructions
- glsl: more accurately handle swizzle in 64bit varying split with no left value
- zink: increase descriptor pool sizes for other descriptor types we'll be using
- zink: implement ARB_texture_buffer_object
- zink: ensure resource tracking for sampler buffers in render batches
- zink: assert valid format in zink_create_sampler_view()
- zink: handle null attachment for ARB_texture_buffer_object samplers
- zink: add VK_BUFFER_USAGE_INDEX_BUFFER_BIT to vertex buffer creation
- zink: add last few format maps for ARB_vertex_type_2_10_10_10_rev
- zink: fix stencil wrapping
- zink: add some spirv_builder functions we'll be using for geometry shaders
- zink: handle shader io vars more generically for use with gs
- zink: add ntv handling for geometry shader variables
- zink: re-transform gl_Position for gs input
- zink: add handling for gs in ntv
- zink: remove ADJACENCY prim types from primconvert path
- zink: round out handling for streamout buffer stride setting during draw
- zink: add gallium handling for geometry shaders
- zink: enable gs pipe caps
- zink: bump to glsl 1.40
- zink: mark off GL 3.1 as done in features.txt
- zink: GLSL 1.50
- zink: set 3.2 complete in features.txt
- zink: bump GLSL to 3.30
- zink: set 3.3 complete in features.txt
- zink: implement ARB_draw_indirect
- zink: add helper for vec-type input variables in ntv
- zink: add ntv handling for ARB_sample_shading
- zink: add a pipe_context::get_sample_position hook
- zink: mark ARB_sample_shading as supported
- doc/features: remove zink entries for GL 3.3 items
- zink: deduplicate some query result code
- zink: more correctly handle PIPE_QUERY_PRIMITIVES_GENERATED queries
- zink: also create an xfb query for every primitives generated query
- zink: store batch id onto query object at time of start
- zink: fixup gs/xfb tracking for primitives generated queries
- zink: rework query overflow handling
- zink: always use query->type for starting/stopping xfb queries
- zink: always reset query pools on next query begin
- zink: add pass for lowering dynamic ubo/ssbo block indexing to constants
- zink: break up dynamic access lowering
- util/threaded_context: use driver's buffer alignment for staging transfers
- nir/clip_disable: write 0s instead of undefs for disabled clip planes
- nir/clip_disable: try for better no-op
- nir/clip_disable: handle 2x vec4 case
- zink: implement ARB_texture_query_lod
- zink: use same function for all pipe_context::delete_*_state shader methods
- zink: add a quadop function in spirv_builder
- zink: add some spirv builder functions for barriers

Nanley Chery (46):

- dri_util: Update internal_format to GL_RGB8 for MESA_FORMAT_B8G8R8X8_UNORM
- iris: Don't call SET_TILING for dmabuf imports
- iris: Make iris_bo_import_dmabuf take a modifier
- iris: Drop iris_resource_alloc_separate_aux
- iris: Drop unused resource allocation optimization
- iris: Drop old comment on clear color BO allocation
- iris: Move size/offset calculations out of configure_aux
- iris: Add and use iris_resource_configure_main
- iris: Drop buffer support in resource_from_handle
- gallium/dri2: Report correct YUYV and UYVY plane count
- iris: Fix aux assertion in resource_get_handle
- iris: Fold a condition into no_gpu for consistency
- iris: Make iris_has_color_unresolved more generic
- iris: Avoid resolving Z/S reads in transfer_map
- iris: Drop a use of the need_resolve boolean
- iris: Better determine map_would_stall for Z/S
- gallium/dri2: Report I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS num_planes
- gallium/dri2: Support I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS import
- intel/isl: Describe I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS
- intel/isl: Support ISL_AUX_USAGE_MC in surface states
- intel/isl: Add YUV format info for the aux-map
- st/mesa: Don't map all P01X DRM formats to P016
- intel/common: Add get_aux_map_format_bits()
- iris: Support planar resource imports for MC
- intel/common: Drop unused gen_aux_map_add_image
- iris: Support MC modifier in plane count queries
- iris: Support I915_FORMAT_MOD_Y_TILED_GEN12_MC_CCS
- blorp: Fix alignment test for HIZ_CCS_WT fast-clears
- blorp: Drop trailing whitespace in blorp_clear.c
- anv/image: Disable multi-layer CCS_E on TGL+
- blorp: Ensure aligned HIZ_CCS_WT partial clears
- iris: Fix a fast-clear skipping optimization
- anv: Enable multi-layer aux-map init for HIZ+CCS
- Revert "anv: Add driconf option to disable compression for 16bpp format"
- iris: Add fast-clear restriction for 8bpp surfaces
- isl: Allow CCS for 8bpp surfaces with 3+ miplevels
- st/mesa: Add missing sentinels in format_map[\]
- intel/isl: Drop redundant unpack of unorm channels
- isl: Fix the aux-map encoding for D24_UNORM_X8
- iris: Fix fast-clears of swizzled LA formats
- iris: Fix SINT assert in convert_fast_clear_color
- iris: Fix fast-clears of swizzled alpha formats
- iris: Flush dmabufs during context flushes
- mesa: Add and use \_mesa_has_depth_float_channel
- mesa: Clamp some depth values in glClearBufferfv
- mesa: Clamp some depth values in glClearBufferfi

Neil Roberts (3):

- v3d: Make the function to set tex dirty state for a stage global
- v3d: Split the creating of TEXTURE_SHADER_STATE into a helper function
- v3d: Update the TEXTURE_SHADER_STATE when there’s a new buf for a tex

Philipp Zabel (3):

- meson: fix power8 option
- gallium/dri: fix dri2_query_image for multiplanar images
- gallium/dri: fix dri2_from_planar for multiplanar images

Pierre Moreau (5):

- clover/spirv: Remove unused tuple header
- clover/spirv: Print linked SPIR-V module if asked
- meson: Raise minimum version for SPIR-V OpenCL deps (v4)
- clover/llvm: Use the highest supported SPIR-V version (v4)
- clover/nir: Register callback for translation messages (v2)

Pierre-Eric Pelloux-Prayer (61):

- ac/llvm: handle static/shared llvm init separately
- mesa/st: introduce PIPE_CAP_NO_CLIP_ON_COPY_TEX
- radeonsi: enable PIPE_CAP_NO_CLIP_ON_COPY_TEX
- ac/llvm: add option to clamp division by zero
- radeonsi,driconf: add clamp_div_by_zero option
- radeonsi: use radeonsi_clamp_div_by_zero for SPECviewperf13, Road Redemption
- amd/llvm: switch to 3-spaces style
- amd/common: switch to 3-spaces style
- mesa: move u_idalloc from gallium/aux/util to util
- util/idalloc: add util_idalloc_reserve
- util/idalloc: add lowest_free_idx to avoid iterating from 0
- mesa: add a isGenName parameter to \_mesa_HashInsert
- mesa: add GL name reuse support
- mesa: add \_mesa_HashFindFreeKeys
- mesa: use \_mesa_HashFindFreeKeys for GL functions
- driconf: add option to reuse GL names
- glsl: fix per_vertex_accumulator::fields size
- r600/uvd: set dec->bs_ptr = NULL on unmap
- radeon/vcn: set dec->bs_ptr = NULL on unmap
- radeonsi: fix quant_mode selection for large negative values
- radeonsi: fix guardband handling for large values
- mesa: fix glUniform\* when a struct contains a bindless sampler
- gallium: add PIPE_CAP_MAX_TEXTURE_MB
- radeonsi: move GL vendor workaround to drirc
- radeonsi: reduce PIPE_SHADER_CAP_MAX_CONST_BUFFER_SIZE value
- radeonsi: change vendor name to AMD
- radeonsi: force linear for textures with height=1 (gfx6-8)
- radeonsi/tmz: use secure job if framebuffer has dcc
- radeonsi/tmz: use secure job if using an encrypted z/s buffer
- radeonsi/tmz: add safety assert when tmz is enabled
- radeonsi/tmz: allocate depth/stencil buffers as encrypted
- radeonsi: introduce SI_RESOURCE_FLAG_INTERNAL / RADEON_FLAG_DRIVER_INTERNAL
- amd: add AMDGPU_IDS_FLAGS_TMZ definition to amdgpu_drm.h
- ac/gpu_info: add detection of TMZ support
- radeonsi/tmz: allow secure job if the app made a tmz allocation
- amd/winsys: add RADEON_FLUSH_TOGGLE_SECURE_SUBMISSION
- radeonsi/tmz: fail si_texture_transfer_map if tex is encrypted
- radeonsi/tmz: add tmz variant of sctx::wait_mem_scratch
- radeonsi/tmz: add tmz variant for sctx::tess_rings
- radeonsi: disable primitive discard if tmz is in use
- radeonsi/tmz: add a tmz variant for sctx::eop_bug_scratch
- radeonsi/tmz: add workaround for mpv/vaapi subtitles
- amd/tmz: move uses_secure_bos to radeon_winsys
- gallium/vl: do not call transfer_unmap if transfer is NULL
- gallium/vl: add chroma_format arg to vl_video_buffer functions
- omx/tizonia: fix build
- gallium: add new cap PIPE_CAP_DEVICE_PROTECTED_CONTENT
- gallium: introduce PIPE_BIND_PROTECTED
- radeonsi: honor PIPE_BIND_PROTECTED
- egl: implement EGL_EXT_protected_surface support
- radeonsi: enable PIPE_CAP_DEVICE_PROTECTED_CONTENT
- egl: handle EGL_PROTECTED_CONTENT_EXT for eglImage
- dri: introduce createImageFromDmaBufs3
- egl/dri2: implement createImageFromDmaBufs3
- driconf: add disable_protected_content_check option
- radeonsi: fix RADEON_FLUSH flags conflicts
- radeon: add si_vid_create_tmz_buffer helper
- radeon/vcn: delay dec->ctx and dec->dpb allocation
- va/picture: make sure destination buffer is protected if needed
- va: support VA_RT_FORMAT_PROTECTED
- radeonsi/gfx10: flush gfx cs on ngg -\> legacy transition

Pierre-Loup A. Griffais (2):

- radv: fix null descriptor for dynamic buffers
- radv: fix vertex buffer null descriptors

Qiang Yu (4):

- radeonsi: fix syncobj wait timeout
- radeonsi: fix user fence space when MCBP is enabled
- radeonsi: fix max syncobj wait timeout
- radeonsi: fix user fence GPU address

Rhys Perry (160):

- aco: fix C++11/C++14 compilation
- aco: set constant_data_offset correctly in the case of merged shaders
- aco: don't move memory accesses to before control barriers
- nir/opt_remove_phis: optimize out phis with undef
- gitlab: ask inxi output to be in code blocks
- util: add a alignof() macro
- nir: fix potential left shift of a negative value
- nir: fix memory leak in nir_cf_list_clone
- radv: don't pass null to \_mesa_sha1_update
- radv: align pipeline cache entry and header sizes
- radv: fix null memcpy and zero-sized malloc
- aco: fix non-rtz pack_half_2x16
- nir: add and use nir_intrinsic_has\_ helpers
- aco: use nir_intrinsic_has_access
- bifrost: use nir_intrinsic_has_type
- aco: consider branch definitions in spiller
- aco: don't consider the first partial spill if it's the wrong type
- aco: don't fix break condition for break+discard to exec
- aco: fix regclass checks when fixing to vcc/exec with Builder
- aco: fix spills_entry heuristic for branch blocks in init_live_in_vars()
- aco: keep loop live-through variables spilled
- aco: reserve 2 sgprs for each branch
- aco: create long jumps
- aco/tests: add test for GFX10 0x3f bug
- aco: shorten disassembly for repeated instructions
- aco/tests: add tests for long jumps
- aco: remove 64-bit SGPR ubfe/ibfe
- aco: fix sgpr ubfe/ibfe if the offset is too large
- aco: sink get_alu_src() in bfe lowering
- spirv: fix Uniform and Output MemoryAccessMakePointer{Visible,Available}
- spirv: make OpLoad/OpStore visibility/availablity barriers acquire/release
- spirv: add vtn_emit_make_{visible,available}_barrier helpers
- spirv: implement MakePointerAvailable/MakePointerVisible for OpCopyMemory
- spirv: implement Volatile memory semantic
- spirv: implement Volatile image operand
- spirv: implement SpvMemoryAccessVolatileMask
- spirv: add some tests for volatile/available/visible
- radv: remove descriptor_indexing fails from expected fails
- aco: fix mad splitting after applying output modifiers
- aco: remove omod_success/clamp_success
- aco: fix byte_align_scalar for 3 dword vectors
- nir/load_store_vectorize: rework alignment calculation
- nir/opt_shrink_vectors: shrink image stores using the format
- aco: fix one-off error in Operand(uint16_t)
- aco: improve fsign selection
- nir/opt_if: fix opt_if_merge when destination branch has a jump
- nir/opt_loop_unroll: fix is_access_out_of_bounds with vectors
- aco: fix v_writelane_b32 with two sgprs
- aco: workaround disassembler bug of v_writelane_b32 with literal
- aco: don't apply constant to SDWA on GFX8
- aco: fix value numbering of reductions
- aco: fix validation of sub-dword parallel-copies
- aco: pass -fno-exceptions and -fno-rtti
- aco: fix incorrect assertion in emit_vop3a_instruction()
- radv: initialize with expanded cmask if the destination layout needs it
- radv,aco: fix reading primitive ID in FS after TES
- aco: keep track of temporaries' regclasses in the Program
- aco: use bit vectors for liveness sets
- aco: use io semantics to get an intrinsic's slot
- aco: use nir_get_io_offset_src() in visit_load_input()
- aco: use nir's constant source helpers more
- aco: remove dead indirect fs input loading
- aco: stop multiplying driver_location by 4
- st/nir: call nir_opt_access before gl_nir_lower_buffers
- radeonsi: don't use nir_opt_access
- nir/instr_set: hash intrinsic sources
- nir/load_store_vectorize: improve vectorization with identical operations
- aco: fix get_buffer_resource_flags()
- aco: remove trailing whitespace
- radv: remove trailing whitespace
- aco: Add loop creation helpers.
- nir: return progress from nir_lower_io_to_scalar_early
- radv: move optimizations in shader_compile_to_nir() to after io_to_scalar
- radv: use radv_optimize_nir() less in radv_link_shaders()
- spirv: add and use a generator id enum
- spirv: replace discard with demote for incorrect HLSL->SPIR-V translations
- radv: remove RDR2 discard workaround
- android: fix SPIR-V -\> NIR build
- aco: optimize more uniform reductions/scans
- aco: implement elect
- radv/aco,nir/lower_subgroups: don't lower elect
- nir: add last_invocation intrinsic
- aco: implement last_invocation
- nir: move divergence analysis options to nir_shader_compiler_options
- nir: allow divergence information to be updated when inserting instruction
- nir: add pass to optimize uniform atomics
- aco: use nir_opt_uniform_atomics
- nir/opt_uniform_atomics: optimize image atomics
- nir/opt_uniform_atomics: don't optimize atomics twice
- aco: fix get_ssbo_size with a vgpr resource
- scons: fix SPIR-V -\> NIR build
- nir/opt_uniform_atomics: remove useless returns
- aco: implement 16-bit literals
- aco: propagate literals into sub-dword pseudo instructions on GFX9+
- aco: don't use v_pack_b32_f16 if 16-bit input denormals are flushed
- nir/opt_load_store_vectorize: don't vectorize stores across demote
- nir/opt_load_store_vectorize: add some tests for discard/demote behaviour
- aco: add missing SCC clobber in get_buffer_size
- ci: disable check commits job for now
- nir/loop_analyze: adjust force unrolling to only include interesting modes
- ac/nir: remove bindless image atomic format check
- aco: remove isel_context::allocated
- aco: update phi_map in add_subdword_operand()
- aco: don't do divergent break+discard
- aco: skip value numbering of copies
- aco: copy-propgate through p_create_vector during value numbering
- aco: expand vectors passed as copy operands
- aco: don't use bld.copy() in handle_operands()
- aco: allow literals on sub-dword p_parallelcopy
- aco: always use p_parallelcopy for pre-RA copies
- aco: use Builder::copy more
- aco: remove some unused optimizations
- aco: use v_mov_b32_sdwa for some 16-bit constants
- aco: remove all-undef phi opt
- aco: ignore the ACO-inserted continue in create_continue_phis()
- aco: default to a definition size of 32
- aco: round bytes_written to dwords if larger than 4 bytes
- aco: use control flow creation helpers in select_gs_copy_shader
- aco: use mubuf helper in select_gs_copy_shader
- aco: move individual instruction disassembly to its own helper
- aco: refactor repeated instruction disassembly
- aco: switch aco_print_asm to a FILE \\*
- aco: create s_clause on GFX10+
- aco: assert a label only uses one of the members in ssa_info's union
- aco: fix printing of some sdwa sels
- aco: fix combine_inverse_comparison()
- aco: don't allow destination opsel for v_cvt_pknorm
- aco: handle SDWA in the optimizer
- docs/features: update unpromoted Vulkan extensions
- docs/features: add Vulkan 1.2
- radv: add some missing radv_{start,stop}_feedback
- radv: fix shader caching with discard->demote workaround
- radv: fix shader caching with NaN fixup workaround
- nir: scalarize fdot in reverse
- spirv: reverse order in matrix multiplication
- nir/algebraic: better propagate constants up fadd chains
- nir: add nir_alu_src_is_trivial_ssa()
- nir: skip bcsel with non-trivial swizzle in opt_simplify_bcsel_of_phi()
- nir: use nir_alu_src_is_trivial_ssa() in nir_ssa_for_alu_src()
- nir: add shader_info::bit_sizes_used
- nir/lower_bit_size: optimize upcast of b2i8/b2i16
- radv: move a few passes to after load/store vectorization
- radv: do nir_lower_bit_size after algebraic optimizations
- radv: rework nir_lower_bit_size callback and run DA on GFX8+
- aco: implement some 16-bit arithmetic instead of lowering
- aco: implement 8/16-bit instructions which can be trivially widened
- spirv: fix GLSLstd450Modf/GLSLstd450Frexp when the destination is vector
- util: add mapping from Vulkan to Gallium R64 integer formats
- amd/common: add PIPE_FORMAT_R64_{UINT,SINT} to GFX10 format table
- aco: implement 64-bit images
- ac/nir: implement 64-bit images
- radv: implement VK_EXT_shader_image_atomic_int64
- aco: don't combine precise max(min()) to med3
- aco: fix combine_constant_comparison_ordering() NaN check with 16/64-bit
- aco: disallow various v_add_u32 opts if modifiers are used
- aco: disable omod if the sign of zeros should be preserved
- aco: fix fp16 \*0.5 omod
- aco: fix v_mul_hi_u32_u24 format
- nir/unsigned_upper_bound: fix buffer overflow in search_phi_bcsel
- nir: fix sampler_lod_parameters_pan indices

Ricardo Garcia (1):

- anv: Ignore continue flag in primary cmd buffers

Ricardo Quesada (1):

- anv: support fd==-1 in ImportSemaphoreFdKHR

Rob Clark (46):

- freedreno/registers: add some missing regs to build
- freedreno/ir3: don't install ir3_compiler cmdline tool
- freedreno/ir3: add tracking for \\# of instructions per category
- freedreno/ir3: add more disasm stats
- freedreno/crashdec: handle section name typos
- freedreno/decode: try harder to not crash in disasm
- freedreno/registers: SC_WAIT_WC is not a6xx
- freedreno/a6xx: only generate streamout for draw pass shader
- freedreno/a6xx: fix occlusion query with more than one tile
- freedreno/cffdump: add arg to filter by process name
- freedreno/a6xx: disable LRZ when color channels are masked
- freedreno/a6xx: refactor debug logging
- freedreno: add debug helper to dump buffers
- freedreno: handle case of shadowing current render target
- freedreno/gmemtool: add tile_alignw/h and a650
- freedreno: add env var to override GMEM size
- freedreno: add env var to override tiles-per-pipe
- freedreno/a6xx: fix hang with large render target
- freedreno/batch: split out helper for rb alloc
- freedreno/batch: replace lrz_clear with prologue
- freedreno/a5xx+a6xx: use sysmem path for nondraw batches
- freedreno/a6xx: move ubwc clear to blitter
- freedreno: Fix missing rsc->seqno updates
- freedreno: fence_server_sync() fixes
- freedreno: Fix rast state for multisample clear
- freedreno: Don't bypass fd_draw_vbo() in clear fallback
- freedreno/a6xx: Skip empty tile_setup
- freedreno/a6xx: Fix fd6_draw_vbo() return
- freedreno: Clear gs/tcs/tes state for clear blits
- freedreno/a6xx: Fix MSAA clear
- freedreno: fix fence-fd leak
- ci/deqp-runner: Allow overriding width/height/config
- ci: cherry-pick deqp fix for config choosing
- ci: Enable remaining (non-rotate) mustpass CTS tests
- freedreno/drm: drop bo's dev reference
- freedreno: Don't leak border_color_buf reference
- freedreno/a6xx: Small cleanup
- freedreno/drm: Also clean ring_cache
- freedreno/registers: Add a couple things used on kernel side
- freedreno: Don't leak LRZ bo's
- freedreno: Update import/export traces
- freedreno: Disallow tiled if SHARED and not QCOM_COMPRESSED
- freedreno: Rework GMEM limit init
- freedreno/gmem: Respect max-height limits too
- freedreno: Protect gmem_cache ralloc allocations
- freedreno/ir3: Fix crash in shader compile fail path

Rohan Garg (3):

- anv: Mark anv_dump_{start,finish} as PUBLIC
- gitlab-ci: Test the traces from bgfx
- virgl: Always enable emulated BGRA and swizzling unless specifically told not to

Roland Scheidegger (1):

- gallivm: add InstSimplify pass

Roman Gilg (2):

- vulkan/wsi/x11: add sent image counter
- vulkan/wsi/x11: wait for acquirable images in FIFO mode

Roman Stratiienko (1):

- android: freedreno: Another build fix

Ruijing Dong (1):

- frontends/omx/enc: fix omx h264 encoding force-keyframe-period issue.

Ryan Neph (1):

- virgl: Fixes portal2 binary name in tweak config

Sagar Ghuge (12):

- intel/isl: Drop unnecessary check on 16bpp depth format
- intel/blorp: Conditionally clear full surface depth and stencil
- anv: Factor out dri option initialization code in separate function
- anv: Add driconf option to disable compression for 16bpp format
- anv: Return number of layers/levels attached to anv_image
- anv: Handle compressed stencil buffer transition on Gen12+
- anv: Set stencil_aux_usage flag
- anv: Get aux usage from plane while clearing stencil buffer
- anv: Don't track clear bo for stencil buffer compression
- anv: Return optimal aux state for stencil buffer compression
- anv: Pass correct stencil aux usage during MSAA resolve
- anv: Enable stencil buffer compression on Gen12+

Samuel Iglesias Gonsálvez (14):

- freedreno/layout: add tile_all flag to the layout
- turnip: add environment variable to disable LRZ
- turnip: create LRZ buffer
- turnip: disable LRZ on specific cases
- turnip: disable LRZ writes when blend is enabled
- turnip: disable LRZ depending on fragment changes
- turnip: add LRZ tracking to command buffer state
- turnip: add LRZ valid tracking for secondary command buffers
- turnip: add support to clear LRZ
- turnip: emit correct LRZ fast clear setup
- turnip: disable LRZ on vkCmdClearAttachments()
- turnip: disable LRZ on vkCmdClearattachments() 3D fallback path
- turnip: enable LRZ
- turnip: don't initialize GRAS_LRZ_CNTL/RB_LRZ_CNTL tu6_init_hw()

Samuel Pitoiset (157):

- radv: allow to force-enable LLVM internally for a specific shader stage
- radv: report the spirv-nir logs back to the application
- radv: rework the error function helpers a bit
- radv: report errors back to the application via VK_EXT_debug_report
- radv: report a better error message when QueueWaitIdle() failed
- radv/gfx10: add missing initialization of registers
- radv: limit LATE_ALLOC_GS to prevent a GPU hang on GFX10
- radv: fix emitting the border color pointer on the compute queue
- radv/winsys: add null winsys entries for Sienna Cichild/Navy Flounder
- gitlab-ci: test Fossilize with GFX1030
- aco: do not set valid_mask for POS0 exports on GFX 10.3
- radv: track and report if a logical device is lost
- aco: rename DEBUG_VALIDATE to DEBUG_VALIDATE_IR
- aco: rework the way various compilation/validation errors are reported
- radv,aco: report ACO errors/warnings back via VK_EXT_debug_report
- aco: fix file leak in ra_fail()
- radv: ignore BB labels when splitting the disassembly string
- aco: add ACO_DEBUG=force-waitcnt to emit wait-states
- amd/registers: add missing TBA registers on GFX6-GFX8
- amd/registers: add some SQ_WAVE\_\* register definitions
- aco: add TBA/TMA/TTMP0-11 physical registers definitions
- aco: validate that SMEM operands can use fixed registers
- aco: add a helper for building a trap handler shader
- aco: skip unnecessary compiler pass for the trap handler program
- radv: add a small interface for creating the trap handler shader
- radv: add initial trap handler support with RADV_TRAP_HANDLER=1
- radv: enable the trap handler and configure the shader exceptions
- radv: use the trap handler to detect faulty shaders/instructions
- radv: align the TMA BO size to 256
- radv: allocate the TMA BO into 32-bit addr space
- radv: fix setting EXCP_EN for different shader stages
- radv: print a warning when RADV_TRAP_HANDLER is used
- aco: add ACO_DEBUG=novn,noopt,nosched for debugging purposes
- radv: emit {CB,DB}_RMI_L2_CACHE_CONTROL at framebuffer time
- radv: set BIG_PAGE to improve performance on GFX10.3
- aco: fix wrong source position for constant with nir_op_cube_face_coord
- radv: dump shader stats with VK_KHR_pipeline_executable_properties
- radv: force RADV_DEBUG=syncshaders when RADV_TRACE_FILE is used
- radv: improve reporting faulty pipelines when a GPU hang is detected
- radv: dump GPU info into the hang report
- nir/algebraic: mark some optimizations with fsat(NaN) as inexact
- spirv: fix retrieving dest type for OpFragmentMaskFetchAMD
- radv,aco: disable opts if VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT
- aco: handle unaligned loads on GFX10.3
- spirv: fix emitting switch cases that directly jump to the merge block
- radv: fix transform feedback crashes if pCounterBufferOffsets is NULL
- radv: add a helper for loading meta descriptors
- radv: do not lower UBO/SSBO access to offsets
- radv: remove useless assignment of MAX_API_VERSION
- radv: bump the advertised patch version to 145
- radv: add VK_KHR_copy_commands2 but leave it disabled
- radv: add support for CmdBlitImage2KHR()
- radv: add support for CmdCopyBuffer2KHR()
- radv: add support for CmdCopyBufferToImage2KHR()
- radv: add support for CmdCopyImage2KHR()
- radv: add support for CmdCopyImageToBuffer2KHR()
- radv: cleanup selecting the hardware resolve path
- radv: add support for CmdResolveImage2KHR()
- radv: advertise VK_KHR_copy_commands2
- radv: set KEEP_TOGETHER_ENABLE if necessary on GFX10+
- radv: add a tweak for PS wave CU utilization for gfx10.3
- ci: adjust RadeonSI rules
- ci: add dEQP-VK.info.device_extensions to the list of skipped tests
- nir/lower_memory_model: return progress when visiting instructions
- nir/lower_memory_model: do not break with global atomic operations
- ac/nir: implement nir_intrinsic_{load,store}_global
- ac/nir: implement nir_intrinsic_global_atomic\_\*
- radv: lower deref operations for global memory for both backends
- ac/llvm: fix invalid IR if image stores are shrinked using the format
- nir/lower_io: change nir_io_add_const_offset_to_base to use bitfield modes
- radeonsi: call nir_io_add_const_offset_to_base only once per shader
- radv/llvm: call nir_lower_io_to_vector with FS to fix array tests
- radv: call nir_io_add_const_offset_to_base for FS outputs
- radv: move lowering of FS outputs outside of ACO
- radv: fix gathering writes_memory for global store/atomic operations
- ac/llvm: fix invalid use of unreachable in ac_build_atomic_rmw()
- ac/nir: fix nir_intrinsic_shared_atomic_fadd
- radv: gather output usage mask from store_output for VS, TES and GS
- radv/aco: lower IO for all stages outside of ACO
- aco: apply the clamped integer addition disassembly workaround for v_add3
- aco/tests: add disassembler tests to reproduce the add3+clamp crash
- ac/llvm: adjust dmask when image stores are shrinked using the format
- ac/nir: remove dead load/store deref code for temporary variables
- radv/llvm: assign driver locations for VS, TCS, TES and GS correctly
- radv/llvm: lower GS IO
- radv/llvm: lower TES IO
- radv/llvm: gather TCS outputs from the output variables
- radv/llvm: lower TCS IO
- radv/llvm: gather VS input usage mask from load_input
- radv/llvm: lower VS IO
- ac/llvm: implement nir_op_unpack_half_2x16_split_{x,y}
- radv/llvm: enable lower_unpack_half_2x16
- ac/nir: remove dead global load/store/atomic derefs code
- ac/nir: remove dead shader IO code
- radeonsi: remove dead code in TCS/TES/GS since const_index is always 0
- ac,radv,radeonsi: remove unused parameters in the shader ABI IO
- radv: remove unused gs.writes_memory in the shader info pass
- radv: remove dead deref code in the shader info pass
- ac/nir,radv: fix invalid IR when loading inline uniform blocks
- nir/constant_folding: init nir_const_value to zero
- aco: bail out if the NIR IO base offset isn't zero
- aco: more uses of nir_get_io_offset_src()
- ac/nir: implement nir_op_fsat
- radv/llvm: do not lower nir_op_fsat
- radv/llvm: remove dead code for 64-bit GS inputs
- aco: dump the program if the disassembler failed
- radv/llvm: do not lower sub
- radv: use the same NIR compiler options for both compiler backends
- radv/llvm: stop assigning driver_location in NIR->LLVM
- ac,radv,radeonsi: stop multiplying driver_location by 4
- ac/nir: pass the variable location to store_tcs_outputs
- radv/llvm: switch to NIR IO assigned locations
- radv/llvm: reduce the ESGS itemsize by using NIR IO assigned locations
- radv/llvm: reduce LDS size for tess by using NIR IO assigned locations
- radv: remove one leftover TODO in the shader info pass
- ac/llvm: move AC_FETCH_FORMAT to non-LLVM code
- radv: replace RADV_ALPHA_ADJUST by AC_FETCH_FORMAT
- radv: move lower_io_arrays_to_elements before lower_io_to_scalar_early
- radv: fix adjusting vertex alpha
- aco: implement missing nir_op_unpack_half_2x16_split_{x,y}_flush_to_zero
- radv/aco: disable NGG GS support because it randomly hangs the GPU
- radv: fix ignoring the vertex attribute stride if set as dynamic
- aco: remove stub lower_wqm() prototype
- aco: remove useless occurences of radv_nir_compiler_options
- aco: remove unused radv_shader.h includes
- radv: move compiler statistics to ACO
- aco: compute the CS workgroup size from the shader NIR info
- aco: adjust an assertion about the wavesize in emit_gfx10_wave64_bpermute()
- radv: fix optimizing needed states if some are marked as dynamic
- ac/nir: implement missing nir_op_pack_half_2x16_split
- radv: report latest extension spec versions
- radv: add missing 'discardtodemote' option in the debug list
- Revert "radv/aco: disable NGG GS support because it randomly hangs the GPU"
- ac/nir: handle non-const offset with txf/txf_ms
- radv: move all NIR pass outside of ACO
- ac/nir: do not sign-extend the result of texop_samples_identical
- radv,aco: fix use of texop_samples_identical in the resolve meta path
- aco: fix determining if LOD is zero for nir_texop_txf/nir_texop_txs
- ac/nir: ignore set_vertex_and_primitive_count intrinsic
- ac/nir: abort when an unknown intrinsic is reached
- ac: add an option to dump GPU info to a file
- radv: add radv_dump_cmd() helper
- radv: dump UMR ring and waves into the hang report
- radv: dump GPU hang report logs into $HOME/radv_dumps_<pid\>
- radv: re-order GPU hang report dumps by usefulness
- radv: replace RADV_TRACE_FILE by RADV_DEBUG=hang
- radv: do not perform a FMASK expand for non-writeable MSAA images
- radv: flush CB before and after FMASK_DECOMPRESS or DCC_DECOMPRESS
- radv: enable VK_AMD_mixed_attachment_samples on GFX6-GFX7
- radv,aco: adjust the sample mask only if per-sample shading is enabled
- radv,aco: optimize computing the sample mask for per-sample shading
- aco: store NIR range analysis data to the isel context
- aco: select v_mul_{hi}_u32_u24 for 24-bit multiplications
- nir/algebraic: distribute imul(iadd(a, b), c) when b and c are constants
- aco: optimize v_and(a, v_subbrev_co(0, 0, vcc)) -\> v_cndmask(0, a, vcc)
- nir/algebraic: optimize bitfield_select(a, b, 0) to iand(a, b)
- aco: fix combining add/sub to b2i if a new dest needs to be allocated

Serge Martin (13):

- clover: set LLVM min version to 8.0.1
- clover: implements clEnqueueMigrateMemObjects
- clover: implements clEnqueueFillImage
- clover: implements clGetKernelArgInfo
- clover: bind sampler_t type to module::argument::sampler
- clover: add CL_KERNEL_ATTRIBUTES for clGetKernelInfo
- clover: implements clGetKernelWorkGroupInfo CL_KERNEL_COMPILE_WORK_GROUP_SIZE
- clover: implements notification callback on program builds
- clover: avoid adding an extra space to compiler options
- clover: move tokenize function to algorithm
- clover: validate image_row_pitch and image_slice_pitch in clEnqueueMapImage
- clover: clCreateImage: calculate image row_pitch and slice_pitch when not provided
- clover: implements clSetContextDestructorCallback

Suresh Guttula (2):

- gallium: update abs_delta segementation parameter
- radeon/vcn : Corrected dpb_size calculation for VP9_2

Tapani Pälli (16):

- anv: add a check for depthStencilState before using it
- anv: null check for buffer before reading size
- anv: take depth in to account in anv_GetImageSubresourceLayout
- mesa: refactor floating point texture fbo completeness check on gles
- mesa: add EXT_color_buffer_half_float plumbing
- mesa/st: enable EXT_color_buffer_half_float when formats supported
- glsl: mark some builtins with correct glsl(es) version check
- iris: remove additional pipe control done before hiz for older gens
- glsl: take EXT_gpu_shader4 in to account when adding round
- gallivm/nir: handle nir_op_flt in lp_build_nir_llvm
- iris: fix the order of src and dst for fence memcpy
- mesa/st: call memobj_destroy only if there is memory imported
- mesa: do not throw \_mesa_problem when invalid enum is used
- mesa/st: use a lock to protect access to variants when updating them
- egl/dri2: fix race between image create and egl_image_target_texture
- iris: initialize shared screen->vtbl only once

Thong Thai (10):

- radeon/vcn: fix jpeg decode for navi10
- frontends/va: Add support for NV12/P010/P016 to vaDeriveImage
- frontends/va: Derive image from interlaced buffers
- frontends/va: Derive image from interlaced buffers in some cases
- gallium: Parse packed HEVC SPS encode header for crop parameters
- radeon: Pass HEVC encode crop parameters to the encoder
- frontends/va: Enabled packed headers for H.264 encoder
- gallium/auxiliary/vl: Include src region in scale_y calculation
- frontends/va/postproc: Un-break field flag
- frontends/va: Return P010/P016 as possible surface formats when encoding

Timothy Arceri (15):

- i965: add support for force_gl_vendor
- disk_cache: move cache dir generation into OS specific helper file
- disk_cache: add disk_cache_enabled() helper
- disk_cache: move index mmap into OS specific helper
- disk_cache: move munmap into an OS specific helper
- disk_cache: move evict_lru_item() to an OS specific helper
- disk_cache: create new helper for writing cache items to disk
- disk_cache: move get_cache_file() to an OS specific helper
- disk_cache: add new OS specific helper disk_cache_evict_item()
- disk_cache: move cache item loading code into disk_cache_load_item() helper
- glsl: don't duplicate state vars as uniforms in the NIR linker
- util/disk_cache: remove unused function param
- glsl: relax rule on varying matching for shaders older than 4.00
- glsl: add extra pp tokens workaround and enable for CoR
- glsl: drop NMS OpenGL workarounds

Timur Kristóf (50):

- aco: Fix unused variable warning by adding ASSERTED.
- aco: Fix convert_to_SDWA when instruction has 3 operands.
- aco: Move README to README-ISA
- aco: Fixup markdown formatting of the README-ISA.
- aco: Add README which explains about what ACO is and how it works.
- aco: Fix emit_boolean_exclusive_scan in wave32 mode.
- aco: Clean up emit_mbcnt.
- aco: Add base argument to emit_mbcnt.
- aco: Use NIR IO semantics for tess factor IO locations.
- radv/aco: Set I/O variable locations outside ACO.
- nir: Add ability to count emitted GS primitives.
- nir: Add ability to count emitted GS vertices per primitive.
- nir: Add ability to overwrite incomplete GS primitives.
- nir: Count vertices per stream.
- nir: Add ability to count primitives per stream.
- radv/aco: Use new GS lowering options for ACO with NGG GS.
- aco: Clarify missing export error message in assembler.
- aco: Extract lanecount_to_mask to a separate function.
- aco: Extract thread_id_in_threadgroup to a separate function.
- aco: Use thread_id_in_threadgroup helper for ES outputs.
- aco: Optimize thread_id_in_threadgroup when there is just one wave.
- aco: Add wave-specific opcode for s_lshl and s_flbit.
- aco/ngg: Refactor gs_alloc_req in preparation for NGG GS.
- aco/ngg: Refactor ngg_emit_prim_export in preparation for NGG GS.
- aco/ngg: Make primitive export packing less prone to error.
- aco/ngg: Clean up and reorganize NGG VS/TES code.
- aco/ngg: Allow NGG GS to store ES outputs.
- aco/ngg: Allow NGG GS to load per-vertex GS inputs.
- aco/ngg: Allow NGG GS to create VS exports.
- aco/ngg: Setup NGG GS.
- aco/ngg: Create LDS layout for NGG GS.
- aco/ngg: Implement workgroup reduce / exclusive scan for NGG GS.
- aco/ngg: Implement NGG GS output.
- aco/ngg: Place workgroup barrier outside control flow for NGG GS.
- aco/ngg: Add shader query support to NGG GS.
- radv/aco: Enable NGG GS by default.
- aco/ngg: Use more efficient LDS layout to help reduce bank conflicts.
- aco/ngg: Allocate NGG GS space early for const vertex/primitive counts.
- aco/ngg: Calculate workgroup size of NGG shaders.
- nir: Emit set_vertex_and_primitive_count for inactive streams.
- aco/ngg: Add assertion to make sure we always know the vertex count.
- aco: Assert that workgroup barriers are not used inappropriately.
- aco/ngg: Put shader query reduction operand into a VGPR.
- aco: Add some validation for PSEUDO_REDUCTION instructions.
- aco: Make emitting reduction instructions a bit more convenient.
- aco: Add a few assertions about LDS usage.
- aco/ngg: Export a zero-area triangle when primitive count is 0.
- aco/ngg: Incorporate GS invocations into workgroup size calculation.
- aco/optimizer: Only set scc_needed when it is actually needed.
- aco: Fix NGG GS assert failure from the WG scan.

Tomeu Vizoso (16):

- Revert "CI: temp disable t720/t760 jobs."
- Revert "CI: Disable Panfrost T720/T760 CI"
- ci: Split traces.yml file per driver
- ci: Test Panfrost with more traces
- ci: Fix URL to imagediff page in traces dashboard
- ci: Update kernel used in LAVA to 5.8-based drm-misc
- ci: Run deqp-gles2 on RadeonSI
- ci: Run deqp-gles3 and deqp-gles31 on RadeonSI
- ci: Update kernel for LAVA
- ci: Test Panfrost on Khadas VIM3 boards
- ci: Disable pm_runtime and max clocks in LAVA jobs
- ci: Unskip fragment_ops tests on Bifrost
- virgl: Correctly align size of blobs
- ci: Update kernel for LAVA to 5.10-rc2 plus patches
- ci: Update dEQP skips and fails for Bifrost on G52
- ci: Distribute ADMGPU driver to LAVA as a module

Tony Wasserka (26):

- nir/lower_idiv: Port recent LLVM fixes to emit_udiv
- radv: Fix various non-critical integer overflows
- aco: Fix integer overflows when emitting parallel copies during RA
- amd/common: Fix various non-critical integer overflows
- aco/isel: Turn the function template emit_load into a proper function
- aco/isel: Simplify nested branching code
- aco/isel: Consistently use references for input parameters in emit_load
- aco/isel: Remove unused definitions
- aco/isel: Move context initialization code to a dedicated file
- aco/isel: Move add_startpgm to aco_instruction_selection.cpp
- aco/isel: Compile all helper functions with static linkage
- nir: Fix undefined behavior due to signed integer multiplication overflows
- nir: Fix unaligned pointer access
- radv: Avoid calling memcpy with null pointers
- radv: Fix unaligned memory access when writing specialization map entries
- radv: Clean up CreateDescriptorSetLayout
- radv: Respect alignment requirements in descriptor set layouts
- aco/isel: Fix out-of-bounds write in visit_load_input
- aco/isel: Always export position data from VS/NGG
- aco/isel: Remove some dead code
- aco/isel: Remove now unused VS-related code from create_null_export
- aco: Use strong typing to model SW<->HW stage mappings
- aco: Clean up symbol names and comments related to NGG
- aco/isel: Miscellaneous cleanups using the new Stage API
- aco/ra: Fix counting of subdword variables in get_reg_create_vector
- aco: Fix format string used when raising validation errors

Veerabadhran Gopalakrishnan (1):

- frontends/va: Added protected playback support for VP9

Vinson Lee (64):

- util: Fix memory leaks in unit test.
- meson: Fix lmsensors warning message.
- radv/winsys: Fix memory leak.
- vulkan: Fix memory leaks.
- panfrost: Fix gnu-empty-initializer errors.
- freedreno: Fix file descriptor leak.
- svga: Fix unused printf argument.
- spirv: Initialize spirv_test member shader.
- nv50/ir: Add fallthrough statement.
- nv50/ir: Remove duplicate mask assignment.
- ac/llvm: Fix nonportable sizeof.
- freedreno: Check file descriptor before write.
- nv50/ir: Initialize Converter members.
- libgl-gdi: Fix unused-variable warnings.
- disk_cache: Fix filename leak on error path.
- radesonsi: Remove unsigned comparison to zero.
- panfrost: Delete debug allocated syncobj.
- turnip: Release bo_mutex lock before potential error path.
- pan/bi: Fix typo.
- glsl: Initialize ir_constant member const_elements in all constructors.
- r600/sfn: Initialize GPRValue member m_pin_to_channel.
- gallium/dri2: Move image->texture assignment after image NULL check.
- panfrost: Remove extra printf arguments.
- anv: Check file descriptor before closing.
- aco: Initialize mad_info member literal_idx.
- gallium/swr: Remove unreachable code.
- pan/mdg: Fix memory leak on error path.
- lima: Print usage if --help is any of the arguments.
- radv: Fix asserts using assign instead of compare.
- nv50/ir: Initialize Source members.
- freedreno: Move rsc NULL check to before rsc dereferences.
- intel/vec4: Remove leftover code from Gen8+ removal.
- glsl: Initialize ast_node member field location.path in constructor.
- meson: Use more portable compiler option -std.
- swr/rasterizer: Remove BuilderGfxMem member mpTrackMemAccessFuncTy.
- util/xmlconfig: Initialize xmlconfig member options in constructor.
- svga: Remove unused printf argument.
- glsl: Initialize ir_to_mesa_visitor members in constructor.
- v3dv: Fix assert using assign instead of compare.
- glsl: Initialize lower_ubo_reference_visitor members in constructor.
- glsl: Initialize add_uniform_to_shader member var in constructor.
- v3dv: Remove unsigned comparison to zero.
- v3dv: Initialize time before usage by free_stale_bos.
- panfrost: Fix stride for AFBC_FORMAT_MOD_BLOCK_SIZE_32x8.
- v3dv: Fix assert using assign instead of compare.
- glsl: Initialize ir_if_to_cond_assign_visitor members in constructor.
- glsl: Initialize lower_shared_reference_visitor members.
- scons/windows: Support build with LLVM 11.
- amd/addrlib: Initialize Gfx10Lib members in constructor.
- Fix VMware capitalization.
- glsl: Update loop_terminator constructor to accept parameters.
- draw: Remove draw_install_aaline_stage dead code.
- os: Fix open result check.
- gallium: Remove duplicate resource variable.
- tgsi: Initialize tgsi_declaration_dimension padding.
- radesonsi: Remove unnecessary shader->selector NULL check.
- amd/addrlib: Add missing va_end.
- v3dv: Remove unsigned comparison to zero.
- st/nine: Remove unnecessary NULL check.
- turnip: Fix file descriptor return.
- vdpau: Add missing printf format specifier.
- frontends/va: Fix \*num_entrypoints check.
- clover/spirv: Add missing break for SpvOpExecutionMode case.
- turnip: Close sync_fd only if it is a valid file descriptor.

Woody Chow (1):

- st/mesa: Fix EGLImageTargetTexture2D for GL_TEXTURE_2D

Yevhenii Kolesnikov (1):

- nir/large_constants: only search for constant duplicates

Yogesh Mohan Marimuthu (1):

- src/mesa: add GL_NV_half_float extension support (v2)

jzielins (4):

- gallium/swr: Fix compilation with LLVM 12
- gallium/swr: Fix compilation TCS/TES compilation issues
- swr: Fix crashes on non-AVX hardware
- swr: Use ElemenCount constructor for LLVM 11

n00b7 (1):

- v3dv/device: handle primary nodes for newer kernels

orbea (1):

- spirv/vtn_cfg.c: Include util/debug.h for env_var_as_boolean.

zhu yong (1):

- meson: add support for loongson's mips/mips64 arch.