Skip to content

Commit b98da99

Browse files
committed
Fix hexagon test.
* previously I believe we required interface_api == "c", but this really means to generate C API bindings, and we are generating "packed" bindings. * I think "c" was chosen here because the distinction between interface-api and use-unpacked-api is confusing. "c" interface-api means to generate an entrypoint API for microcontrollers that accepts bare data buffers. "packed" interface-api means to generate a TVMBackendPackedCFunc entrypoint. use-unpacked-api forms the same determination for the operator functions. * A further confusion here is that there are two ways to call "packed" operator functions: tir.tvm_builtin_call_packed and tir.tvm_builtin_call_cpacked. This distinction describes whether or not to late-bind calls via TVMBackendGetFuncFromEnv. Right now, AOT only ever requires call_cpacked because target_host == target, and for all suitable target_host, we expect a single DSO-exportable runtime.Module. When we move away from this by introducing heterogeneous target support to AOT, we can use this as a condition to help us choose between call_cpacked and call_packed (and possibly add a compile-time option to assert it is call_cpacked, for situations where we really don't want call_packed).
1 parent 7a0852f commit b98da99

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

tests/python/contrib/test_hexagon/test_launcher.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -530,7 +530,7 @@ def test_aot_executor_multiple_conv2d(
530530
params=params,
531531
target=tvm.target.Target(target_hexagon, host="c"),
532532
runtime=Runtime("cpp"),
533-
executor=Executor("aot", {"unpacked-api": False, "interface-api": "c"}),
533+
executor=Executor("aot", {"unpacked-api": False, "interface-api": "packed"}),
534534
)
535535
# Uncomment this once the workaround is not needed.
536536
# lowered.export_library(

0 commit comments

Comments
 (0)