低层文件定义
公开「元类型」文言:合诸文之定义,自导出者起,按需成一模块。汉语:底层模块的总装:把依赖序的各文件闭包前优化形式定义转成简树;求顶层常量;自导出函数(定义名以〈导出:〉开头)出发,沿调用图逐个化简、提升、整理;再生成 Wasm 指令,附导入、导出、内存与数据段,装成状态模块。
包说明.html模块 / 84
编译步骤/代码生成/底层后端/底层模块。豫
「元类型」文言:合诸文之定义,自导出者起,按需成一模块。汉语:底层模块的总装:把依赖序的各文件闭包前优化形式定义转成简树;求顶层常量;自导出函数(定义名以〈导出:〉开头)出发,沿调用图逐个化简、提升、整理;再生成 Wasm 指令,附导入、导出、内存与数据段,装成状态模块。
「元类型」文件路径、其定义列
化「字符串」而化「字符串」而化「低层定义结果」而「已转定义」暂无说明。
化「字符串」而化「字符串」而「字符串」文件、名、转换结果
化(「列」于(「字符串」合(「列」于(「字符串」合「爻」合「表达式」))))而(「列」于「已转定义」)暂无说明。
化(「列」于「已转定义」)而(「列」于(「字符串」合「低层项」))暂无说明。
化(「列」于「已转定义」)而(「列」于「低层函数」)暂无说明。
化「低层项」而「爻」文言:值定义含声明者,先求之。汉语:判断简树里是否有 `声明:` 开头的外部调用(内存或数据区声明)。
化「低层项」而(「列」于「字符串」)暂无说明。
化「低层项」而(「列」于「字符串」)暂无说明。
化「低层函数」而(「列」于「低层函数」)文言:一函数之整理:化简、提升、尾环、成派。汉语:对一个未处理的函数依次做化简、提升(含尾自调化环)、分派整理,返回它自己与提升产生的全局函数。
化(「列」于「低层函数」)而化「字符串」而(「或可有」于「低层函数」)暂无说明。
化(「列」于「低层函数」)而化「字符串」而「爻」暂无说明。
化(「列」于「低层函数」)而化(「列」于「字符串」)而(「列」于「低层函数」)文言:自根而起,沿所调者次第整理,得可达之诸函数。汉语:从根函数名出发,按调用关系收集所有可达函数(先整理再扫描调用)。返回按发现顺序的已整理函数列表。
化(「列」于(「整数」合「整数」))而(「列」于(「整数」合「整数」))文言:求某函数所需之签。汉语:签名去重表:(参数个数,结果个数)。
化(「列」于(「整数」合「整数」))而化(「整数」合「整数」)而「整数」暂无说明。
化(「列」于「网页指令」)而「整数」文言:局部之数,取诸指令之最大下标。汉语:扫描指令得到使用的局部下标上界(下标加一)。
化(「列」于「网页指令」)而(「列」于「网页指令」)文言:去其无用之常与弃。汉语:窥孔:删去紧邻的 `常量 弃值`(求值后立即丢弃的单元值)。
化「生成上下文」而化(「列」于(「整数」合「整数」))而化「低层函数」而(「整数」合「整数」合(「列」于「网页指令」))文言:一函数之生成:形参占前,体后成,得局部数与指令。汉语:生成一个函数的 `网页函数`(类型号、额外局部数、指令)。
「字符串」文言:导出之名,去其前缀〈导出:〉;名后可缀〈:参数数:结果数〉,以定导出之签,总装时为之造包装函数:形参多于所定者补零,结果所定为零者弃之。汉语:定义名以〈导出:〉开头的函数是导出函数,导出名是其后的部分。导出名后面可以再加〈:参数数:结果数〉指定导出函数的 Wasm 签名,例如〈导出:启动:0:0〉:总装时生成一个包装函数,多出的形参补 0,所定结果数为 0 时丢弃返回值。豫言里“有 → 有”的函数据此导出成无参无果的入口。
化(「列」于「已转定义」)而(「列」于(「字符串」合「字符串」))(函数全局名、导出名)
化「低层函数」而「字符串」暂无说明。
化「低层函数」而「整数」暂无说明。
化「低层函数」而「低层项」暂无说明。
化「字符串」而(「字符串」合「字符串」合「整数」合「整数」)暂无说明。
化「字符串」而(「字符串」合「整数」合「整数」)文言:解导出名之签:名〈甲:三:零〉得(甲、三、零);无签者为(原名、负一、负一)。汉语:解析导出名可能带的签名后缀〈:参数数:结果数〉,返回(导出名、参数数、结果数);没有签名则参数数与结果数为 -1。
化(「列」于「低层函数」)而化「字符串」而「整数」文言:据全局名查函数之形参数。汉语:在可达函数里按全局名查形参个数;找不到为 -1。
化「有」而「爻」文言:总装,得状态模块。汉语:`文们` 是依赖序的(文件路径、闭包前优化形式定义列)。返回可直接编码的状态模块。 文言:调试之开关:环境变量 YY_底层导出全部 非空者,凡可达之函数皆以〈名:〉加其名另行导出,供降级器书调试之符号、剖析之器示函数之名;不设则所生之模块不变。汉语:调试开关:环境变量 YY_底层导出全部 非空时,把所有可达函数以“名:函数名”额外导出,供降级器写调试符号、剖析工具显示函数名;不设时生成的模块不变。编译缓存不区分此开关,开启时请换用单独的编译器副本(缓存按编译器路径分开)。
化(「列」于(「字符串」合(「列」于(「字符串」合「爻」合「表达式」))))而((((「列」于(「整数」合「整数」))合(「列」于(「字符串」合「字符串」合「整数」))合(「列」于(「整数」合「整数」合(「列」于「网页指令」)))合(「列」于(「字符串」合「整数」)))合(「列」于(「整数」合「整数」))合(「列」于「网页数据声明」))合(「列」于(「爻」合「整数」)))暂无说明。
化(「列」于(「字符串」合(「列」于(「字符串」合「爻」合「表达式」))))而「字节串」文言:一步而成模块之字节。汉语:编译并编码为标准 Wasm 二进制(编码时会验证模块)。