@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

Reply via email to