Status: - We need support in config.sub (https://lists.gnu.org/archive/html/config-patches/2024-01/msg00002.html) - There is a small adjustment to do to build/moz.configure/init.configure to support it properly - We need a compiler-rt for arm64e - LLD doesn't support arm64e (https://github.com/llvm/llvm-project/issues/79543) - Rust doesn't support arm64e until 1.76, but even then, it doesn't come with prebuilt libstd yet (https://github.com/rust-lang/compiler-team/issues/717) - It's not entirely clear if the ABI is stabilitized in LLVM, and it's not clear whether there have been changes in the ABI since the release of the first M1 macs. It's also not entirely clear if Apple has downstreamed everything to LLVM yet. Notably https://github.com/llvm/llvm-project/pull/71128 landed recently, and won't be in a released clang version until clang 18. I have PoC patches for the first three. I got a build on try using a custom rust compiler with -Z build-std, and the resulting build gets into a rust panic on startup, where the function call originates from NS_InvokeByIndex. Chances are xptcall needs adjustments, but I haven't dug into what's going wrong yet.
Bug 1876653 Comment 1 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Status: - We need support in config.sub (https://lists.gnu.org/archive/html/config-patches/2024-01/msg00002.html) - There is a small adjustment to do to build/moz.configure/init.configure to support it properly - We need a compiler-rt for arm64e - LLD doesn't support arm64e (https://github.com/llvm/llvm-project/issues/79543) - Rust doesn't support arm64e until 1.76, but even then, it doesn't come with prebuilt libstd yet (https://github.com/rust-lang/compiler-team/issues/717) - It's not entirely clear if the ABI is stabilitized in LLVM, and it's not clear whether there have been changes in the ABI since the release of the first M1 macs. It's also not entirely clear if Apple has downstreamed everything to LLVM yet. Notably https://github.com/llvm/llvm-project/pull/71128 landed recently, and won't be in a released clang version until clang 18. I have PoC patches for the first three. I got a build on try using a custom rust compiler with -Z build-std and cctools, and the resulting build gets into a rust panic on startup, where the function call originates from NS_InvokeByIndex. Chances are xptcall needs adjustments, but I haven't dug into what's going wrong yet.