-
Notifications
You must be signed in to change notification settings - Fork 204
Document repositories maintained by the T-compiler #918
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
# Repositories maintained by the Compiler Team | ||
|
||
The obvious focus of the Compiler Team is the [rustc] compiler itself, but the team also maintains a few other repositories: | ||
|
||
- An experimental [C codegen backend][c-backend] for rustc, which lowers Rust MIR to C code and compiles it with a C compiler. Currently maintained by X and Y. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Discussion:
do all these "Currently maintained by X and Y" make sense? Do we have specific people more or less de-facto official maintainers for these repositories? or just remove this wording? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It's an interesting question, because compiler team might have |
||
- A [Cranelift][cranelift-backend] experimental rustc backend, based on [Cranelift]. This has the potential to improve compilation times in debug mode. Currently maintained by X and Y. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Effectively just me right now. |
||
- A Rust port of the [LLVM::APFloat][rustc_apfloat] library. Maintained by X abnd Y. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Remark: I'm not sure about |
||
- A fork of [Enzyme], a high-performance automatic differentiator of LLVM and MLIR (more info at this [link][enzyme-mit]). The fork is currently maintained by X and Y. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Remark: Enzyme is mostly maintained by @ZuseZ4, I don't think it's really maintained by the compiler team as a whole. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Also "maintain" is a strong word, I update our fork every once in a while when I see relevant improvements in Enzyme. I just have two extra commits that I carry along till I find a better location to push them to. |
||
- [Thorin], a DWARF packaging utility supporting GNU extension and DWARF 5 package formats. Maintained by X and Y. | ||
- The [Rust Forge][forge], the documentation website you're reading. Maintained by the Rust project. | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. It seems like the GCC backend is missing from this list. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. cg_gcc is probably not maintained by the compiler team as a whole, it's maintained by the There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We as T-compiler have "only" There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. @antoyo and @GuillaumeGomez what do you think? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'll let @antoyo confirm but on my end I think it's fine adding There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
I don't think compiler needs maintain access. Infra-wise, principle of least priviledges. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Note that the "maintain" role shouldn't ideally be used for anything, it is not necessary for most use-cases. So having the "maintain" role doesn't mean that a team maintains a specific repository. In fact even "write" doesn't mean that; maintaining something and having write access to it is a bit different, conceptually 😅 There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I'm OK with adding this to the list. There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
Interesting. Do you think then we should downgrade the role of T-compiler from There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. In general, yes. There are some repos where maintain was needed for some specific permissions, but usually it shouldn't be required. It's hard to tell where downgrading is "safe" and where not though. |
||
|
||
In addition, the Compiler team routinely contributes to other internal projects, [here the full list][other]. | ||
|
||
If you want to start (or are already) contributing to the Rust project and you have expertise or interest in any of these repositories, feel free to get in touch! | ||
|
||
[rustc]: https://github.com/rust-lang/rust | ||
[c-backend]: https://github.com/rust-lang/rustc_codegen_c | ||
[cranelift-backend]: https://github.com/rust-lang/rustc_codegen_cranelift | ||
[cranelift]: https://github.com/bytecodealliance/wasmtime/blob/main/cranelift | ||
[rustc_apfloat]: https://github.com/rust-lang/rustc_apfloat | ||
[enzyme]: https://github.com/rust-lang/enzyme | ||
[enzyme-mit]: https://enzyme.mit.edu/ | ||
[thorin]: https://github.com/rust-lang/thorin | ||
[forge]: https://github.com/rust-lang/rust-forge | ||
[other]: https://github.com/orgs/rust-lang/teams/compiler/repositories |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remark: I think this is mostly a GSoC project or an experimental backend, I don't think compiler (as in the whole team) really maintains it. It's maintained by the
codegen_c_maintainers
subteam.