Cross compiling for ARC processor (Argonaut RISC Core)

I got Rust code to compile for the arc-elf32 target using rustc_codegen_gcc and using Heath123's rust-casio-docker repository. Modifications to rust-casio-docker:

You can test the compiled Rust code using QEMU. Follow kolerov's synopsys repository on how to build QEMU for ARC.

Note that ./test.sh in rustc_codegen_gcc still fails.

  • The first issue you'll experience is an arc_legitimize_tls_address issue.
  • So remove the thread-local storage (TLS) related tests in example/mini_core.rs.
  • The second issue is that arc-elf32-ld can't find libc. I haven't figured out a solution to that yet.
1 Like