hoot 的 wasm 工具包—wingolog

主要观点:继续探讨 Hoot Scheme-to-WebAssembly 编译器,重点关注 WebAssembly 及相关工具,提出编译到 WebAssembly 应编写低级 Wasm 工具链的观点,介绍 Wasm 相关的命名、图变换、工具链构建等内容,包括实现文本和二进制写入、读取,构建调试工具、实现 Wasm VM 等,以及 %inline-wasm 的作用。
关键信息:

  • 编译器关于名字,中间表示是定义和使用的图,机器处理地址。
  • 针对 Wasm 要考虑图变换,如调用低级运行时库等。
  • 需有 Wasm 的表示,包括文本和二进制格式,实现名字到地址的映射。
  • 构建了完整的 Wasm 工具链,包括读取、写入、内存构造和变换等。
  • 实现了 Wasm VM 用于调试,%inline-wasm 可将 Wasm 函数插入 CPS 图等。
    重要细节:
  • 提到一些材料取自 10 月的 Wasm 标准化组织演讲。
  • 介绍了各种关于 Wasm 的工具和函数,如 stringref、lower-stringrefs、lower-globals 等。
  • 提及 Binaryen 的一些情况,如不支持 block parameters 等。
  • 阐述了 Hoot 的 Wasm 工具链约 10K 行代码且较完整。
阅读 10
0 条评论