Commit 913ad6d
committed
Auto merge of rust-lang#56732 - Zoxc:rustc-interface, r=oli-obk
Make the rustc driver and interface demand driven
This introduces a new crate `rustc_interface` which is the canonical interface for creating and using the compiler. It allows you to access a `Compiler` type in a closure and that types have methods to run passes on demand. The interesting parts are found [here (defining the queries)](https://github.com/Zoxc/rust/blob/rustc-interface/src/librustc_interface/queries.rs#L78) and [here (methods to create a `Compiler`)](https://github.com/Zoxc/rust/blob/rustc-interface/src/librustc_interface/interface.rs).
cc @rust-lang/compiler @rust-lang/dev-tools @rust-lang/rustdocFile tree
60 files changed
+2511
-2745
lines changed- src
- librustc_codegen_llvm
- librustc_codegen_utils
- librustc_data_structures
- librustc_driver
- librustc_incremental
- persist
- librustc_interface
- librustc
- ich
- session
- ty
- librustdoc
- clean
- passes
- rustc
- test
- run-make-fulldeps
- hotplug_codegen_backend
- issue-19371
- run-pass-fulldeps
- rustdoc-ui
- tools/rustdoc
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
60 files changed
+2511
-2745
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
946 | 946 | | |
947 | 947 | | |
948 | 948 | | |
949 | | - | |
950 | | - | |
951 | | - | |
952 | | - | |
953 | | - | |
954 | 949 | | |
955 | 950 | | |
956 | 951 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
| 14 | + | |
14 | 15 | | |
15 | 16 | | |
16 | 17 | | |
| |||
1494 | 1495 | | |
1495 | 1496 | | |
1496 | 1497 | | |
| 1498 | + | |
| 1499 | + | |
| 1500 | + | |
| 1501 | + | |
| 1502 | + | |
| 1503 | + | |
| 1504 | + | |
| 1505 | + | |
| 1506 | + | |
1497 | 1507 | | |
1498 | 1508 | | |
1499 | 1509 | | |
| |||
1800 | 1810 | | |
1801 | 1811 | | |
1802 | 1812 | | |
1803 | | - | |
1804 | | - | |
1805 | | - | |
1806 | | - | |
| 1813 | + | |
| 1814 | + | |
| 1815 | + | |
1807 | 1816 | | |
1808 | 1817 | | |
1809 | 1818 | | |
| |||
1835 | 1844 | | |
1836 | 1845 | | |
1837 | 1846 | | |
1838 | | - | |
1839 | | - | |
| 1847 | + | |
| 1848 | + | |
| 1849 | + | |
| 1850 | + | |
| 1851 | + | |
1840 | 1852 | | |
1841 | 1853 | | |
1842 | 1854 | | |
| |||
1864 | 1876 | | |
1865 | 1877 | | |
1866 | 1878 | | |
1867 | | - | |
| 1879 | + | |
1868 | 1880 | | |
1869 | 1881 | | |
1870 | 1882 | | |
| |||
2590 | 2602 | | |
2591 | 2603 | | |
2592 | 2604 | | |
2593 | | - | |
| 2605 | + | |
| 2606 | + | |
| 2607 | + | |
| 2608 | + | |
| 2609 | + | |
2594 | 2610 | | |
2595 | 2611 | | |
2596 | 2612 | | |
| |||
2631 | 2647 | | |
2632 | 2648 | | |
2633 | 2649 | | |
2634 | | - | |
| 2650 | + | |
2635 | 2651 | | |
2636 | 2652 | | |
2637 | 2653 | | |
| |||
2649 | 2665 | | |
2650 | 2666 | | |
2651 | 2667 | | |
2652 | | - | |
| 2668 | + | |
2653 | 2669 | | |
2654 | 2670 | | |
2655 | 2671 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
311 | 311 | | |
312 | 312 | | |
313 | 313 | | |
314 | | - | |
| 314 | + | |
315 | 315 | | |
316 | 316 | | |
317 | 317 | | |
| |||
1124 | 1124 | | |
1125 | 1125 | | |
1126 | 1126 | | |
1127 | | - | |
| 1127 | + | |
1128 | 1128 | | |
1129 | 1129 | | |
1130 | 1130 | | |
| |||
1334 | 1334 | | |
1335 | 1335 | | |
1336 | 1336 | | |
1337 | | - | |
1338 | | - | |
1339 | | - | |
1340 | | - | |
1341 | | - | |
1342 | | - | |
1343 | | - | |
1344 | | - | |
1345 | | - | |
1346 | | - | |
1347 | | - | |
| 1337 | + | |
1348 | 1338 | | |
1349 | 1339 | | |
1350 | 1340 | | |
1351 | 1341 | | |
1352 | 1342 | | |
1353 | | - | |
| 1343 | + | |
1354 | 1344 | | |
1355 | 1345 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
78 | 78 | | |
79 | 79 | | |
80 | 80 | | |
81 | | - | |
82 | 81 | | |
83 | 82 | | |
84 | 83 | | |
85 | 84 | | |
86 | 85 | | |
87 | 86 | | |
88 | 87 | | |
89 | | - | |
90 | 88 | | |
91 | 89 | | |
92 | 90 | | |
| |||
1182 | 1180 | | |
1183 | 1181 | | |
1184 | 1182 | | |
1185 | | - | |
1186 | | - | |
1187 | | - | |
1188 | | - | |
1189 | | - | |
1190 | | - | |
1191 | | - | |
1192 | | - | |
1193 | | - | |
1194 | | - | |
1195 | | - | |
1196 | | - | |
1197 | | - | |
1198 | | - | |
| 1183 | + | |
| 1184 | + | |
| 1185 | + | |
| 1186 | + | |
| 1187 | + | |
| 1188 | + | |
| 1189 | + | |
| 1190 | + | |
| 1191 | + | |
| 1192 | + | |
| 1193 | + | |
| 1194 | + | |
| 1195 | + | |
1199 | 1196 | | |
1200 | 1197 | | |
1201 | 1198 | | |
| |||
1247 | 1244 | | |
1248 | 1245 | | |
1249 | 1246 | | |
1250 | | - | |
| 1247 | + | |
1251 | 1248 | | |
1252 | 1249 | | |
1253 | 1250 | | |
| |||
1293 | 1290 | | |
1294 | 1291 | | |
1295 | 1292 | | |
1296 | | - | |
1297 | | - | |
1298 | | - | |
1299 | | - | |
1300 | | - | |
1301 | | - | |
1302 | | - | |
1303 | | - | |
1304 | | - | |
| 1293 | + | |
1305 | 1294 | | |
1306 | 1295 | | |
1307 | 1296 | | |
| |||
1985 | 1974 | | |
1986 | 1975 | | |
1987 | 1976 | | |
1988 | | - | |
1989 | | - | |
1990 | | - | |
1991 | | - | |
1992 | | - | |
1993 | | - | |
1994 | | - | |
1995 | | - | |
1996 | | - | |
| 1977 | + | |
| 1978 | + | |
| 1979 | + | |
| 1980 | + | |
| 1981 | + | |
| 1982 | + | |
| 1983 | + | |
| 1984 | + | |
1997 | 1985 | | |
1998 | | - | |
1999 | | - | |
2000 | | - | |
2001 | | - | |
2002 | | - | |
2003 | | - | |
2004 | | - | |
2005 | | - | |
2006 | | - | |
2007 | | - | |
2008 | | - | |
2009 | | - | |
2010 | | - | |
2011 | | - | |
2012 | | - | |
| 1986 | + | |
| 1987 | + | |
| 1988 | + | |
| 1989 | + | |
| 1990 | + | |
| 1991 | + | |
| 1992 | + | |
| 1993 | + | |
| 1994 | + | |
| 1995 | + | |
| 1996 | + | |
| 1997 | + | |
| 1998 | + | |
| 1999 | + | |
2013 | 2000 | | |
2014 | 2001 | | |
2015 | 2002 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | | - | |
| 74 | + | |
75 | 75 | | |
76 | 76 | | |
77 | 77 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
63 | 63 | | |
64 | 64 | | |
65 | 65 | | |
66 | | - | |
| 66 | + | |
67 | 67 | | |
68 | 68 | | |
69 | 69 | | |
70 | 70 | | |
| 71 | + | |
71 | 72 | | |
72 | 73 | | |
73 | 74 | | |
| |||
311 | 312 | | |
312 | 313 | | |
313 | 314 | | |
314 | | - | |
| 315 | + | |
315 | 316 | | |
316 | 317 | | |
317 | 318 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
21 | 21 | | |
22 | 22 | | |
23 | 23 | | |
24 | | - | |
| 24 | + | |
| 25 | + | |
25 | 26 | | |
26 | 27 | | |
27 | 28 | | |
| |||
61 | 62 | | |
62 | 63 | | |
63 | 64 | | |
64 | | - | |
| 65 | + | |
65 | 66 | | |
66 | 67 | | |
67 | 68 | | |
| |||
163 | 164 | | |
164 | 165 | | |
165 | 166 | | |
166 | | - | |
| 167 | + | |
167 | 168 | | |
168 | 169 | | |
169 | 170 | | |
| |||
0 commit comments