|
| 1 | +# Summary |
| 2 | + |
| 3 | +[About this guide](./about-this-guide.md) |
| 4 | + |
| 5 | +--- |
| 6 | + |
| 7 | +- [Part 1: Building, debugging, and contributing to Rustc](./part-1-intro.md) |
| 8 | + - [About the compiler team](./compiler-team.md) |
| 9 | + - [How to Build and Run the Compiler](./how-to-build-and-run.md) |
| 10 | + - [Build and Install distribution artifacts](./build-install-distribution-artifacts.md) |
| 11 | + - [Documenting Compiler](./compiler-documenting.md) |
| 12 | + - [The compiler testing framework](./tests/intro.md) |
| 13 | + - [Running tests](./tests/running.md) |
| 14 | + - [Adding new tests](./tests/adding.md) |
| 15 | + - [Using `compiletest` + commands to control test execution](./compiletest.md) |
| 16 | + - [Walkthrough: a typical contribution](./walkthrough.md) |
| 17 | + - [Implementing new features](./implementing_new_features.md) |
| 18 | + - [Stabilizing Features](./stabilization_guide.md) |
| 19 | + - [Debugging the Compiler](./compiler-debugging.md) |
| 20 | + - [Profiling the compiler](./profiling.md) |
| 21 | + - [with the linux perf tool](./profiling/with_perf.md) |
| 22 | + - [Coding conventions](./conventions.md) |
| 23 | + - [crates.io Dependencies](./crates-io.md) |
| 24 | + - [Emitting Errors and other Diagnostics](diagnostics.md) |
| 25 | + - [JSON diagnostic format](diagnostics/json-format.md) |
| 26 | +- [Part 2: How rustc works](./part-2-intro.md) |
| 27 | + - [High-level overview of the compiler source](./high-level-overview.md) |
| 28 | + - [The Rustc Driver and Interface](./rustc-driver.md) |
| 29 | + - [Rustdoc](./rustdoc.md) |
| 30 | + - [Queries: demand-driven compilation](./query.md) |
| 31 | + - [The Query Evaluation Model in Detail](./queries/query-evaluation-model-in-detail.md) |
| 32 | + - [Incremental compilation](./queries/incremental-compilation.md) |
| 33 | + - [Incremental compilation In Detail](./queries/incremental-compilation-in-detail.md) |
| 34 | + - [Debugging and Testing](./incrcomp-debugging.md) |
| 35 | + - [The parser](./the-parser.md) |
| 36 | + - [`#[test]` Implementation](./test-implementation.md) |
| 37 | + - [Macro expansion](./macro-expansion.md) |
| 38 | + - [Name resolution](./name-resolution.md) |
| 39 | + - [The HIR (High-level IR)](./hir.md) |
| 40 | + - [Lowering AST to HIR](./lowering.md) |
| 41 | + - [Debugging](./hir-debugging.md) |
| 42 | + - [The `ty` module: representing types](./ty.md) |
| 43 | + - [Kinds](./kinds.md) |
| 44 | + - [Type inference](./type-inference.md) |
| 45 | + - [Trait solving (old-style)](./traits/resolution.md) |
| 46 | + - [Higher-ranked trait bounds](./traits/hrtb.md) |
| 47 | + - [Caching subtleties](./traits/caching.md) |
| 48 | + - [Specialization](./traits/specialization.md) |
| 49 | + - [Trait solving (new-style)](./traits/index.md) |
| 50 | + - [Lowering to logic](./traits/lowering-to-logic.md) |
| 51 | + - [Goals and clauses](./traits/goals-and-clauses.md) |
| 52 | + - [Equality and associated types](./traits/associated-types.md) |
| 53 | + - [Implied bounds](./traits/implied-bounds.md) |
| 54 | + - [Region constraints](./traits/regions.md) |
| 55 | + - [The lowering module in rustc](./traits/lowering-module.md) |
| 56 | + - [Lowering rules](./traits/lowering-rules.md) |
| 57 | + - [Well-formedness checking](./traits/wf.md) |
| 58 | + - [Canonical queries](./traits/canonical-queries.md) |
| 59 | + - [Canonicalization](./traits/canonicalization.md) |
| 60 | + - [The SLG solver](./traits/slg.md) |
| 61 | + - [An Overview of Chalk](./traits/chalk-overview.md) |
| 62 | + - [Bibliography](./traits/bibliography.md) |
| 63 | + - [Type checking](./type-checking.md) |
| 64 | + - [Method Lookup](./method-lookup.md) |
| 65 | + - [Variance](./variance.md) |
| 66 | + - [Existential Types](./existential-types.md) |
| 67 | + - [The MIR (Mid-level IR)](./mir/index.md) |
| 68 | + - [MIR construction](./mir/construction.md) |
| 69 | + - [MIR visitor and traversal](./mir/visitor.md) |
| 70 | + - [MIR passes: getting the MIR for a function](./mir/passes.md) |
| 71 | + - [MIR optimizations](./mir/optimizations.md) |
| 72 | + - [Debugging](./mir/debugging.md) |
| 73 | + - [The borrow checker](./borrow_check.md) |
| 74 | + - [Tracking moves and initialization](./borrow_check/moves_and_initialization.md) |
| 75 | + - [Move paths](./borrow_check/moves_and_initialization/move_paths.md) |
| 76 | + - [MIR type checker](./borrow_check/type_check.md) |
| 77 | + - [Region inference](./borrow_check/region_inference.md) |
| 78 | + - [Two-phase-borrows](./borrow_check/two_phase_borrows.md) |
| 79 | + - [Constant evaluation](./const-eval.md) |
| 80 | + - [miri const evaluator](./miri.md) |
| 81 | + - [Parameter Environments](./param_env.md) |
| 82 | + - [Code Generation](./codegen.md) |
| 83 | + - [Updating LLVM](./codegen/updating-llvm.md) |
| 84 | + - [Debugging LLVM](./codegen/debugging.md) |
| 85 | + - [Profile-guided Optimization](./profile-guided-optimization.md) |
| 86 | + |
| 87 | +--- |
| 88 | + |
| 89 | +[Appendix A: Stupid Stats](./appendix/stupid-stats.md) |
| 90 | +[Appendix B: Background material](./appendix/background.md) |
| 91 | +[Appendix C: Glossary](./appendix/glossary.md) |
| 92 | +[Appendix D: Code Index](./appendix/code-index.md) |
| 93 | +[](./important-links.md) |
0 commit comments