I know that after calling
graph, lib, params = nnvm.compiler.build(
I can use
lib.get_source() to get LLVM. I can even use
llc -march to compile that to a legal .s file (that I can’t run).
tvm.target.arm_cpu('rasp3b') store usable assembly anywhere?
I’m assuming that somehow the runtime has access to these functions, and then using the graph schedule invokes these functions as needed. Is this a correct understanding?
If I wanted to compile all of this for a bare-metal system (like riscv-isa-sim) what would I have to change?