## Summary
@tqchen @icemelon9 @jroesch @zhiics @yongwww we discuss in person. Reached the 
following consensus:
1. Remove `Phi` instruction. Instead extend `If` to write the result to a new 
register. 
2. Reuse the existing value stack as the register file. Have an anchor in the 
function frame to point to the start of each function's register region.
3. Try to do liveness on Relay AST to reuse the pass manager infrastructure, 
and to not introduce extra interfaces.

Let me know if I miss anything or said something wrong. I'll take out liveness 
analysis on opcodes from my branch and polish remaining stuff(register VM + 
linear scan + interfaces). Since we don't have liveness analysis on Relay AST 
now, I'll simply generate live interval for each register with the full opcodes 
range, so register allocator can assign unique slot for each register. 

-- 
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/dmlc/tvm/issues/2915#issuecomment-478796098

Reply via email to