Commit 87fb08e
committed
GPU/HLE compat batch: fix crash classes from issue logs 40-87
Texture cache: page-accurate alias retirement with isolation (#84),
pool-reuse retirement for clean render targets and storage/sampled
aliases (#54, #62, #52, #70, #48), compressed video-out refresh from
raw guest backing (#71-#75), storage writeback and realigned storage
buffer bindings (#85).
Descriptors: 3D Standard4KB storage textures and MinLod meta on
write-only UAVs (#82, #40, #77, #63, #64), storage encoding for
DCC-tagged first-party T#s (#56, #87), cube depth targets (#43),
packed-float storage swizzles, BGRA-as-RGBA8-uint sampled views (#41).
Views are validated against eMutableFormat at creation to keep format
reinterpretation defined; layered RT views, NGS2 rack 0x4003, EOP
fallback writes, and null QueryMemoryProtection return EFAULT instead
of exiting. Structured-merge escape dispatch in the shader recompiler
(#67).1 parent 8ae84c4 commit 87fb08e
39 files changed
Lines changed: 1563 additions & 656 deletions
File tree
- src
- graphics
- guest_gpu
- command_processor
- host_gpu
- renderer
- presentation
- shader
- recompiler
- kernel
- libs
- loader
Lines changed: 3 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
280 | 280 | | |
281 | 281 | | |
282 | 282 | | |
| 283 | + | |
| 284 | + | |
| 285 | + | |
283 | 286 | | |
284 | 287 | | |
285 | 288 | | |
| |||
Lines changed: 38 additions & 25 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1801 | 1801 | | |
1802 | 1802 | | |
1803 | 1803 | | |
1804 | | - | |
1805 | | - | |
1806 | | - | |
| 1804 | + | |
| 1805 | + | |
| 1806 | + | |
| 1807 | + | |
| 1808 | + | |
| 1809 | + | |
1807 | 1810 | | |
| 1811 | + | |
| 1812 | + | |
| 1813 | + | |
1808 | 1814 | | |
1809 | | - | |
1810 | | - | |
1811 | | - | |
1812 | 1815 | | |
1813 | 1816 | | |
1814 | 1817 | | |
| |||
1820 | 1823 | | |
1821 | 1824 | | |
1822 | 1825 | | |
1823 | | - | |
1824 | | - | |
1825 | | - | |
| 1826 | + | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
| 1832 | + | |
| 1833 | + | |
| 1834 | + | |
1826 | 1835 | | |
1827 | 1836 | | |
1828 | 1837 | | |
| |||
1834 | 1843 | | |
1835 | 1844 | | |
1836 | 1845 | | |
1837 | | - | |
1838 | | - | |
1839 | | - | |
| 1846 | + | |
| 1847 | + | |
| 1848 | + | |
| 1849 | + | |
| 1850 | + | |
| 1851 | + | |
| 1852 | + | |
| 1853 | + | |
1840 | 1854 | | |
1841 | 1855 | | |
1842 | 1856 | | |
| |||
1848 | 1862 | | |
1849 | 1863 | | |
1850 | 1864 | | |
1851 | | - | |
1852 | | - | |
1853 | | - | |
| 1865 | + | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
| 1869 | + | |
| 1870 | + | |
| 1871 | + | |
| 1872 | + | |
1854 | 1873 | | |
1855 | 1874 | | |
1856 | 1875 | | |
| |||
2938 | 2957 | | |
2939 | 2958 | | |
2940 | 2959 | | |
2941 | | - | |
| 2960 | + | |
| 2961 | + | |
| 2962 | + | |
2942 | 2963 | | |
2943 | 2964 | | |
2944 | 2965 | | |
2945 | | - | |
2946 | | - | |
2947 | | - | |
2948 | | - | |
2949 | 2966 | | |
2950 | 2967 | | |
2951 | 2968 | | |
2952 | 2969 | | |
2953 | 2970 | | |
2954 | 2971 | | |
2955 | | - | |
| 2972 | + | |
2956 | 2973 | | |
2957 | 2974 | | |
2958 | 2975 | | |
2959 | | - | |
2960 | | - | |
2961 | | - | |
2962 | | - | |
2963 | 2976 | | |
2964 | 2977 | | |
2965 | 2978 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
612 | 612 | | |
613 | 613 | | |
614 | 614 | | |
615 | | - | |
| 615 | + | |
| 616 | + | |
| 617 | + | |
| 618 | + | |
| 619 | + | |
| 620 | + | |
616 | 621 | | |
617 | 622 | | |
618 | 623 | | |
| |||
1042 | 1047 | | |
1043 | 1048 | | |
1044 | 1049 | | |
1045 | | - | |
| 1050 | + | |
| 1051 | + | |
| 1052 | + | |
| 1053 | + | |
| 1054 | + | |
| 1055 | + | |
| 1056 | + | |
| 1057 | + | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
| 1061 | + | |
| 1062 | + | |
| 1063 | + | |
1046 | 1064 | | |
1047 | 1065 | | |
1048 | 1066 | | |
| |||
1139 | 1157 | | |
1140 | 1158 | | |
1141 | 1159 | | |
| 1160 | + | |
| 1161 | + | |
1142 | 1162 | | |
1143 | 1163 | | |
1144 | 1164 | | |
| |||
1371 | 1391 | | |
1372 | 1392 | | |
1373 | 1393 | | |
| 1394 | + | |
1374 | 1395 | | |
1375 | 1396 | | |
1376 | 1397 | | |
| |||
1454 | 1475 | | |
1455 | 1476 | | |
1456 | 1477 | | |
| 1478 | + | |
| 1479 | + | |
1457 | 1480 | | |
1458 | 1481 | | |
1459 | 1482 | | |
| |||
1506 | 1529 | | |
1507 | 1530 | | |
1508 | 1531 | | |
1509 | | - | |
| 1532 | + | |
| 1533 | + | |
| 1534 | + | |
| 1535 | + | |
| 1536 | + | |
| 1537 | + | |
| 1538 | + | |
| 1539 | + | |
| 1540 | + | |
| 1541 | + | |
| 1542 | + | |
1510 | 1543 | | |
1511 | 1544 | | |
1512 | 1545 | | |
| |||
1740 | 1773 | | |
1741 | 1774 | | |
1742 | 1775 | | |
| 1776 | + | |
| 1777 | + | |
| 1778 | + | |
1743 | 1779 | | |
| 1780 | + | |
1744 | 1781 | | |
1745 | 1782 | | |
1746 | 1783 | | |
| |||
1785 | 1822 | | |
1786 | 1823 | | |
1787 | 1824 | | |
1788 | | - | |
1789 | | - | |
| 1825 | + | |
| 1826 | + | |
| 1827 | + | |
| 1828 | + | |
| 1829 | + | |
| 1830 | + | |
| 1831 | + | |
1790 | 1832 | | |
1791 | 1833 | | |
1792 | 1834 | | |
| |||
1796 | 1838 | | |
1797 | 1839 | | |
1798 | 1840 | | |
1799 | | - | |
1800 | | - | |
| 1841 | + | |
| 1842 | + | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
| 1846 | + | |
| 1847 | + | |
1801 | 1848 | | |
1802 | 1849 | | |
1803 | 1850 | | |
| |||
1838 | 1885 | | |
1839 | 1886 | | |
1840 | 1887 | | |
| 1888 | + | |
| 1889 | + | |
1841 | 1890 | | |
1842 | 1891 | | |
1843 | 1892 | | |
| |||
1888 | 1937 | | |
1889 | 1938 | | |
1890 | 1939 | | |
1891 | | - | |
| 1940 | + | |
| 1941 | + | |
| 1942 | + | |
| 1943 | + | |
| 1944 | + | |
| 1945 | + | |
| 1946 | + | |
1892 | 1947 | | |
1893 | 1948 | | |
1894 | 1949 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
125 | 125 | | |
126 | 126 | | |
127 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
128 | 132 | | |
129 | 133 | | |
130 | 134 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
685 | 685 | | |
686 | 686 | | |
687 | 687 | | |
688 | | - | |
689 | | - | |
690 | | - | |
691 | | - | |
692 | | - | |
693 | | - | |
694 | | - | |
| 688 | + | |
| 689 | + | |
| 690 | + | |
695 | 691 | | |
696 | 692 | | |
697 | 693 | | |
| |||
944 | 940 | | |
945 | 941 | | |
946 | 942 | | |
947 | | - | |
| 943 | + | |
948 | 944 | | |
949 | 945 | | |
950 | 946 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
131 | 131 | | |
132 | 132 | | |
133 | 133 | | |
134 | | - | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
135 | 144 | | |
136 | 145 | | |
137 | 146 | | |
| |||
158 | 167 | | |
159 | 168 | | |
160 | 169 | | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
167 | 178 | | |
168 | 179 | | |
169 | 180 | | |
| |||
173 | 184 | | |
174 | 185 | | |
175 | 186 | | |
176 | | - | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
177 | 194 | | |
178 | 195 | | |
179 | 196 | | |
| |||
0 commit comments