THU-DSP-LAB/ventus-gpgpu

承影有SIMT-STACK的退栈指令吗?

ByeBeihai opened this issue · 1 comments

您好,我在阅读承影的分支控制部分时发现:承影的SIMT-STACK进栈由vbench系列指令完成,但是我似乎没有找到可以用于让SIMT-STACK退栈的指令。也就是说,承影是如何在else分支的最后让其SIMT-MASK回到分支前的状态的呢?我似乎在手册中没有找到答案。

每个分支的末尾都会有一条join指令,会根据当前的分支情况决定退栈还是切换分支。
具体来说,在分支发生之前会有一个setrpc指令,指示重聚点rpc,接下来的vbranch指令进入分支并压栈两次。每条分支末尾的join指令比较当前pc和栈顶项,压栈或不对栈进行操作