• LLVM Pass 其二:Analysis与AnalysisManager

    来自究极怪兽之上的召唤,将一切全部抹消的光之龙!现身吧!青眼光龙! 在第一期的时候我们就提到过,新的Pass与LegacyPass的其中一个不同在于将Analysis单独分离了出来,那么本期我们从一个Analysis的写法开始写起。 实现一个A...
  • LLVM Pass 其一:PassManager

    现身吧,青眼亚白龙! 把他给我烧的一干二净,毁灭的焦热疾风弹! 上一期我们讲到了每个Pass基本的结构,这期我们从PassManager开始讲述Pass从创建到执行的整个流程,以及涉及到的种种问题 声明include/llvm/IR/PassM...
  • LLVM Pass 其零:新的Pass机制

    以高攻击力著称的传说之龙。任何编程语言和目标平台都能被粉碎,其破坏力不可估量 在目前的LLVM中存在两套Pass相关的机制,一套是基本上已经过时的被称为LegacyPass的机制(codegen的部分还没有迁移完毕),另一套则是现在主要使用的P...
  • 司机与列车

    与我在列车道相交处相遇吧 图片出自萌娘百科:天朝铁道少女:南车篇条目 列车 提到列车,你第一时间想到的是什么? 是去旅游的时候在列车上看到的沿途风景,还是在回家的时候的思乡之情。 那么提到停不下来的列车呢? 我的第一想法是人生,但仔细...
  • Rc-lang开发周记 一些变动

    关于开发周记周更这件事情现在继续做的必要性我开始产生了疑问。 首先我写这个一方面是为了养成写博客的习惯,另一方面则是为了促进我形成写代码的习惯。然而随着我不断的做这样的事情,需要学习分析其他编译器实现的次数越来越多。这并非是因为我不继续做下去而要放弃...
  • 我与博客

    你愿意和我一起读下去吗 pixiv: 44636666 读《暗时间》这本书的时候看到关于你为什么应该写博客的章节,想先把自己有关博客的想法做一个记录,因此就有了本文。 我和博客的开始以前也尝试过建立博客,也搞过什么Wordpress之类的,但也...
  • Rc-lang开发周记18 简单类型推导

    不要小看我,这种程度我也可以做得出!非pixiv 本周主要都在了解MIR相关,但是还存有非常多的问题,因此先来讲一下之前写的TypeInfer的内容 我将Infer的过程分为了两部分。第一部分是最纯粹的类型推导,第二部分是实际将ast转换为带有...
  • Rc-lang开发周记17 一点AST检查

    聪明如我怎么会写出ast有错误的代码 pixiv:69589494 先说一声五一快乐!久违的长假,之后会花一些时间把其他一些写到一半的博客整理出来 本来想要好好做一下检查相关以及类型推导的工作,但是目前来说我更需要先学习优化方面的知识,因此关于...
  • Rc-lang开发周记16 Rust源码学习之初识类型

    类型和猫咪先生有多少相似之处呢 pixiv:74795024 本周先了解了一些Rust Type相关的代码,之后开始写一些类型无关的语法检查。 虽然上周看了Rust中desugar的代码,但我这里就先不做desugar了,现在东西比较少,没什么...
  • Rc-lang开发周记15 Rust源码学习之desugar

    pixiv:68232005 这周可以说几乎没写什么代码,都在学习别人的实现。在参考别人的做法之前自己写一版比较合适,这样会对整体有个了解(这样有利于阅读代码),知道哪些地方会有问题,看别人的代码后会发现哪里不一样并且去思考差异。不过我之前已经...