实现 LLVM 后端

前言

  • 定义寄存器和寄存器集合
  • 定义调用约定
  • 定义指令集
  • 实现栈帧 lowering
  • 打印指令
  • 选择指令
  • 增加指令编码
  • 子平台支持
  • 多指令 lowering
  • 平台注册

LLVM 有自己的定义目标机器的方式——tablegen,通过它来指定目标的寄存器、 指令集、调用约定等,并且tablegen函数以编程的方式缓解了描述一套架构属性所带来

定义调用约定

定义指令集