Question about cross-compilation


I heard that Rust is (wants to be?) good at cross-compilation. Rust itself offers multiple platforms, also for multiple architectures such as ppc, risc-v, and for multiple operating systems.

Is the process of implementing new platforms easy for rust or is it a challenge? If a new processor architecture or a new operating system is created (or becomes more popular), will it be easy to implement Rust there?

Thanks in advance for any answer.

I imagine that the hardest step is to get support for the new platform in LLVM, since Rust internally uses LLVM to generate machine code.

So if LLVM implements such a platform, Rust will support it?

It's probably not enough in isolation, no. How much further work is needed depends on what things should be supported. E.g., is no_std support enough, or do you also need the full standard library?