豫豫言文档API ATLAS
入口包说明.html
62 模块1862 名称
← 全部模块

模块 / 32

控制。豫

控制。豫

21公开名称

置块签名

公开
化「整数」而化「整数」而「有」

文言:解释器之控制:块类型、立即数之越、边表之扫、标签栈与分支、返回。汉语:解释器控制流基础:块类型解码、立即数跳过、函数边表扫描(每个字节偏移 8 字节 [end 之后的位置, else 之后的位置])、标签栈与分支、函数返回。 文言:块类型:设 状态_块参 与 状态_块果,返回新位置。汉语:读块类型,写入 状态_块参、状态_块果,返回其后的位置。

读块类型

公开
化「整数」而「整数」

暂无说明。

跳过GC立即数

公开
化「整数」而化「整数」而「整数」

文言:立即数之越:址在操作码之后。汉语:跳过一条指令的立即数;址指向操作码之后。GC 前缀(0xFB)与杂项前缀(0xFC)按子操作码分别处理。

跳过杂项立即数

公开
化「整数」而化「整数」而「整数」

暂无说明。

跳过GC前缀

公开
化「整数」而「整数」

暂无说明。

跳过杂项前缀

公开
化「整数」而「整数」

暂无说明。

跳过分支表立即数

公开
化「整数」而「整数」

暂无说明。

跳过带类型选择立即数

公开
化「整数」而「整数」

暂无说明。

跳过捕获子句们

公开
化「整数」而化「整数」而「整数」

暂无说明。

跳过尝试表立即数

公开
化「整数」而「整数」

暂无说明。

跳过立即数

公开
化「整数」而化「整数」而「整数」

暂无说明。

是开块指令

公开
化「整数」而「爻」

文言:边表之扫:每字节偏移八字节,记 end 与 else 之后位。汉语:扫描函数体,建立边表:对每个 block/loop/if/try_table 的起始字节偏移,记录 end 之后的位置(+0)与 else 之后的位置(+4)。控制栈放在暂存区 扫描栈。

扫描开块

公开
化「整数」而化「整数」而「有」

暂无说明。

扫描否则

公开
化「整数」而化「整数」而化「整数」而化「整数」而「有」

暂无说明。

扫描结束

公开
化「整数」而化「整数」而化「整数」而化「整数」而「有」

暂无说明。

扫描函数

公开
化「整数」而「有」

暂无说明。

边偏

公开
化「整数」而「整数」

暂无说明。

压标签

公开
化「整数」而化「整数」而化「整数」而化「整数」而「有」

文言:标签栈与分支。汉语:压标签;弹出尝试表的处理帧;分支到相对深度 n(返回新栈针,新指令针放在 状态_新指令针,零表示函数级返回,结果已在栈顶)。

弹出处理帧们

公开
化「整数」而化「整数」而「有」

暂无说明。

分支

公开
化「整数」而化「整数」而「整数」

暂无说明。

返回处理

公开
化「整数」而化「整数」而「整数」

文言:函数之返:弹帧而复其实例;帧带返回之钩者,退出解释循环而请入口之驱动装箱其果。汉语:函数返回:把结果移到帧针处,弹出调用帧,若帧里记的调用者实例与当前不同就切回去,恢复现场(新指令针、新帧针、当前函数、标签顶、处理顶、边偏),返回新栈针;若帧带返回钩(“调用导出”的帧),登记“装箱结果”请求并令解释循环退出,由入口的驱动循环把结果装箱后从调用者的下一条指令续行。