Workaround for Rust having different system for templating constants to GNU as.

Having a separate file is ugly, but it allows for a single source of truth for constants
Works for C, asm, zig and rust.

https://stackoverflow.com/questions/79840723/shared-assembly-between-rust-and-c-using-preprocessor
This commit is contained in:
Toby Jaffey 2025-12-08 10:13:53 +00:00
parent 2ccd3ac7f4
commit a88f3a1690
5 changed files with 9 additions and 4 deletions

View file

@ -6,7 +6,11 @@ _start:
# sp is already setup by vm
sw ra,12(sp)
jal ra, main
li a7, 0x138 #IOREQ_HALT (Rust assembler doesn't pick up def...)
#if 1
#include "non-rust-crt0-hack.s"
#else
li a7, {IOREQ_HALT}
#endif
ecall
.section .data