I think C is still outside the scope of most builds, and that assemblers will need to be hand-coded by the cpu designer. While assemblers are straightforward to create, a general one could not possibly account for all the quirks of a given cpu. ESPECIALLY a minecraft cpu lmao.
e.g. delay slots, addressing modes, labels etc. need to be accounted for on top of just translating mnemonics to machine code.
my main worry is that a limited target assembler will influence a cpu designer to make similarly limited decisions. For example, I'm going to do my own because I want to be able to jump to a specific label with one instruction, and have the assembler decide which jump instruction to actually use. If it is a very long distance jump, it may even need to use another instruction or two for a larger position agnostic jump based on calculations using my program counter.
e.g. delay slots, addressing modes, labels etc. need to be accounted for on top of just translating mnemonics to machine code.
my main worry is that a limited target assembler will influence a cpu designer to make similarly limited decisions. For example, I'm going to do my own because I want to be able to jump to a specific label with one instruction, and have the assembler decide which jump instruction to actually use. If it is a very long distance jump, it may even need to use another instruction or two for a larger position agnostic jump based on calculations using my program counter.