compiler-team
llvm-mos
Our great sponsors
compiler-team | llvm-mos | |
---|---|---|
46 | 13 | |
380 | 388 | |
2.6% | 3.1% | |
6.8 | 10.0 | |
12 days ago | 21 days ago | |
HTML | ||
Apache License 2.0 | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
compiler-team
-
The Rust Calling Convention We Deserve
> Also, why aren't we size-sorting fields already?
We are for struct/enum fields. https://camlorn.net/posts/April%202017/rust-struct-field-reo...
There's even an unstable flag to help catch incorrect assumptions about struct layout. https://github.com/rust-lang/compiler-team/issues/457
- Rust proposal for ABI for higher-level languages
-
The Linux Kernel Prepares for Rust 1.77 Upgrade
Are you talking about https://github.com/rust-lang/compiler-team/issues/688 ? I think that issue provides a lot of interesting context for this specific improvement.
-
Progress toward a GCC-based Rust compiler
And mips64, which rustc recently dumped support for after their attempt to extort funding/resources from Loongson failed:
https://github.com/rust-lang/compiler-team/issues/648
This is the biggest problem with the LLVM mentality: they use architecture support as a means to extract support (i.e. salaried dev positions) from hardware companies.
GNU may have annoyingly-higher standards for merging changes, but once it's in there and supported they will keep it for the long haul.
-
Cargo has never frustrated me like npm or pip has. Does Cargo ever get frustrating? Does anyone ever find themselves in dependency hell?
See https://github.com/rust-lang/compiler-team/issues/688
- Rust: Drop MIPS to Tier 3
-
There is now a proposal to switch Rustc Nightly to use a parallel frontend
The work has been going on for some time now and it seems we are quite close to it being enabled as a default for nightly builds, I am super thrilled upwards of 20% faster clean builds and possibly more are on the horizon. Hope everything works out without triggering some unseen ICE. https://github.com/rust-lang/compiler-team/issues/681 Edit: If you want to discuss this feature reach out on Zulip
-
Rust 1.72.0
I'd recommend reading the MCP[1] they linked regarding the decision as well as their target tier policy [2].
They are dropping tier 1 support for Win 7 and Win 8. That means they are no longer going to guarantee that the project builds on those platforms and passes all tests via CI.
As long as it is feasible they will probably keep CI runs for those platforms and if interested parties step up and provide sufficient maintenance support, it will remain tier 2. i.e a guarantee that it builds on those platforms via CI but not necessarily that all features are supported and guaranteed via passing tests.
If interested parties can provide sufficient maintenance that all tests continue passing, it will be tier 1 in all but name. However the rest of the development community won't waste their time with issues like Win 7 and 8's partial support for UTF-8.
And once CI stops being feasible for the compiler team to host, it'll drop down to tier 3. If there's sufficient interest from the community towards maintaining these targets, in practice you should see comparable support to with tiers 1 or 2 however now any CI will be managed externally by the community and the compiler team will stop worrying about changes that could break compilation on those targets.
TLDR: They aren't saying "it'll no longer work" but rather "if you want it to stay maintained for these targets, you have to pitch in dev hours to maintain it and eventually support the infrastructure to do this because we don't see a reason to continue doing this". So if you care for these targets, you'll have to contribute to keep it maintained.
[1]: https://github.com/rust-lang/compiler-team/issues/651
- Experimental feature gate for `extern "crabi"` ABI
-
Prerequisites for a Windows XP 3D game engine
(The already broken) XP support was removed almost 3 years ago: https://github.com/rust-lang/compiler-team/issues/378
llvm-mos
- LLVM-MOS 6502 Compiler Backend: Having a Blast in the Past
-
I'm sorry honey, it's just not working out. Our relationship worked when we were younger, but we're both older now and we've grown apart. This issue is to fully eliminate LLVM, Clang, and LLD libraries from the Zig project.
Too late: https://github.com/llvm-mos/llvm-mos
-
Explaining my fast 6502 code generator
I don’t think it’s in the official repo, but yes:
https://github.com/llvm-mos/llvm-mos
-
How can I compile rust for 16bit x86 (Intel 8086)?
You could look at LLVM-MOS, the port of LLVM to the 6502. It might give you some ideas around the problems to solve https://llvm-mos.org/wiki/Welcome https://github.com/llvm-mos/llvm-mos
-
The Rise of Rust, the ‘Viral’ Secure Programming Language That’s Taking Over Tech
The MEGA 65 doesn't appear to have shipped yet. The best data I could find is the MEGA 65 is based on a "GS4510". The "GS4510" is compatible with a "4502", which in turn is compatible with the 65CE02. The 65CE02 uses a different manufacturing process but the same ISA as the 6502, which is supported by rust-mos and lvm-mos](https://github.com/llvm-mos/llvm-mos).
-
A Graphical OS for the Atari 8-bit
It really is a cool project. https://github.com/cc65/cc65
It provides some template configuration files describing different memory layouts. And provides common libraries for input/output.
There's also a LLVM fork for MOS: https://github.com/llvm-mos/llvm-mos
They've got some interesting hacks with ZeroPage memory and register allocation: https://llvm-mos.org/wiki/Code_generation_overview
Interesting if you geek out on that kind of research.
-
Can you write for the Commodore 64 in Rust? Why yes, yes you can!
Using llvm-mos, rust-mos, a lot of time compiling compilers and support from Mariusz (the rust-mos author), I was finally able to program like it was 1982...
-
rust gcc backend was officially accepted into the compiler
SNES: 65C816 derivative, may eventually be supported by https://github.com/llvm-mos/llvm-mos
- A project to port LLVM to the MOS 6502
- LLVM-MOS, a project to port the LLVM toolkit to the MOS 6502
What are some alternatives?
libvfio-user - framework for emulating devices in userspace
cargo-n64 - Make Nintendo 64 games in Rust! 🦀
ua-parser-js - UAParser.js - Free & open-source JavaScript library to detect user's Browser, Engine, OS, CPU, and Device type/model. Runs either in browser (client-side) or node.js (server-side).
cc65 - cc65 - a freeware C compiler for 6502 based systems
namespacing-rfc - RFC for Packages as Optional Namespaces
sim6502 - Simulator of 6502 with remote lldb support
cargo-show-asm - cargo subcommand showing the assembly, LLVM-IR and MIR generated for Rust code
rust-mos - Empowering everyone to build reliable and efficient software.
libgccjit-patches - Patches awaiting review for libgccjit
rv51 - A RISC-V emulator for the 8051 (MCS-51) microcontroller.
skyline-rs - A Rust library for modding Nintendo Switch games using Skyline
gcc-6502 - A port of GCC to the 6502 processor family.