areusch opened a new pull request #7398:
URL: https://github.com/apache/tvm/pull/7398
This PR is a follow-on to #7002 and continues its work to support BYOC
functions with the `llvm` TVM target with the C runtime. Though the BYOC flow
is supported with the TVM C++ runtime, this support depends heavily on `dlsym`
and shared library support, neither of which are required to use the TVM C
runtime.
This PR can roughly be thought of in these parts:
- Build a corresponding `runtime.CreateLLVMCrtMetadataModule` PackedFunc to
the `runtime.CreateCSourceCrtMetadataModule`. Also add `crt` here to
distinguish between these metadata modules (which are intended to be compiled)
and runtime::MetadataModule (which is intended to be directly loaded into the
TVM compiler c++ runtime)
- Move FuncRegistry and TVMSystemLibEntryPoint LLVM generator into a new
LLVMModule instance. Change function registry to declare extern functions
rather than using internal linkage.
- Allow `tvm.micro.build_static_runtime` to accept object files from the
LLVM backend. This temporarily solution allows us to build `llvm`-targeted code
using microTVM.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]