Commit df2fed4
[ir] Improve validation speed with many failures
ReserveAdditional() was being used to grow the diagnostics vector by
only two slots at a time, which was triggering many copies of the
diagnostics vector for modules that have many failures. Instead just
let the vector grow naturally (which doubles the size when needed) and
manually get the reference to the error diagnostic.
Also add an early exit when iterating over instructions and errors
have already been found.
Fixed: 466695523
Change-Id: I8b862c8550237d29c75fa9d1a1aa150cf4fc86fa
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/280935
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: dan sinclair <dsinclair@chromium.org>1 parent d15a5db commit df2fed4
File tree
3 files changed
+41
-67
lines changed- src/tint
- lang/core/ir
- utils/diagnostic
3 files changed
+41
-67
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1705 | 1705 | | |
1706 | 1706 | | |
1707 | 1707 | | |
1708 | | - | |
1709 | 1708 | | |
1710 | 1709 | | |
1711 | 1710 | | |
1712 | 1711 | | |
1713 | 1712 | | |
| 1713 | + | |
| 1714 | + | |
| 1715 | + | |
| 1716 | + | |
1714 | 1717 | | |
1715 | 1718 | | |
1716 | 1719 | | |
1717 | 1720 | | |
1718 | 1721 | | |
1719 | | - | |
1720 | 1722 | | |
1721 | 1723 | | |
1722 | 1724 | | |
1723 | 1725 | | |
1724 | 1726 | | |
1725 | 1727 | | |
| 1728 | + | |
| 1729 | + | |
| 1730 | + | |
| 1731 | + | |
1726 | 1732 | | |
1727 | 1733 | | |
1728 | 1734 | | |
1729 | 1735 | | |
1730 | 1736 | | |
1731 | | - | |
1732 | 1737 | | |
1733 | 1738 | | |
1734 | 1739 | | |
1735 | 1740 | | |
1736 | 1741 | | |
1737 | 1742 | | |
| 1743 | + | |
| 1744 | + | |
| 1745 | + | |
| 1746 | + | |
1738 | 1747 | | |
1739 | 1748 | | |
1740 | 1749 | | |
| |||
3254 | 3263 | | |
3255 | 3264 | | |
3256 | 3265 | | |
| 3266 | + | |
| 3267 | + | |
| 3268 | + | |
| 3269 | + | |
3257 | 3270 | | |
3258 | 3271 | | |
3259 | 3272 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
974 | 974 | | |
975 | 975 | | |
976 | 976 | | |
977 | | - | |
| 977 | + | |
| 978 | + | |
| 979 | + | |
| 980 | + | |
| 981 | + | |
978 | 982 | | |
979 | 983 | | |
980 | 984 | | |
981 | 985 | | |
982 | 986 | | |
983 | 987 | | |
984 | 988 | | |
985 | | - | |
986 | | - | |
987 | | - | |
| 989 | + | |
| 990 | + | |
| 991 | + | |
988 | 992 | | |
989 | 993 | | |
990 | 994 | | |
| |||
1005 | 1009 | | |
1006 | 1010 | | |
1007 | 1011 | | |
1008 | | - | |
| 1012 | + | |
| 1013 | + | |
| 1014 | + | |
| 1015 | + | |
| 1016 | + | |
1009 | 1017 | | |
1010 | 1018 | | |
1011 | 1019 | | |
1012 | 1020 | | |
1013 | 1021 | | |
1014 | 1022 | | |
1015 | | - | |
1016 | | - | |
1017 | | - | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
1018 | 1026 | | |
1019 | 1027 | | |
1020 | 1028 | | |
| |||
1856 | 1864 | | |
1857 | 1865 | | |
1858 | 1866 | | |
1859 | | - | |
1860 | | - | |
1861 | | - | |
1862 | | - | |
1863 | | - | |
1864 | | - | |
1865 | | - | |
1866 | | - | |
1867 | | - | |
1868 | | - | |
1869 | | - | |
1870 | | - | |
1871 | | - | |
1872 | | - | |
1873 | | - | |
1874 | | - | |
1875 | | - | |
1876 | | - | |
1877 | | - | |
1878 | | - | |
1879 | | - | |
1880 | | - | |
1881 | 1867 | | |
1882 | 1868 | | |
1883 | 1869 | | |
| |||
1906 | 1892 | | |
1907 | 1893 | | |
1908 | 1894 | | |
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 | 1895 | | |
1935 | 1896 | | |
1936 | 1897 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
86 | 86 | | |
87 | 87 | | |
88 | 88 | | |
89 | | - | |
90 | | - | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
91 | 92 | | |
92 | 93 | | |
93 | 94 | | |
| |||
186 | 187 | | |
187 | 188 | | |
188 | 189 | | |
189 | | - | |
190 | | - | |
191 | | - | |
192 | | - | |
193 | | - | |
194 | 190 | | |
195 | 191 | | |
196 | 192 | | |
| |||
212 | 208 | | |
213 | 209 | | |
214 | 210 | | |
215 | | - | |
| 211 | + | |
| 212 | + | |
| 213 | + | |
| 214 | + | |
| 215 | + | |
216 | 216 | | |
217 | | - | |
| 217 | + | |
218 | 218 | | |
219 | 219 | | |
220 | 220 | | |
| |||
0 commit comments