蚂蚁又开源了一个顶级 java 项目!-尊龙官网入口

但是解释器终究是低效的,好比在翻译英文时,机械地查找每个单词的含义然后组装起来,这样的翻译结果不仅冗长,还让人难以理解;而经验丰富的译员会读取整段英文,对这段文字进行分析,结合上下文精确地理解每个单词,去除冗余句子,并通过重排词句顺序、精简句子结构来使结果更易懂。

jit 编译器如同经验丰富的译员,当 jvm 中的解释器发现一段代码的执行频率很高时,就会使用 jit 编译器对这段代码进行编译,通过对这段代码的深入分析与优化,产出一系列高效的指令以提高它的运行效率。

什么是 llvm

llvm 是目前最受欢迎的开源编译器基础设施,它拥有模块化的设计、优秀的编译优化能力与完备的后端支持。我们可以将其视为一套现成的超级零件箱,用它快速地拼出一个新编译器:

  1. 编写语言前端:将编程语言代码转换成 llvm ir(intermediate representation)
  2. 利用 llvm 的优化器,对 llvm ir 进行分析与优化
  3. 通过 llvm 的代码生成器,从 llvm ir 生成真正的 cpu 指令,使程序最终可以运行
网站地图