Halide icon indicating copy to clipboard operation
Halide copied to clipboard

How to add new backend to Halide

Open BohrCh opened this issue 2 years ago • 1 comments

Hello, everyone. I want to add a new backend(X-DSP) to Halide. What should I learn? Could you please tell me how to start? thanks a lot!

BohrCh avatar Apr 26 '22 17:04 BohrCh

This is CEVA's DSP? We had some folks working on that a while back. Not sure what happened with that.

First question is whether you have LLVM support. If so, probably start from one of the smaller existing LLVM backends, such as CodeGen_MIPS.cpp. If there is no LLVM support, probably best to go through the C++ backend and look at what got added for Xtensa in the xtensa-codegen branch.

Runtime support will likely also be needed. This depends a lot on what sort of OS support you can depend on. Some applicable things might be added soon. (E.g. FreeRTOS, SiFive low-level "metal" API.)

zvookin avatar Apr 26 '22 18:04 zvookin