RFC: Discussions on IR and IR extensions

This is a RFC for discussions and ideas we have on IR and IR extensions. The existing system is not adequate for the ultimate goal of becoming a compiler toolkit. The IR was originally written to be just a convenience for lowering via LLVM. There was no consideration in many of the needs we have nowadays; such as transformation passes, caching, etc… The IR extensions (e.g. extension hooks that are globally mutable dict) were introduced at a time when there are no concept of passes. We will need to rethink the IR and how it can be extended.

Numba meetings that talked about this topic:

2 Likes