The progress reports for both rustc_codegen_gcc and gccrs are both frequent and good reads, consider adding them to your rss reader. Both projects are instrumental in bringing Rust to the Linux kernel for architectures that LLVM does not target.
The rustc_codegen_gcc project started earlier AFAIK and had to trailblaze many refactorings of gcc internals to make the the rust language fit, but judging by the reports it has been in a bit of a slump recently development-wise. gccrs on the other hand started a bit later, and due to a starting of with a bunch of open unblocked problems to solve it managed to attract a huge influx of active contributors, in turn making for a vibrant project and progress reports.
Gccrs started earlier: technically in 2014 but was rebooted in 2019, whereas rustc_codegen_gcc’s initial commit is in 2021.
The difference in visible progress AFAICT is mainly due to two things
the stage both projects are in: gccrs still has lots of basic but fun features to implement (it’s still doesn’t successfully compile/test all of 1.49’s stdlib), whereas rustc_codegen_gcc has been fully functional for a while (able to compile Linux and most crates) but need polish, hunting down corner cases like SIMD, and packaging via rustup.
the available manpower: gccrs has fulltime employees, gsoc students, etc, while rustc_codegen_gcc has just 2-3 regular contributors
Searched the document for the word “fast” and it did not turn up.
The thing where dev tooling for other languages is written in Rust and then becomes much much faster… Somebody maybe should be doing that for Rust itself.
The goal of this project is to make it easier to integrate Rust into existing C and C++ projects that are traditionally built with gcc (Linux being the most prominent).
Given that gcc and clang are comparable at compilation speed, with clangmaaybe being slightly better, I wouldn’t expect this project to improve compilation speed, nor I believe it should be within scope for this project.
The progress reports for both rustc_codegen_gcc and gccrs are both frequent and good reads, consider adding them to your rss reader. Both projects are instrumental in bringing Rust to the Linux kernel for architectures that LLVM does not target.
The rustc_codegen_gcc project started earlier AFAIK and had to trailblaze many refactorings of gcc internals to make the the rust language fit, but judging by the reports it has been in a bit of a slump recently development-wise. gccrs on the other hand started a bit later, and due to a starting of with a bunch of open unblocked problems to solve it managed to attract a huge influx of active contributors, in turn making for a vibrant project and progress reports.
Gccrs started earlier: technically in 2014 but was rebooted in 2019, whereas rustc_codegen_gcc’s initial commit is in 2021.
The difference in visible progress AFAICT is mainly due to two things
Will this make it possible to bootstrap a rust toolchain from source?
It will eventually. Currently bootstrapping is done via mrustc, a Rust to C transpiler.
Searched the document for the word “fast” and it did not turn up.
The thing where dev tooling for other languages is written in Rust and then becomes much much faster… Somebody maybe should be doing that for Rust itself.
The goal of this project is to make it easier to integrate Rust into existing C and C++ projects that are traditionally built with
gcc
(Linux being the most prominent).Given that
gcc
andclang
are comparable at compilation speed, withclang
maaybe being slightly better, I wouldn’t expect this project to improve compilation speed, nor I believe it should be within scope for this project.