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
|
Mesa 22.0.0 Release Notes / 2022-03-09
======================================
Mesa 22.0.0 is a new development release. People who are concerned
with stability and reliability should stick with a previous release or
wait for Mesa 22.0.1.
Mesa 22.0.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 22.0.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
---------------
::
e6c41928b5b9917485bd67cec22d15e62cad7a358bf4c711a647979987601250 mesa-22.0.0.tar.xz
New features
------------
- lavapipe,radv,anv KHR_dynamic_rendering
- radv EXT_image_view_min_lod
- VK_KHR_synchronization2 on RADV.
- OpenSWR has been moved to the Amber branch
- radeonsi, zink ARB_sparse_texture
- d3d12 GLES3.1 (shader storage buffers, images, compute, indirect draw, draw params, ARB_framebuffer_no_attachments, ARB_sample_shading, and GLSL400)
- radeonsi, zink ARB_sparse_texture2
- zink EXT_memory_object, EXT_memory_object_fd, EXT_semaphore, EXT_semaphore_fd
- anv VK_VALVE_mutable_descriptor_type
- Vulkan 1.3 on RADV,Anv.
- radeonsi, zink ARB_sparse_texture_clamp
Bug fixes
---------
- anv: Unable to import I915_FORMAT_MOD_Y_TILED surfaces produced by iHD vaapi driver
- anv doesn't always resolve aux buffers with private bindings on transition to external queue
- Redraw freeze after upgrade to Xwayland 21.1.3
- [ANV] Rendering corruption in DOOM Eternal
- lavapipe: dEQP-VK.spirv_assembly.instruction.compute.float16.arithmetic_3.step fails
- radv: When using VS+PS only, primitive ID is mixed up after NGG culling
- [22.0.0_rc{1,2}] radeonsi: broken support for HD7850 (radeon 0000:0b:00.0: ring 0 stalled for more than...)
- RADV: Texture seams in The Evil Within 2 (regression)
- ANV: Bad output from TransformFeedback . Regression from Mesa 21. Something to do with VB+XFB -> VB+XFB dependency?
- radv: CullDistance fail
- Changing the buffer modifer via Wayland dmabuf-feedback apparently does not reliably reset the buffer age to 0
- radv: causes hang untl gpu reset on navy_flounder
- Crocus related crashes when running QT apps
- Please add missing ray tracing Vulkan extensions to features.txt
- [anv][bisected][regression][tgl] dEQP-VK.dynamic_rendering.suballocation.multisample_resolve.* failures
- radv/aco: DXVKs strict float emulation causes black screen/graphical corruption on RDNA1
- intel: env vars doc out of date
- [REGRESSION][BISECTED] iris: Qutebrowser/QtWebEngine sporadically flashes the window in white
- Flickering Intel Uhd 620 Graphics
- Vulkan Wayland WSI returns empty surface formats
- [radeon, rs690] piglit spec\@glsl-1.10\@execution\@built-in-functions\@fs-atan-float + 10 other 'atan' tests crash (mesa-22dev)
- [bisected] artifacts in vaapi h.264 playback
- [bisected] artifacts in vaapi h.264 playback
- radv: msaa regression
- [DG2] dEQP-GLES3.functional.shaders.derivate.fwidth* failures
- FIFO present mode doesn't wait
- Dota2 lockup wsi/x11: Avoid a class of deadlocks in the WSI queue thread
- [vulkan][intel] Implement VK_VALVE_mutable_descriptor_type
- Broken Terraria & Glitches in Forza Horizon 4
- radv: Q2RTX with cswave32 crashes the GPU
- CopelliaSim crashes on adding vision sensor to a scene on Ubuntu 20+, runs fine on Ubuntu 18.04
- radv: renderpass regression
- Dirt Rally: Flickering glitches on certain foliage going from Mesa 21.2.5 to 21.3.0
- FrontFacing input is broken on Intel/Vulkan
- glGetActiveUniform failing with GL_INVALID_VALUE for no reason
- llvmpipe: Unimplemented get_driver_uuid/get_device_uuid causes segfaults in e.g. Wine
- All vulkan apps terminate with VK_ERROR_DEVICE_LOST
- Texture rendering broken on Vega 56, probably due to MR 14171 (tested on Battlefield 1 / vkd3d-proton)
- Major graphic distortions with RADV in DX11/DX12 with Mesa-git as of January 12th 2022
- Setting mesa_glthread to true crashes Minecraft when Sodium optimisation mod is enabled.
- ANV: deviceUUID assumes a single device per system
- MESA Overlay Vulkan layer version
- [radeonsi, regression, bisected]: Rendering issues with Factorio
- Distorted graphics when running Battle.net app under Wine with Radeon hardware
- [r300g] Battle.net app window content rotated and stretched
- Freedreno reporting 10 MB of Video memory that's causing issues with WineD3D on Poco F1
- Panfrost - RK3399 - FACTORIO - glitches everywhere
- Baldurs Gate 3 (Patch 6) - ribbon-like artifacts on textures
- mesa >= 21.x (with llvmpipe) will break the game JVGS
- Game Starsector crashes under certain circumstances with mesa 21.3.+
- FreeSpace models incorrectly rendered on Polaris cards, causing system freeze
- ci: Test with Skqp
- ci: Test with Skqp
- Metro Exodus (native) fails to launch
- Poor performance on RX 580 (Polaris20)
- VAAPI H.264 encoding is slow on Polaris vs. HEVC and Windows AMF
- v3dv: Missing gem handle reference tracking logic
- Incomplete evaluation of nested DEFINE macros
- [r300g, bisected] piglit glsl-fs-discard-04 fails
- Panfrost G52 Firefox terrible glitches on youtube playback
- prim restart broken on crocus by prim restart fix for d3d12
- RADV: Invalid fast clear triggered
- Assassin's Creed Syndicate crashes with Mesa 21.3.0+ ACO
- anv: dEQP-VK.graphicsfuzz.spv-stable-pillars-volatile-nontemporal-store fails
- seg-fault with soft fp64 on iris after register allocation change
- Taking RGP traces on VANGOGH results in hangs
- Flickering and blackscreen on Mpv and Clapper (and also low performance on glxgears)
- intel/vec4: Rework texture handling to not use \`ir_texture_opcode`
- lavapipe leaks introduced in eb7eccc76f0a02b3a3291adaa39788b157979dc5
- DXVK SIGBUS with Turnip on Poco F1 at loading to open world.
- RADV: IsHelperInvocationEXT query is not considered volatile in ACO
- [GraphicsFuzz] dEQP-VK.graphicsfuzz.stable-binarysearch-tree-nested-if-and-conditional
- [bisected] Mesa 21.3.x breaks GBM with NVIDIA closed source driver 495.44
- [DG2] dEQP-GL[45|ES31].functional.shaders.builtin_functions.pack_unpack.packhalf2x16_compute fail
- Steam reports fatal error with missing OpenGL GLX extension not supported by display since December 6th
- SNK HEROINES Tag Team Frenzy stuck on white screen
- Run-time dependency dri found: NO
- Rise of the Tomb Raider segfault
- glsl/compiler: suspcious snippet of code (Unused variable)
- GPU Crash in Yuzu 6600xt 5.15
- anv: gfxbench 5.0 vulkan fails on android
- [spirv-fuzz] lower_trivial_continues_block: Assertion \`!first_instr || instr_is_continue(first_instr)' failed.
- [RADV] Crash in Metro Exodus in Caspain chapter and Sam's Story
- [nir][radv] more undefined shifts caught by gcc's sanitizer
- NIR validation failed after nir_copy_prop
- lima: Corrupted Android-12 UI on Allwinner A64
- RADV/ACO: Rendering glitches in Forza Horizon 5 windshields
- NV_pixel_buffer_object extension can be available in a GLES2 context but the associated glGet constants don't work
- ThreadSanitizer: data races inside libvulkan_radeon.so
- [radeonsi] Commit b1b491cdbbac1ccb785f5eb1802006f76ec253f5 leads to memory leak
- dEQP-GLES31.*imulextended* compiling fp64 glsl 4.00 shader
- anv: vkMapMemory fails "Memory object already mapped" with VA-API (mpv --gpu-api=vulkan --hwdec=vaapi)
- RADV: crash in radv_GetPhysicalDeviceImageFormatProperties2
- RADV/ACO: Monster Hunter Rise Demo renders wrong results
- radv: Odd lack of implicit host memory invalidation
- Regression/Bisected: Crash in Godot games when steam overlay enabled
- RADV: IsHelperInvocationEXT query is not considered volatile in ACO
- ANV: error submitting with the same semaphore for wait and signal - regression?
- Vulkan does not work when 10-bit colors ( DefaultDepth 30) are enabled under Xorg on AMD/RADV
- [TGL+] anv: some dEQP-VK.drm_format_modifiers.* fails
- radv: SQTT generates trace with no data
- Mesa 21.3rc3 - compile failure
- iris: subslice assertion failure on some hardware during initialization
- Final Fantasy V (Old version): Random text characters are not displayed
- Diagonal rendering artifacts in Tomb Raider
- vkCmdSetViewport sometimes ignored on Ivy Bridge, Haswell
- dota2 black squares corruption
- [hsw][bisected][regression] dEQP-VK.reconvergence.*nesting* failures
- Piglit.spec.arb_shader_image_load_store.compiler.expression-allowed-1d_vert failed.
- anv: dEQP-VK.wsi.wayland.<various> failures
- freedreno: Crash in fd_bo_cache_alloc()
- radv_android.c: build errors due to commit 49c3a88
- dEQP-EGL.functional.sharing.gles2.multithread.* regression with Iris
- [Turnip] Forsaken Remastered rendering issue
- [radeonsi] Euro Truck Simulator 2: broken mimimap
- Old Linux Rocket League version failing to start on Poco F1.
- [regression][bisected] Launching Valheim OpenGL game leads to GPU Hang
- Android Meson build regression: hardware/system information apps crash on Raspberry Pi 4
- radv: format properties are broken with modifiers
- anv: dEQP-VK.graphicsfuzz.cov-multiple-one-iteration-loops-global-counter-write-matrices fails
Changes
-------
Aaron Watry (2):
- clover: implement CL_IMAGE_BUFFER
- clover/image: add dimension property
Adam Jackson (37):
- mesa/x11: Remove the swrast-classic-based fake libGL
- mesa: Remove unused _mesa_all_buffers_are_unmapped
- mesa: Remove unused _mesa_get_render_format
- mesa: Remove unused _mesa_DrawTexx{,v}
- mesa: Remove unused _check_*TexGen*OES
- mesa: Remove unused _mesa_apply_ci_transfer_ops
- mesa: Remove unused _mesa_compressed_image_address
- mesa: Remove unused _es_color4ub
- mesa: Remove unused _es_RenderbufferStorageEXT
- mesa: Remove unused _es_{,Get}TexGenfv
- mesa: Remove unused _vbo_current_binding
- mesa/vbo: Always use buffer objects for storage
- mesa/program: Dead code cleanup
- mesa: Remove unused execmem code
- mesa: Make _mesa_generate_mipmap_level static
- glapi: Remove remnants of EXT_paletted_texture and the imaging subset
- docs: Remove no-longer-accurate text about the xlib driver
- mesa: Remove unused _mesa_initialize_visual
- dri: Remove unused driContextSetFlags
- dri: Remove unused driUpdateFramebufferSize
- dri: Remove unused driGetRendererString
- glx: Fix GLX_NV_float_buffer fbconfig handling
- mesa: Remove unused _mesa_allow_light_in_model
- mesa: Remove unused _mesa_AllocTextureStorage_sw
- mesa: Remove unused _mesa_bind_texture
- mesa: Remove unused _mesa_format_fallback_rgbx_to_rgba
- mesa: Remove unused _mesa_get_linear_format_srgb
- mesa: Remove unused _mesa_convert_colors
- mesa: Remove unused _mesa_all_varyings_in_vbos
- mesa: Remove unused _mesa_delete_nameless_texture
- mesa/math: Remove unused m_translate.c
- mesa: Remove unused _mesa_is_alpha_to_coverage_enabled
- mesa: Remove unused _mesa_is_front_buffer_{draw,read}ing
- mesa: Remove unused _mesa_set_sampler_{filters,srgb_decode,wrap}
- mesa: Remove unused src/mesa/x86-64
- wsi/x11: Avoid a class of deadlocks in the WSI queue thread
- dri_interface: Remove the remaining DRI1 API definitions
Alejandro Piñeiro (20):
- v3dv/pipeline: don't clone the nir shader at pipeline_state_create_binning
- v3d/clif: add support for dumping GS shader state
- broadcom/compiler: remove unused macro and function definition
- v3d: remove unused include
- v3d: remove static v3d_start_binning
- gallium/u_blitter: clean up texcoords ZW when filling up just XY
- v3d,v3dv: move TFU register definition to a common header
- vulkan: move common format helpers to vk_format
- broadcom/compiler: make shaderdb debug output compatible with shaderdb's report tool
- meson: bump meson requirement to 0.53.0
- v3d: support for texture buffer objects
- v3d: add support for no buffer object bound
- v3d: restrict formats supported for PIPE_BIND_SHADER_IMAGE
- v3d: enable ARB_texture_buffer_object and ARB_texture_buffer_range
- broadcom/compiler: avoid unneeded sint/unorm clamping when lowering stores
- v3dv: simplify v3dv_debug_ignored_stype
- vulkan: return default string for undefined enum
- v3dv: remove unused v3dv_descriptor_map_get_texture_format
- v3dv: check correct format when load/storing on a depth/stencil buffer
- vc4/nir_lower_blend: update write mask when we update num components
Alex Xu (Hello71) (5):
- Use initial-exec TLS for glibc only, enable TLS elsewhere
- Auto-enable TLSDESC support
- meson: check for lld split TLSDESC bug (fixes #5665)
- Fix TSD stubs for non-initial-exec case (fixes #5667).
- meson: tlsdesc: minor reformatting, add comments
Alyssa Rosenzweig (179):
- panfrost: Don't allow rendering/texturing 48-bit
- panfrost: Detect implementations support AFBC
- panfrost,panvk: Use dev->has_afbc instead of quirks
- panfrost: Remove unused MIDGARD_NO_AFBC quirk
- panfrost: Fix gl_FragColor lowering
- panfrost: Workaround ISSUE_TSIX_2033
- panfrost: Add internal afbc_formats
- panfrost: Decompress for incompatible AFBC formats
- panfrost: Enable AFBC on v7
- panfrost: Remove ancient TODO
- panfrost: Remove duplicated #if
- panfrost: Rename depth bias fields
- panfrost: Add alpha_zero_nop/one_store predicate
- panfrost: Test alpha_zero_nop/one_store predicates
- panfrost: Pass through alpha_zero_nop/one_store
- panvk: Pass through alpha_zero_nop/one_store flags
- nir/lower_blend: Use correct clamp for SNORM
- mesa: Require MRT support for GL3/ES3
- nir/lower_pntc_ytransform: Support PointCoordIsSysval
- pan/bi: Fix typo in helper invocation analysis
- pan/bi: Make bi_index padding explicit
- pan/bi: Add secondary staging count
- pan/bi: Add second destination to TEXC
- pan/bi: Add bifrost_texture_operation_mode enum
- pan/bi: Add bifrost_dual_texture_operation struct
- pan/bi: Use BIFROST_TEXTURE_OPERATION_SINGLE enum
- pan/bi: Support dual texture scheduling
- pan/bi: Add bi_dual_tex_as_u32 helper
- pan/bi: Fix up dual texturing registers
- pan/bi: Add dual texture fusing pass
- pan/bi: Test dual texture fusing
- pan/bi: Enable dual texture fusing pass
- pan/mdg: Remove duplicate compiler option
- pan/bi: Annotate Valhall instructions with units
- pan/bi: Add full form of Valhall MUX instruction
- pan/bi: Add sqrt form of Valhall FREXPM
- pan/bi: Add Valhall's special FMA_RSCALE instructions
- pan/bi: Add XML for assembling Valhall image stores
- pan/bi: Forbid unaligned staging registers on Valhall
- pan/bi: Confirm IDP unit on Valhall
- pan/bi: Suppress uniform validation for LD_BUFFER
- pan/bi: Add XML for LD_BUFFER
- asahi: Rename PANDECODE->AGXDECODE
- asahi: Deflake addresses
- asahi: Allocate special scratch buffers
- asahi: Fix agx_map_* structures
- asahi: Remove silly magic numbers
- asahi: Remove obnoxious workaround
- asahi: Fix BIND_PIPELINE sizing and alignment
- panfrost: Collapse 0 parameters in drm-shim
- panfrost: Handle AFBC_FEATURES in drm-shim
- panfrost: Add empty tile flags to GenXML
- panfrost: Only build GPU indirect kernels for v7
- pan/bi: Link with Valhall disassembler
- pan/va: Only hex dump when verbosely disassembling
- panfrost: Add "hex" type to GenXML
- panfrost: Add XML for Valhall data structures
- panfrost: Zero initialize disassembler stats
- panfrost: Don't shadow Mesa's fui()
- panfrost: Add Valhall support to pandecode
- pan/va: Improve assembler unit test output
- pan/va: Disambiguate sign of CSEL instructions
- pan/va: Add more assembler tests
- pan/va: Make LD_VAR index more fine-grained
- pan/va: Add sample/update modes to LD_VAR
- pan/va: Add table parameter to LD_ATTR_IMM
- pan/mdg: Fix definition of UBO unpack
- docs/macos: Update for recent Mesa changes
- pan/indirect_draw: Don't upload garbage UBO
- pan/indirect_draw: Split out update_dcd
- pan/indirect_draw: Support IDVS jobs
- panfrost: Track preloaded registers
- panfrost: Set preload descriptor more accurately
- panfrost: Remove unused shader info bits
- panfrost: Fix Secondary Shader field
- panfrost: Treat IDVS jobs as tiler for scoreboarding
- panfrost: Add IDVS fields to shader_info
- panfrost: Split out regalloc/preload helpers
- panfrost: Remove regalloc from v6.xml
- panfrost: Set secondary_* fields for IDVS
- panfrost: Extract panfrost_draw_emit_vertex_section
- panfrost: Emit IDVS jobs
- panfrost: Extract panfrost_batch_skip_rasterization
- panfrost: Skip rasterizer discard draws without side effects
- panfrost: Align instance size for IDVS
- panfrost: Add panfrost_compile_inputs->no_idvs option
- pan/bi: Extract bi_finalize_nir
- pan/bi: Allow UBO pushing to run multiple times
- pan/bi: Add IDVS mode to bi_context
- pan/bi: Remove the "wrong" stores in IDVS variants
- pan/bi: Split out varying store paths
- pan/bi: Use position shader ST_CVT path
- pan/bi: Add helper to decide if IDVS should be used
- pan/bi: Specialize shaders for IDVS
- pan/va: Remove extra LD_VAR_IMM_F32 source
- pan/va: Rename LEA_ATTR to LEA_VARY
- pan/va: Add .signed bit to right shift instructions
- pan/va: Generalize LD_VAR_IMM_* to support flat varyings
- pan/bi: Don't call useless NIR passes
- panfrost: Make pan_merge macro more robust
- pan/bi: Don't read base for combined stores
- pan/mdg: Don't read base for combined stores
- nir: Eliminate store_combined_output_pan BASE
- panfrost: Simplify blend lowering pass
- nir: Extend store_combined_output_pan
- panfrost: Combine dual source blends
- panfrost: Remove pan_nir_reorder_writeout
- pan/bi: Use is_staging_src helper
- pan/bi: Allow an extra staging source
- pan/bi: Use fused dual source blending
- pan/bi: Fix load_const of 1-bit booleans
- gallium/util: Add pixel->blocks box helper
- lima,panfrost: Correct pixel vs block mismatches
- v3d: Use u_box_pixels_to_blocks helper
- vc4: Use u_box_pixels_to_blocks helper
- pan/decode: Remove hierarchy mask check
- pan/decode: Include addresses for jobs
- pan/decode: Track mmaps with a red-black tree
- pan/decode: Add hexdump helper
- pan/decode: Add pandecode_dump_mappings
- pan/decode: Decode Valhall surface descriptor
- panfrost: Remove FBD pointer on Bifrost XML
- pan/decode: Don't print Preload twice
- pan/decode: Disassemble Bifrost quietly
- pan/bi: Schedule around blend shader register clobbering
- asahi: Fake more CAPs with dEQP hacks mode
- asahi: Warn when hacks mode is enabled
- asahi: Add XML for unknown 0x4a packet
- asahi: Break out Fragment Parameters word
- asahi: Rectify confusing XML comment
- asahi: Route sample mask from shader
- agx: Add sample_mask instruction
- agx: Handle discard intrinsics
- agx: Lower UBO loads to use per-element indexing
- panfrost: Use u_reduced_prim for primitive checks
- panfrost: Only cull polygons
- pan/bi: Pull BLEND precolouring out of per-dest loop
- pan/decode: Fix missing newlines in error messages
- panfrost: Remove HAS_SWIZZLES quirk
- panfrost: Remove MIDGARD_SFBD quirk
- panfrost: Remove MIDGARD_BROKEN_FP16 quirk
- panfrost: Remove NO_TILE_ENABLE_MAP quirk
- panfrost: Remove MIDGARD_{NO_TYPED_BLEND_STORES,MISSING_LOADS}
- panfrost: Don't set NO_BLEND_PACKS on Bifrost
- panfrost: Simplify format class selection
- panfrost: Remove NO_BLEND_PACKS quirk
- panfrost: Make primary_shader boolean
- panfrost: Fix v9 "Stencil from shader" bit
- panfrost: Don't pass quirks to pan_lower_framebuffer
- panfrost: Centralize our model list
- panfrost: Replace panfrost_model_name with model->name
- panfrost: Make the GPU allowlist implicit
- panfrost: Get performance counters from table
- pan/bi: Clean up quirks
- pan/bi: Assume future Valhall is 16-wide warps
- panfrost: Add Mali-G51 support
- docs/panfrost: Add new Midgard/Bifrost chips
- pan/va: Add .absolute bit to BRANCHZI
- pan/va: Add missing <clamp/> to V2F32_TO_V2F16
- pan/va: Add missing fields to LD_TILE
- pan/va: Test LD_TILE assembly
- pan/va: Fix MKVEC.v2i16 lane select
- pan/va: Fix lane select for [US]_TO_[USF]32
- pan/va: Vectorize 8->16-bit conversions
- pan/va: Add 2-channel 8-bit swizzles for conversions
- pan/va: Add lots of swizzle assembler tests
- pan/va: Handle shift lanes in assembler
- pan/va: Add ARM_shader_framebuffer_fetch asm test
- pan/bi: Avoid \*FADD.v2f16 hazard in optimizer
- pan/bi: Avoid \*FADD.v2f16 hazard in scheduler
- pan/bi: Lower swizzles on CSEL.i32/MUX.i32
- panvk: Use more reliable assert for UBO pushing
- pan/bi: Specialize IDVS in NIR
- panfrost: Fix FD resource_get_handle
- panfrost: Fix set_sampler_views for big GL
- panfrost: Handle NULL sampler views
- panfrost: Handle NULL samplers
- panfrost: Flush resources when shadowing
- panfrost: Push twice as many uniforms
Andreas Baierl (1):
- lima: Fix drawing wide lines
Antonio Caggiano (2):
- gallium: add a link shader hook
- virgl: Link shader program
Anuj Phogat (7):
- genxml/gen125: Update 3DSTATE_TE fields
- iris: Enable geometry distribution
- anv: Enable geometry distribution
- iris: Enable tessellation redistribution
- anv: Enable tessellation redistribution
- anv, iris: Add Wa_16011773973 for DG2
- anv, iris: Add Wa_22011440098 for DG2
Bas Nieuwenhuizen (73):
- radv: Fix modifier property query.
- radv: Add bufferDeviceAddressMultiDevice support.
- amd/rgp: Use VGH clocks for RGP workaround.
- radv: Disable coherent L2 optimization on cards with noncoherent L2.
- ci: Bump libdrm for the android image.
- ci: Add libelf to the Android image.
- amd/addrlib: Use alternative ADDR_C_ASSERT definition.
- radv: Remove android build warning.
- radv: Always use linker script when possible.
- aco: Remove useless sub-expr.
- meson: Check arguments before adding.
- amd/addrlib: Ignore self-assign warnings.
- util: Add support for clang::fallthrough.
- ci: Add RADV to Android CI.
- radv: Fix memory corruption loading RT pipeline cache entries.
- radv: Add more checking of cache sizes.
- radv: Don't crash if VkExternalImageFormatProperties isn't provided.
- radv: Avoid using a new subpass for ds clears.
- radv: Stop using a subpass for color clears.
- radv: Remove the skipping of framebuffer emission if we don't have a framebuffer.
- radv: Set RB+ registers correctly without framebuffer.
- radv: Don't emit framebuffer state if there is no renderpass active.
- radv: Add named constants for max framebuffer width/height.
- radv: Do not use VK_FORMAT_UNDEFINED in meta passes.
- radv: Support VK_KHR_dynamic_rendering for pipeline creation.
- radv: Support Begin/EndRendering.
- radv: Support dynamic rendering inheritance info.
- radv: Expose the VK_KHR_dynamic_rendering extension.
- radv/amdgpu: Add a syncobj per queue.
- radv/winsys: Add queue family param to submit.
- radv/amdgpu: Add support for submitting 0 commandbuffers.
- radv: Use the winsys 0 cmdbuffer submission support.
- radv: Set up ETC2 emulation wiring.
- radv: Use the correct base format for reintepretation.
- radv: Add extra plane for decoding ETC images with emulation.
- radv: Add ETC2 decode shader.
- radv: Deal with border colors with emulated ETC2.
- radv: Expose the ETC2 emulation.
- radv/amdgpu: Only wait on queue_syncobj when needed.
- radv: Add safety check for RGP traces on VanGogh.
- radv: Use correct buffer size for query pool result copies.
- radv: Skip wait timeline ioctl with 0 handles.
- radv/amdgpu: Use VkResult for wait_timeline_syncobj.
- vulkan/runtime: Refactor queue submit to take an argument struct.
- vulkan/runtime: Add sparse bind support.
- radv: Use dispatch table for QueueWaitIdle in the SQTT layer.
- radv: Use dispatch table for wsi_display.c
- radv: Use vulkan runtime for device lost.
- meson: Bump libdrm_amdgpu version req to 2.4.109.
- radv: Initialize vk device drm fd.
- radv: Add function to allow WSI signalling fences/semaphores.
- radv: Set horizontal sync types.
- radv: Use vk_command_buffer for preambles.
- radv: Add new cs_submit2 winsys call.
- radv: Add new submission path for use by the common sync framework.
- radv: Delete lots of sync code.
- radv: Remove syncobj reset mechanism.
- radv: Rename submit2->submit.
- radv: Remove dependencies on vk_common entrypoints.
- radv: Set optimal copy alignment to 1.
- radv: Add common entrypoint dependency.
- radv: Use MAX_PUSH_CONSTANTS_SIZE for saved push constants.
- radv: Use 16-bits to store push constant indices.
- radv: 256 byte push constants.
- Revert "nir/algebraic: distribute fmul(fadd(a, b), c) when b and c are constants"
- util/fossilize_db: Fix double free in error handling.
- vulkan/wsi/display: Add common implementation of VK_EXT_display_control.
- anv: Remove VK_EXT_display_control support in favor of common impl.
- radv: Remove VK_EXT_display_control support in favor of common impl.
- radv/amdgpu: Fix handling of IB alignment > 4 words.
- radv/amdgpu: Use aligned sizing for IB buffers.
- radv: Handle SDMA for padding.
- radv: Fix preamble argument order.
Biju Das (1):
- kmsro: Add 'rcar-du' driver support
Boris Brezillon (16):
- vulkan: Fix weak symbol emulation when compiling with MSVC
- vulkan: Set unused entrypoints to vk_entrypoint_stub when compiling with MSVC
- vulkan: Fix entrypoint generation when compiling for x86 with MSVC
- microsoft/compiler: Fix dxil_nir_create_bare_samplers()
- gallium/d3d12: Don't use designated initializers
- d3d12: Fix "use of designated initializers requires at least '/std:c++20'" error
- microsoft/compiler: Fix sampler/texture array emission
- microsoft/compiler: Skip images in redirect_texture_derefs()
- microsoft/compiler: textureLoad() doesn't take a LOD on MS textures
- microsoft/spirv_to_dxil: Remove dead variables after the struct split pass
- microsoft/spirv_to_dxil: Allow dumping NIR
- microsoft/spirv_to_dxil: Support [un]conditional YZ-flip
- microsoft/spirv_to_dxil: Discard PSIZ accesses
- microsoft/spirv_to_dxil: Lower atomics to their dxil variants
- microsoft/spirv_to_dxil: Make sure the SampleMask is a uint
- microsoft/spirv_to_dxil: Define idep_libspirv_to_dxil
Boyuan Zhang (5):
- radeon/vcn: update vcn1 enc interface
- radeon/vcn: update vcn2 enc interface
- radeon/vcn: remove redundancy for vcn2 enc
- radeon/vcn: combine encode params func
- radeon/vcn: combine session init func
Caio Oliveira (89):
- nir/schedule: Handle nir_intrisic_scoped_barrier
- nir: Add nir_var_mem_image
- intel/fs: Consider nir_var_mem_image for TGM fences
- anv: Use nir_foreach_image_variable
- spirv: Use nir_var_mem_image
- intel/compiler: Rename vec4 test fixtures
- intel/compiler: Build all tests in a single binary
- spirv: Use a single binary for gtests
- nir: Use a single binary for gtests
- util: Consolidate existing gtests in a single binary
- util: Move tests in single file directories to tests/
- util: Convert u_atomic_test to use gtest
- util: Convert blob_test to use gtest
- util: Convert mesa-sha1_test to use gtest
- util: Convert rb_tree_test to gtest
- util: Convert roundeven_test to use gtest
- util: Convert sparse array multithread test to use gtest
- util: Move test sources to tests/ directory
- intel/compiler: Add helpers to select SIMD for compute shaders
- intel/compiler: Use SIMD selection helpers for CS
- intel/compiler: Use SIMD selection helpers for variable workgroup size
- intel/compiler: Don't use SIMD larger than needed for workgroup
- anv: Get rid of "may be used initialized" warning in anv_QueueSubmit2KHR
- anv: Make shaders array in anv_graphics_pipeline fit Task/Mesh
- anv: Process FS last when compiling graphics pipeline
- intel/compiler: Make brw_nir_populate_wm_prog_data() static
- intel/compiler: Use gl_shader_stage_uses_workgroup() helpers
- .mailmap: Simplify my name
- intel/genxml: Add Mesh Shading structures
- intel/genxml: Inline the BODY structs into the instructions
- intel/dev: Add an intel_device_info::has_mesh_shading bit
- intel/blorp: Add option to emit packets that disable Mesh
- gtest: Add mesa-gtest-extras.h with array ASSERT/EXPECT macros
- util: Change blob_test to use macro from mesa-gtest-extras.h
- pan/bi: Make some headers compilable with C++
- pan/bi: Use gtest for test-scheduler-predicates
- pan/bi: Use gtest for test-packing
- pan/bi: Use gtest for test-pack-formats
- pan/bi: Use gtest for test-optimizer
- pan/bi: Use gtest for test-constant-fold
- pan/bi: Drop unused test helpers
- util/ra: Add simple test for register set serialization
- util/ra: Fix deserialization of register sets
- gtest: Fix output of array ASSERT/EXPECT macros
- intel: Add INTEL_DEBUG=task,mesh
- intel/compiler: Properly lower WorkgroupId for Task/Mesh
- intel/compiler: Handle per-primitive inputs in FS
- intel/compiler: Don't stage Task/Mesh outputs in registers
- intel/compiler: Don't lower Mesh/Task I/O to temporaries
- intel/compiler: Add structs to hold TUE/MUE
- intel/compiler: Make MUE available when setting up FS URB access
- intel/compiler: Export brw_nir_lower_simd
- intel/compiler: Add backend compiler basics for Task/Mesh
- intel/compiler: Lower Task/Mesh local_invocation_{id,index}
- intel/compiler: Implement Task Output and Mesh Input
- intel/compiler: Implement Mesh Output
- util: Convert cache test to use gtest
- util: Use ralloc for strings in cache test
- intel/compiler: Use a struct for brw_compile_tcs parameters
- intel/compiler: Use a struct for brw_compile_tes parameters
- intel/compiler: Use a struct for brw_compile_gs parameters
- intel/compiler: Use a struct for brw_compile_bs parameters
- nir: Initialize nir_register::divergent
- meson: Bump version required for gtest protocol
- Revert "nir: disable a NIR test due to undebuggable & locally unreproducible CI failures"
- ci/windows: Remove line numbers of SPIR-V errors in spirv2dxil tests
- spirv: Update headers and metadata to SPIR-V 1.6, revision 1
- nir: Handle volatile semantics for loading HelperInvocation builtin
- spirv: Identify non-temporal image operand added in SPIR-V 1.6
- spirv: Use the incorporated names
- anv/blorp: Split blorp_exec into a render and compute
- anv: Refactor dirty masking in cmd_buffer_flush_state
- anv: Simplify assertions related to graphics stages
- anv: Add another case to INTEL_DEBUG=pc output
- anv: Use pending pipe control mechanism in flush_pipeline_select()
- anv/blorp: Apply pending pipe flushes after PIPELINE_SELECT
- intel/fs/xehp: Add unit test for handling of RaR deps across multiple pipelines.
- anv: SPIR-V 1.6 shaders imply ALLOW_VARYING_SUBGROUP_SIZE
- anv: Fix subgroupSupportedStages physical property
- intel: Only reserve space for Compute Engine out of URB in Gfx12LP
- intel/compiler: Have specific mesh handling in calculate_urb_setup()
- intel/compiler: Merge Per-Primitive attribute handling in Mesh case
- compiler, intel: Add gl_shader_stage_is_mesh()
- intel: Add INTEL_URB_DEREF_BLOCK_SIZE_MESH
- intel/common: Add helper for URB allocation in Mesh pipeline
- anv: Add boilerplate for VK_NV_mesh_shader
- anv: Implement Mesh Shading pipeline
- intel/dev: Enable Mesh Shading for DG2
- anv: Add experimental support for VK_NV_mesh_shader
Caleb Callaway (2):
- vulkan/overlay: support Vulkan 1.2
- vulkan/overlay: revise and reformat README
Carsten Haitzler (3):
- panfrost: Add GPU G76 to the set of known ids
- kmsro: Add komeda DPU
- panfrost: Don't double-free when handling error for unsupported GPU
Charles Baker (5):
- zink: Enable VK_KHR_image_format_list for VK_KHR_imageless_framebuffer
- zink: Output PackHalf2x16 to uint not float
- zink: Avoid redundant cast to uint on PackHalf2x16 result
- zink: Set vertex binding stride without dynamic state extensions
- Revert "zink: handle vertex buffer offset overflows"
Charles Giessen (10):
- radv: Update description of vk_icdNegotiateLoaderICDInterfaceVersion
- v3dv: Update LoaderICDInterfaceVersion to v4
- panvk: Export vk_icdGetPhysicalDeviceProcAddr
- freedreno, tu: Export vk_icdGetPhysicalDeviceProcAddr
- radv: Update LoaderICDInterfaceVersion to v5
- panvk: Update LoaderICDInterfaceVersion to v5
- anv: Update LoaderICDInterfaceVersion to v5
- lavapipe: Update LoaderICDInterfaceVersion to v5
- freedreno, tu: Update LoaderICDInterfaceVersion to v5
- v3dv: Update LoaderICDInterfaceVersion to v5
Charmaine Lee (1):
- mesa: fix misaligned pointer returned by dlist_alloc
Cherser-s (1):
- radv: handle VK_DESCRIPTOR_TYPE_SAMPLER in VK_VALVE_mutable_descriptor_type extension
Chia-I Wu (23):
- venus: fix vn_instance_wait_roundtrip when seqno wraps
- venus: prefer VIRTGPU_BLOB_MEM_HOST3D for shmems
- venus: fix vn_buffer_get_max_buffer_size
- venus: add vn_renderer_util.[ch]
- venus: add vn_renderer_shmem_pool
- venus: use vn_renderer_shmem_pool for reply shmems
- venus: add vn_cs_encoder_storage_type
- venus: add VN_CS_ENCODER_STORAGE_SHMEM_POOL for VkCommandBuffer
- venus: cache shmems
- venus: add some trace points
- virgl: disable texture uploads with copy transfers
- vulkan/wsi: add wsi_common_get_image
- anv,lavapipe,v3dv: use wsi_common_get_image
- freedreno/drm, turnip: set DRM_RDWR for exported dma-bufs
- venus: fix VK_KHR_driver_properties
- venus: format with clang-format
- venus: remember the memory bound to a swapchain image
- venus: handle VkBindImageMemorySwapchainInfoKHR
- vulkan/wsi/x11: fix x11_image_init return value on errors
- venus: updates to the doc
- turnip: respect buf->bo_offset in transform feedback
- glthread: call _mesa_glthread_BindBuffer unconditionally
- venus: update venus-protocol to 1.3.204
Christian Gmeiner (25):
- ci/etnaviv: add manual piglit testing
- ci/bare-metal: armhf: move BM_ROOTFS to generic place
- ci/etnaviv: armhf: switch to .baremetal-test-armhf
- ci/etnaviv: no need to force nir anymore
- ci/bare-metal: add .baremetal-test-arm64
- ci/bare-metal: switch to common .baremetal-test-arm64
- panfrost/ci: update piglit fails
- etnaviv/ci: update piglit fails
- i915g/ci: update piglit fails
- iris/ci: update piglit fails
- ci: Uprev piglit to af1785f31
- mesa: always support occlusion queries
- broadcom/ci: use .test-manual-mr
- vc4: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
- i915: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
- lima: remove not needed lie about PIPE_CAP_OCCLUSION_QUERY
- isaspec: Add support for special {:align=} field
- nir: make lower_sample_tex_compare a common pass
- nir/nir_lower_tex_shadow: support tex_instr without deref src
- etnaviv: make use of nir_lower_tex_shadow
- etnaviv: fix FRONT_AND_BACK culling
- etnaviv: add multiply_with_8 flag
- etnaviv: use bytes for read TX data
- etnaviv: add two new HI related perfmon counter
- etnaviv: add support for INTEL_blackhole_render
Clayton Craft (1):
- anv: don't advertise vk conformance on GPUs that aren't conformant
Connor Abbott (65):
- vk/format, v3dv: Add a vulkan -> pipe swizzle helper
- freedreno/fdl: Constify fdl6_get_ubwc_blockwidth()
- freedreno/fdl: Add mip_level to fdl_layout
- freedreno/fdl: Add fdl6_view
- tu: Use fdl6_view in tu_image_view and cross-check
- tu: Switch clear/blit to fdl6_view and cross-check
- tu: Remove cross-check scaffolding
- tu/clear_blit: Stop creating a franken-image for staging blits
- ir3/cse: Support mov instructions
- ir3: Use stp/ldp base offset for {load,store}_scratch
- tu/clear_blit: Move around copy_format()/tu6_plane_format()
- freedreno/a6xx: Rename GRAS_2D_BLIT_INFO
- tu: Emit GRAS_LRZ_MRT_BUF_INFO_0
- tu: Always write GRAS_LRZ_MRT_BUF_INFO_0
- freedreno/a6xx: Emit GRAS_LRZ_MRT_BUF_INFO_0
- ir3: Emit barriers for images again
- ir3: Don't emit barriers for make_available/make_visible
- ir3/spill: Mark root as non-spillable after inserting
- ir3/spill: Initial implementation of rematerialization
- tu: Enable subgroupBroadcastDynamicId
- tu: Add VK_KHR_buffer_device_address stubs
- tu: Expose Vulkan 1.2
- util/dag: Make edge data a uintptr_t
- util/dag: Add dag_add_edge_max_data
- ir3/sched: Rewrite delay handling
- ir3/postsched: Fix copy-paste mistake
- ir3/postsched: Handle sync dependencies better
- ir3/delay: Ignore earlier definitions to the same register
- ir3/postsched: Rewrite delay handling
- ir3/postsched: Only prefer tex/sfu if they are soft-ready
- ir3: Stop inserting nops during scheduling
- ir3/ra: Consider reg file size when swapping killed sources
- ir3/ra: Add missing asserts to ra_push_interval()
- ir3/spill: Support larger spill slot offset
- ir3/lower_pcopy: Fix shr.b illegal copy lowering
- ir3/lower_pcopy: Fix bug with "illegal" copies and swaps
- ir3/lower_subgroups: Fix potential infinite loop
- ir3/ra: Fix logic bug in compress_regs_left
- ir3: Bump type mismatch penalty to 3
- ir3: Introduce systall metric and new helper functions
- ir3: Use new (sy)/(ss) stall helpers in the compiler
- ir3/sched: Rename tex/sfu to sy/ss
- ir3/postsched: Rename tex/sfu to sy/ss
- ir3: Use (ss) for instructions writing shared regs
- ir3, freedreno: Add options struct for ir3_shader_from_nir()
- ir3: Pass shader to ir3_nir_post_finalize()
- ir3: Add wavesize control
- tu, ir3: Support runtime gl_SubgroupSize in FS
- tu: Implement VK_EXT_subgroup_size_control
- freedreno/fdl: Fix reinterpreting "size-compatible" formats
- nir: Reorder ffma and fsub combining
- freedreno/a6xx: Name texture descriptor bit
- tu/blit: Don't set CLAMPENABLE in sampler for 3d path
- tu: Report code size in pipeline statistics
- tu: Initial link-time optimizations
- nir/lower_subgroups: Rename lower_shuffle to lower_relative_shuffle
- nir: Add support for lowering shuffle to a waterfall loop
- ir3: Fix copy-paste mistakes in ir3_block_remove_physical_predecessor()
- ir3: Rewrite (jp) insertion
- ir3/cp: ir3: Prevent propagating shared regs out of loops harder
- ir3,tu: Enable subgroup shuffles and relative shuffles
- ir3/spill: Fix simplify_phi_nodes with multiple loop nesting
- ir3: Use CAN_REORDER instead of NON_WRITEABLE
- ir3: Don't always set bindless_tex with readonly images
- ir3/nir: Fix 1d array readonly images
Corentin Noël (1):
- virgl: Disable cache for VIRGL_BIND_SAMPLER_VIEW
Cristian Ciocaltea (12):
- ci: Uprev deqp-runner to 0.11.0
- ci: Support building and installing deqp-runner from source
- ci: Do not remove cmake
- ci: Create results folder before starting virgl_test_server
- virgl/ci: Force crosvm error when exit code file is missing
- virgl/ci: Prevent static link of virglrenderer inside crosvm
- virgl/ci: Do not hide crosvm output messages
- virgl/ci: Fix identification of dEQP binary paths
- iris/ci: Fix whl dEQP expectations
- iris/ci: Fix piglit tests expectations on amly
- panfrost/ci: Fix piglit tests expectations on G52
- freedreno/ci: Fix dEQP tests expectations on A530
Daniel Schürmann (22):
- nir/fold_16bit_sampler_conversions: skip sparse residency tex instructions
- aco: add more D16 load/store instructions to RA and validator
- aco: workaround GFX9 hardware bug for D16 image instructions
- aco: implement D16 texture loads
- radv: use nir_fold_16bit_sampler_conversions()
- aco/optimizer: fix fneg modifier propagation on VOP3P
- aco: change fneg for VOP3P to use fmul with +1.0
- aco/optimizer: propagate and fold inline constants on VOP3P instructions
- nir/opt_algebraic: lower fneg_hi/lo to fmul
- aco/ra: fix get_reg_for_operand() in case of stride mismatches
- aco: don't allow SDWA on VOP3P instructions
- aco/optimizer: keep instr_mod_labels after applying extract
- aco/optimizer: apply extract from p_extract_vector
- aco/optimizer: optimize extract(extract())
- aco/optimizer: apply extract from subdword p_split_vector
- aco: use explicit zero-padding for 64bit image loads in expand_vector()
- aco: use p_create_vector(v2b,v2b) in get_alu_src_vop3p()
- aco: don't split VOP3P definitions
- aco: validate VOP3P opsel correctly
- nir: refactor nir_opt_move
- nir/opt_if: merge two break statements from both branch legs
- nir/opt_if: also merge break statements with ones after the branch
Daniel Stone (10):
- CI: Disable Windows jobs
- Revert "CI: Disable Windows jobs"
- ci: Use common build script for libwayland
- ci: Consistently build Wayland and protocols
- ci: Upgrade to libdrm 2.4.109
- zink/ci: Add GL4.6 tessellation flake
- CI: Don't stream wget directly into bash
- Revert "gitlab-ci: disable radv-fossils"
- Revert "ci: disable vs2019 windows build"
- egl/wayland: Reset buffer age when destroying buffers
Danylo Piliaiev (54):
- ir3/freedreno: account for component in build_tessfactor_base
- turnip: add support for dirconf
- driconf: add vk_dont_care_as_load workaround option
- turnip: implement vk_dont_care_as_load workaround
- drirc: Apply vk_dont_care_as_load workaround to Forsaken Remastered
- nir/lower_amul: do not lower 64bit amul to imul24
- ir3/freedreno: add 64b undef lowering
- freedreno/ir3: disallow immediate addr/offset for ldg/ldg.a
- freedreno/ir3: set proper dst size for {store,load}_{global,shared}_ir3
- freedreno/ir3: use stg.a/ldg.a only if offset is reg or doesn't fit
- isaspec: inherite parent's bitset gpu gen requirements
- nir/serialize: Make more space for intrinsic_op allowing 1024 ops
- ir3/ra: Check register file upper bound when updating preferred_reg
- tu: fix rast state allocation size on a6xx gen4
- freedreno/computerator: Support A660 gpu
- vulkan/util: Handle depth-only formats in vk_att_ref_stencil_layout
- ir3: print half-dst/src for ldib.b/stib.b
- freedreno/ir3: add a6xx global atomics and separate atomic opcodes
- freedreno/ir3: handle global atomics
- turnip: implement VK_KHR_buffer_device_address
- ir3/cp: Prevent setting an address on subgroup macros
- freedreno,tu: Limit the amount of instructions preloaded into icache
- ir3: Add gen4 new subgroup instructions
- ir3: Use getfiberid for SubgroupInvocationID on gen4
- ir3,turnip: Enable subgroup ops support in all stages on gen4
- ir3,turnip: Add support for GL_KHR_shader_subgroup_quad
- turnip: Fix operator precedence in address calculation macros for queries
- ir3: Be able to reduce register limit for RA when CS has barriers
- ir3: Assert that we cannot have enough concurrent waves for CS with barrier
- tu: fix workaround for depth bounds test without depth test
- ir3: New cat3 instructions
- nir/algebraic: Separate has_dot_4x8 into has_sdot_4x8 and has_udot_4x8
- ir3: Make nir compiler options a part of ir3_compiler
- tu,ir3: Implement VK_KHR_shader_integer_dot_product
- vulkan/wsi: create a common function to compare drm devices
- tu: implement wsi hook to decide if we can present directly on device
- tu: support VK_EXT_primitive_topology_list_restart
- tu: expose VK_KHR_copy_commands2
- tu: add reference counting for descriptor set layouts
- turnip/perfetto: Optimize timestamp synchronization
- turnip/trace: refactor creation and usage of trace flush data
- turnip: rename tu_drm_get_timestamp into tu_device_get_gpu_timestamp
- turnip/trace: process u_trace chunks on queue submission
- turnip/perfetto: handle gpu timestamps being non-monotonic
- turnip/trace: Delete unused start/end_resolve tracepoints
- turnip: Drop references to layout of all sets on pool reset/destruction
- tu: implement sysmem vs gmem autotuner
- freedreno: Update gmem/sysmem debug options to be in line with turnip
- tu: add debug option to force gmem
- ci/freedreno: properly test sysmem and gmem paths
- ir3: opt_deref in opt loop to remove unnecessary tex casts
- turnip: Unconditionaly remove descriptor set from pool's list on free
- ir3: Limit the maximum imm offset in nir_opt_offset for shared vars
- turnip: Use LATE_Z when there might be depth/stencil feedback loop
Dave Airlie (249):
- brw/nir: remove unused function prototypes.
- crocus: Delete the MI_COPY_MEM_MEM resource_copy_region implementation.
- llvmpipe: fix userptr for texture resources.
- clover: use max shader sampler view/images queries for clover.
- llvmpipe: swizzle image stores for CL BGRA
- radv: fence->user_ptr and ctx->fence_map are now totally unused.
- lavapipe: drop EXT_acquire_xlib_display
- vulkan/wsi: set correct bits for host allocations/exports for images.
- vulkan/include: import the video codec headers.
- vulkan: add new image types undef beta define to switch statements.
- meson: allow building with vulkan beta extensions enabled.
- llvmpipe: disable 64-bit integer textures.
- llvmpipe: fix compressed image sizes.
- intel/genxml: cleanup video xml collisions.
- intel/genxml: fix some missing address from the 75 xml
- intel/genxml: align QM field names across gens.
- intel/genxml: fix Picure->Picture typo
- intel/genxml: fix gen6 LD->VLD typo.
- intel/genxml: generate video headers
- util/vl: move gallium vl_vlc.h and vl_rbsp.h to shared code.
- mtypes: drop some context pointers that are unused now
- mesa: drop unused sw extensions init
- mesa/dd: burn a bunch of legacy driver interfaces down
- mesa/dd: remove some fbo driver hooks.
- mesa/dd: remove NewSamplerObject
- mesa/light: make _mesa_light static do_light.
- iris/ci: comment out iris-cml-traces-performance due to hw unavailable
- mesa/query: remove all the mesa queryobj code.
- mesa/syncobj: drop unused syncobj code.
- mesa: remove unused buffer object code.
- mesa/transformfeedback: remove unused transform feedback code
- mesa/barrier: remove unused barrier functions
- mesa/externalobject: delete unused functions
- intel/compiler: drop glsl options from brw_compiler
- meson: make mesa/tests/glx depend on gallium
- mesa/dd/st: move get strings pointer out of dd.h
- mesa/dd/st: direct wire queries/timestamp/condrender.
- mesa/st: direct call sync object functions
- mesa/st: move barriers to direct call
- mesa/st: move transformfeedback to direct calls
- mesa/st: move external objects to direct calls
- mesa/crocus/iris/blorp: drop minify macro in favour of u_minify
- mesa: move _mesa_varying_slot_in_fs to shader_enums
- anv: include futex.h explicitly in allocator.
- brw/compiler: drop mtypes.h from compiler
- intel/compiler: drop shader_info.h from compiler header
- intel/crocus: push main/macros.h out to the users
- mesa/st: move rendermode to direct call
- mesa/st: move Enable to direct call
- mesa/st: move query memory info to direct call
- mesa/st: move perf query to direct call
- mesa/st: move perfomance monitor to direct call
- mesa/dd: drop purgeable interface
- mesa/st: move fbo code to direct calling
- mesa/st: move texture APIs to direct st calls
- mesa/st: move Clear to new direct call
- mesa/st: move pixel/bitmap functions to direct call
- mesa/st: move clear/flush/finish to direct call
- mesa/st: move some context functions to direct calls
- mesa/st: move viewport to direct call
- mesa/st: move copy image sub data to direct call
- mesa/st: move program calls to direct call
- mesa/st: replace most of buffer funcs with direct calls.
- mesa/st: move blit function to direct call
- mesa/st: convert the non-optional egl image to direct calls
- mesa/st: convert DrawTex to direct call
- mesa/st: move msaa functions to direct call
- mesa/st: move compute to direct call
- mesa/st: move draw indirect and xfb to direct calls.
- mesa/st: drop Draw from dd function table.
- treewide: drop mtypes/macros includes from main
- crocus: cleanup bo exports for external objects
- mesa/st: merge st buffer object into GL
- mesa/st: start moving bufferobject alloc/free/reference to main.
- mesa: add a pipe_context pointer to gl context
- mesa: add a pointer to st_config_options to gl_context
- mesa: add pointer to cso_context to gl_context
- mesa/st: migrate most of state tracker buffer objects into mesa
- mesa/st: make static the buffer object funcs that can be
- mesa/bufferobj: rename bufferobj functions to be more consistent.
- bufferobj: make sw clear buffer static, move it and rename it
- bufferobj: inline buffer clearing
- bufferobj: inline page commitment
- bufferobj: cleanup subdata copies
- mesa/st: rename access flag to transfer flag function
- mesa/bufferobj: move invalidate buffer to optional feature
- mesa/st: remove st_cb_bufferobjects*
- mesa: inline mesa_initialize_buffer_object.
- mesa/st: refactor compute dispatch to fill grid info earlier.
- mesa/st: migrate compute dispatch to mesa
- mesa/compute: refactor compute launch to look more like draw
- mesa/st: move get sample position code to static in mesa
- mesa/st: move msaa functionality into multisample.c
- mesa/st: migrate barrier code into mesa
- mesa/st: move st strings handling into mesa
- mesa: drop texformat code this isn't used.
- mesa/st: use has_stencil_export instead of querying screen cap.
- mesa: drop unused new renderbuffer code.
- mesa: drop unused _mesa_new_program.
- mesa/dd: drop unused InvalidateBufferSubData entry.
- intel/compiler: remove gfx6 gather wa from backend.
- intel/compiler: don't lower swizzles in backend.
- intel/compiler: drop unused decleration
- mesa: remove StripTextureBorder option.
- mesa/draw: drop the multi draw with indices fallback.
- mesa/st: move default enabled extensions into mesa.
- mesa: drop optional tex/tnl maintains mode.
- mesa/st: merge NewDepthClamp state flag
- mesa/st: drop the new array driver state bit
- mesa/st: drop the rasterizer driver flags
- mesa/st: remove the viewport driver state flags
- mesa/st: drop NewBlend driver state flags
- mesa/st: drop new depth/stencil state bits
- mesa/st: drop poly stipple driver state bit
- mesa/st: drop new tess state driver bit
- mesa/st: drop new uniform driver state bit
- mesa: drop unused transform feedback state driver flags
- mesa/st: drop ssbo, image and sampler driver state flags bits
- mesa/st: drop scissor/window rect driver state bits
- mesa/st: drop clip plane driver state bits
- mesa/st: drop new framebuffer srgb driver state bit
- mesa/st: drop multisample mask/locations state drivers bits
- mesa/st: remove conditionals for driver state bits that are always set.
- intel/genxml/gen4-5: fix more Raster Operation in BLT to be a uint
- crocus: fail resource allocation properly.
- crocus: don't create staging resources > half aperture
- gallium/mesa: enhance PIPE_CAP_CLIP_PLANES to support override number
- crocus: set max clip planes to 6 for gen4.
- mapi: generate correct dispatch for EXT_draw_instanced
- glsl/linker: cleanup passing gl_context unnecessarily
- glsl: don't pass gl_context to lower shared references.
- glsl/linker: don't pass gl_context just for constants in xfb code
- glsl/linker: move more ctx->Consts to consts.
- glsl/linker: remove direct gl_context usage in favour of consts/exts/api
- glsl/linker: get rid of gl_context from link varyings
- glsl/linker: get rid of gl_context from uniform assign paths
- glsl/linker: get rid of gl_context from atomic counters paths
- glsl/linker: remove gl_context from check image resources
- glsl/linker: remove gl_context usage from more places.
- glsl/nir/linker: avoid passing gl_context inside gl_nir linker
- glsl/linker/uniform_blocks: don't pass gl_context around.
- glsl/linker: drop unused gl_context.
- glsl/linker: remove a bunch more gl_context references.
- glsl/nir: don't pass gl_context to the convertor routine.
- mesa/program: don't use CALLOC_STRUCT for instructions.
- mesa: rebalance the CALLOC_STRUCT/FREE force.
- mesa/st/perfmon: rebalance CALLOC_STRUCT/FREE
- mesa/st: get rid of ST_CALLOC_STRUCT use CALLOC_STRUCT
- intel/compiler: add clamp_pointside to vs/tcs/tes keys.
- crocus: only clamp point size on last stage.
- amd: move vcn decoding regs + structs to a common file.
- amd: move uvd decode definitions to common place
- mesa/\*: use an internal enum for tessellation primitive types.
- mesa/\*: add a shader primitive type to get away from GL types.
- includes: add windows lean and mean guard.
- nir: remove gl.h include from nir headers.
- intel/brw: drop gl header from the brw backend.
- glsl/parser: extract consts/exts/api out of context at start.
- mesa: drop unused context parameter to shader program data reference.
- mtypes: split gl extensions and consts out into a separate header
- mesa/mtypes: move matrix enums to shader_enums.h
- glsl: remove some deps on mtypes.h.
- mesa: move some gl shader types to shader_types.h.
- glsl: avoid rebuilding builtin functions on mtypes.h changes.
- glsl: move ast_function.cpp off mtypes.h
- mesa: move ast_to_hir.cpp off mtypes.h
- mtypes: move gl_linked_shader and gl_shader_program to new shader_types.h
- mtypes: move gl_program to shader_types.h
- mtypes: more gl_active_atomic_buffer to shader_types.h
- mtypes: move transform feedback internal structs to shader_types.h
- mtypes: move uniform shader types to shader_types.h
- mtypes: move bindless image/sampler objects to shader_types.h
- mtypes: move gl_shader_variable to shader_types.h
- glsl: move off mtypes.h in lots of places.
- glsl/fp64: move context.h dependent checks into main.
- glsl: drop some more context.h/mtypes.h interactions
- vbo: drop unused mtypes.h
- docs: update docs for new extension header.
- mesa: more mtypes.h cleanups
- mesa: split struct gl_config into it's own header.
- glsl: drop glheader.h include.
- mesa/st: merge memoryobjects code from st into mesa
- mesa/st: merge semaphore objects from st into mesa
- mesa/st: merge the syncobj code from st into mesa
- mesa/st: merge queryobj code from st into mesa.
- mesa/st: merge condrender code from st into mesa.
- mesa/st: merge st transform feedback object into gl one.
- mesa/st: merge transform feedback code from st into mesa
- mesa/st: merge perfmon object from st into mesa
- mesa/st: merge perfmon counters/groups objects from st into mesa
- mesa/st: merge perfmon groups init/cleanup from st into mesa
- mesa/st: move perfmon code from st into mesa
- mesa/st: cleanup last bits of st perfmon code.
- mesa/st: merge texture object/image structs into mesa
- mesa/st: merge texture obj/image alloc/free into mesa
- intel/perf: use a function to do common allocations
- meson: start building intel earlier.
- mesa/st: move intel blackhole noop enable to frontend
- mesa/st: remove st_context from debug callback
- mesa/st: migrate debug callback code into mesa
- mesa/st: drop last user of st_Enable.
- mesa/st: directly call the uuid get funcs.
- mesa/st: drop emit string marker device table entry.
- mesa/st: move pin l3 cache to direct check/call.
- mesa/dd: drop GetProgramBinaryDriverSHA1
- mesa/st: drop useless tex parameter calls.
- mesa/st: move st_TexParameter into mesa
- mesa/st: drop release all sampler views wrapper
- mesa/st/vdpau: direct call the vdpau functions.
- mesa/st: move evaluate depth values into mesa
- mesa/ctx: store screen pointer in ctx as well
- mesa/st: inline st_max_shader_compiler_threads
- mesa/st: move shader completion into mesa
- mesa/st: move memory query into mesa.
- mesa/st: drop some bindless wrappers
- mesa/st: drop lots of perfquery wrappers
- mesa/st: move perf query test to st_context, drop files.
- mesa/st: merge st_renderbuffer into gl_renderbuffer.
- mesa/st: move some renderbuffer code into mesa
- mesa/st: merge framebuffer objects from st to mesa
- mesa/st: move render/finish_render texture in to mesa.
- mesa/st: move validate/discard framebuffer into mesa
- mesa/st: move st_ReadBuffer functionality into mesa
- mesa/st: move DrawBufferAllocate into mesa.
- mesa/st: move st renderbuffer code into mesa renderbuffer
- mesa/st: move map/unmap renderbuffer code into mesa
- mesa/st: move st_new_renderbuffer_fb to manager
- mesa/st: move some fbo helpers around.
- mesa/st: fixup viewport drawable invalidation
- mesa/st: migrate blit code into mesa
- mesa/st: move last of renderbuffer functionality into mesa
- mesa/st: move renderbuffer format choosing wrapper into mesa.
- mesa/st: move manager colorbuffer interface to gl_context.
- mesa/st: move invalidate_on_gl_viewport to ctx
- mesa/st: move st_fb_orientation into a mesa function
- mesa: consolidate setting no error state and checking suid.
- mesa/st: collapse st_program into gl_program object.
- mesa/st: move new ati fragment shader to mesa
- mesa/st: move st_vertex_program to gl_vertex_program in mesa
- mesa/st: move program new/delete into mesa
- mesa/st: refactor program translation into one file.
- crocus: find correct relocation target for the bo.
- crocus: fix leak on gen4/5 stencil fallback blit path.
- draw/so: don't use pre clip pos if we have a tes either.
- lavapipe: fix sampler + sampler view leaks.
- lavapipe: reference gallium fences correctly.
- vulkan/wsi: handle queue families properly for non-concurrent sharing mode.
- crocus: change the line width workaround for gfx4/5
- gallivm/nir: extract a valid texture index according to exec_mask.
Derek Foreman (3):
- egl/wayland: Properly clear stale buffers on resize
- panfrost: Support planar formats for scanout
- panfrost: support PIPE_RESOURCE_PARAM_NPLANES query
Dylan Baker (54):
- docs: add release notes for 21.2.4
- docs: add sha256 sum for 21.2.4 release
- docs: update calendar and link releases notes for 21.2.4
- meson: use gtest protocol for gtest based tests when possible
- docs: add release notes for 21.2.5
- docs: add sha256 sums for 21.2.5
- docs: update calendar and link releases notes for 21.2.5
- turnip: don't use mesa/macros.h to get utils/rounding.h
- docs: add release notes for 21.2.6
- docs: add sha256 sums for 21.2.6 relnotes
- docs: update calendar and link releases notes for 21.2.6
- docs/release-calendar: remove additional 21.2 releases
- docs: Add calendar entries for 22.0 release candidates.
- mesa/tests: ensure that util_cpu_detect has been called
- classic/r100: Delete driver
- classic/r200: Delete driver
- classic/nouveau: Remove driver
- classic/i915: Remove driver
- classic/i965: Remove driver
- mesa/dri: remove mega driver stub
- include/pci_ids: Move PCI ids supported by both i965 and iris to iris
- mesa/main/tests: remove dispatch sanity
- mesa: Delete libmesa_classic
- mesa: Merge libmesa_gallium and libmesa_common
- mesa: move common/dri into gallium
- meson: restore dri.pc file
- CODEOWNERS: remove OpenSWR
- new_features: Add OpenSWR removal
- fixup! gallium/swr: Remove driver source
- docs: move the release for 22.0 out
- VERSION: bump for 22.0.0-rc1 release
- .pick_status.json: Update to 0447a2303fb06d6ad1f64e5f079a74bf2cf540da
- .pick_status.json: Update to 8335fdfeafbe1fd14cb65f9088bbba15d9eb00dc
- .pick_status.json: Update to 5e9df85b1a4504c5b4162e77e139056dc80accc6
- VERSION: bump version for 22.0.0-rc2
- .pick_status.json: Update to 7955df28a6660d8dff77c79c345aa28aa7fa859c
- .pick_status.json: Update to 22fc53493092a7507c1e2db47b0c8763158d7b2d
- .pick_status.json: Update to 108e6eaa83eed3eb356f3cce835c5f5e3a836b8e
- .pick_status.json: Mark b07372312d7053f2ef5c858ceb1fbf9ade5e7c52 as denominated
- .pick_status.json: Update to 3759a16d8a883355effa435f46867951ce712dbe
- .pick_status.json: Mark a8418abd748e8e761dda9c3594e29e560833d9ff as denominated
- .pick_status.json: Update to 22efeec399fb55dcb364dabd65afab137d6f3fc3
- .pick_status.json: Update to f030b75b7d2c359b90c18ee4ed83fa05265c12e0
- .pick_status.json: Update to fd3451babd6cded6794561d74c8919576ba1f97d
- llvmpipe: remove test that passes on 22.0 for some reason from the fail list
- .pick_status.json: Update to b21e7e1ef7ba2c2cf97f073a8a01d6bc43835622
- d3d12: mark incorrectly passing tests as expected failures
- VERSION: bump for 22.0.0-rc3
- .pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4
- .pick_status.json: Update to 48b3ef625e1909c1be31fbe10adb53734af38eb4
- ci/zink: mark tests fixed by previous commit as fixed
- ci/zink: mark more expected passes as such
- Revert "panfrost: Fix set_sampler_views for big GL"
- .pick_status.json: Update to 342e6f83321a91816358dee82178809b2a8aeeaa
Edward O'Callaghan (4):
- clover/images: Add array_size to implement CL_IMAGE_ARRAY_SIZE
- clover: Implement CL_MEM_OBJECT_IMAGE2D_ARRAY
- clover: Implement CL_MEM_OBJECT_IMAGE1D_BUFFER
- clover: Implement CL_MEM_OBJECT_IMAGE1D_ARRAY
Eleni Maria Stea (1):
- dri_drawable: missing header
Ella Stanforth (2):
- v3dv: Implement VK_KHR_create_renderpass2
- vulkan: Allow RegisterDisplayEventEXT before first page flip
Ella-0 (2):
- v3dv: implement VK_EXT_host_query_reset
- v3dv: enable VK_KHR_swapchain_mutable_format
Emma Anholt (204):
- ci/lvp: Skip some slow tests under ASan.
- loader: Avoid enumerating drm devices just to get an fd's PCI ID.
- freedreno/afuc: Disable the disassembler on 32-bit builds.
- ci/deqp-runner: Drop SUMMARY_LIMIT env var.
- ci/deqp-runner: Simplify the --jobs argument setup.
- ci/deqp-runner: Use new deqp-runner's built-in renderer/version checks.
- ci/deqp-runner: Drop silly CSV env vars.
- ci/deqp-runner: Move remaining asan runs to --env LD_PRELOAD=
- ci/deqp-runner: Drop LD_LIBRARY_PATH=/usr/local for libkms workaround.
- ci/deqp-runner: Don't start GPU hang detection for making junit results.
- ci/deqp-runner: Move more non-suite logic under the non-suite 'if'.
- ci/piglit-runner: Fix funny indentation of the piglit-runner command.
- turnip: Switch tu6_format_texture() to a pipe_format.
- turnip: Switch tu6_format_color() to a pipe_format.
- turnip: Switch format_to_ifmt() to take a pipe_format.
- util: Move freedreno's snorm-to-unorm to util/, adding remaining cases.
- turnip: Make copy_format() and tu6_plane_format() return pipe_format
- gallium/u_blitter: Read MSAA z/s from sampler's .x instead of .y or .z.
- turnip: Drop the assertion about the temporary bit in sync fd imports.
- ci/radeonsi: Use a deqp-runner suite suite for stoney.
- ci/deqp-runner: Rename the deqp-drivername-\*.txt files to drivername-\*.txt
- ci/piglit-runner: Merge piglit-driver-\*.txt files into driver-\*.txt.
- ci: Enable testing radeonsi's libva using libva-util unit tests.
- ci/etnaviv: Fix the dependency for the build artifacts.
- ci/etnaviv: Add some more deqp flakes I've seen in recent runs.
- etnaviv: Switch to the NIR compiler by default.
- i915g: Check for negate/swizzle on TGSI_OPCODE_KILL_IF's src.yzw.
- i915g: Make sure we consider negates/swizzles on bias/shadow coords.
- i915g: Improve the explanation for the 1D Y swizzle.
- ci: Uprev VK-GL-CTS to 1.2.7.2, and pull in piglit while I'm here.
- freedreno: Fix gmem invalidating the depth or stencil of packed d/s.
- freedreno/a6xx: Emit a null descriptor for unoccupied IBO slots.
- freedreno/fdl6: Add an interface for setting up buffer descriptors.
- turnip: Use the new shared buffer-view descriptor creation function.
- turnip: Remove buffer-view cross-check code.
- freedreno/fdl6: Add support for texture swizzles of A/L/I/LA/RGBx.
- freedreno/a6xx: Use the fdl buffer view setup for img/ssbo descriptors.
- freedreno: Fix layered rendering to just Z/S and not color.
- freedreno/a6xx: Fix partial z/s clears with sysmem.
- freedreno/a5xx: Use the defined names for 2D_BLIT_CNTL regs.
- freedreno/a618: Mark a flaky test that triggers hangcheck.
- freedreno/a6xx: Don't try to generate mipmaps for SNORM with our blitter.
- freedreno/a5xx+: Fix missing LA formats.
- freedreno/a5xx: Diff reduction in fd5_layout to fd6_layout.
- freedreno/a6xx: Try to fix drawing to z/s miplevel/layer offsets.
- freedreno/a5xx: Remove bogus assertion about BO size.
- freedreno/a5xx: Try to fix drawing to z/s miplevel/layer offsets.
- freedreno/a5xx: Clean up a little bit of blitter array pitch setup.
- freedreno/ir3: Fix off-by-one in prefetch safety assert.
- turnip: Claim 1.2.7.1 CTS conformance.
- freedreno: Fix the uniform/nonuniform handling for cat5 bindful modes.
- freedreno: Fix constant-index assumptions in IBO loads.
- ci/etnaviv: Mark the rest of uniform_api.random as flaky.
- ci/etnaviv: Add more texturing flakes.
- ci/bare-metal: Close serial and join serial threads before exit.
- util: Rename PIPE_FORMAT_G8_B8_R8_420_UNORM.
- util/format: Add G8_B8R8_420_UNORM to match Vulkan.
- freedreno/fdl6: Skip redundant setting of TILE_ALL for NV12.
- freedreno: Set layer_first on (2D) resource imports.
- freedreno/a6xx: Create a fd6_view at sampler view update time.
- freedreno/a6xx: Switch to relying on fd6_view for our texture descriptors.
- freedreno/a6xx: Use fd6_view for non-buffer image descriptors, too.
- freedreno/a6xx: Clean up sysmem fb read patching using fd6_view.
- freedreno/a6xx: Drop an unused tile_mode arg.
- freedreno/a6xx: Inline remaining fd6_tex_const_0() call.
- mesa/st: Disable NV_copy_depth_to_color on non-doubles-capable HW.
- freedreno/a6xx: Add some notes about piglit failures.
- freedreno/ir3: Fix an off-by-one in so->outputs_count safety assert.
- ci/freedreno: Enable the tes-input/tcs-input tests.
- freedreno/a6xx: Do sparse setup of the TFB program.
- ci/freedreno: Add notes explaining the KHR-GL* failures.
- ci/freedreno: Add a link to the issue for color_depth_attachments.
- freedreno/fdl: Dump the generated layout when a layout test fails.
- freedreno: Fix the texturator unit test script.
- freedreno/cffdump: Fix 64-bit reg decode in script mode.
- freedreno/fdl: Add support for unit testing 3D texture array strides.
- freedreno/cffdump: Fix up formatting of texturator unit test script output.
- freedreno/cffdump: Handle the TILE_ALL flag in unit test generation.
- freedreno/a6xx: Fix a bunch of 3D texture layout to match blob behavior.
- freedreno: Stop exposing MSAA image load/store on desktop GL.
- freedreno/a6xx: Disable sample averaging on z/s or integer blits.
- freedreno/a6xx: Disable sample averaging on non-ubwc z24s8 MSAA blits.
- freedreno/a5xx: Define a5xx_2d_surf_info like a6xx has.
- freedreno/a5xx: Document the sRGB bit on RB_2D_SRC/DST info.
- freedreno/a5xx: Emit MSAA state for sysmem rendering, too.
- nir: Un-inline nir_builder_alu_instr_finish_and_insert()
- nir: Un-inline more of nir_builder.h.
- freedreno/ir3: Make a shared helper for the tess factor stride.
- turnip: Move CP_SET_SUBDRAW_SIZE to vkCmdBindPipeline() time.
- nir: Uninline a bunch of nir.h functions.
- nir: Make nir_build_alu() variants per 1-4 arg count.
- freedreno/a6xx: Allocate a fixed-size tess factor BO.
- freedreno/a6xx: Skip emitting tess BO pointers past the shader's constlen.
- freedreno/a6xx: Set the tess BO ptrs in the program stateobj.
- mesa/st: Remove GL_ARB_depth_clamp emulation support.
- r300: Add deqp expectations for RV515.
- r300: Turn a comment about presub into an assert.
- r300: Fix mis-optimization turning -1 - x into 1 - x.
- nouveau/nir: Use the address reg for indirect scratch access.
- nir/algebraic: Move some generated-code algebraic opt args into a struct.
- nir/algebraic: Drop the check for cache == None.
- nir/algebraic: Replace relocations for nir_search values with a table.
- nir/algebraic: Remove array-of-cond code
- nir/algebraic: Move relocations for expression conds to a table.
- nir/algebraic: Move relocations for variable conds to a table.
- nir/algebraic: Pack various bitfields in the nir_search_value_union.
- nir/algebraic: Mark the automaton's filter tables as const.
- nir/algebraic: Move all the individual transforms to a common table.
- r300: Move the instruction filter for r500_transform_IF() to the top.
- r300: Cache the var list in the peephole_mul_omod() loop.
- r300: Ensure that immediates have matching negate flags too.
- r300: Also consider ALU condition modifiers for loop DCE.
- r300: Remove the non_normalized_coords from the shader key.
- r300: Precompile the FS at shader creation time.
- r300: Route shader stats output to ARB_debug_output.
- r300/ci: Update loop expectations
- loader: Restore i915g support.
- r300/ci: Add some piglit expectations.
- nir/nir_to_tgsi: Add support for "if" statements with !native_integers
- nir_to_tgsi: Make !native_integers front face input match glsl_to_tgsi.
- r300: Disable loop unrolling on r500.
- r300: Request NIR shaders from mesa/st and use NIR-to-TGSI.
- nir_to_tgsi: Enable nir_opt_move.
- nir/nir_opt_move,sink: Include load_ubo_vec4 as a load_ubo instr.
- nir_to_tgsi: Set the TGSI Precise flag for exact ALU instructions.
- r300: Remove some dead compiler code.
- r300: Remove support for SCS.
- r300: Remove unused RC_OPCODE_ABS.
- r300: Remove unused RC_OPCODE_XPD.
- r300: Remove unused RC_OPCODE_SWZ.
- r300: Remove unused RC_OPCODE_CLAMP.
- r300: Remove unused RC_OPCODE_SFL
- r300: Remove unused RC_OPCODE_DPH
- ci/freedreno: Add known flakes from the last month.
- ci/crocus: Add support for manual CI runs on my G41.
- crocus: Clamp VS point sizes to the HW limits as required.
- glsl: Delete the vectorization opt pass.
- glsl: Delete the optimize_redundant_jumps pass.
- glsl: Remove dead prototype for old do_discard_simplification().
- glsl: Remove comment about non-existing DFREXP_TO_ARITH
- glsl: Retire unused modes for lower_64bit_integer_instructions.
- ci/r300: Add another xfail on the main branch.
- r300/vs: Allocate temps we see a use as a source, too.
- r300/vs: Reuse rc_match_bgnloop().
- r300/vs: Fix flow control processing just after an endloop.
- ci: Enable a build with MSan.
- glcpp: Disable the valgrind tests.
- softpipe: Drop the quad pstipple stage.
- softpipe: Use the draw module's poly stipple handling, like llvmpipe.
- softpipe: Drop duplicate decl of softpipe_find_fs_variant
- ci/crocus: Add manual CI for the new HSW box I have at home.
- ci: Enable reporting to the flakes IRC channel for i915g and crocus.
- ci/i915g: Add a couple more recent regressions.
- nir_to_tgsi: Use the same address reg mappings as GLSL-to-TGSI did.
- gallium: Delete PIPE_CAP_TGSI_ANY_REG_AS_ADDRESS
- tgsi/exec: Simplify indirects now that they always use the ADDR file.
- i915g: Turn off FP16 in the vertex shaders.
- r300: Use uif() instead of pointer aliasing in program printing.
- ci/r300: Update xfails from a full dEQP run.
- r300: Fix omod failing to increase the number of channels stored.
- nir_to_tgsi: Enable fdot_replicates flag.
- ci: Shrink container/rootfs sizes.
- nir_to_tgsi: Fix a bug in TXP detection after backend lowering.
- ci/llvmpipe: Sort the list of traces.
- ci/llvmpipe: Add a trace for the game JVGS, which got regressed recently.
- ci: Add paraview traces to several drivers.
- freedreno/ir3: Use nir_opt_offset for removing constant adds for shared vars.
- nir: Apply nir_opt_offsets to nir_intrinsic_load_uniform as well.
- r300: Drop unused r300_get_stats() call.
- r300: Add consts (uniforms) count to the shader-db output.
- nir/lower_dynamic_bo_access: Use copy_inst_indices for our cloned instrs.
- nir: Add a .base field to nir_load_ubo_vec4.
- nir/opt_offsets: Disable unsigned wrap checks on non-native-integers HW.
- nir/opt_offsets: Also apply the max offset to top-level constant folding.
- nir_to_tgsi: Use nir_opt_offsets for load_ubo_vec4.
- nir/opt_offsets: Use nir_ssa_scalar to chase offset additions.
- softpipe: respect !independent_blend_enable for color masks.
- softpipe: Request that st fix up DST_ALPHA blending for RGB render targets.
- ci/softpipe: Drop the GS sampling known-flakes.
- nir/lower_locals_to_regs: Do an ad-hoc copy propagate on our generated MOV.
- tgsi_exec: Fix shared var stores for >1 real invocation, and overflow checks.
- softpipe: Improve some local var naming in compute shaders.
- softpipe: Initialize the CS dispatch mask at machine setup time.
- softpipe: Dispatch 4 CS invocations per tgsi_exec thread.
- Revert "ci: freedreno: Update a530 dEQP fail expectation list"
- ci/llvmpipe: Drop the skip of piglit edgeflag test.
- ci/llvmpipe,softpipe: Switch piglit testing to piglit-runner.
- ci/traces: Rename the piglit/run.sh script to piglit-traces.sh.
- ci/traces: Drop the PIGLIT_PROFILES setting for traces replay.
- ci/traces: Clean up the failure report message.
- ci/traces: Drop the baseline file creation for trace results.
- ci/traces: Drop PIGLIT_REPLAY_UPLOAD_TO_MINIO.
- ci/traces: Always generate the junit XML.
- ci/freedreno: Update hashes for closed traces.
- vulkan: Fix leak of error messages
- ci: Use a dlclose-disabling preload library for leak checking in Vulkan.
- ci/freedreno: Switch 2 default a630 VK jobs to being GLES and VK ASan jobs.
- turnip: Store the computed iova in the tu_buffer.
- turnip: Store the computed iova in the tu_image.
- r300: Disable fp16 and int16 in swtcl vertex shaders.
- r300/r600: Add drm-shim support.
- freedreno/isaspec: Add missing dep of encode.py/decode.py calls on isa.py
- intel: Add missing dep of gen_*_header.py on utils.py.
- i915g: Initialize the rest of the "from_nir" temporary VS struct.
Enrico Galli (3):
- microsoft/compiler: Shadow tex instructions always use shadow samplers
- microsoft/spirv_to_dxil: Add DXIL validation to spirv2dxil
- ci/windows: Add validation tests for spriv_to_dxil
Eric Engestrom (33):
- VERSION: bump to 21.4
- docs: reset new_features.txt
- VERSION: bump to 22.0
- docs: update calendar for 21.3.0-rc1
- docs: update calendar for 21.3.0-rc2
- docs: update calendar for 21.3.0-rc3
- docs: update calendar for 21.3.0-rc4
- release-calendar: fix date for next 21.3 rc
- meson: drop duplicate addition of surfaceless & drm to the list of platforms
- meson: move \`egl_native_platform` definition inside the \`with_egl` block
- meson: drop impossible \`if no platform` branch
- meson: always define \`HAVE_{X11,XCB}_PLATFORM` when it's enabled
- meson: automatically define \`HAVE_{some}_PLATFORM`
- docs: update calendar for 21.3.0-rc5
- docs/submittingpatches: add link to section describing how to make a backport MR
- docs/submittingpatches: add formatting around the release branches names
- docs/submittingpatches: mention use of the \`-x` flag of \`git cherry-pick` when backporting a commit
- docs: update branchpoint instructions
- docs: add release notes for 21.3.0
- docs: update calendar and link releases notes for 21.3.0
- docs: add 21.3.x release schedule
- docs: add 22.0 branchpoint date for perspective
- docs: add release notes for 21.3.1
- docs: update calendar and link releases notes for 21.3.1
- docs: add release notes for 21.3.2
- docs: update calendar and link releases notes for 21.3.2
- docs: add release notes for 21.3.3
- docs: update calendar and link releases notes for 21.3.3
- docs: add release notes for 21.3.4
- docs: update calendar and link releases notes for 21.3.4
- docs: add release notes for 21.3.5
- docs: update calendar and link releases notes for 21.3.5
- docs/release-calendar: add another 21.3.x since 22.0 has been delayed a bit
Erico Nunes (5):
- ci: temporarily disable lima CI
- mesa: fix GL_MAX_SAMPLES with GLES2
- lima/gpir: avoid invalid write in regalloc
- lima/ppir: initialize slots array for dummy/undef
- lima/ppir: refactor bitcopy to use unsigned char
Erik Faye-Lund (9):
- docs: update trademark disclaimer
- CODEOWNERS: remove ownership of deleted code
- ci: remove testing of deleted code
- docs: remove mentions of deleted code
- docs: remove stale notice about deleted dir
- ensure csv-files are crlf on disk
- bin/gen_calendar_entries: fix newlines on windows
- docs: use http-redirect when possible
- docs: remove incorrect drivers from extension
Felix DeGrood (2):
- anv: increase binding table pool size to 64KB
- pps: increase intel.cfg buffer size
Filip Gawin (8):
- r300: improve precission of linear interpolation
- r300: stub derivatives on r300 and r400 hardware
- nir: assert that variables in optimize_atomic are initialized
- glsl: fix trivial strict aliasing warning
- radv: dont call calloc when BVH is empty
- iris: fix mapping compressed textures
- r300: fix handling swizzle in transform_source_conflicts
- r300: replace recursive calls with loops
Francisco Jerez (28):
- intel/fs/xehp: Teach SWSB pass about the exec pipeline of FS_OPCODE_PACK_HALF_2x16_SPLIT.
- intel/fs: Add physical fall-through CFG edge for unconditional BREAK instruction.
- intel/dev: Fix size of device info num_subslices array.
- intel/dev: Add support for pixel pipe subslice accounting on multi-slice GPUs.
- intel/dev: Implement DG2 restrictions requiring additional DSSes to be disabled.
- intel/xehp: Implement XeHP workaround Wa_14013910100.
- intel/xehp: Implement XeHP workaround Wa_14014148106.
- intel/xehp: Update 3DSTATE_PS maximum number of threads per PSD.
- intel/fs: Don't assume packed dispatch for fragment shaders on XeHP.
- intel/blorp/gfx12+: Drop unnecessary state cache invalidation from binding table setup.
- intel/genxml: Fix SLICE_HASH_TABLE struct on XeHP.
- iris: Merge gfx11\_ and gfx12_upload_pixel_hashing_tables() into the same function.
- intel: Move pixel hashing table computation into common header file.
- intel: Minimal calculation of pixel hash table for arbitrary number of pixel pipes.
- intel: Rename intel_compute_pixel_hash_table() to intel_compute_pixel_hash_table_3way().
- iris: Program pixel hashing tables on XeHP.
- anv: Program pixel hashing tables on XeHP.
- intel/xehp: Switch to coarser cross-slice pixel hashing with table permutation.
- iris/xehp: Implement workaround for 3D texturing+anisotropic filtering.
- intel/fs/xehp: Merge repeated in-order read dependencies instead of replacement.
- intel/fs: Move legal exec type calculation into helper function in lower_regioning pass.
- intel/fs: Teach the lower_regioning pass how to split instructions of unsuported exec type.
- intel/fs: Take into account region strides during SIMD lowering decision of SHUFFLE.
- intel/fs: Fix destination suboffset calculations for non-trivial strides in SHUFFLE codegen.
- intel/fs: Perform 64-bit SHUFFLE lowering in the lower_regioning pass.
- intel/fs: Perform 64-bit SEL_EXEC lowering in the lower_regioning pass.
- intel/fs: Honor strided source regions specified by the IR for CLUSTER_BROADCAST.
- intel/fs: Perform 64-bit CLUSTER_BROADCAST lowering in the lower_regioning pass.
Georg Lehmann (8):
- meson: Use get_supported_arguments more often.
- meson: Remove some unnecessary loops.
- amd/addrlib: Use get_supported_arguments to get compiler args.
- radv: Increase maxFragmentCombinedOutputResources.
- vulkan/wsi/wayland: Fix add_wl_shm_format alpha/opaqueness.
- vulkan/wsi/wayland: Convert missing vulkan formats to shm formats.
- vulkan/wsi/wayland: Add modifiers for RGB formats.
- vulkan/wsi/wayland: Fix add_drm_format_modifier aplha/opaqueness.
Gert Wollny (7):
- virgl: Add driconf tweak to force-enable reading back R8_SRGB textures
- virgl: obtain supported number of shader sampler views from host
- ci: pin virglrenderer version
- virgl: Enable higher compatibility profiles if host supports it
- util/primconvert: map only index buffer part that is needed
- nir_lower_io: propagate the "invariant" flag to outputs
- ntt: Set the output invariant flag according to the semantics
Greg V (2):
- util: __getProgramName: remove check for ancient FreeBSD versions, simplify ifdefs
- util: make util_get_process_exec_path work on FreeBSD w/o procfs
Guido Günther (6):
- etnaviv/drm: Use etna_mesa_debug for debugging messages
- etnaviv/drm: Add some bo debug output
- etnaviv/drm: Print gpu model at debug verbosity
- etnaviv/drm: Use mesa_log* for debugging
- entaviv/drm: Use same log format as gallium bits
- etnaviv: Use mesa_log*
Guilherme Gallo (14):
- ci: Update linux kernel to v5.15
- iris/ci: Fix traces for amly and deqp list for whl
- ci/freedreno: Add maxcpus=2 to the kernel cmdline on a530
- panfrost/ci: update piglit tests expectations on G52
- ci: Update ci-fairy to version with --token-file support
- ci: Uprev piglit
- ci: Use ci-fairy minio login via token file
- ci: Build skqp on ARM64 images
- ci: Add a630_skqp jobs
- ci: skqp: Add documentation on how to maintain skqp jobs
- ci: Uprev Kernel to v5.16
- ci: freedreno: Update a530 dEQP fail expectation list
- ci: Add docs for Linux Kernel uprevs
- virgl/ci: make crosvm-runner pass variables in a secure way
Hamish Arblaster (1):
- zink: Fix building on macOS
Henry Goffin (1):
- intel/compiler/test: Fix build with GCC 7
Hoe Hao Cheng (3):
- zink/codegen: support platform tags
- zink/codegen: remove core_since in constructor
- zink/codegen: remove bogus print statement
Hyunjun Ko (10):
- turnip: expose VK_KHR_driver_properties
- anv: Fix to honor the spec to get stencil layout.
- radv: Fix to honor the spec to get stencil layout.
- vulkan/util: Move helper functions for depth/stencil images to vk_iamge
- turnip: Enable VK_KHR_separate_depth_stencil_layouts
- turnip: Use the new common device lost tracking
- vulkan: fix typo
- turnip: Porting to common vulkan implementation for synchronization.
- turnip: Porting to common implementation for timeline semaphore
- turnip: fix leaks of submit requests.
Iago Toral Quiroga (63):
- v3dv: fix TLB buffer to image copy path for 3D images
- v3dv: enable Vulkan 1.1
- broadcom/compiler: disallow tsy barrier in thrsw delay slots
- broadcom/compiler: fix assert that current instruction must be in current block
- v3dv: refactor TFU jobs
- broadcom/compiler: rework simultaneous peripheral access checks
- broadcom/compiler: fix condition encoding bug
- broadcom/compiler: padding fixes to QPU assembly dumps
- broadcom/compiler: make opt passes set current block
- broadcom/compiler: check that sig packing is valid when pipelining ldvary
- broadcom/compiler: copy packing when converting add to mul
- v3dv,v3d: don't store swizzle pointer in shader/pipeline keys
- v3d: use V3D_MAX_DRAW_BUFFERS instead of hardcoded constant
- v3dv: account for multisampling when computing subpass granularity
- v3dv: don't use a global constant for default pipeline dynamic state
- v3d,v3dv: move tile size calculation to a common helper
- v3dv: fix internal bpp of D/S formats
- broadcom/compiler: fix early fragment tests setup
- broadcom/compiler: don't allow RF writes from signals after thrend
- broadcom/compiler: fix scoreboard locking checks
- broadcom/compiler: don't move ldvary earlier if current instruction has ldunif
- broadcom/compiler: allow color TLB writes in last instruction
- broadcom/compiler: relax restriction on VPM inst in last thread end slot
- broadcom/compiler: emit passthrough Z write if shader reads Z
- broadcom/compiler: track passthrough Z writes
- v3d,v3dv: don't disable EZ for passthrough Z writes
- broadcom/compiler: improve documentation for Z writes
- broadcom/compiler: improve thrsw merge
- v3dv: add a refcount mechanism to BOs
- v3dv: add swizzle helpers to identify formats wit R/B swap and reverse flags
- v3dv: handle formats with reverse flag
- v3dv: implement VK_EXT_4444_formats
- v3dv: implement double-buffer mode
- v3d: implement double-buffer mode
- docs/features: flag VK_KHR_create_renderpass2 as implemented for v3dv
- broadcom/simulator: handle DRM_V3D_PARAM_SUPPORTS_MULTISYNC_EXT
- v3dv: implement VK_KHR_driver_properties
- broadcom/compiler: add lowering pass to scalarize non 32-bit general load/store
- broadcom/compiler: better document vectorization implications
- broadcom/compiler: implement TMU general 16-bit load/store
- broadcom/compiler: lower packing after vectorization
- broadcom/compiler: support ldunifa with some 16-bit loads
- broadcom/compiler: use ldunifa with unaligned constant offset
- broadcom/compiler: implement 32-bit/16-bit conversion opcodes
- broadcom/compiler: support f32 to f16 RTZ and RTE rounding modes
- v3dv: support VK_KHR_16_bit_storage
- broadcom/compiler: support 16-bit uniforms
- v3dv: expose storagePushConstant16 feature from VK_KHR_16bit_storage
- broadcom/compiler: support 8-bit general store access
- broadcom/compiler: handle to/from 8-bit integer conversions
- broadcom/compiler: support 8-bit loads via ldunifa
- broadcom/compiler: allow vectorization to larger scalar type
- broadcom/compiler: update comment on load_uniform fast-path
- v3dv: support VK_KHR_8bit_storage
- v3dv: drop signature of undefined function
- v3dv: implement VK_KHR_imageless_framebuffer
- v3dv: rework Vulkan 1.2 feature queries
- v3dv: document why we don't expose VK_EXT_scalar_block_layout
- v3dv: support resolving depth/stencil attachments
- v3dv: fallback to blit resolve if render area is not aligned to tile boundaries
- v3dv: expose VK_KHR_depth_stencil_resolve
- v3dv: don't submit noop job if there is nothing to wait on or signal
- broadcom/compiler: fix offset alignment for ldunifa when skipping
Ian Romanick (35):
- nir/loop_unroll: Always unroll loops that iterate at most once
- glsl/nir: Don't build soft float64 when it cannot be used
- nir/constant_folding: Optimize txb with bias of constant zero to tex
- intel/compiler: Don't predicate a WHILE if there is a CONT
- intel/compiler: Don't store "scalar stage" bits on Gfx8 or Gfx9
- intel/stub: Suppress warnings about DRM_I915_QUERY_PERF_CONFIG
- intel/stub: Implement DRM_I915_QUERY_ENGINE_INFO
- intel/stub: Implement DRM_I915_QUERY_MEMORY_REGIONS
- intel/stub: Implement I915_PARAM_HAS_USERPTR_PROBE
- intel/fs: Use HF as destination type for F32TOF16 in fquantize2f16
- mesa: OpenGL 1.3 feature GL_ARB_texture_border_clamp is not optional
- mesa: OpenGL 1.3 feature GL_ARB_texture_cube_map is not optional
- mesa: OpenGL 1.3 feature GL_ARB_texture_env_combine is not optional
- mesa: OpenGL 1.3 feature GL_ARB_texture_env_dot3 is not optional
- mesa: OpenGL 1.3 and OpenGL ES 1.0 are not optional
- intel/stub: Silence "initialized field overwritten" warning
- intel/stub: Implement shell versions of DRM_I915_GEM_GET_TILING and DRM_I915_SEM_GET_TILING
- intel/fs: Fix gl_FrontFacing optimization on Gfx12+
- ntt: Extend ntt_compile::addr_declared and ntt_compile::addr_reg
- mesa: OpenGL 1.4 feature GL_ARB_depth_texture is not optional
- mesa: OpenGL 1.4 feature GL_ARB_texture_env_crossbar is not optional
- mesa: OpenGL 1.4 feature GL_EXT_blend_color is not optional
- mesa: OpenGL 1.4 feature GL_EXT_blend_func_separate is not optional
- mesa: OpenGL 1.4 feature GL_EXT_blend_minmax is not optional
- mesa: OpenGL 1.4 feature GL_EXT_point_parameters is not optional
- mesa: OpenGL ES 1.1 is not optional
- gallivm/nir: Call nir_lower_bool_to_int32 after nir_opt_algebraic_late
- nir: All set-on-comparison opcodes can take all float types
- intel/fs: Don't optimize out 1.0*x and -1.0*x
- spriv: Produce correct result for GLSLstd450Step with NaN
- spirv: Produce correct result for GLSLstd450Modf with Inf
- spirv: Produce correct result for GLSLstd450Tanh with NaN
- nir: Properly handle various exceptional values in frexp
- nir: Produce correct results for atan with NaN
- nir: Add missing dependency on nir_opcodes.py
Icecream95 (9):
- panfrost: Set PIPE_CAP_QUADS_FOLLOW_PROVOKING_VERTEX_CONVENTION
- pan/bi: Add interference between destinations
- pan/bi: Check dependencies of both destinations of instructions
- panfrost: Set dirty state in set_shader_buffers
- panfrost: Re-emit descriptors after resource shadowing
- pan/bi: Make disassembler build reproducibly
- panfrost: Fix ubo_mask calculation
- pan/bi: Skip psuedo sources in ISA.xml
- pan/bi: Don't assign slots for the blend second source
Ilia Mirkin (50):
- freedreno: support lua54
- meson: build freedreno tools when other parts of freedreno not enabled
- freedreno: check batch size after the fallback blitter clear
- freedreno/ir3: fix setting the max tf vertex when there are no outputs
- freedreno/a4xx: fix min/max/bias lod sampler settings
- mesa: add missing state to state string computation
- nv50,nvc0: expose R8/RG8_SRGB formats for texturing
- mesa: add just a tiny bit of debug info to some _mesa_problem calls
- freedreno: prefer float immediates when float values are involved
- freedreno/a[345]xx: add R8/RG8 SRGB formats
- a5xx: remove astc srgb workaround logic
- freedreno/ir3: fix image-to-tex flags, remove 3d -> array hack
- nir: remove double-validation of src component counts
- freedreno/a4xx: add proper buffer texture support
- freedreno/a5xx: re-express buffer textures more logically
- freedreno/a6xx: re-express buffer textures more logically
- freedreno/a4xx: fix stencil-textured border colors
- freedreno/a4xx: indicate whether outputs are uint/sint
- freedreno/a4xx: include guesses from a3xx for some of the constid's
- freedreno/a4xx: hook up sample mask/id, used to determine helper invocs
- freedreno/ir3: adjust condition for when to use ldib
- mesa: check target/format for Tex(ture)StorageMem*
- mesa: move around current texture object fetching
- freedreno/a4xx: add missing SNORM formats to help tests pass
- freedreno/a4xx: add some missing legacy formats to help TBOs
- freedreno/a5xx: add missing L8A8_UNORM format to support TBOs
- freedreno/a[345]xx: fix unorm/snorm blend factors when they're "over"
- nir: always keep the clip distance array size updated
- nir: apply interpolated input intrinsics setting when lowering clipdist
- freedreno/ir3: remove unused actual_in counting
- nir/lower_clip: replace bogus comment about gl_ClipDistance reading in GL
- nir/lower_clip: location offset goes into offset, not base
- nir/lower_clip: increment num_inputs/outputs by appropriate amount
- nir/lower_clip: support clipdist array + no vars
- freedreno/ir3: indicate that clipdist arrays are in use
- freedreno/ir3: get the post-lowering clip/cull mask
- ci: move windowoverlap exclusion to all-skips
- freedreno/ci: add piglit runs for a306
- freedreno/ci/a306: add additional skip which hangchecks
- freedreno/a3xx: add some legacy formats
- freedreno/ci/a306: separate msaa fails
- freedreno/ci/a306: split off the f32 blend / texturing failures
- freedreno/ci/a306: split off snorm blending failures
- freedreno/a5xx: enable OES_gpu_shader5
- gitlab-ci: serial close can leave an active read
- gitlab-ci: detect a3xx gpu hang recovery failure
- nv50,nvc0: add new caps to list
- nv50: don't claim support for format-less stores
- freedreno/ci/a306: add more skips
- freedreno/ci/a306: increase concurrency
Italo Nicola (4):
- virgl/vtest: use correct resource stride in flush_frontbuffer
- virgl/vtest: implement resource_create_front
- virgl: flush cmd buffer when flushing frontbuffer
- drisw: do an MSAA resolve when copying the backbuffer
Iván Briano (15):
- intel/nir: also allow unknown format for getting the size of a storage image
- anv: Remove unused struct member
- anv: add functions to set up fake render passes
- anv: allocate fake render pass on pipeline creation
- anv: Split out state attachments allocation
- anv: allocate fake render pass for continuation command buffers
- anv: Split attachment clearing code into their own functions
- anv: split end_subpass into more discrete components
- anv: implement the meat of VK_KHR_dynamic_rendering
- anv: Enable VK_KHR_dynamic_rendering
- anv: Handle resolveImageLayout on dynamic rendering
- anv: Report the right conformance version
- anv: make the pointer valid before we assign stuff into it
- anv: only advertise 64b atomic floats if 64b floats are supported
- intel/compiler: make CLUSTER_BROADCAST always deal with integers
Jakob Bornecrantz (1):
- vulkan-device-select: Don't leak drmDevicePtr
James Jones (1):
- gbm: Don't pass default usage flags on ABIs < 1
James Park (5):
- vulkan, radv: Support backslash in ICD paths
- aco: Work around MSVC restrict in c99_compat.h
- ac: Align ADDR_FASTCALL with addrlib
- radv: Match function definitions to declarations
- meson: Update libelf wrap for Windows
Jan Beich (1):
- meson: disable -Werror=thread-safety on FreeBSD
Jan Zielinski (3):
- gallium/swr: Remove driver source
- gallium/swr: Remove common code and build options
- gallium/swr: clean up the documentation after SWR removal from main
Faith Ekstrand (158):
- vulkan/log: Tweak our handling of a couple error enums
- vulkan/log: Don't assert on non-client-visible objects
- vulkan/wsi/win32: Delete the wrapper entrypoints
- i965: Emit a NULL surface for buffer textures with no buffer
- nir: Add a nir_foreach_image_variable() iterator
- i965/uniforms: Handle images as a separate pass
- amd/llvm/nir: Add support for nir_var_mem_image
- aco: Add support for nir_var_mem_image
- glsl/nir_linker: nir_var_mem_image is also a GL uniform
- nir/gl_nir_lower_samplers_as_deref: Support nir_var_mem_image
- nir/gl_nir_lower_images: Support nir_var_mem_image
- st/nir: Assign uniform locations to nir_var_mem_image vars
- ntt: Separate image and sampler handling
- llvmpipe: Support image variables living in nir_var_mem_image
- nir/lower_readonly_images_to_tex: Also rewrite variable modes
- clover: Insert dummy uniform variables for images
- clover: Use nir_foreach_image_variable for images
- zink: Images can live in nir_var_mem_image now
- ir3: Check for nir_var_mem_image in shared_barrier handling
- spirv: Assert that OpTypeForwardPointer only points to structs
- glsl: Use nir_var_mem_image for images
- ttn: Use nir_var_mem_image
- st/pbo: Use nir_var_mem_image for images
- nir: Validate image variable modes
- aco: Split var_mem_image barrier handling from global/ssbo
- intel/fs: Stop emitting TGM fences for nir_var_mem_ssbo
- nir/gl_nir_lower_images: Require nir_var_mem_image
- ir3: Images are always nir_var_mem_image
- nir: Drop our attempt at typed-based image mode validation
- nir: s/nir_var_mem_image/nir_var_image/g
- nir: Re-arrange the variable modes
- nir/serialize: Pack deref modes better
- compiler/types: Combine image and sampler type serialization
- compiler/types: Unify the guts of get_sampler/image_count
- compiler/types: Add a texture type
- nir: Allow texture types
- nir/deref: Also optimize samplerND -> textureND casts
- lavapipe: Allow for texture types
- clover/nir: Don't remove texture variables
- spirv: Use texture types for sampled images
- compiler/types: Add a wrap_in_arrays helper
- anv: Implement VK_EXT_global_priority_query
- glsl/nir/linker: Also remove image variables
- vulkan/vk_extensions_gen: Drop support for extra includes
- vulkan/vk_extensions_gen: Stop including vk_object.h
- v3dv: Use vk_instance_get_proc_addr_unchecked for WSI
- lavapipe: Use vk_instance_get_proc_addr_unchecked for WSI
- vulkan: Rework mako error handling in python generators
- vulkan: Drop unnecessary [en]coding comments from python generators
- vulkan/dispatch_table: EntrypointBase doesn't need to derive from object
- vulkan: Break entrypoint parsing into its own file
- vulkan: Move trampoline code-gen to its own file
- vulkan: Move all the common object code to runtime/
- lavapipe: Don't wrap errors returned from vk_device_init in vk_error
- intel: Add has_bit6_swizzle to devinfo
- anv,iris: Advertise a max 3D workgroup size of 1024^3
- anv/allocator: Add a couple of helpers
- anv: Pull aperture size from devinfo
- anv/allocator: Use anv_device_release_bo in anv_block_pool_finish
- anv: Rename anv_bo::index to exec_obj_index
- anv: Add get/set_tiling helpers
- anv: Add a couple more checks in MapMemory
- anv: Fix FlushMappedMemoryRanges for odd mmap offsets
- anv: Add helpers in anv_allocator for mapping BOs
- anv: Always set bindless surface base on SKL+
- anv: Int64 atomics don't need to depend on softpin
- anv: Add a anv_use_relocations helper and use it
- anv: Add a use_relocations physical device bit
- anv: Stop checking for HAS_EXEC_FENCE
- anv: Add an anv_bo_is_pinned helper
- anv: Also disallow CCS_E for multi-LOD images
- anv: Move device memory maps back to anv_device_memory
- vulkan: Pull the device lost framework from ANV
- anv: Use the new common device lost tracking
- vulkan/device: Add a check_status hook
- anv: Wire up the new status check
- vulkan: Add a vk_sync base class
- vulkan/meson: Re-arrange libvulkan_util deps a bit
- vulkan/util: Include stdlib.h
- vulkan/vk_device: Add a drm_fd field
- vulkan: Add a common vk_drm_syncobj struct
- c11/threads: Re-align return values for timed waits
- vulkan: Add an emulated timeline sync type
- vulkan: Add a common implementation of VkFence
- vulkan: Add a common implementation of VkSemaphore
- vulkan: Add common implementations of vkQueueSubmit and vkQueueWaitIdle
- vulkan/device: Log the timeline mode when lost
- vulkan/wsi: Drop wsi_common_get_current_time()
- wsi/display: Rework wsi_fence a bit
- vulkan/wsi/display: Wrap wsi_display_fence in a vk_sync
- anv: Delete ANV_SEMAPHORE_TYPE_DUMMY
- anv: Add a BO sync type
- anv: Remove the last remnants of in/out fences
- anv: Use helpers in util/os_time.h in the query code
- anv: Convert to the common sync and submit framework
- vulkan: Add an emulated binary vk_sync type
- anv: Remove unnecessary syncobj wrappers
- anv: Simplify submit_simple_batch()
- vulkan,anv: Auto-detect syncobj features
- vulkan: Add a dummy sync type
- vulkan/sync: Rework asserts a bit
- crocus: wm_prog_key::key_alpha_test uses GL enums
- intel/fs,vec4: Drop uniform compaction and pull constant support
- intel/fs,vec4: Drop support for shader time
- intel/blorp: Stop depending on prog_data binding tables
- intel/fs,vec4: Drop prog_data binding tables
- intel/compiler: Get rid of wm_prog_key::frag_coord_adds_sample_pos
- intel/fs: Drop high_quality_derivatives
- anv: Stop doing too much per-sample shading
- intel/dev: Add gtt_size to devinfo
- Revert "anv: Stop doing too much per-sample shading"
- vulkan/queue: Handle WSI memory signal information
- anv: Implement vk_device::create_sync_for_memory
- anv: Drop anv_sync_create_for_bo
- radeonsi/nir: Check for VARYING_SLOT_PRIMITIVE_ID not SYSTEM_VALUE
- nir: Add a new sample_pos_or_center system value
- intel/fs: Return fs_reg directly from builtin setup helpers
- intel/fs: Rework emit_samplepos_setup()
- intel/fs: Implement the sample_pos_or_center system value
- anv,nir: Use sample_pos_or_center in lower_wpos_center
- anv/pipeline: Get rid of sample_shading_enable
- intel/fs: Be more conservative in split_virtual_grfs
- intel/fs: Use OPT() for split_virtual_grfs
- intel/eu: Don't double-loop as often in brw_set_uip_jip
- Revert "intel/fs: Do cmod prop again after scheduling"
- intel/fs: Reset instruction order before re-scheduling
- intel/fs: Add a NONE scheduling mode
- vulkan/runtime: Validate instance version on 1.0 implementations
- anv,radv,v3dv: Move AcquireImageANDROID to common code
- radv: Move QueueSignalReleaseImageANDROID to common code
- anv: Use the common QueueSignalReleaseImageANDROID from RADV
- v3dv: Use the common QueueSignalReleaseImageANDROID from RADV
- turnip: Use vk_common_AcquireImageANDROID
- turnip: Use vk_common_QueueSignalReleaseImageANDROID for DRM
- intel/compiler: Stop using GLuint in brw_compiler.h
- intel/fs: Use compare_func for wm_prog_key::alpha_test_func
- spirv,radv: Fix some GL enum comments
- vulkan/runtime: Implement 1.3 features/properties
- anv/pass: Don't set first_subpass_layout for stencil-only attachments
- .mailmap: Switch Faith Ekstrand to @collabora.com
- anv: Implement 1.3 features/properties
- anv: Advertise Vulkan 1.3
- vulkan/wsi: Set MUTABLE_FORMAT_BIT in the prime path
- vulkan/wsi/drm: Break create_native_image in pieces
- vulkan/wsi: Add a helper for the configure/create/bind pattern
- vulkan/wsi/drm: Break create_prime_image in pieces
- vulkan/wsi/x11: Split image creation
- vulkan/wsi/wayland: Split image creation
- vulkan/wsi/display: Split image creation
- vulkan/wsi/win32: Delete unnecessary copy+paste from DRM
- vulkan/wsi/win32: Break create_win32_image in pieces
- vulkan/wsi/drm: Drop wsi_create_native/prime_image
- wsi/common: Set VK_IMAGE_CREATE_ALIAS_BIT
- vulkan/wsi: Add image create and bind helpers
- anv/image: Add some asserts when binding swapchain images
- anv/image: Call into WSI to create swapchain images
- anv: Call vk_command_buffer_finish if create fails
- anv: Don't assume depth/stencil attachments have depth
Jason2013 (1):
- Fix typo
Jesse Natalie (236):
- microsoft/clc: Images use nir_var_mem_image
- util/hash_table: Clear special 0/1 entries for u64 hash table too
- microsoft/compiler: Use textures for SRVs
- u_prim_restart: Fix index scanning with start offset
- d3d12: Don't accumulate timestamp queries
- u_threaded_context: Support including from C++
- d3d12: Inherit from threaded_query
- d3d12: Resources inherit from threaded_resource
- d3d12: Inherit from threaded_transfer
- d3d12: Use thread safe slab allocators in transfer_map handling
- d3d12: Pass explicit context to pre/post draw surface blits
- d3d12: Hook up threaded context
- d3d12: Fully init primconvert config
- d3d12: Fix Linux fence wait return value
- d3d12: Handle non-infinite wait timeouts > 49.7 days as infinite
- util/libsync: Fix timeout handling if poll() wakes up early
- d3d12: Don't wait for \*all* batches when synchronizing a resource
- d3d12: Don't wait for GPU reads to do CPU reads
- mesa/main: Fix use of alloca() without #include "c99_alloca.h"
- clc: Use kernel_arg_type_qual string to add const type qualifier to arg metadata
- microsoft/clc: Add a test for arg metadata
- d3d12: Fix incorrect hash table usage
- meson: Don't override built-in cpp_rtti option, error if it's invalid
- meson: Allow mismatching RTTI for MSVC
- android: Add a BOARD CFlags option so build can be customized
- mesa/main, android: Log errors to logcat
- android,d3d12: Support using DirectX-Headers dependency from AOSP
- android: Allow forcing softpipe
- d3d12: Support BGRA 555 and 565 formats
- d3d12: Support PIPE_CAP_MIXED_COLOR_DEPTH_BITS
- d3d12: Support RGBX formats mapped to RGBA
- microsoft/compiler: Handle GLES external textures
- gallium, windows: Use HANDLE instead of FD for external objects
- winsys/d3d12: Populate winsys handle format
- d3d12: Handle import/export of fd shared handles
- d3d12: Make format list all use macros
- d3d12: Generate format table using a macro list
- d3d12: Generate a pipe format -> typeless mapping table too
- d3d12: Validate opened D3D12 resource matches pipe template
- CI/windows: Uprev piglit
- CI/windows: Upload result.txt as an artifact
- CI/windows: Move D3D12 test YML to D3D12 driver folder
- CI/windows: Move SPIRV-to-DXIL test YML to microsoft folder
- CI/windows: Move reference files to relevant ci subdirectories
- CI/d3d12: Add a quick_shader run
- d3d12: Support compat level 330
- windows: Use TLS context/dispatch with shared-glapi
- d3d12: Handle depth readback on drivers that require full-resource copies for depth
- nir: Add an 'external' texture type for parity with samplers
- d3d12: Force emulation of all YUV formats using per-plane formats
- d3d12: Handle opening planar resources
- d3d12: Allow creating planar resources
- d3d12: Use overall resource format + plane format to get format info
- microsoft/compiler: Implement inot
- microsoft/compiler: Remove algebaric pass for inot
- ci/windows: Remove line numbers from assertions in spirv2dxil tests
- glapi: Never use dllimport/dllexport for TLS vars on Windows
- microsoft/compiler: Support lowered io (nir_intrinsic_load_input/store_output)
- microsoft/compiler: Lower io
- microsoft/compiler: Delete non-sysval deref load/store code
- microsoft/compiler: Load synthesized sysvals via lowered io
- d3d12: Fix NV12 resource importing
- softpipe: Add a dummy field to sp_fragment_shader_variant_key
- CI: Trigger Windows build on softpipe changes
- microsoft/compiler: Emit SSBOs from 0 -> count for GL (non-kernel, non-Vulkan) shaders
- microsoft/compiler: Hook up uavs-at-every-stage flag
- microsoft/compiler: Handle write masks in SSBO lowering pass
- d3d12: Support SSBOs in root signatures
- d3d12: Always create buffers as UAV-capable
- d3d12: Support setting SSBOs on the context and turning them into descriptors
- d3d12: Use DXIL load/store lowering pass
- d3d12: Set SSBO support caps
- d3d12: Avoid a debug warning trying to unmap a not-mapped resource
- d3d12: Replace pipe cap literals with D3D12 defines when available
- d3d12: Enable cubemap arrays
- microsoft/compiler: Position should always be no-perspective
- d3d12: Handle cubemap gather on int cubemaps
- d3d12: Enable texture gather
- microsoft/compiler: Fix LOD instruction to return 2 values
- gallium/aux: Move index offsetting from prim restart to primconvert
- microsoft/compiler: Change vulkan_environment bool to an enum
- microsoft/compiler: Put SSBO and image handles in separate arrays
- microsoft/compiler: Emit GL images in descriptor space 1 with driver_location instead of binding
- microsoft/compiler: Unify handle retrieval between images and UBO/SSBO
- microsoft/compiler: Emit SRVs/UAVs as arrays
- microsoft/compiler: Fix array-of-array handling for derefs of textures/images
- microsoft/compiler: Handle images as derefs for GL
- microsoft/compiler: Implement atomic image ops
- microsoft/compiler: Handle forced early depth
- microsoft/compiler: Hook up memory/control barriers
- microsoft/compiler: Fix handling of fp16-in-32bit-val ops to handle high bits
- d3d12: Shrink 2D array size so that max-layer cube arrays can be created
- d3d12: Fix format table typeless-ness for A8 and RGBA1010102
- d3d12: Rename UAV -> SSBO to disambiguate with image UAVs
- d3d12: Add missed SSBO binding enum value
- d3d12: Figure out if we can support GL shader images
- d3d12: Handle format support queries for shader images
- d3d12: Init null UAVs
- d3d12: Retrieve shader image dimensions during shader compiles
- d3d12: Handle images in the root signature
- d3d12: Handle set_shader_images
- d3d12: Create textures as UAV-capable when appropriate
- d3d12: Fill out shader image descriptor tables
- d3d12: Lower cube images to 2D arrays via existing int cubemap lowering pass
- d3d12: Handle memory barriers
- d3d12: Handle bitcasting of shader images
- d3d12: Set appropriate caps for shader images
- nir_opt_dead_cf: Remove dead ifs
- shader_info: tess.spacing needs to be unsigned
- microsoft/compiler: Move workgroup_size lowering from clc
- microsoft/compiler: Handle more GL memory barriers
- d3d12: Limit sampler view count to 32
- d3d12: Keep state vars last in the per-stage root parameters
- d3d12: Remove draw_info from selection_context
- d3d12: Stop trying to set D3D12_DIRTY_SHADER during bindings
- d3d12: Compile, bind, and cache compute PSOs
- d3d12: Support compute root signatures
- d3d12: Hook up compute shader variations
- d3d12: Implement launch_grid
- d3d12: Implement num workgroups as a state var
- d3d12: Handle indirect dispatch
- d3d12: Run DXIL shared atomic lowering pass
- d3d12: Enable compute
- docs: Update d3d12 extension list and new_features.txt
- d3d12/ci: Skip flaky tex-miplevel-selection and timestamp tests
- mesa/st: Assert that NIR drivers that support tess use tess levels as inputs
- d3d12: Export d3d12_get_state_var from d3d12_nir_passes.c
- d3d12: Fix re-enabling predication after temporary disablement
- d3d12: Predication fix: re-enable after restarting a batch if needed
- d3d12: Predication fix: For boolean queries used for predication, D3D12 uses uint64, so clear at least a uint64 in the result
- d3d12: Declare support for inverted conditional render
- d3d12: Upgrade first vertex state var into all vertex draw params
- d3d12: Enable base instance and draw params extensions
- d3d12: Add a command signature cache for indirect draws
- d3d12: Handle draw indirect and multi-draw indirect
- d3d12: Handle indirect twoface draws
- d3d12: Add a compute transformation to handle indirect draws that need draw params
- d3d12: Enable draw and multi-draw indirect
- docs: Update d3d12 features
- d3d12: When no framebuffer attachments are present, use ForcedSampleCount instead of SampleDesc.Count for MSAA
- d3d12: When no framebuffer attachments are present, the viewport must be clamped to framebuffer size
- d3d12: Support ARB_framebuffer_no_attachments
- docs: Update d3d12 feature list
- ci/windows: Use 2 container stages
- microsoft/compiler: Handle variables declared per-sample
- microsoft/compiler: Handle load_sample_pos_at_id
- microsoft/compiler: Always have at least one GS active stream
- microsoft/compiler: Handle 'pull model' explicit interpolation intrinsics
- microsoft/compiler: Handle textureGatherCmp
- microsoft/compiler: Handle input coverage
- microsoft/compiler: Handle tex texture/sampler offset srcs
- microsoft/compiler: Handle load_invocation_id for GS and HS
- microsoft/compiler: Emit samplers as array types
- microsoft/compiler: Handle bitfield_insert
- microsoft/compiler: Use ibfe/ubfe for bitfield extract instead of lowering to shifts
- microsoft/compiler: Handle msb/lsb/bfrev
- microsoft/compiler: Lower helper invocations
- d3d12: Sample mask output needs to be uint-typed
- d3d12: Lower load_sample_pos to load_sample_pos_at_id
- d3d12: Report sample positions
- d3d12: Modify shaders when MSAA is disabled
- d3d12: Relax multisampling direct copy requirements
- d3d12: Temp resources for same-resource copies can be MSAA too
- d3d12: Report number of GS streams
- d3d12: Apply GS point sprite lowering to fixed-function point size too
- d3d12: Run point sprite lowering pass on multi-stream GS when safe
- d3d12: Support dynamic UBO/SSBO indexing
- d3d12: When mapping a non-directly-mappable resource for write, readback first
- d3d12: Set sample-rate shading and GLSL 400 caps
- docs: Update d3d12 features
- mesa/st: Lower user clip planes for tess eval too
- microsoft/compiler: Force integer I/O vars to use flat/constant interpolation
- microsoft/compiler: Use driver_location instead of location for inter-stage varying index in GL
- microsoft/compiler: Semantic table should be de-duped for multi-row semantics too
- microsoft/compiler: Multi-row output semantics need to write multiple never_writes_masks
- microsoft/compiler: Getting a builtin function with an undeclared signature should be unreachable
- microsoft/compiler: Add mapping from MESA_SHADER_* to DXIL_*_SHADER for tessellation
- microsoft/compiler: Fix typo in enum entry
- microsoft/compiler: Emit statically-indexed resource handles and scratch later
- microsoft/compiler: Support emitting multiple functions into a DXIL module
- microsoft/compiler: Emit functions with actual function names
- microsoft/compiler: Emit all NIR functions into the DXIL module
- microsoft/compiler: Handle store_per_vertex_output for HS outputs
- microsoft/compiler: Split hull (tess ctrl) shaders into main and patch constant funcs
- microsoft/compiler: Delete misleading TODO comments about semantic table
- microsoft/compiler: Emit HS PSV validation and entrypoint metadata
- microsoft/compiler: Fix I/O signatures for tess shaders
- microsoft/compiler: Overlap patch and non-patch varyings so both are separately 0-indexed
- microsoft/compiler: When sorting patch varyings, adjust location to be in normal varying range
- microsoft/compiler: Gather patch const signature and handle tess factor in it
- microsoft/compiler: Add patch constant signature into PSV and as container blob
- microsoft/compiler: Add a pass for hull and domain shaders to shrink tess level vars
- microsoft/compiler: For store_output from HS, use storePatchConstant
- microsoft/compiler: For load_input from DS, use loadPatchConstant
- microsoft/compiler: Handle load_per_vertex_output as LoadOutputControlPoint
- microsoft/compiler: Handle load_output in the HS stage as reading a previously written patch constant
- microsoft/compiler: Handle domain location intrinsic
- microsoft/compiler: Emit DS PSV validation and entrypoint metadata
- microsoft/compiler: Primitive ID should only be added as a sysval in geometry shaders
- microsoft/compiler: Location_frac needs to be included in sort order
- microsoft/compiler: Handle clip/cull distance as an input to tess shaders
- d3d12: Enable PIPE_CAP_TGSI_TEXCOORD
- d3d12: Initial plumbing for tesselation
- d3d12: Link tesselation control and eval shaders
- d3d12: Handle patch_vertices and patch topology
- d3d12: Handle passthrough TCS in the case where eval is bound
- d3d12: Add a state variable for patch_vertices_in
- d3d12: Update varying creation logic to handle location_frac
- d3d12: Handle input clip array size in the shader key
- d3d12: Set caps for tesselation
- microsoft/compiler: Fix UAV resource ID counting for static indexed handles
- d3d12: Fix compute transform for multi-draw indirect with dynamic count + state vars
- d3d12: Add UAV barriers for UAVs that are being used by compute transforms
- d3d12: Include SO buffer count as a PSO dirty bit
- d3d12: Support transform feedback pause/resume
- d3d12: Move indirect compute to real indirect dispatches
- d3d12: SO buffer filled size is only 32-bit
- d3d12: Add a comment for what the existing compute transform does
- d3d12: Add a couple compute transforms for "fake" SO buffers
- d3d12: Add a compute transform for draw auto
- d3d12: Move compute transform state save/restore to compute_transforms.cpp
- d3d12: Move "fake" SO buffer handling to compute transforms instead of CPU readback
- d3d12: Implement DrawAuto aka DrawTransformFeedback
- d3d12: Compute transform UBO0 is actually binding 1
- d3d12: Rewrite subquery logic
- d3d12: Switch primitives-generated query to use XFB, GS, and IA data
- d3d12: ARB_transform_feedback2
- microsoft/compiler: Correctly support I/O on variables with location_frac
- microsoft/compiler: Support multiple GS output streams
- d3d12: Unpack multi-stream varyings
- d3d12: Fix xfb varying matching for vars with location_frac
- d3d12: Handle indexed queries
- d3d12: ARB_transform_feedback3
- microsoft/compiler: Only prep phis for the current function
- microsoft/compiler: Only treat tess level location as special if it's a patch constant
- tc: CPU storage needs to be freed with align_free
Jianxun Zhang (7):
- intel: provide pci bus and dev info in base device struct
- intel: use PCI info to compute device uuid
- anv: remove private pci fields
- intel: dump PCI info in intel_dev_info
- intel: remove chipset_id
- intel: add swizzle flag into driver uuid
- anv: refactor queue chain
Jonathan Gray (6):
- util: unbreak non-linux mips64 build
- util: fix util_cpu_detect_once() build on OpenBSD
- radv: use MAJOR_IN_SYSMACROS for sysmacros.h include
- util/u_atomic: fix build on clang archs without 64-bit atomics
- util: fix build with clang 10 on mips64
- util: use correct type in sysctl argument
Jonathan Marek (3):
- freedreno/layout: Fix the UBWC block size for the Y plane
- turnip: enable UBWC for NV12
- turnip: use SUBDRAW_SIZE and constant sized tess bos
Jordan Crouse (1):
- turnip: Update the msm_kgsl.h header with the sanitized 4.19 version
Jordan Justen (50):
- intel/genxml: Update genxml to support tessellation/geometry distribution
- intel/dev/test: Assert (verx10 / 10) == ver
- Revert "iris: Disable I915_FORMAT_MOD_Y_TILED_GEN12* on adl-p/display 13"
- iris: Use mi_builder in iris_load_indirect_location()
- intel/genxml/125: Update COMPUTE_WALKER POSTSYNC_DATA struct
- anv,blorp,iris: Set MOCS for COMPUTE_WALKER post-sync operation
- intel/dev: Add platform enum with DG2 G10 & G11
- intel: Add intel_gem_count_engines
- intel: Add intel_gem_create_context_engines
- iris: Add iris_init_batches
- iris/batch: Move kernel context init to iris_init_non_engine_contexts
- iris/batch: Add exec_flags field
- iris: Move away from "hw" for some context terminology
- iris: Destroy all batches with a new iris_destroy_batches() function
- iris: Make iris_kernel_context_get_priority() public
- iris/batch: Add support for engines contexts
- intel/l3: Make DG1 urb-size exception more generic
- iris: Not all gfx12+ have aux_map_ctx
- anv: Align buffer VMA to 2MiB for XeHP
- iris: Align buffer VMA to 2MiB for XeHP
- nir/lower_tex: Add filter for tex offset lowering
- intel/compiler: Use nir_lower_tex_options::lower_offset_filter for tg4 on XeHP
- intel/genxml/12.5: Remove bt-pool enable from 3DSTATE_BINDING_TABLE_POOL_ALLOC
- anv: Add BINDING_TABLE_POOL_BLOCK_SIZE
- intel/compiler: Adjust TCS instance-id for dg2+
- isl: Don't enable HDC:L1 caches on DG2
- intel: Add device info for DG2
- intel: Add \*disabled* device ids for DG2
- intel/devinfo: Adjust L3 banks for DG2
- iris: Use mi_builder to set 3DPRIM registers for draws
- iris: Use mi_builder for load/store reg/mem/imm functions
- intel/dev: Add max_threads_per_psd field to devinfo for gfx8+
- anv,blorp,crocus,i965,iris: Use devinfo->max_threads_per_psd for gfx8+
- intel/dev: Add intel_hwconfig_types.h from random post on the internet
- intel/dev: Add intel_print_hwconfig_table()
- intel/dev: Print urb size with intel_dev_info
- intel/dev: Add intel_device_info::apply_hwconfig
- intel/dev: Set intel_device_info::apply_hwconfig for DG2
- intel/dev: Apply settings from hwconfig if devinfo::apply_hwconfig is set
- intel/dev: Recalculate max_cs_threads after applying hwconfig changes
- intel/gem: Return length from intel_i915_query_alloc
- intel/dev: Add DG1 PCI id 0x4909
- intel/dev: Add device ids for ADL-N
- intel/dev: Add device info for RPL
- intel/genxml: Extend length of 3DSTATE_WM_HZ_OP for gfx12.5
- intel/genxml: Extend length of 3DSTATE_DEPTH_BUFFER for gfx12.5
- isl: Enable compression with Tile4
- intel/fs: Assert that old pull-const code is not used if devinfo->has_lsc
- anv: Align GENERAL_STATE_POOL_MIN_ADDRESS to 2MiB
- anv: Align state pools to 2MiB on XeHP
Joshua Ashton (8):
- radv: Always inline descriptor writes
- radv: Split off cmd_buffer variant of descriptor set updates
- radv: Split off cmd_buffer variant of descriptor set template updates
- nvc0: Fix uninitialized width/height/depth warning.
- radv: Refactor S_FIXED to radv_float_to_{s,u}fixed
- radv: Expose min_lod in \*_make_texture_descriptor
- vulkan: Update the XML and headers to 1.2.199
- radv: Implement VK_EXT_image_view_min_lod
José Fonseca (4):
- d3d10umd: Rename Dxgi.h to DxgiFns.h.
- d3d10umd: Update for transfer interface changes.
- d3d10umd: Fix MSVC build.
- d3d10umd: Update for set_sampler_views take_ownership parameter.
Juan A. Suarez Romero (22):
- vc4/ci: update expected results
- v3dv/ci: update expected results
- broadcom/compiler: handle array of structs in GS/FS inputs
- broadcom/compiler: apply constant folding on early GS lowering
- nir: add NIR_DEBUG envvar
- mesa: allow TEXTURE_BUFFER target for ARB_texture_buffer_range
- st/pbo: do not use GS for NIR preferred shaders
- gallium/util: add helper to clamp colors to valid range
- v3d: clamp clear color
- gallium: add new PIPE_CAP_IMAGE_STORE_FORMATTED
- st/pbo: add the image format in the download FS
- st/pbo: set layer coord for array textures
- v3d: enable ARB_texture_view
- tgsi-to-nir: initialize NIR_DEBUG envvar
- nir: use call_once() to init debug variable
- broadcom/ci: restructure expected results
- softpipe: enable PIPE_CAP_IMAGE_STORE_FORMATTED
- d3d12: enable PIPE_CAP_IMAGE_STORE_FORMATTED
- mesa/st: do not expose ARB_shader_image_load_store if not fully implemented
- mesa: fix MAX_GEOMETRY_IMAGE_UNIFORMS check support
- v3d/doc: do not expose ARB_shader_image_load_store
- v3d: keep clear color untouched
Karol Herbst (5):
- spirv: Don't add 0.5 to array indicies for OpImageSampleExplicitLod
- clover/image: add templated basic_image class to simplify image subclassing
- clover/format: Full rework on how we declare supported images.
- clover/formats: pass in cl_mem_flags for better format checking
- clover/api: fix clGetMemObjectInfo for images
Kenneth Graunke (82):
- intel: Drop Tigerlake revision 0 workarounds
- crocus: Replace devinfo->ver[x10] checks with GFX_VER[x10]
- intel/genxml: Fix Indirect Object Access Upper Bound on Gfx4
- intel/genxml: Add an "mbz" data type
- intel/genxml: Drop "Hierarchical Depth Buffer MOCS" field
- intel/genxml: Change 3DSTATE_CONSTANT_XS::MOCS to be MBZ on Gfx8.
- isl: Fill in MOCS even for SURFTYPE_NULL surfaces.
- isl: Fill in MOCS for NULL depth, stencil, and HiZ buffers.
- blorp: Fill in MOCS even for SURFTYPE_NULL surfaces.
- blorp: Fill in MOCS for null depth/stencil/HiZ buffers.
- blorp: Use a non-zero MOCS for disabled constant buffers
- iris: Drop unnecessary parenthesis
- iris: Set Bindless Sampler State MOCS
- iris: Set default MOCS for NULL depth/stencil/HiZ buffers
- iris: Set MOCS on 3DSTATE_CONSTANT_XS on Gfx9+
- iris: Set MOCS on 3DSTATE_CONSTANT_ALL packets that disable all buffers
- iris: Set MOCS on NULL vertex buffers
- iris: Set MOCS on NULL stream output buffers
- iris: Fix MOCS for buffer copies
- anv: Set default MOCS for NULL depth/stencil/HiZ buffers
- anv: Set MOCS for 3DSTATE_CONSTANT_XS on Gfx7.x as well
- anv: Set MOCS in 3DSTATE_CONSTANT_XS even if there isn't a buffer.
- anv: Set MOCS on NULL vertex buffers
- anv: Set MOCS on NULL stream output buffers
- crocus: Set MOCS for most state base addresses on pre-Gen8
- crocus: Tidy the ifdefs for emitting STATE_BASE_ADDRESS
- crocus: Set MOCS for index buffers on Gen6+
- crocus: Set MOCS on NULL stream output buffers
- crocus: Set default MOCS for NULL depth/stencil/HiZ buffers
- crocus: Set MOCS for push constant buffers where possible
- crocus: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too
- crocus: Fix MOCS for buffer copies.
- i965: Use ISL for MOCS rather than open coding it everywhere
- i965: Set default MOCS for NULL depth/stencil/HiZ buffers
- i965: Set MOCS for push constant buffers on Haswell and Gfx9+
- i965: Set MOCS on NULL stream output buffers
- i965: Set MOCS for 3DSTATE_SO_BUFFERS on Gfx7.x too
- i965: Set MOCS for 3DSTATE_INDEX_BUFFER on Gfx6/7 as well.
- i965: Fix MOCS for BLORP buffer copies
- i965: Port STATE_BASE_ADDRESS to genxml and fix bugs
- i965: Set MOCS for Bindless Surface/Sampler State base addresses
- intel/genxml: Add an field option for nonzero="true"
- intel/genxml: Assert that all MOCS fields are non-zero on Gfx7+
- intel/genxml: Include blitter commands in gen*_pack.h
- intel/genxml: Allow MI_FLUSH_DW on the blitter
- intel/genxml: Add XY_BLOCK_COPY_BLT on Tigerlake and later.
- iris: Fix parameters to iris_copy_region in reallocate_resource_inplace
- intel/genxml: Simplify prefix handling for field value lists
- intel/genxml: Collapse leading underscores on prefixed value defines
- intel/genxml: Fix MI_FLUSH_DW to actually specify the length properly
- intel/genxml: Fix XY_BLOCK_COPY_BLT destination tiling field type
- intel/genxml: Decode VALIGN/HALIGN values in XY_BLOCK_COPY_BLT
- iris: Make a helper function for cross-batch dependency flushing
- iris: Check for cross-batch flushing whenever a buffer is newly written.
- iris: Tidy code in iris_use_pinned_bo a bit
- blorp: Fix compute-blits for rectangles not aligned to the workgroup
- blorp: Don't try to use the 3D stencil write hardware for compute
- blorp: Assert that BLORP_BATCH_PREDICATE_ENABLE isn't set for compute
- blorp: Disallow multisampling for BLORP compute blits and copies.
- iris: Rename is_render_target to is_dest in a few blit functions
- isl: Move some genxml surface state helpers into an include file
- intel/vec4: Use ir_texture_opcode less in emit_texture()
- intel/vec4: Use nir_texop in emit_texture instead of translating
- intel/vec4: Inline emit_texture and move helpers to brw_vec4_nir.cpp
- intel/compiler: Use uppercase enum values in brw_ir_performance.cpp
- intel/fs: Reuse the same FS input slot for VUE header fields.
- iris: Use prog_data->inputs rather than shader info in SBE code.
- iris: Do primitive ID overrides in 3DSTATE_SBE not SBE_SWIZ
- iris: Directly access BOs rather than using iris_resource_bo(...)
- intel: Allow copy engine class in intel_gem_create_context_engines()
- intel/genxml: Add XY_BLOCK_COPY_BLT Color Depth enum values
- intel/dev: Add a has_flat_ccs flag
- blorp: Add a blorp_address::local_hint flag
- isl: Add isl_dev->mocs.blitter_{src,dst} fields
- blorp: Add support for blorp_copy via XY_BLOCK_COPY_BLT
- iris: Create an IRIS_BATCH_BLITTER for using the BLT command streamer
- iris: Only have one blorp_batch_init/finish in iris_copy_region()
- iris: Set BLORP_BATCH_USE_{COMPUTE,BLITTER} flags for the target batch
- iris: Implement iris_blorp_exec() for the blitter engine
- iris: Fix and refactor check for clear color being fully zero
- iris: Make an iris_foreach_batch macro that skips unsupported batches
- blorp: Add blorp_measure hooks to the blitter codepaths
Khem Raj (1):
- v3dv: account for 64bit time_t on 32bit arches
Konstantin Seurer (4):
- lavapipe: Fixed maxFragmentCombinedOutputResources
- anv: Fixed maxFragmentCombinedOutputResources
- turnip: Fixed maxFragmentCombinedOutputResources
- panvk: Fixed maxFragmentCombinedOutputResources
Kostiantyn Lazukin (3):
- util/u_trace: Replace Flag with IntEnum to support python3.5
- util/ra: use adjacency matrix for undirected graph
- util/ra: Fix numeric overflow during bitset allocation
Krunal Patel (2):
- frontends/va: use un-padded width/height in ExportSurfaceHandle
- frontend/va: Setting the size of VADRMPRIMESurfaceDescriptor
Leandro Ribeiro (12):
- egl: remove unnecessary spaces after types
- egl/wayland: replace EGL_DRI2_MAX_FORMATS by EGL_DRI2_NUM_FORMATS
- egl/wayland: deprecate drm_handle_format() and drm_handle_capabilities()
- egl/wayland: do not try to access memory if allocation failed
- egl/wayland: move formats and modifiers to a separate struct
- egl/wayland: remove unused constant EGL_DRI2_NUM_FORMATS
- loader: add function to get render node from dev_t
- egl/wayland: add initial dma-buf feedback support
- egl/wayland: move loader_dri_create_image() calls to separate functions
- egl/wayland: use surface dma-buf feedback to allocate surface buffers
- egl/wayland: do not try to bind to wl_drm if not advertised
- egl/wayland: fix surface dma-buf feedback error exits
Lepton Wu (1):
- driconf: Fix unhandled tags in static conf
Lionel Landwerlin (119):
- vulkan/wsi/wayland: don't expose surface formats not fully supported
- anv: fix push constant lowering with bindless shaders
- pps: remove counter_ids fields
- pps: add an intel config file
- docs: put a list of commands to setup perfetto
- intel/dev: printout timestamp period
- intel/pps: provide accurate min sampling period
- intel/pps: reuse timestamp_frequency from intel_device_info
- intel/dev: fix HSW GT3 number of subslices in slice1
- intel/dev: don't forget to set max_eu_per_subslice in generated topology
- intel/dev: reuse internal functions to set mask
- intel/dev: fix subslice/eu total computations with some fused configurations
- intel/perf: fix perf equation subslice mask generation for gfx12+
- intel/devinfo: use compatible type for ARRAY_SIZE
- intel/devinfo: fix wrong offset computation
- intel: remove 2 preproduction pci-id for ADLS
- intel: move away from booleans to identify platforms
- intel/dev: also test crocus & i915 pci-ids
- anv: don't forget to add scratch buffer to BO list
- anv: fix multiple wait/signal on same binary semaphore
- anv: don't try to close fd = -1
- anv: initialize anv_bo_sync base fields
- intel/fs: fix shader call lowering pass
- pps: allow drivers to report timestamps in their own time domain
- intel/perf: add a helper to read timestamp from reports
- pps: fixup sporadic missing counters
- intel/ds: drop timestamp correlation code
- intel/perf: track end timestamp of queries
- intel/ds: drop unused constructors
- intel/ds: isolate intel/perf from the pps-producer
- intel/pps: tweak intel config some more
- intel/ds: remove verbose messages
- intel: move timestamp scaling helper to intel/perf
- anv: fix execbuf syncobjs/syncobj_values array leak
- util/u_trace: refcount payloads
- nir/opt_deref: don't try to cast empty structures
- util/u_trace: add end_of_pipe property to tracepoints
- util/u_trace/perfetto: add new env variable to enable perfetto
- intel/nir: preserve access value when duping intrinsic
- nir/lower_io: include the variable access in the lowered intrinsic
- nir/print: printout ACCESS_STREAM_CACHE_POLICY
- nir: add a new access flag to allow access in helper invocations
- nir: add intrinsics for ray queries
- nir: track variables representing ray queries
- nir: add a ray query optimization pass
- spirv: handle ray query intrinsics
- intel/debug: reclaim 7 unused bits from classic driver
- genxml: fix compilation with P/I defines
- genxml: protect _length defines in genX_bits.h
- docs/envvars: update after INTEL_DEBUG cleanup
- util/u_vector: prevent C++ warning on cast from void* to something else
- vulkan: fix missing handling of WSI memory signal
- anv,wsi: simplify WSI synchronization
- gitlab-ci: disable radv-fossils
- intel/devinfo: adjust subslice array size
- util/u_trace: protect against reentrant calls
- anv: don't leave anv_batch fields undefined
- anv: limit compiler valid color outputs using NIR variables
- intel/dev: fixup chv workaround
- ci: disable vs2019 windows build
- intel/devinfo: printout pixel pipes in info printout
- intel/devinfo: printout devinfo struct size
- intel/devinfo: add a helper to check for slice availability
- intel/devinfo: drop num_eus_per_subslice field
- anv: fix perf queries
- intel/dev: extract slice/subslice total computation
- intel/devinfo: split out l3/pixelpipes counting
- intel/devinfo: deal with i915 topology query change
- intel/fs: disable VRS when omask is written
- blorp: add description & helpers to printout ops
- isl: add helpers to printout ops
- anv: expose a couple of emit helper to build utrace buffer copies
- intel/dev,perf: Use a single timescale function
- intel/blorp: add measure_end entry point
- anv: implement u_trace support
- intel/ds: reuse intel_ioctl()
- intel/ds: allow user to select metric set at start time
- intel/ds: don't forget to reset upper dword timestamp read
- intel/ds: use the right i915_drm.h include location
- intel/ds: use a per GPU clock ID
- util/u_process: protect entrypoints for c++
- anv: add perfetto source
- pps: enable anv source in example config file
- tools/pps: limit intel cfg to 250ms of sampling
- iris: utrace/perfetto support
- intel/dev: fix ppipe_mask computation
- anv: fix missing descriptor copy of bufferview/surfacestate content
- genxml: reduce amount of generated code
- anv: verify that the format supports multisampling
- anv: switch a bunch of struct/enum to 1.3 versions
- relnotes/features: updates for Vulkan 1.3
- intel/ci: expected failure for 1.3 with older CTS
- docs: start some documentation on Anv
- docs/anv: list environment variables
- docs/anv: add descriptor memory layout
- anv: tidy long lines in descriptor code
- docs: update INTEL_DEBUG environment variable documentation
- intel/tracepoint: simplify tracepoint descriptions
- util/u_trace: make mako conditional code easier to read
- util/utrace: make generated code a tiny bit nicer to look at
- compiler: add VARYING bit for primitive shading rate
- genxml: gen12.5 changes for CPS
- genxml: add new 3DSTATE_PS_EXTRA bit
- intel/dev: details CPS feature support
- isl: add support for coarse pixel control surfaces
- isl: disable CPB surface compression
- nir/builder: add ishl_imm helper
- intel/compiler: add a new pass to lower shading rate into HW format
- intel/compiler: add primitive rate output support
- anv: force primitive shading rate write in last geometry stage
- anv/pass: rely on precomputed dynamic rendering pass/subpass more
- anv: Update VK_KHR_fragment_shading_rate for newer HW
- intel/fs: don't set allow_sample_mask for CS intrinsics
- intel/nir: fix shader call lowering
- anv: fix conditional render for vkCmdDrawIndirectByteCountEXT
- nir: fix lower_memcpy
- anv/genxml/intel/fs: fix binding shader record entry
- anv: fix fast clear type value with external images
- intel/fs: fix total_scratch computation
Lorenz Brun (1):
- frontends/va: Return error in vaRenderPicture if decoder is NULL
Louis-Francis Ratté-Boulianne (7):
- microsoft/compiler: add support for load_layer_id
- microsoft/compiler: Add subpass input types
- microsoft/compiler: Use SRVs for read-only images
- microsoft/spirv_to_dxil: check for variables r/w access
- microsoft/spirv_to_dxil: lower input attachments
- microsoft/spirv_to_dxil: Lower push constant loads to UBO loads
- microsoft/spirv_to_dxil: Allow passing a vulkan -> d3d12 binding mapping table
Lucas Stach (11):
- etnaviv: fix alpha blend with dither on older GPUs
- etnaviv: initialize vertex attributes on context reset
- egl/wayland: break double/tripple buffering feedback loops
- etnaviv: drm: fix size limit in etna_cmd_stream_realloc
- etnaviv: drm: properly handle reviving BOs via a lookup
- etnaviv: drm: export BO idle check function
- etnaviv: drm: rename _etna_bo_del
- etnaviv: drm: defer destruction of softpin BOs
- egl/dri2: remove superfluous flush when changing the context
- egl/dri2: short-circuit dri2_make_current when possible
- etnaviv: draw: only mark resources as read/written when the state changed
M Henning (2):
- nouveau/nir: Use natural alignment for scalars
- nouveau/nir: Lower 64-bit phis
Manas Chaudhary (2):
- panvk: Add check for null fence
- panvk: Fix pointer corruption in panvk_add_wait_event_syncobjs
Maniraj D (1):
- egl: set TSD as NULL after deinit
Manuel Stoeckl (2):
- gbm: add missing R16 case in gbm_bo_get_bpp
- gbm: add GBM_FORMAT_GR1616 and RG1616
Marcin Ślusarz (41):
- iris: fix scratch address patching for TESS_EVAL stage
- intel: fix INTEL_DEBUG environment variable on 32-bit systems
- intel/decoder: Dump Task/Mesh shaders
- spirv: handle SpvOpMemberName
- intel/compiler: extract brw_nir_load_global_const out of rt code
- intel/compiler: Get mesh_global_addr from the Inline Parameter for Task/Mesh
- intel/compiler: Load draw_id from XP0 in Task/Mesh shaders
- nir: limit lower_clip_cull_distance_arrays input to traditional stages
- nir/print: simplify printing of IO semantics
- nir/print: expand printing of io semantics.gs_streams
- nir/print: compact printing of intrinsic indices
- nir/print: move print_load_const_instr up
- nir/print: group hex and float vectors together
- nir/print: print const value near each use of const ssa variable
- intel/compiler: disable workaround not applicable to gfx >= 11
- spirv: handle ViewportMaskNV builtin/cap from SPV_NV_mesh_shader
- compiler: add new MESH_VIEW_COUNT/MESH_VIEW_INDICES system values
- spirv: add MeshViewCountNV/MeshViewIndidcesNV builtins from SPV_NV_mesh_shader
- nir: add load_mesh_view_count and load_mesh_view_indices intrinsics
- spirv: handle multiview bits of SPV_NV_mesh_shader
- nir: remove invalid assert affecting per-view variables
- spirv: mark [Clip|Cull]DistancePerViewNV variables as compact
- nir: handle per-view clip/cull distances
- freedreno/rnn: normalize line endings in rules-ng.xsd
- microsoft/compiler: normalize line endings
- ci/windows: normalize line endings
- radv/ci: add line endings exception for files generated with wine
- Add new rules to .gitattributes
- intel/compiler: handle gl_[Clip|Cull]Distance in mesh shaders
- intel/compiler: handle gl_[Clip|Cull]Distance from mesh in fragment shaders
- intel/compiler: Use Task/Mesh InlineData for the first few push constants
- anv: Enable conditional rendering in vkCmdDrawMeshTasksNV
- anv: Add support for non-zero firstTask in vkCmdDrawMeshTasksNV
- anv: Add support for UBOs, SSBOs and push constants in Mesh pipeline
- anv: Implement indirect dispatch for Mesh pipeline
- anv: tell the hardware about gl_[Clip|Cull]Distance in mesh shaders
- anv: include ClipDistance array in mesh shader per-vertex output
- anv: Put first few push constants directly into Task/Mesh InlineData
- intel/compiler: fix array & struct IO lowering in mesh shaders
- anv: don't set color state when input state was requested
- intel/compiler: ignore per-primitive attrs when calculating flat input mask
Marek Olšák (240):
- gallium/util: add some extern "C" guards
- radeonsi: si_state_shaders.c -> cpp
- radeonsi: split si_shader_key into ps and ge parts to minimize memcmp overhead
- radeonsi: don't memcmp inlined uniform values if uniform inlining is disabled
- radeonsi: don't pass NULL into si_get_nir_shader
- radeonsi: replace the GS prolog with a monolithic shader variant
- radeonsi: enable shader culling on Navi1x consumer SKUs as well
- ac,radeonsi: print a lowercase codename in the renderer string
- radeonsi: reorder and don't print patch level DRM version in the renderer string
- ac/llvm: use fmac instead of mul+sub in face culling
- ac/llvm: add helper ac_build_is_inf_or_nan
- ac/llvm: accept primitives whose face culling determinant is Inf or NaN
- gallium,vbo: add PIPE_BIND_VERTEX_STATE for display lists
- gallium/u_threaded: implement pipelined partial buffer uploads using CPU storage
- mesa: fix crashes in the no_error path of glUniform
- radeonsi: add SI_MAX_VRAM_MAP_SIZE definition
- radeonsi: add an option to use CPU storage uploads for threaded context
- radeonsi: change bind_history to track usage in each shader stage
- radeonsi: rebind a buffer only in shader stages where it's been bound
- radeonsi: don't sync PS or CS before (clear|copy)_buffer based on bind history
- radeonsi: don't update bind_history for internal buffer clears and copies
- radeonsi: don't sync before clear_buffer and copy_buffer if the buffer is idle
- radeonsi: properly destroy buffers on failure
- winsys/amdgpu: remove force_chaining parameter from cs_check_space
- winsys/amdgpu: set max_ib_size and max_check_space_size later in cs_check_space
- radeonsi: don't set inline_uniforms for viewperf because it's enabled by default
- amd/addrlib: change how the license is formatted to match internal tree
- amd/addrlib: cosmetic addrlib update
- mesa: discard draws with count=0 to decrease overhead
- st/mesa: don't crash when draw indirect buffer has no storage
- mesa: remove USAGE_ELEMENT_ARRAY_BUFFER because it's unused and adding overhead
- mesa: move setting USAGE_PIXEL_PACK_BUFFER out of BindBuffer to reduce overhead
- mesa: remove redundant flagging USAGE_ARRAY_BUFFER
- mesa: add a no_error path to _mesa_handle_bind_buffer_gen
- glthread: don't execute display lists if they have no effect
- glthread: don't sync for glIsEnabled with a few enums
- glthread: add an option to make glCheckFramebufferStatus a no-op
- glthread: add a trivial thread-safe way to skip display list execution
- radeonsi: enable shader culling for indirect draws
- radeonsi: remove unused parameters in si_emit_draw_packets
- gallium/radeon: change the BO priority definitions to bits
- gallium/radeon: remove/merge some BO priorities and remove holes
- gallium/radeon: remove unused RADEON_DEPENDENCY_START_FENCE
- gallium/radeon: merge BO read/write usage flags with priority flags
- winsys/amdgpu: simplify parameter passing and derefs in cs_add_buffer
- winsys/amdgpu: remove an amdgpu_cs dereference from amdgpu_cs_add_buffer
- winsys/amdgpu: don't clear RADEON_USAGE_SYNCHRONIZED for last_added_bo_usage
- winsys/amdgpu: increase the BO hash list size
- winsys/amdgpu: don't use ip_instance and ring fields of fence and IB structures
- winsys/amdgpu: move BO fence array updates to the CS thread
- winsys/amdgpu: optimize looping inefficiencies in add_bo_fence_dependencies
- radeonsi: don't invoke si_decompress_depth if textures are not dirty at binding
- mesa: fix locking when destroying/overwriting/adding display lists
- mesa: remove display list OPCODE_NOP
- mesa: remove PADDING_64BIT by adding the dlist header into vbo_save_vertex_list
- vbo: return a GL error earlier in vbo_save_playback_vertex_list_gallium
- vbo: use int16_t for vbo_save_vertex_list::gallium::private_refcount
- vbo: restructure vbo_save_vertex_list to get more cache hits
- mesa: use alloca in search_resource_hash
- glsl: add gl_resource_name to precompute "name" properties later
- mesa: don't compute the same strlen up to 3x in _mesa_program_resource_find_name
- mesa: precompute strlen in gl_resource_name::length and use it
- mesa: rename locals in _mesa_program_resource_find_name for clarity
- mesa: preparse [ and [0] in gl_resource_name and use it in shader_query.cpp
- mesa: handle hash collisions in program resource lookups (e.g. uniforms)
- mesa: add separate hash tables for each GLSL resource type
- mesa: skip strlen when hashing strings for ProgramResourceHash
- radeonsi: print the border color error message only once
- util: add a util_bitcount variant that selects POPCNT through C++ template arg
- st/mesa: change st_atom_array.c to cpp
- st/mesa: use POPCNT in st_update_array if the CPU supports it
- mesa: change gl_vertex_array_object::NewArrays to bool
- mesa: add NewVertexBuffers/NewVertexElements flags to indicate state changes
- cso: add missing parameters into cso_set_vertex_buffers
- st/mesa: don't update vertex elements when GL doesn't change them
- driconf: set vblank_mode=0 for viewperf2020
- gallium/util: fix util_can_blit_via_copy_region with unbound render condition
- gallium/u_blitter: disable sample shading for all blits
- gallium/u_blitter: do MSAA copies in 1 pass using sample shading
- gallium/u_blitter: work around broken sample shading in llvmpipe and zink
- radeonsi: fix 2 issues with depth_cleared_level_mask
- radeonsi: add a faster clear path for glClearTexImage
- radeonsi: rename stencil_cleared_level_mask -> stencil_cleared_level_mask_once
- radeonsi: allow and finish TC-compatible MSAA HTILE
- radeonsi: fix a typo preventing a fast depth-stencil clear
- radeonsi: increase tc_max_cpu_storage_size
- vbo: utilize structure padding to optimize indirection cold->prims[0].begin
- driconf: disallow 10-bit pbuffers for viewperf2020/maya due to X errors
- gallium: rename PIPE_CAPF_MAX_POINT_WIDTH -> MAX_POINT_SIZE
- gallium: add missing point and line CAPs
- radeonsi: set correct point and line limits
- st/mesa: use new point and line CAPs
- nir: add new SSA instruction scheduler grouping loads into indirection groups
- radeonsi: enable nir_group_loads for better performance
- radeonsi: fix shader culling with integer pixel centers
- radeonsi: fix view culling for wide lines
- radeonsi: use ac_build_load_to_sgpr in gfx10_emit_ngg_culling_epilogue
- radeonsi: make si_get_small_prim_cull_info static
- radeonsi: set PERPENDICULAR_ENDCAP_ENA for wide AA lines
- radeonsi: set EXTRA_DX_DY_PRECISION for lines where it's supported
- radeonsi: add si_state_rasterizer::ngg_cull_flags_lines and rename the others
- ac,radeonsi: cull small lines in the shader using the diamond exit rule
- radeonsi: unify GFX9_VSGS_NUM_USER_SGPR and GFX9_TESGS_NUM_USER_SGPR
- radeonsi: add dcc_msaa option to enable DCC for MSAA
- radeonsi: improve memory instruction tracking
- radeonsi: remove an incorrect comment at lds_byte0_accept_flag
- radeonsi: make si_llvm_emit_clipvertex non-static
- radeonsi: unify how ngg_cull_flags are set
- radeonsi: cull against clip planes, clipvertex, clip/cull distances in shader
- radeonsi: inline declare_vs_specific_input_sgprs
- radeonsi: don't use GS SGPR6 for the small prim cull info
- glx: add a workaround to glXDestroyWindow for Viewperf2020/Sw
- radeonsi: separate culling code from VS/TES (to be reused by GS)
- radeonsi: restructure code that declares merged VS-GS and TES-GS SGPRs
- radeonsi: add is_gs parameter into si_vs_needs_prolog
- radeonsi: simplify si_get_vs_key_outputs for GS
- radeonsi: don't use ctx.stage outside of si_llvm_translate_nir
- radeonsi: implement shader culling in GS
- radeonsi: deduplicate min_esverts code in gfx10_ngg_calculate_subgroup_info
- mesa: don't add attenuation constants if ffvp doesn't use them
- mesa: add allow_glsl_compat_shaders for shader-db
- ac/gpu_info: don't fail on amdgpu_query_video_caps_info failures
- ac/surface: allow gfx6-8 to enter the gfx9 DCC codepath for SI_FORCE_FAMILY
- mesa: add a more straightforward callback for replacing shaders
- driconf: enable glthread for all Unigine benchmarks
- driconf: enable glthread for Minecraft
- driconf: enable glthread for Basemark GPU
- radeonsi: don't print uninitialized inlined_uniform_values
- radeonsi: add wave32 flag into prolog/epilog keys
- radeonsi: add si_shader::wave_size because it will vary
- radeonsi: use si_shader::wave_size
- radeonsi: don't use si_get_wave_size in si_get_ir_cache_key
- radeonsi: clean up compute_wave_size use in si_compute_blit.c
- radeonsi: propagate si_shader::wave_size to VGT_SHADER_STAGES
- radeonsi: don't use compute_wave_size directly
- radeonsi: centralize wave size computation in si_get_shader_wave_size
- radeonsi: rename si_get_shader_wave_size and make it non-inline
- mesa: remove SourceChecksum from shader structures
- mesa: rename gl_shader::sha1 to disk_cache_sha1
- mesa: add shader source SHA1s that are propagated up to glCompileShader
- mesa: add gl_linked_shader::linked_source_sha1
- mesa: don't compute the same SHA1 twice in glShaderSource
- util: add SHA1 printing and comparison functions
- nir: add shader_info::source_sha1, its initialization and printing
- radeonsi: print source_sha1 as part of shader dumps
- radeonsi: print the shader stage for shader-db dumps
- glthread: don't sync for more glGetIntegerv enums for glretrace
- mesa: use simple_mtx_t for TexMutex (v2)
- nir: handle more intrinsics in divergence analysis
- nir: disable a NIR test due to undebuggable & locally unreproducible CI failures
- nir: serialize divergent fields
- nir: add nir_has_divergent_loop function
- glsl: fix setting compiled_source_sha1 without a shader cache
- radeonsi: add Wave32 heuristics and shader profiles
- radeonsi: print more stats for shader-db
- radeonsi: add shader profiles that disable binning
- radeonsi: unroll loops of up to 128 iterations
- mesa: include less stuff in dlist.c
- mesa: inline vbo_initialize_save_dispatch and rename the functions
- mesa: inline _mesa_install_arrayelt_vtxfmt
- mesa: inline _mesa_install_eval_vtxfmt
- mesa: inline _mesa_install_dlist_vtxfmt
- mesa: move _mesa_initialize_vbo_vtxfmt calls to a common place and inline
- mesa: inline _vbo_install_exec_vtxfmt
- mesa: move the ES2 check from vbo_init_tmp.h to install_vtxfmt
- glapi: rename exec="dynamic" to exec "vtxfmt" to make it self-explanatory
- mesa: don't set CallList* redundantly in _mesa_initialize_save_table
- mesa: rename dlist functions to match dispatch function names
- glapi: rename gl_genexec.py to api_exec_init.py, api_exec.c to api_exec_init.c
- glapi: move apiexec API condition determination to common code
- glapi: replace dispatch.h inline functions with macros for faster compilation
- mesa: add EXT suffix to VertexAttribI*EXT to match glapi name
- vbo: rename vertex functions to match GL dispatch names
- vbo: rename ES vertex functions to match GL dispatch names
- glapi: move reusable glapi printing code to apiexec.py
- glapi: autogenerate _mesa_initialize_save_table with python
- glapi: autogenerate api_save.h with save_* function declarations
- mesa: remove api_exec.h and move its contents into context.h
- glapi: autogenerate all _mesa_* forward declarations in api_exec_decl.h
- glapi: autogenerate install_vtxfmt with python
- mesa: remove GLvertexformat
- vbo: expose all exec entrypoints for glthread and match api_exec_decl.h names
- glthread: add nop dispatch
- glthread: set marshal functions in dispatch only if they exist in the API
- glthread: inline _mesa_glthread_restore_dispatch and merge disable & destroy
- glthread: fix restoring the dispatch in destroy when the context is not current
- glthread: disable glthread if the context is lost
- mesa: use ctx->GLThread.enabled now that it's correct
- mesa: rename _ae_ArrayElement -> _mesa_ArrayElement to match glapi
- mesa: remove COPY_DISPATCH code that doesn't do anything
- glapi: add missing no_error settings for implemented functions
- mesa,vbo: make ES wrapper functions static
- mesa: remove all GL func forward declarations because they are autogenerated
- mesa: use nop dispatch for ColorTable/Convolution/Histogram
- radeonsi: add a debug option that disables DCC for all exported buffers
- driconf: enable glthread for Minecraft-FTB, Stellaris, Battletech
- ac/gpu_info: set cu_mask correctly for Arcturus
- ac/gpu_info: add AMD_CU_MASK environment variable to set CU_EN
- radeonsi: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en
- radeonsi: program COMPUTE_STATIC_THREAD_MGMT_SE4..7 on Arcturus
- radeonsi: apply spi_cu_en to CU_EN
- radv: set COMPUTE_DESTINATION_EN_SEn to spi_cu_en
- radv: apply spi_cu_en to CU_EN
- radeonsi: pack si_pm4_state
- radeonsi: replace SI_PM4_MAX_DW with a max_dw field
- radeonsi: decrease the size of si_pm4_state::pm4 except for cs_preamble_state
- amd/registers: work around an assertion in parse_kernel_headers.py
- ac/llvm: add vindex into ac_build_buffer_store_dword
- ac/llvm: remove the num_channels parameter from ac_build_buffer_store_dword
- radeonsi: modifiers can't disable DCC
- radeonsi: make get_thread_id_in_tg non-static
- radeonsi: clean up si_export_mrt_color
- radeonsi: set done=1 for PS exports at the end of si_llvm_build_ps_epilog
- radeonsi: remove unnecessary code that was used to find the last export
- radeonsi: export mrtz before color exports
- radeonsi: simplify compacted_mrt_index in si_export_mrt_color
- radeonsi: reorder slots for internal buffers, reuse a slot for GS_QUERY_BUF
- radeonsi: don't bind the ESGS ring twice, handle the difference in the shader
- radeonsi: remove unused si_shader::prolog2
- radeonsi: pass sample_coverage VGPR index to the PS prolog instead of guessing
- radeonsi: move smoothing to the main shader part to remove 1 live VGPR
- radeonsi: do opt_large_constants & lower_indirect_derefs after uniform inlining
- radeonsi: use nir->scratch_size instead of ac_count_scratch_private_memory
- radeonsi: change si_shader_output_values::vertex_stream to a bitmask
- radeonsi: move si_nir_scan_shader into si_shader_info.c
- radeonsi: add into the disk cache key whether cached shaders contain LLVM IR
- radeonsi: move the GS copy shader into shader variants
- ac: move ac_exp_param.h to ac_nir.h
- ac/nir: move ac_are_tessfactors_def_in_all_invocs into radeonsi
- radeonsi: print all streamout info
- radeonsi: print the number of param exports for shader-db
- ac/surface: allow displayable DCC with any resolution (e.g. 8K)
- radeonsi: rename uses_vmem_* flags
- radeonsi: apply fbfetch/indirect_descriptor to uses_vmem_load_other earlier
- radeonsi: determine MEM_ORDERED after generating a shader variant
- winsys/radeon: fix a hang due to introducing spi_cu_en
- amd: add a workaround for an SQ perf counter bug
- ac/surface: add more elements to meta equations because HTILE can use them
- radeonsi: fix register shadowing after the pm4 state size was decreased
- radeonsi: fix an assertion failure with register shadowing
Marius Hillenbrand (3):
- util/cpu_detect: Add flag for IBM Z (s390x)
- llvmpipe: Use lp_build_round_arch on IBM Z (s390x)
- util/cpu_detect, gallium: use cpu_family CPU_S390X instead of separate flag
Markus_included (1):
- Fixed you're to your
Martin Roukala (né Peres) (1):
- radv/ci: mark the dEQP fails related to a missing VKCTS 1.3 as expected
Matt Turner (7):
- util/format: Add PIPE_FORMAT_Y8_UNORM as an "other" layout format
- tu: Expose required VK_FORMAT_FEATURE bits for planar YUV formats
- ir3: Add support for (dis)assembling flat.b
- freedreno/ir3: Add infrastructure for flat.b
- freedreno/ir3: Use flat.b to load flat varyings on a6xx
- freedreno/ir3: Use immediate for flat.b's src1
- intel/genxml: capitalize decoder mode select properly
Matti Hamalainen (3):
- aux/trace: print enum names instead of integer values in gallium traces
- aux/trace: implement missing trace calls
- aux/trace: cosmetic cleanup
Mauro Rossi (3):
- android: define cpp_rtti=false because libLLVM is built w/o RTTI
- Revert "android: define cpp_rtti=false because libLLVM is built w/o RTTI"
- android: define cpp_rtti=false because libLLVM is built w/o RTTI (v2)
Melissa Wen (14):
- v3dv: drop unused variable on handle_set_event_cpu_job
- v3dv: wrap wait semaphores info in v3dv_submit_info_semaphores
- v3dv: store wait semaphores in event_wait_cpu_job_info
- drm-uapi/v3d: extend interface for multiple semaphores support
- v3dv: check multiple semaphores capability
- v3dv: enable multiple semaphores on cl submission
- v3dv: enable multiple semaphores for tfu job
- v3dv: enable multiple semaphores for csd job
- v3dv: enable GPU jobs to signal multiple semaphores
- v3dv: track submitted jobs by GPU queue type
- v3dv: handle wait semaphores in the first job by queue
- v3dv: process signal semaphores in the very last job
- v3dv: signal fence when all submitted jobs complete execution
- v3dv: move sems_info from event_wait job to wait_thread info
Michael Tang (2):
- microsoft/spirv_to_dxil: turn sysvals into input varyings
- microsoft/compiler: Use memcpy instead of a union to write dxil_features
Michel Dänzer (1):
- Revert "wsi/x11: Avoid a class of deadlocks in the WSI queue thread"
Michel Zou (8):
- vulkan: fix uninitialized variables
- lavapipe: fix unused variable
- llvmpipe: Fix Wpointer-to-int-cast
- meson: check -mtls if has_exe_wrapper
- meson: correctly detect linker arguments
- zink: fix -Warray-bounds warning
- zink: fix unused variable warning
- vulkan/wsi: drop unused wsi_create_win32_image
Mike Blumenkrantz (278):
- nir/print: print bindless info as applicable
- aux/pb: add a tolerance for reclaim failure
- virgl: remove unused pipebuffer include
- aux/pb: more correctly check number of reclaims
- zink: use static array for detecting VK_TIME_DOMAIN_DEVICE_EXT
- zink: add a read barrier for indirect dispatch
- zink: fully zero surface creation struct
- zink: clear descriptor refs on buffer replacement
- zink: assert compute descriptor key is valid before hashing it
- zink: don't update lazy descriptor states in hybrid mode
- zink: move push descriptor updating into lazy-only codepath
- zink: add an early return for zink_descriptors_update_lazy_masked()
- zink: move last of lazy descriptor state updating back to lazy-only code
- lavapipe: stop reading renderpass during pipeline creation
- lavapipe: remove some unused struct members
- lavapipe: use framebuffer attachment_count member instead of renderpass
- lavapipe: remove lvp_subpass_attachment::in_render_loop
- lavapipe: remove lvp_subpass_attachment::layout
- lavapipe: add attachment index to lvp_render_pass_attachment
- lavapipe: remove lvp_subpass::max_sample_count
- lavapipe: remove lvp_subpass_attachment and use lvp_render_pass_attachment refs
- lavapipe: remove last VK_ATTACHMENT_UNUSED check
- lavapipe: store subpass directly to rendering_state
- lavapipe: simplify some attachment derefs
- lavapipe: remove lvp_subpass::has_color_att
- lavapipe: pull layer count from render state during resolve
- lavapipe: clamp attachment clear rect sizes
- zink: don't ralloc zink_resource structs
- zink: align pipe_resource and sampler_view allocations to cachelines
- zink: use ctx params for program ref/destroy functions
- zink: fix descriptor interface param for program_deinit
- zink: remove descriptor pools from hash table on deletion
- zink: unref descriptor pools in hybrid mode when they explode
- zink: always invalidate descriptor sets on pool free
- zink: don't clear descriptor pool cache on context destroy
- zink: stop leaking descriptor pool references
- zink: rescue surfaces/bufferviews for cache hits during deletion
- zink: rename zink_descriptor_layout_key::num_descriptors -> num_bindings
- zink: eliminate a hole in zink_descriptor_layout_key
- zink: reduce hashed region of zink_descriptor_layout_key
- zink: split out descriptor pool sizing into separate struct
- zink: detect prim type more accurately for tess/gs lines
- zink: don't break early when applying fb clears
- zink: only reset zink_resource::so_valid on buffer rebind
- zink: don't check rebind count outside of buffer/image rebind function
- zink: add notes about binding points which aren't counted in util funcs
- zink: stop exporting PIPE_SHADER_CAP_FP16_DERIVATIVES
- zink: don't add dynamic vertex pipeline states if no attribs are used
- zink: fix gl_SampleMaskIn spirv generation
- zink: more accurately update samplemask for fs shader keys
- nir/lower_samplers_as_deref: rewrite more image intrinsics
- nir/lower_io_to_scalar: add support for bo and shared io
- zink: run optimize_nir() only once during compile
- zink: move bo load offset adjustment to compiler passes
- zink: run lower_io_to_scalar before rewriting bo access
- zink: move all 64-32bit shader load rewriting to nir pass
- zink: move ssbo store offset adjustment to compiler passes
- zink: move shared intrinsic offset adjustments to compiler passes
- zink: move all 64-32bit shader store rewriting to nir pass
- zink: add more glsl base types to get_glsl_basetype()
- zink: move all shader bo/sharedmem access to compiler passes
- zink: add better handling for CUBE_COMPATIBLE bit
- zink: cache bo SpvId array types
- zink: use align64 for allocation sizes
- zink: set aspectMask for renderpass2 VkAttachmentReference2 structs
- zink: always use explicit lod for texture() when legal in non-fragment stages
- zink: be more permissive for injecting LOD into texture() instructions
- zink: inject LOD for sampler version of OpImageQuerySize
- zink: flag renderpass change when toggling fbfetch
- zink: be more spec-compliant for unnormalizedCoordinates samplers
- zink: don't clamp cube array surfacess to cubes
- zink: don't clamp 2D_ARRAY surfaces to 2D
- zink: error when trying to allocate a bo larger than heap size
- zink: clamp max buffer sizes to smallest buffer heap size
- zink: explicitly enable VK_EXT_shader_subgroup_ballot
- zink: add more int/float types to cast switching in ntv
- zink: force float dest types on some alu results
- zink: stop double printing validation messages
- zink: add SpvCapabilityStorageImageMultisample for multisampled storage images
- zink: reject all storage multisampling if the feature is unsupported
- gallium: add PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY
- zink: set PIPE_CAP_VERTEX_ATTRIB_ELEMENT_ALIGNED_ONLY
- zink: add queue locking
- build: add sha1_h to llvmpipe build
- mesa/st: rework psiz lowering
- mesa/st: lower psiz for shader precompile
- anv: disable debug logging spam
- zink: set fbfetch state on lazy batch data when enabling it
- zink: always use lazy (non-push) updating for fbfetch descriptors
- vk: update headers for 1.2.197
- lavapipe: fix cmd queuing for dynamic render
- lavapipe: VK_KHR_dynamic_rendering
- features: add dynamic render for lavapipe
- zink: do a better job conserving locations for packed xfb outputs
- zink: clamp PIPE_SHADER_CAP_MAX_INPUTS for xfb
- zink: remove lazy ci job
- zink: add khr46 to ci
- aux/primconvert: handle singular incomplete restarts
- zink: rework cached fbfetch descriptor fallback
- lavapipe: add some asserts for descriptor dynamic offsets
- gallivm: handle TGSI SampleId sysval
- Revert "gallium/u_blitter: work around broken sample shading in llvmpipe and zink"
- aux/trace: fix PIPE_QUERY_PIPELINE_STATISTICS_SINGLE tracing
- aux/trace: support pipe_context::get_query_result_resource
- aux/trace: trace pipe_screen::is_format_supported better
- aux/trace: fix vertex state tracing
- aux/trace: add pipe_context::render_condition_mem
- zink: set new point/line caps
- zink: update radv ci passes
- zink: flatten out draw templates a bit
- zink: declare int/float size caps inline with type usage
- zink: simplify 64bit vertex attrib lowering
- zink: add another compiler pass to convert 64bit vertex attribs
- zink: add 1DShadow sampler handling for drivers (radv) that don't support it
- zink: radv ci updates for 1dshadow stuff
- zink: implement cs uniform inlining
- zink: always inline uniforms when running on a cpu driver
- zink: ci updates
- zink: be more consistent about applying module hash for gfx pipeline
- zink: update gfx pipeline shader module pointer even if the program is unchanged
- aux/primconvert: break out primconvert internals into util function
- aux/primconvert: support pipe_context::draw_vertex_state
- zink: stop running discard_if in generated tcs
- zink: always add VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT for 3D images
- move util/indices to core util
- mesa: convert unsupported primtypes during display list compilation
- zink: block suballocator caching for swapchain/dmabuf images
- zink: set suballocator bo size to aligned allocation size
- zink: implement pipe_context::draw_vertex_state
- zink: stop using VK_IMAGE_LAYOUT_PREINITIALIZED for dmabuf
- zink: always set matching resource export type for dmabuf creation
- dri2: set dimensions on dmabuf import planes
- zink: implement multiplanar modifier handling
- zink: add error for bo allocation failure
- zink: always use slab allocation placement for domains
- zink: set zink_resource_object::host_visible based on actual bo placement
- zink: demote BAR allocations to device-local on oom
- zink: use IMMUTABLE for dummy xfb buffer
- zink: fix memory availability reporting
- zink: fail context creation more gracefully
- zink: clamp to 500 max batch states on nvidia
- gallium: add pipe_screen::is_compute_copy_faster hook
- gallium: rename PIPE_CAP_PREFER_BLIT_BASED_TEXTURE_TRANSFER
- mesa/st: make sampler_type_for_target public
- mesa/st: make some pbo functions public
- gallium: implement compute pbo download
- aux/pb: add a new slab alloc function for reclaiming all bo objects
- zink: use pb_slab_alloc_reclaimed(reclaim_all) for BAR heap sometimes
- zink: enable PIPE_TEXTURE_TRANSFER_COMPUTE on non-cpu drivers
- zink: explicitly init glsl
- zink: add a compiler pass to scan for shader image use
- zink: set batch state queue on creation
- zink: be consistent about waiting on context queue on context destroy
- mesa/vbo: be more comprehensive for degenerate primitive conversion in dlists
- radv: fix xfb query copy param ordering
- zink: add missing assert for 8bit vertex decompose
- zink: add some wsi instance extensions
- zink: always unset vertex shader variant key data when changing last vertex stage
- zink: add extra synchronization for buffer descriptor binds
- zink: use device-local heap for sparse backing allocations
- zink: add a better threshold for clamping query pool resets on suspend
- zink: always set number of timestamp results to 1 for internal qbo
- zink: fix availability buffer sizing/copying for xfb queries
- zink: skip readback of qbos with no results
- Revert "zink: when performing an implicit reset, sync qbos"
- zink: use even more accurate stride values for query result copies
- zink: ci updates
- zink: add flake
- aux/trace: copy over stream_output_target_offset method from context
- util/vbuf: fix buffer translation sizing
- zink: remove SpvMemorySemanticsMakeVisibleMask from nir_intrinsic_memory_barrier
- zink: add some nv ci results
- aux/trace: add pipe_context::fence_server_signal tracing
- zink: update gfx_pipeline_state.vertex_strides when necessary
- zink: check EXT_image_drm_format_modifier for dmabuf support
- Revert "zink: update gfx_pipeline_state.vertex_strides when necessary"
- zink: add VK_KHR_external_semaphore_fd to device exts
- zink: add VK_KHR_external_memory_capabilities to instance exts
- zink: add driver/device uuid screen hooks
- zink: implement GL semaphores
- zink: implement external memory object resource handling
- zink: enable EXT_external_objects pipe caps
- util: add ptralloc
- lavapipe: replace hard pointer calcs in dynamic render with ptralloc
- lavapipe: replace hard pointer calcs in push descriptors with ptralloc
- zink: update nv ci baseline
- zink: add deqp ci baseline for nv
- lavapipe: fix ptralloc typo
- zink: add get_sparse_texture_virtual_page_size hook
- zink: set up image create bits for sparse textures
- zink: support sparse texture range commits
- zink: allow sparse buffers to be suballocated
- zink: stop allocating such massive staging regions for buffer maps
- zink: fake sparse R9G9B9E5 support as needed
- zink: implement sparse shader instructions in ntv
- zink: always set actual_dest_type for ntv tex instruction emission
- zink: handle residency return value from sparse texture instructions
- zink: rename zink_so_info -> zink_shader_info
- zink: always pass shader info to ntv
- zink: add nir_intrinsic_image_deref_sparse_load to image scanning in compiler
- zink: only allocate ntv residency info if it will be used
- zink: emit sparse residency cap in ntv
- zink: handle min_lod texture operands
- zink: batch sparse texture binds
- zink: handle sparse texture miptail commits
- zink: enable ARB_sparse_texture pipe caps
- zink: ARB_sparse_texture2
- docs: add features/relnotes for zink sparse texture support
- zink: fix non-modifer dmabuf usage
- zink: link with vulkan utils
- zink: hook up planar image format creation
- vulkan/wsi: add VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT for swapchain image caps
- lavapipe: remove unused struct member
- zink: update nv fails
- zink: update radv fails list
- zink: never use SpvOpImageQuerySizeLod for texel buffers
- zink: add anv (icl) fails
- zink: handle bogus xfb draws
- zink: reorder fbfetch flag-setting to avoid null deref
- zink: return 256 for PIPE_CAP_MIN_MAP_BUFFER_ALIGNMENT
- anv: silence wsi debug logging
- zink: unify some context casts in zink_create_sampler_view
- zink: emit same number of timeline signals as semaphore signals
- zink: flag has_work when a GL semaphore is signalled
- zink: allow resource creation without VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT
- zink: use VkImageViewUsageCreateInfo to remove attachment bits
- zink: always create a separate VkBuffer for storage use
- zink: use the storage buffer for bufferview creation when format allows
- zink: flag all buffer resources with PIPE_BIND_SHADER_IMAGE
- zink: simplify buffer case for zink_resource_object_init_storage()
- zink: remove tmp buffer rebinds
- aux/tc: add tc_buffer_write to replace pipe_buffer_write usage
- zink: fix vertex buffer mask computation for null buffers
- zink: replace qbo pipe_buffer_write usage with tc_buffer_write
- zink: replace other pipe_buffer_write usage with pipe_buffer_write_nooverlap
- zink: make pipe_buffer_write usage trigger compiler errors
- zink: ci updates
- zink: clamp tbo creation to maxTexelBufferElements
- zink: add vertex shader pipeline bit for generated barrier construction
- zink: print an error when the device is lost
- zink: fix waiting on current batch id
- zink: handle swizzled offset/count values for shader bitfield ops
- zink: enable VK_EXT_shader_atomic_float
- zink: add warning printf for drivers missing VK_EXT_shader_atomic_float
- zink: cast image atomic op params/results based on image type
- zink: use SpvScopeDevice over SpvScopeWorkgroup for atomic shader ops
- aux/vbuf: use local var for modifying unaligned_vb_mask during update
- aux/vbuf: move mask-clearing for vbuf updates after buffer scanning
- aux/vbuf: add fastpath for skipping identical vbuf updates
- mesa: stop truncating MESA_GLSL=dump
- zink: ARB_sparse_texture_clamp
- docs: update features/relnotes for zink sparse texture clamp
- zink: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS
- llvmpipe: disable PIPE_SHADER_CAP_FP16_CONST_BUFFERS
- zink: add VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT for query binds
- zink: use scanout obj when returning resource param info
- zink: fix PIPE_CAP_TGSI_BALLOT export conditional
- zink: reject invalid draws
- zink: min/max blit region in coverage functions
- aux/draw: fix llvm tcs lane vec generation
- lavapipe: use util_pack_color_union() for generating clear colors
- zink: ci updates
- lavapipe: ci updates
- zink: always set VkPipelineMultisampleStateCreateInfo::pSampleMask
- zink: always invalidate streamout counter buffer if not resuming
- zink: ci updates
- zink: fix cached descriptor set invalidation for array bindings
- zink: free push descriptor pools on deinit
- zink: don't free non-fbfetch dsl structs when switching to fbfetch
- gallivm: avoid division by zero when computing cube face
- zink: always update shader variants when rebinding a gfx program
- zink: use a fence for pipeline cache update jobs
- zink: wait on program cache fences before destroying programs
- zink: fix descriptor cache pointer array allocation
- zink: mark fbfetch push sets as non-cached
- zink: stop leaking descriptor sets
- zink: invalidate non-punted recycled descriptor sets that are not valid
- zink: set shader key size to 0 for non-generated tcs
Mike Lothian (1):
- meson: Fix dri.pc dridriverdir
Mykhailo Skorokhodov (3):
- iris: Add missed tile flush flag
- Revert "iris: add tile cache flush to iris_copy_region"
- nir: Fix read depth for predecessors
Nanley Chery (82):
- iris: Convert some mod_info checks to asserts
- iris: Disable the MC_CCS modifier with norbc
- iris: Set DISABLE_AUX_BIT for AUX_USAGE_NONE modifiers
- iris: Refactor the assignment to possible_usages
- intel/isl: Allow creating non-Y-tiled ASTC surfaces
- iris: Allow GPU-based uploads of ASTC textures
- anv: Require transfer features for transfer usages
- anv: Allow transfer-only linear ASTC images
- anv: Drop code from get_blorp_surf_for_anv_buffer
- intel/isl: Unify fmt checks in isl_surf_supports_ccs
- iris: Enable CCS_E on 32-bpc float formats on TGL+
- iris: Drop redundant iris_resource_disable_aux call
- intel/isl: Restore CCS_E support for YUYV and UYVY
- iris: Drop the YCRCB cases in finish_aux_import
- intel/isl: Drop extra devinfo checks for CCS support
- intel/isl: Require aux map for some 64K alignment
- intel/blorp: Modify the SKL+ CCS resolve rectangle
- intel/blorp: Modify get_fast_clear_rect for XeHP
- iris: Change a param of iris_resource_init_aux_buf
- iris: Use the aux BO and surf less during init
- iris: Move some BO setup to iris_resource_init_aux_buf
- iris: Simplify iris_get_aux_clear_color_state_size
- iris: Don't allocate a clear color BO for some Z/S
- iris: Drop row pitch param from iris_get_ccs_surf
- iris: Don't allocate and initialize CCS on XeHP
- iris: Don't assert a NULL aux BO during aux config
- iris: Modify the comment about zeroing CCS
- iris: Update the initial CCS state on XeHP
- iris: Free the local cache bucket in bufmgr_destroy
- iris: Replace bo->real.local with bo->real.heap
- iris: Add and use flags_to_heap
- iris: Use a num_buckets pointer in add_bucket
- iris: Replace "local" with "heap" in bufmgr fn params
- iris: Add and use BUCKET_ARRAY_SIZE
- iris: Add and use bucket_info_for_heap
- iris: Rework the DEVICE_LOCAL heap
- iris: Disable the SMEM fallback for CCS on XeHP
- iris: Use util packing fns in convert_clear_color
- blorp: Drop multisampled code in blorp_can_hiz_clear_depth
- intel/isl: Rework HiZ image align calculations
- intel/isl: Update comment for the XeHP HiZ block
- intel/isl: Use a new HiZ format on XeHP+
- intel/isl: Require Y-tiling for depth on gfx4-5
- intel/isl: Allow HiZ with Tile4/64 surfaces
- intel/isl: Return false more in isl_surf_get_hiz_surf
- anv,iris: Flush tile cache after color fast clears
- anv,iris: Depth stall around color fast clears
- intel: Rename the PSD bit in PIPE_CONTROL for XeHP
- anv,iris: PSS Stall Sync around color fast clears
- anv,iris: Flush HDC before color fast clears
- anv: Don't fill lowered_storage_image_param on SKL+
- intel/isl: Don't check pitch in isl_surf_get_mcs_surf
- intel/isl: Strengthen MCS SINT format restriction
- Revert "intel/isl: Don't reconfigure aux surfaces for MCS"
- intel/gen125.xml: Increase Auxiliary Surface Pitch
- intel/isl: Allow creating MCS in Tile4 memory
- anv: Drop assert against modifier with aux on gfx12
- anv: Disable CCS_E for some 8/16bpp copies on TGL+
- anv: Use ANV_FAST_CLEAR_DEFAULT_VALUE for CCS on TGL+
- anv: Re-enable CCS_E on TGL+
- anv: Drop redundant disabling of non-renderable CCS
- anv: Disable the SMEM fallback for local memory
- anv: Require the local heap for CCS on XeHP
- anv: Don't allocate VMA for CCS on XeHP
- isl: Enable compression with multisampled Tile64
- iris: Explicitly rely on gallium fallbacks for YUV
- intel/isl: Support YUV pipe-to-isl format mapping
- iris: Drop stale media compression import code
- iris: Use iris_format_for_usage in map_aux_addresses
- intel: Rename a RenderCompressionFormat field
- intel/isl: Support the XeHP media compression format
- iris: Support the XeHP media compression format
- iris: Refactor a ternary in iris_resource_get_param
- iris: Pick the right BO in iris_resource_get_param
- iris: Return non-zero stride for clear color plane
- intel/isl: Simplify Z-buffer tiling config during emit
- intel/isl: Fix depth buffer TiledSurface programming
- intel/isl: Add more PRM text for HiZ/STC requirement
- iris: Don't fast clear with the view format
- Revert "anv: Require the local heap for CCS on XeHP"
- anv: Refactor anv_image_init_from_create_info
- anv: Disable aux if the explicit modifier lacks it
Neha Bhende (11):
- st: Fix 64-bit vertex attrib index for TGSI path
- st: Fix comments in commit be6d584de43966e
- svga: Add GL43 commands support
- svga: Add utility to check for GL43 support
- tgsi: Add hw_atomic_declared in tgsi_info
- svga: Add support for compute shader, shader buffers and image views
- svga: shader translation for compute, image views and shader buffers
- svga: add GL43 resource validation at draw time
- svga: enable GL43 on SVGA GL43 capable device
- svga: enable PIPE_CAP_IMAGE_STORE_FORMATTED on gl43 capable device
- svga: store shared_mem_size in svga_compute_shader instead of svga_context
Neil Roberts (1):
- v3d: Update prim_counts when prims generated query in flight without TF
Nicholas Bishop (1):
- mesa/get: allow NV_pixel_buffer_object constants in GLES2
Niklas Haas (1):
- wsi/x11: support depth 30 visuals
Omar Akkila (1):
- llvmpipe: page-align memory allocations
Paulo Zanoni (12):
- iris: also dump bo's imported and exported flags
- iris: destroy our mutexes a little later
- iris: fix off-by-one error when clearing stale syncobjs
- iris: call brw_process_intel_debug_variable() earlier
- iris: extract iris_hw_context_set_unrecoverable()
- intel/fs: Assert the GPU supports 64bit ops if present at lower_scoreboard time.
- iris: improve error checking in functions that call vma_alloc()
- iris: sprinkle some assertions for bufmgr->lock
- iris: save some iris_syncobj_reference() calls at update_bo_syncobjs()
- iris: implement inter-context busy-tracking
- iris: handle IRIS_MEMZONE_BINDER with a real vma_heap like the others
- iris: fix register spilling on compute shaders on XeHP
Pavel Asyutchenko (6):
- llvmpipe: fix wrong assumption on FB fetch shader opacity
- llvmpipe: fix gl_FragColor and gl_LastFragData[0] combination
- llvmpipe: protect from doing FB fetch of missing buffers
- llvmpipe: fix FB fetch with non 32-bit render target formats
- llvmpipe: remove dead args from load_unswizzled_block
- llvmpipe: enable PIPE_CAP_FBFETCH_COHERENT
Pavel Ondračka (9):
- r300: Document the RADEON_DEBUG options
- r300: Replace RADEON_NO_TCL with RADEON_DEBUG=notcl
- r300: Remove broken optimization in rc_transform_KILL
- r300: use point sprite coordinates only when drawing points (v5)
- r300: fix translate_LRP
- r300: properly initialize new_vs in r300_draw_init_vertex_shader
- r300: Disable integers and indirect temporary addressing with swctl
- r300: Set consistent PIPE_SHADER_CAP_PREFERRED_IR
- r300: fix transformation of abs modifiers with negate
Philipp Zabel (1):
- etnaviv: fix emit_if in case the else block ends in a jump
Pierre Moreau (1):
- nv50/nir: Switch to the common NIR options
Pierre-Eric Pelloux-Prayer (57):
- radeonsi: use viewport offset in quant_mode determination
- gallium/dri: replace bool with flag parameter
- gallium/dri: add createImageFromFds2
- gallium/dri: let the driver know if the imported image is DRI_PRIME buffer
- radeon_winsys.h: add a parameter to buffer_from_handle
- winsys/amdgpu: add uncached flag to the imported DRI_PRIME buffer
- radeonsi/gfx10.3: enable SDMA for DRI_PRIME copies
- radeonsi: use PIPE_BIND_DRI_PRIME instead of is_dri_blit_image
- Revert "gallium: add a is_dri_blit_image bool to pipe_blit_info"
- glsl/drirc: add an option for gl_ClipVertex / gl_CullDistance checks
- drirc: enable do_dce_before_clip_cull_analysis for ANSA
- mesa: don't reset SamplersValidated if nothing changed
- glsl/nir: mark samplers inside a block as bindless
- radeonsi: treat nir_intrinsic_load_constant as a VMEM operation
- ac/surface: use a less strict condition in is_dcc_supported_by_L2
- radeonsi/sdma: fix bogus assert
- radeonsi: fix ps_uses_fbfetch value
- ac/surface: don't validate DCC settings if DCC isn't possible
- vbo/dlist: free copied.buffer if no vertices were copied
- glx/drirc: add a force_direct_glx_context option
- mesa: enable force_direct_glx_context for DiscoveryStudio2020
- llvmpipe: add missing NIR alu-op handling
- mesa: print a warning when an extension can't be disabled
- mesa: don't use dummy_true for some MESA extensions
- mesa/init: replace call_once with manual implementation
- drirc: add mesa_extension_override option
- drirc: add options for BETA CAE Ansa application.
- mesa: always call _mesa_update_pixel
- mesa: remove NEW_COPY_TEX_STATE
- radeonsi/sqtt: fix shader stage values
- radeonsi/sqtt: fix FINISH_DONE / BUSY usage
- radeonsi/sqtt: reserve a vmid when sqtt is enabled
- radeonsi: unreference framebuffer state after use
- radeonsi/sqtt: increase the default buffer size to 32MB
- radeonsi: fix fast clear / depth decompression corruption
- radeonsi: silence a warning
- radeonsi: use max_zplanes after the last write
- glx: fix querying GLX_FBCONFIG_ID for Window
- radeonsi: don't use perp. end caps when line smoothing is on
- glthread: only log glthread destroy reason when it's not NULL
- radeonsi/gfx8: use the proper dcc clear size
- vbo/dlist: fix loopback crash
- vbo/dlist: add vertices to incomplete primitives
- amd: add SDMA_NOP_PAD
- radv: partial sdma support
- radv: allocate the prime buffer as uncached
- vulkan/wsi: add use_prime_blit param to wsi_swapchain_init
- vulkan/wsi: add a private transfer pool to exec the DRI_PRIME blit
- radv: implement wsi's private transfer queue using SDMA
- radeonsi/gfx10: fix si_texture_get_offset for mipmapped tex
- radeonsi,radv: fix usages of surf_pitch
- radeonsi/tests: update expected results
- radeonsi/tests: add expected results for vega20
- driconf: enable vs_position_always_invariant for Dirt Rally
- mesa: use less temporaries in build_lighting
- radeonsi: limit loop unrolling for LLVM < 13
- radeonsi: change rounding mode to round to even
Qiang Yu (76):
- driconf: add executable_regexp application attribute
- drirc: add Mari application workaround
- xmlconfig_test: add unit test for executable_regexp
- radeonsi: add radeonsi_force_use_fma32 driconf option
- driconf: support META application
- glx/dri3: fix glXQueryContext does not return GLX_RENDER_TYPE value
- loader/dri3: fix piglit egl-copy-buffer test
- ci: remove egl-copy-buffers from fail list
- glx: no need to create extra pixmap for pbuffer
- glx: check drawable type before create drawble
- glx: add drawable type argument when create drawable
- loader/dri3: add drawable type set by GLX and EGL
- loader/dri3: remove unused present capability query
- loader/dri3: pack window present event setup into a function
- loader/dri3: setup present event with drawable type info
- loader/dri3: replace is_pixmap with drawable type
- loader/dri3: rename dri3_fake_front_buffer
- loader/dri3: stop doing anything in swap buffer for some drawable
- loader/dri3: support glx pbuffer swap
- glx: fix regression for drawable type detection
- glapi: should not add alias function to static_data.py
- gallium: add caps for sparse texture support
- mesa: add ARB_sparse_texture extension
- mesa: add ARB_sparse_texture constants
- gallium: add screen get_sparse_texture_virtual_page_size callback
- gallium: add get_sparse_texture_virtual_page_size for noop/rbug/trace
- mesa: add ARB_sparse_texture query in glGetInternalformativ
- mesa: add ARB_sparse_texture texture param set/get
- mesa/st: add st_GetSparseTextureVirtualPageSize interface
- mesa: glTexStorage* support sparse texture allocation
- mesa/st: add st_TexturePageCommitment interface
- mesa: implement glTexPageCommitmentARB/glTexturePageCommitmentEXT
- mesa/st: update NumSparseLevels from pipe_resource
- winsys/radeon: change surface_init flags to 64bit
- ac/surface: fix prt_first_mip_tail calculation for gfx9+
- ac/surface: add prt_tile_depth
- radeonsi: support alloc a sparse texture
- radeonsi: use staging buffer for sparse texture when transfer map
- radeonsi: implement get_sparse_texture_virtual_page_size
- radeonsi: support texture resource commit
- radeonsi: enable ARB_sparse_texture
- nir: fix nir_tex_instr hash not count is_sparse field
- gallium/dd_debug: add get_sparse_texture_virtual_page_size
- gallium: add PIPE_CAP_QUERY_SPARSE_TEXTURE_RESIDENCY
- mesa: add ARB_sparse_texture2 extension
- mesa/main: relax alignment check when ARB_sparse_texture2 available
- glsl: add ARB_sparse_texture2 extension
- glsl: ir_texture support sprase texture
- glsl: add _texture related sparse texture builtin functions
- glsl: add _textureCubeArrayShadow related sparse texture builtin func
- glsl: add _texelFetch related sparse texture builtin function
- glsl: add sparse texture image load builtin functions
- glsl: add vec5 glsl types
- glsl/nir: convert sparse ir_texture to nir
- glsl/nir: convert sparse image load to nir
- glsl/nir: adjust sparse texture nir_variable
- glsl: add sparseTexelsResidentARB builtin function
- glsl/nir: convert is_sparse_texels_resident to nir
- radeonsi: lower nir_intrinsic_is_sparse_texels_resident
- mesa/main: allow multi sample sparse texture
- mesa/main: export _is_multisample_target for external usage
- gallium: add multi_sample parameter to get_sparse_texture_virtual_page_size
- radeonsi: enable multi sample sparse texture support
- radeonsi: enable ARB_sparse_texture2
- gallium: add PIPE_CAP_CLAMP_SPARSE_TEXTURE_LOD
- mesa: add ARB_sparse_texture_clamp extension
- glsl: add ARB_sparse_texture_clamp extension
- glsl: ir_texture add clamp field
- glsl: _texture support clamp parameter
- glsl: _textureCubeArrayShadow support clamp
- glsl: add ARB_sparse_texture_clamp builtin functions
- glsl/nir: convert ir_texture->clamp to nir
- radeonsi: enable ARB_sparse_texture_clamp
- radeonsi: workaround Specviewperf13 Catia hang on GFX9
- radeonsi: fix depth stencil multi sample texture blit
- glx: fix pbuffer refcount init
Rafael Antognolli (2):
- intel/compiler: Assert that unsupported tg4 offsets were lowered for XeHP
- intel: Emit 3DSTATE_BINDING_TABLE_POOL_ALLOC for XeHP
Renato Pereyra (2):
- anv: Enable implicit CCS for external images
- anv: add helper methods related to enabling CCS for external images
Rhys Perry (83):
- radv: Use nir_var_mem_image in meta shaders
- aco: disable mul(cndmask(0, 1, b), a) optimization sometimes
- aco: simplify emit_stream_output()
- radv: don't use a separate cache entry for GS copy shaders
- aco: use std::vector and IDSet in RA validator
- docs: update radv extensions in features.txt
- nir/algebraic: optimize Cyberpunk 2077's open-coded bitfieldReverse()
- nir/lower_system_values: replace local_invocation_id components with zero
- radv: lower load_local_invocation_index with 1D workgroups
- aco: optimize load_local_invocation_index with single-wave workgroups
- aco: consider pseudo-instructions reading exec in needs_exec_mask()
- aco/spill: use spills_entry instead of spills_exit to kill linear VGPRs
- radv: make RADV_FORCE_FAMILY case-insensitive
- radv: fix max_render_backends for Sienna Cichlid null winsys
- spirv: run nir_copy_prop before nir_rematerialize_derefs_in_use_blocks_impl
- radv: stop running copy-propagation before nir_opt_deref
- nir/lower_tex: don't calculate texture_mask for texture_index>=32
- nir/lower_subgroups: fix left shift of -1
- aco: properly update use counts if a extract is still used
- nir/dce: fix DCE of loops with a halt or return instruction in the pre-header
- nir/cf: fix insertion of loops/ifs after jumps
- nir/tests: add DCE test for loops following a jump
- aco: don't create DPP instructions with SGPR operands
- nir/opt_offsets: fix try_extract_const_addition recursion
- nir/opt_offsets: remove need to loop try_extract_const_addition
- nir/algebraic: optimize a*#b & -4
- radv: add radv_meta_init_shader
- radv: include RT shaders in RADV_DEBUG=shaders,shaderstats
- radv: clone shader in radv_shader_compile_to_nir
- radv: initialize workgroup_size in radv_meta_init_shader
- aco: don't create unnecessary addition in indirect get_sampler_desc()
- aco: improve clrx disassembly
- aco: use more predictable tiebreaker when forming MADs
- aco: create v_fmamk_f32/v_fmaak_f32 from nir_op_ffma
- aco: swap operands if necessary to create v_madak/v_fmaak
- aco: swap multiplication operands if needed to create v_fmac_f32/etc
- radv,aco: implement nir_op_ffma
- radv,aco: don't lower some ffma instructions
- radv: have the null winsys set more fields
- aco: fix check_vop3_operands() for f16vec2 ffma fneg combine
- nir/opt_load_store_vectorize: improve ssbo/global alias analysis
- nir/algebraic: optimize more 64-bit imul with constant source
- nir/opt_access: infer CAN_REORDER for global access
- aco: disallow SMEM offsets that are not multiples of 4
- aco: skip &-4 before SMEM
- aco: remove SMEM constant/addition combining out of the loop
- radv: increase maxTaskOutputCount to 65535
- nir/lower_shader_calls: fix store_scratch write_mask
- ac/nir: fix store_buffer_amd write_masks
- nir/uniform_atomics: fix is_atomic_already_optimized without workgroups
- aco: remove pack_half_2x16(a, 0) optimization
- radv: add RADV_DEBUG=splitfma
- radv: set radv_split_fma=true for Proton SotTR
- nir/unsigned_upper_bound: don't follow 64-bit f2u32()
- aco: use p_extract for SGPR nir_op_unpack_half_2x16_split_y
- nir: add nir_op_fmulz and nir_op_ffmaz
- radv,aco,ac/llvm: implement fmulz and ffmaz
- aco: consider legacy multiplications in optimizer
- aco: create v_mac_legacy_f32/v_fmac_legacy_f32
- nir/algebraic: add ignore_exact() wrapper
- nir/algebraic: optimize open-coded fmulz/ffmaz
- nir: add some missing nir_alu_type_get_base_type
- nir/algebraic: optimize expressions using fmulz/ffmaz
- nir/builder: set write mask if not provided
- nir/builder: assume scalar alignment if not provided
- radv: avoid providing a write_mask to intrinsic builders
- radv: avoid providing an align_mul to intrinsic builders
- radv: avoid providing an align_offset to intrinsic builders
- ac/nir: avoid providing a write_mask to intrinsic builders
- ac/nir: avoid providing an align_mul to intrinsic builders
- ac/nir: use shorter builder names
- radv: fix raytracing with wave32
- radv: use wave32 for raytracing
- radv: use 8x4 workgroups for wave32 RT
- radv: fix optimized MSAA copies with suballocated images
- aco: fix neg(abs(mul(a, b))) if the mul is not VOP3
- aco: optimize abs(mul(a, b))
- aco: preserve pass_flags during format conversions
- aco: fix v_mac_legacy_f32
- aco: don't encode src2 for v_writelane_b32_e64
- radv: fix R_02881C_PA_CL_VS_OUT_CNTL with mixed cull/clip distances
- anv: Enable nir_opt_access
- radv: include disable_aniso_single_level and adjust_frag_coord_z in key
Rob Clark (63):
- freedreno: Fix for large epilogues
- freedreno/ir3+isa: Cleanup bindless cat5 samp/tex encoding
- freedreno/isa: Fixes for validation
- freedreno/ir3/tests: Fix indentation
- freedreno/ir3/tests: Add additional disasm test vectors
- freedreno/ir3: Don't lower s2en if samp/tex is too large
- isaspec: Fix derived field width
- isaspec: Do not emit duplicate field encodes
- isaspec: Add bitfield size assertions
- freedreno/isa: Add immed reg accessors
- freedreno/ir3/tests: Don't skip encode test if decode fails
- freedreno/ir3/tests: Add some 8/16b ldg/stg tests
- freedreno/isa: Fix ldg/stg "halfness"
- freedreno/computerator: Fix mergedregs
- freedreno/ir3: 64b intrinsic lowering
- freedreno/ir3: Lower 64b phis
- freedreno/ir3: Add load/store_global lowering
- isaspec: Fix gpu_id for default_options
- freedreno: Skip built-in shaders for clover
- freedreno/ir3: Handle MESA_SHADER_KERNEL
- freedreno: implement set_compute_state()
- freedreno/ir3: vec8+vec16 support
- freedreno/ir3: implement load_work_dim intrinsic
- freedreno/ir3: Add support for load_kernel_input
- freedreno/ir3: Move lower_idiv_options
- freedreno: Fix set_global_binding
- freedreno/ir3: Deal with zero-source instructions
- freedreno/ir3: 16b bools
- freedreno/ir3: 8bit fixes
- freedreno/ir3: Fix load/store_global_ir3 type
- freedreno/ir3: Fix reg size validation
- freedreno/ir3: Add wide load/store lowering
- freedreno/ir3: Add ihadd/uhadd
- freedreno/ir3: Get req_local_mem from pipe_compute_state
- freedreno/ir3: Fix validation of subgroup macros
- freedreno/drm: Add some asserts
- freedreno/drm: Move suballoc_bo to device
- freedreno/ir3/print: Show end's outidxs
- freedreno/ir3: xfb fix for duplicate outputs
- freedreno: Add PIPE_SHADER_IR_NIR_SERIALIZED support
- freedreno: caps for clover
- isaspec: Add prototypes for expr evaluators
- freedreno/crashdec: Split out mempool decoding
- freedreno/crashdec: HFI queue decoding
- freedreno/crashdec: Fallback to chip_id for GPU id
- freedreno/crashdec: Basing GMU log decoding
- freedreno/ir3: Handle instr->address when cloning
- freedreno/computerator: Fix @buf header
- freedreno/computerator: Mark shader bo for dumping
- freedreno/ir3: Dump const state with shader disasm
- clover: Move min image support check
- freedreno: Report system memory as video memory
- freedreno: Small dev_id_compare() cleanup
- freedreno: Rearrange dev_id_compare() logic
- freedreno: Handle wildcard fuse-id in device matching
- freedreno: Update chip-ids
- freedreno/decode: Handle chip-id
- mesa/st: Lowered ucp should still mark rast state dirty
- freedreno: Pass shader cache key instead of shader key
- freedreno: Add FD_DIRTY_RASTERIZER_CLIP_PLANE_ENABLE
- freedreno/a6xx: Fix clip_mask
- freedreno/a5xx: Fix clip_mask
- freedreno: Add missing generated header dependency
Rohan Garg (7):
- intel/fs: OpImageQueryLod does not support arrayed images as an operand
- ci: Do not remove libgbm-dev
- ci: Move common variables out into a separate file
- ci: Do not remove wget
- ci/piglit: Start vtest server if driver is set to virpipe
- anv: Enable VK_VALVE_mutable_descriptor_type
- docs: Update features and new_features for anv
Roland Scheidegger (1):
- llvmpipe: adjust rounding for viewport scissoring
Roman Gilg (1):
- vulkan/wsi/x11: document implementation
Roman Stratiienko (6):
- android.mk: Add missing variables to the make target
- v3dv: Fix dEQP-VK.info#instance_extensions test
- v3dv: Fix V3DV_HAS_SURFACE preprocessor condition
- v3dv: Hotfix: Rename remaining V3DV_HAS_SURFACE->V3DV_USE_WSI_PLATFORM
- v3d: Don't force SCANOUT for PIPE_BIND_SHARED requests
- v3dv: add Android support
Ruijing Dong (6):
- frontends/omx: preserve omx to keep current mode for avc decoding
- frontends/va: preparing to disable h264 extension flag in vaapi dec path
- radeon/vcn: enable dynamic dpb Tier2 support for h264 dec vaapi path
- radeon/vcn: enable dynamic dpb Tier2 for hevc dec vaapi path
- frontend/va: Keep surface buf addr before reallocation
- radeon/vcn: Updating render_pic_list for correction
Ryan Houdek (1):
- util/xmlconfig: Allow DT_UNKNOWN files
Ryan Neph (1):
- venus: ignore framebuffer for VkCommandBuffer executed outside of render pass
Sagar Ghuge (16):
- intel/compiler: Set correct cache policy for A64 byte scattered read
- intel/genxml: Add new Primitive ID Not Required bit field to 3DSTATE_DS
- intel/compiler: Track primitive id in domain/evaluation shader
- anv: Drop hint if primitive id is required or not
- iris: Drop hint if primitive id is required or not
- anv: Pass correct aux usage while filling out surface state
- anv: Enable CCS for storage image formats
- intel/compiler: Set correct return format for brw_SAMPLE
- intel/compiler: Don't hardcode padding source type to 32bit
- intel/compiler: Fix instruction size written calculation
- intel/compiler: Add helper to support half float payload with padding
- intel/fs: Define and set correct sampler simd mode
- intel/compiler: Prepare disasm for 16-bit sampler params
- anv, iris: Implement Wa_14014890652 for DG2
- intel/genxml: Add L1 Cache Control bit field
- intel/genxml: Add Un-Typed Data-Port Cache Flush field to pipe control
Sajeesh Sidharthan (1):
- frontends/va/av1: handle multiple slice params
Samuel Pitoiset (158):
- aco: do not return an empty string when disassembly is not supported
- radv: fix removing PSIZ when it's not emitted by the last VGT stage
- radv: fix OpImageQuerySamples with non-zero descriptor set
- radv: do not remove PSIZ for streamout shaders
- aco: fix invalid IR generated for b2f64 when the dest is a VGPR
- aco: fix emitting stream outputs when the first component isn't zero
- radv: add an assertion to prevent GPU hangs when VRS isn't supported
- ac/rgp: remove useless code related to GFX6-7
- aco: fix loading 64-bit inputs with fragment shaders
- radv,aco: decouple shader_info/options from radv_shader_args
- radv: re-emit prolog inputs when the nontrivial divisors state changed
- radv: remove old RADV_TRACE_FILE warning
- radv: fix build errors with Android
- radv: report error messages when the driver can't be initialized
- aco: only load streamout buffers if streamout is enabled
- radv: lower the viewport index to zero when the VGT stage doesn't export it
- radv: fix invalid wait_dst_stage_mask type
- ac/nir: remove bogus assertion about the position for culling
- zink: add CI lists and deqp-suite configuration for RADV
- radv: move freeing the trigger SQTT file at a better place
- radv: remove useless checks about GFX7 for SQTT
- radv: enable SQTT instruction timing by default
- radv: stop reporting SQTT/RGP support as experimental
- docs: document RADV_THREAD_TRACE_* envvars
- radv: rename radv_shader_variant to radv_shader
- radv: only enable VK_EXT_display_control for vrcompositor (SteamVR)
- radv: optimize subpass barrier flushes for imageless framebuffers
- Revert "radv: only enable VK_EXT_display_control for vrcompositor (SteamVR)"
- radv: remove unused parameter in radv_emit_subpass_barrier()
- radv/sqtt: reserve a VMID for better profiling
- radv/sqtt: stop calling radv_cs_add_buffer() for the thread trace BO
- radv: do not expose buffer features for depth/stencil formats
- ac/rgp: fix alignment of code object records to follow the RGP spec
- radv: only emit PGM_LO for the vertex prolog
- ac/rgp: add support for queue event timings
- ac/rgp: add support for clock calibration
- radv/winsys: use same IBs padding as the kernel
- zink: update the CI lists for RADV
- radv/sqtt: fix GPU hangs when capturing from the compute queue
- ac: add initial SPM support
- ac/rgp: add support for dumping SPM data
- radv: fix a sync issue on GFX9+ by clearing the upload BO fence
- ac/spm: fix determing the SPM wire
- ac/spm: fix determining the counter slot
- zink: update the CI lists for RADV
- zink: skip one GLES31 subset to avoid GPU hangs on Navi10
- nir: fix constant expression of ibitfield_extract
- radv: simplify re-using cache entries in radv_pipeline_cache_insert_shaders()
- radv: disable HTILE for D32S8 format and mipmaps on GFX10
- util/queue: fix a data race detected by TSAN when finishing the queue
- radv: allow TC-compat CMASK with storage images on GFX10+
- radv: ignore the descriptor set layout when creating descriptor template
- radv: convert remaining enums/structs to 1.2 versions
- ac: change family names to uppercase in ac_get_family_name()
- radv/winsys: report the real family name instead of OVERRIDDEN
- radv: fix emitting VBO when vertex input dynamic state is used
- radv: make radv_break_on_count() a non-static function
- radv: make radv_copy_buffer() a non-static function
- radv: implement optimized MSAA copies using FMASK
- ac/nir: fix left shift of 1 by 31 places detected by UBSAN
- radv: fix OOB access for inline push constants detected by UBSAN
- aco: fix right shift of exponent 32 detected by UBSAN
- radv: implement vkCmdWriteTimestamp2KHR()
- radv: implement vkCmd{Reset,Set}Event2KHR()
- radv: implement vkCmdWriteBufferMarker2AMD()
- radv: implement vkCmdWaitEvents2KHR()/vkCmdPipelineBarrier2KHR()
- radv: implement vkQueueSubmit2KHR()
- radv: add support for VkMemoryBarrier2KHR
- radv: add support for creating device-only events
- radv: add support for new pipeline stages and access masks
- radv: add support for VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR
- radv: switch the remaining stages/access to VK_PIPELINE_STAGE_2/VK_ACCESS_2
- radv: advertise VK_KHR_synchronization2
- radv: fix accessing NULL pointers when destroy the VRS image
- radv: add a workaround to fix a segfault with Metro Exodus (Linux native)
- radv: configure the number of SGPRs/VGPRs directly from the arguments
- radv: copy the user SGPRs locations outside of radv_declare_shader_args()
- radv: constify radv_shader_info in radv_declare_shader_args()
- radv/llvm: stop trying to eliminate VS outputs
- radv/llvm: constify radv_shader_info
- radv: fix resetting the entire vertex input dynamic state
- radv: remove never reached free() when compiling shaders
- radv: add a helper function to upload a shader binary
- radv: upload shader binaries after they are all compiled
- radv: pass a pointer to a pipeline for the create/insert cache functions
- radv: upload shader binaries of a pipeline contiguously in memory
- radv: move a comment at the right place in CmdBindVertexBuffers2EXT()
- radv: constify radv_vertex_binding in CmdSetVertexInputEXT()
- radv: constify radv_vs_input_state() in more places
- radv: fix dynamic rendering with VRS
- radv: avoid prefixing few VkXXX structures by struct
- radv/sqtt: always dump pipelines and shaders ISA
- radv: add few helpers for configuring performance counters
- radv: add initial SPM support on GFX10+
- radv: fix resume/suspend render pass with depth/stencil attachment
- radv: mark GFX10.3 (aka RDNA2) as conformant products with CTS 1.2.7.1
- Revert "radv: Add bufferDeviceAddressMultiDevice support."
- radv: do not perform depth/stencil resolves for suspended render pass
- nir/lower_tex: add lower_lod_zero_width
- radv: enable lower_lod_zero_width
- radv: fix dynamic rendering inheritance if the subpass index isn't 0
- radv: ignore dynamic inheritance if the render pass isn't NULL
- radv/winsys: remove useless has_sparse_vm_mappings checks
- radv/winsys: clear the PRT VA range when destroying a virtual BO
- radv/winsys: stop using reference counting for virtual BOs
- radv/winsys: update sparse mappings with OP_REPLACE instead of OP_MAP/OP_UNMAP
- ac/nir: add an option to disable anisotropic filtering for single level images
- radv,aco: do not disable anisotropy filtering for non-mipmap images
- radv: fix dynamic rendering global scissor
- radv: remove unnecessary NULL checks in vkMapMemory()/vkUnmapMemory()
- radv/winsys: stop zeroing few structs in buffer_from_fd()
- radv/winsys: remove radv_amdgpu_winsys_bo::is_shared
- radv: fix restoring subpass during hw/fs color resolves
- radv: re-enable fast clears for images that support comp-to-single
- radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets."
- radv: fix clears with value of "1" and different DCC signedness
- radv: stop checking buffer size in vkCreateBuffer()
- radv: print number of levels with RADV_DEBUG=img
- radv: fix copying mutable descriptors to sampler descriptors
- radv: add drirc radv_disable_htile_layers and enable it for F1 2021
- aco: fix a dynamic-stack-buffer-overflow when printing instructions
- aco: do not print prologs disassembly if no disassembler
- radv,aco: keep track of the prolog disassembly if necessary
- radv: save the vertex prolog to the trace BO for debugging
- radv: dump the VS prolog disassembly to the hang report
- radv: add UMR markers for the vertex prolog
- radv: do not use the common entrypoint for the Metro Exodus layer
- radv: remove remaining dead code related to the old sync code
- radv/winsys: remove unused syncobj functions
- radv: stop checking if dynamic states changed
- radv: reset VRS if the current subpass doesn't have a VRS attachment
- radv: fix computing the fb size in presence of dynamic VRS attachment
- radv: only clear VRS_HTILE_ENCODING on GFX10.3+
- radv: allow to disable anisotropic filtering for single level image with drirc
- radv: enable radv_disable_aniso_single_level for Battlefield 1 & V
- radv/winsys: fix zero submit if no timeline semaphore support
- vulkan/runtime: fix accessing NULL pointers detected by UBSAN
- radv: fix missing destroy for the overallocation mutex
- radv: fix computing the number of color samples if no attachments
- radv: optimize CPU overhead of si_cp_dma_prefetch() slightly
- radv: disable attachmentFragmentShadingRate for RADV_DEBUG=nohiz
- radv: fix copying VRS rates to HTILE if the depth/stencil is cleared
- radv: fix copying VRS rates if the ds attachment uses mips
- radv/winsys: set GTT_WC flag for CS IBs on GFX6
- radv: do not restore NULL compute pipelines after meta operations
- radv: stop checking if pipelines are NULL during draws/dispatches
- vulkan: Update the XML and headers to 1.3.204
- radv: implement 1.3 features/properties
- radv: report textureCompressionASTC_HDR as not supported
- radv: add a no-op version of vkGetPhysicalDeviceToolPropertiesEXT()
- radv: switch a bunch of struct/enum to 1.3 versions
- radv: bump conformance version to 1.3.0.0 for RDNA2
- radv: advertise Vulkan 1.3
- radv/ci: mark dEQP-VK.api.version_check.version as expected failure on Stoney
- radv/winsys: fix missing buffer_make_resident() for the null winsys
- Revert "radv: re-apply "Do not access set layout during vkCmdBindDescriptorSets.""
- radv/winsys: fix initializing debug/perftest options if multiple instances
- radv: enable radv_disable_aniso_single_level for The Evil Within 1&2
Scott Anderson (1):
- egl/wayland: Remove unused wayland enum
Sergii Melikhov (1):
- vulkan: Unlock before return.
Shmerl (1):
- docs/features: Add VK_KHR_acceleration_structure, VK_KHR_pipeline_library, VK_KHR_ray_query, VK_KHR_ray_tracing_pipeline.
Silvestrs Timofejevs (2):
- egl: introduce a log level getter function
- egl: add config debug printout
Simon McVittie (1):
- meson: Try to link all-targets module if Gallium OpenCL is enabled
Simon Ser (4):
- renderonly: write down usage rules
- vulkan/wsi/wayland: use enum wl_shm_format
- vulkan/wsi/wayland: use DRM_FORMAT_INVALID
- vulkan/wsi/wayland: remove format switch from wl_shm_format_for_vk_format
Stefan Brüns (1):
- llvmpipe: Add get_{driver,device}_uuid implementations
Tapani Pälli (18):
- iris: clear bos_written when resetting a batch
- vulkan/wsi: provide api for drivers to setup syncobj fd
- radv: setup syncobj fd via wsi_device_setup_syncobj_fd
- anv: setup syncobj fd via wsi_device_setup_syncobj_fd
- vulkan/wsi: implement missing wsi_register_device_event
- anv: allow VK_IMAGE_LAYOUT_UNDEFINED as final layout
- glsl: fix invariant qualifer usage and matching rule for GLSL 4.20
- iris: unref syncobjs and free r/w dependencies array for slab entries
- mesa: free idalloc storage for display lists
- mesa: free vbo_save_vertex_list store prims
- mesa: refactor GetProgramiv to use program resource list
- mesa: move GetProgramInterfaceiv as a shader_query function
- mesa: change GetProgramiv name length queries to use program resources
- intel/genxml: add PIPE_CONTROL field for L3 read only cache invalidation
- anv: invalidate L3 read only cache when VF cache is invalidated
- iris: invalidate L3 read only cache when VF cache is invalidated
- iris: fix a leak on surface states
- mesa/st: always use DXT5 when transcoding ASTC format
Tatsuyuki Ishi (3):
- aco: support DPP8
- aco: lower masked swizzle to DPP8
- radv/sqtt: Add and enable basic EXT_debug_utils support.
Thierry Reding (2):
- tegra: Use private reference count for sampler views
- tegra: Use private reference count for resources
Thomas H.P. Andersen (49):
- nine: remove dead code
- svga: fix bitwise/logical and mixup
- meson: drop compatability with < 0.48
- meson: drop a comment relating to old meson version
- docs: update the required meson version
- meson: drop a temp formatting variable
- ci: clean up debian-clang no-error list
- gallivm: avoid a self-assign warning
- ci: debian-clang: drop -Wno-error for self-assign
- lavapipe: fix implicit-fallthrough warning
- i915g: fix implicit-fallthrough warning
- r300: remove a set but not used variable
- r600: remove a set but not used variable
- glx: remove a set but not used variable
- gallium/u_threaded: drop unused function
- gallium/tgsi_exec: drop unused function
- draw: drop unused function
- microsoft/compiler: dxil_nir_opt_alu_deref_srcs: return progress
- lavapipe: fix string-plus-int warning
- i915g: avoid left shifting a negative number
- panvk: use FALLTHROUGH to stop a warning
- panvk: cast negative value to unint8_t
- ci: debian-clang: build more drivers
- tu/clear_blit: use || when working with bools
- r600/sb: silence a sometimes-uninitialized warning
- ci: debian-clang: -Wno-error for sometimes-uninitialized
- zink: malloc/sizeof mismatch
- xa: fix compile warning for -Wabsolute-value
- broadcom/compiler: fix compile warning -Wabsolute-value
- ci: debian-clang: drop -Wno-error=absolute-value
- replace 0 with NULL for NULL pointers
- freedreno: silence sometimes-uninitialized warning
- freedreno: drop dead assignment
- meson: add check kwarg to run_command
- ci: clean up debian-android no-error list
- anv: drop unused label
- ci: debian-android: drop -Wno-error=unused-label
- vulkan/vk_extensions_gen: fix -Wextern-initializer warning
- ci: debian-android: drop -Wno-error=extern-initializer
- microsoft/compiler: fix -Wbitwise-instead-of-logical warning
- anv: avoid warning about unused function
- vc4: drop unused function
- v3d: avoid warning about unused function
- v3d: avoid warning about unused function
- broadcom: drop unused functions
- panfrost: mark two variables as unused
- anv: drop a set but unused variable
- anv: drop a set but unused variable
- svga: silence -Wsometimes-uninitialized
Thomas Wagner (1):
- util: use anonymous file for memory fd creation
Thong Thai (8):
- frontends/va: disable packed header support for h264 encoder
- frontends/va/enc: hardcode h265 encoder ref pic list size
- radeon/vcn: increase encoder dpb size
- frontends/va/enc: allow for frames to be marked as (not) referenced
- radeon: hardcode uvd/vce encoder not_referenced value to false
- radeon/vcn: implement encoder dpb management
- frontends/va/enc: default motion estimation parameters for performance
- radeonsi: add check for graphics to si_try_normal_clear
Timothy Arceri (16):
- mesa: fix buffer overrun in SavedObj texture obj array
- mesa: remove old tnl device driver header files
- mesa: remove _mesa_ir_link_shader()
- mesa: make _mesa_associate_uniform_storage() static
- mesa: remove GLSL IR to Mesa IR code
- mesa/st: move _mesa_generate_parameters_list_for_uniforms() code to st
- mesa: move _mesa_ensure_and_associate_uniform_storage() to uniform_query.cpp
- mesa: tidy up ir_to_mesa.{cpp,h} includes, comments, etc
- mesa: rename ir_to_mesa.{cpp,h} -> link_program.{cpp,h}
- mesa: update or remove out of date references to ir_to_mesa
- doc: update source tree doc to reflect recent classic/swrast deletions
- util: add dri config option force_compat_shaders
- util: add workaround for SNK HEROINES Tag Team Frenzy
- mesa: make struct in gl_program a union and remove FIXME
- glsl/glcpp: make sure to expand new token after concatenation
- glsl/st: move st_nir_opts() into gl compiler common code
Timur Kristóf (44):
- radv: Use MESA_VULKAN_SHADER_STAGES to make room for mesh/task.
- aco: Fix how p_is_helper interacts with optimizations.
- nir: Rename nir_get_io_vertex_index_src and include per-primitive I/O.
- nir: Print Mesh Shader specific info.
- nir: Fix nir_lower_io with per primitive outputs.
- nir, spirv: Don't mark NV_mesh_shader primitive indices as per-primitive.
- nir: Add new option to lower invocation ID from invocation index.
- nir: Lower cull and clip distance arrays for mesh shaders.
- nir: Don't compact per-vertex and per-primitive outputs together.
- nir: Group per-primitive outputs at the end for driver location assign.
- nir: Fix sorting per-primitive outputs.
- util: Add util_widen_mask function.
- aco: Use util_widen_mask.
- radv: Use util_widen_mask.
- nir: Print task and mesh shader I/O variable names.
- aco: Clean up and fix quad group instructions with WQM.
- aco/optimizer_postRA: Fix combining DPP into VALU.
- aco/optimizer_postRA: Fix applying VCC to branches.
- spirv: Allow VRS with mesh shaders.
- gitlab-ci: Disable radv-fossils again.
- ac/nir/ngg: Lower NV mesh shaders to NGG semantics.
- radv: Add radv_pipeline_has_mesh helper.
- radv: Add mesh shader specific info.
- radv: Cleanup PS input generation.
- radv: Cleanup VS output param assignment.
- radv: Add support for per-primitive mesh shader outputs.
- radv: Setup shader arguments for mesh shaders.
- radv: Compile mesh shaders and apply the necessary NIR lowerings.
- radv: Set output driver locations for mesh shaders.
- radv: Create mesh shading pipelines.
- radv: Add support for mesh shading pipelines in the command buffer.
- aco: Add Mesh and Task shader stages.
- aco: Update README about NGG and mesh shaders.
- aco: Add 1D workgroup_id support for mesh shaders.
- aco: Use the correct outinfo for mesh shaders.
- aco: Export per-primitive mesh shader output attributes.
- radv: Implement NV_mesh_shader draw calls.
- radv: Enable NV_mesh_shader with a perftest flag.
- radv: Note when a mesh shader writes the primitive shading rate.
- radv: Lower primitive shading rate for mesh shaders.
- aco: Emit VRS rate when it's per-primitive.
- radv: Support VRS for mesh shaders.
- radv: Disable IB2 on compute queues.
- ac/nir/ngg: Fix mixed up primitive ID after culling.
Tomeu Vizoso (13):
- ci: Add support for lazor Chromebooks
- ci: Let manual LAVA jobs have a longer timeout than others
- freedreno/ci: Test Turnip on Adreno 618
- ci: Create symlink to /install early
- ci: Don't set GALLIVM_PERF in the scripts
- virgl/ci: Set GALLIVM_PERF=nopt,no_quad_lod
- ci: Remove syslogd
- virgl/ci: Run each dEQP instance in its own VM
- ci: Uprev Crosvm
- lvp: Free the driver_data pointer for all commands
- anv/ci: Test with deqp-vk on Tiger Lake
- anv/tests: Free BO cache and device mutex
- ci: Rebalance Iris jobs
Topi Pohjolainen (6):
- intel/compiler: Handle new sampler descriptor fields for 16bit sampler
- intel/compiler/fs: Add support for 16-bit sampler msg payload
- intel/compiler: Demote sampler params to 16-bit for CMS/UMS/MCS
- intel/compiler: Prepare ld2dms_w for 4 mcs components
- intel/compiler: Add new variant for TXF_CMS_W
- intel/compiler: Deprecate ld2dms and use ld2dms_w instead
Uday Kiran Pichika (2):
- iris: enable adaptive sync for IRIS
- anv: enable adaptive sync for ANV
Vadym Shovkoplias (3):
- intel/fs: Fix a cmod prop bug when cmod is set to inst that doesn't support it
- anv: Include viewport size in scissor rectangle
- glthread: Check out of bounds for MultiDrawElementsBaseVertex cmd
Vasily Khoruzhick (14):
- gallium: add PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS
- lima: enable PIPE_CAP_PREFER_POT_ALIGNED_VARYINGS
- lima: add native txp support
- lima: add support for 3D textures
- lima: handle 1D samplers
- lima: add more wrap modes
- lima/ppir: check if mul node is a source of add node before inserting
- lima/ppir: implement gl_FragDepth support
- lima: fix crash with sparse samplers
- lima: disasm: use last argument as a filename
- lima: disasm: call util_cpu_detect() to init CPU caps
- lima: implement dual source blend
- lima: use 1 as blend factor for dst_alpha for SRC_ALPHA_SATURATE
- lima: fix blending with min/max ops
Viktoriia Palianytsia (1):
- glsl: fix for unused variable in glsl_types.cpp
Vinson Lee (17):
- anv: Fix assertion.
- radv: Fix memory leak on error path.
- clover: Add constructor for image_rd_argument.
- zink: Remove duplicate variable unsized.
- intel/compiler: Change selected_simd return type to int.
- intel/compiler: Initialize SIMDSelectionTest member error.
- vulkan/wsi: Unlock before return on error path.
- microsoft/spirv_to_dxil: Fix non-Windows build.
- virgl: Allocate qdws after virgl_init_context to avoid leak.
- ac/rgp: Initialize clock_calibration with memset.
- ir3: Make shift operand 64-bit.
- panfrost: Avoid double unlock.
- isaspec: Sort field names to generate deterministic output.
- radv: Fix memory leak on error path.
- r600/sfn: Remove unused AluInstruction members.
- isaspec: Remove duplicate return statement.
- v3dv: Add missing unlocks on errors.
Witold Baryluk (2):
- zink: Do not access just freed zink_batch_state
- zink: Fully initialize VkBufferViewCreateInfo for hashing
Xiaohui Gu (1):
- iris: Mark a dirty update when vs_needs_sgvs_element value changed
Yiwei Zhang (27):
- dri_interface: remove obsolete interfaces
- dri_interface: remove gl header
- venus: refactor private descriptor_set helpers to be private
- venus: assign valid memoryTypeIndex of exportable ahb memory for image
- venus: release queues on device creation failure
- venus: refactor to add vn_device_init
- venus: refactor to add vn_buffer_init
- venus: refactor the ahb buffer mem_type_bits query api
- venus: add struct vn_buffer_memory_requirements
- venus: add struct vn_image_memory_requirements
- venus: add buffer cache init and usage flows
- venus: implement vn_buffer_get_max_buffer_size
- venus: implement vn_buffer_cache_get_memory_requirements
- venus: implement vn_buffer_cache_entries_create
- venus: refactor vn_device_memory_simple_alloc
- venus: simplify device memory pool alloc and refcount
- venus: defer roundtrip waiting to vkFreeMemory time
- venus: track memory type property flags in vn_device_memory
- venus: move bo allocation for mappable memory to vn_MapMemory
- venus: subtract appended header size in vn_CreatePipelineCache
- venus: VkExternalImageFormatProperties is optional
- tu: VkExternalImageFormatProperties is optional
- venus: update some obsolete assumptions described
- venus: track whether a fence is external
- Revert "venus: remove vn_ring_wait_all"
- venus: make vn_QueueSubmit async for native submissions
- venus: properly destroy deferred ahb image before real image creation
Yonggang Luo (2):
- vulkan: Open registry XML files as UTF-8
- win32: Fixes thread local on win32 with clang/mingw (!14062)
mwezdeck (1):
- virgl/drm: New optimization for uploading textures
orbea (1):
- build: add sha1_h for lp_texture.c
satmandu (1):
- Fix compilation on armv7l with gcc 11.2.0
shanshengwang (1):
- radeon/vce: Limiting max supported refernce frames to 1 for h264 encoding
|