@MarisaKirisame : I have some thoughts regarding your suggestion to the possibility of a merged program analysis framework between RelayIR and HalideIR between issue [3895](https://github.com/apache/incubator-tvm/issues/3895) and this current issue. I found @DKXXXL 's proposal here clean and intuitive in a way that it does not require building of CFG. This is leveraging the restrictive control flow capability inherent in the HalideIR (i.e. the IR only supports for and if-then-else), although it would bring to clarity the currently proposal of how 'location' information can be tracked. If the proposal needs to be extended to handle RelayIR, which needs to handle function-as-first-class citizen (now CFA is needed), as well as 'reference' (a.k.a. pointer analysis) introduced as a result of autodiff, the framework would need to be more comprehensive. Perhaps I'm not fully understanding the RelayIR, but are you thinking along the line of https://plum-umd.github.io/abstracting-definitional-interpreters/ for a program analysis framework as a complete solution? Or, you're just thinking a global analysis framework (i.e. some global data structure that keeps up-to-date analysis information across different passes)? Comments appreciated!
-- You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub: https://github.com/apache/incubator-tvm/issues/4468#issuecomment-565234840