<div>
            <div><span>Hi everyone,</span></div><div><span><br></span></div><div><span>I'm trying to understand the GVM bytecode, while I got some problem on understanding its handling</span></div><div><span>of stack frames.</span></div><div><span><br></span></div><div><span>In the paper <A Parallel Virtual Machine for Efficient Scheme Compilation:</span></div><div><span><span class="Apple-tab-span" style="white-space:pre">        </span>.... JUMP and COND instructions cause the stack pointer to be recalculated, while LABEL</span></div><div><span><span class="Apple-tab-span" style="white-space:pre">     </span>instructions recalculated the frame pointer...</span></div><div><span><br></span></div><div><span>While I can hardly understand these description, with the ".gvm" I can hardly understand how backend</span></div><div><span>should do with given instruction.</span></div><div><span><br></span></div><div><span>I do read the the c backend implementation, it uses one "fp" pointer and calculate stack</span>pointer based</div><div>on that. But the other operations the it uses is too difficult to understand without <span>any </span><span>documents, so</span></div><div><span>I'll </span>be grateful if anyone could give me a concrete example on gambit's stack handling.</div><div><span><br>
                </span>
                <span><br>-- <br>Meng Zhang<br>Sent with <a href="http://www.sparrowmailapp.com/?sig">Sparrow</a><br></span>
            </div>
        </div>