Our test scripts assume that the non static user
mode installation of QEMU is available in the PATH. For example, if using QEMU for ARM testing, please make sure qemu-arm
is installed and available to the test scripts.
You can use ci/install_qemu.sh
to download, build and install the version of qemu that is used as part of the CI.
TensorFlow Lite Micro makes use of QEMU to for testing cross compiled tests.
QEMU can quickly test unit tests that are cross compiled for non x64_86 hardware.
All unit tests can be ran using tensorflow/lite/micro/tools/ci_build/test_cortex_m_qemu.sh
for the cortex-m processor.
The current QEMU implementation uses user
mode. The documentation for user mode is here.
QEMU uses ARM semihosting to replace newlib system calls for specific boards with the host OS. Further documentation on how this works is contained in cortex_m_qemu_makefile.inc
.