跳转到内容

寄存器传递语言

本页使用了标题或全文手工转换
维基百科,自由的百科全书

寄存器传递语言(英语:register transfer language,缩写为 RTL),又译为暂存器转换语言寄存器转换语言,一种中间语言,使用于编译器中。与汇编语言很接近。寄存器传递语言被用于描述一个架构中寄存器传输级上的数据流。 在学术论文和教科书中,寄存器传递语言被认为是一种与架构无关的汇编语言。GCC的中间语言,也被称为寄存器传递语言(RTL),风格类似于LISP。GCC的前端(frontend)会先将编程语言转译成RTL,之后再利用后端(backend)转化成机器代码。

历史

1980年,寄存器传递语言首次被提出[1]

GCC

GCC使用的寄存器传递语言,采用S-表达式,与LISP类似:

(set (reg:SI 140)
     (plus:SI (reg:SI 138)
              (reg:SI 139)))

注释

外部链接