草庐IT

PEEPHOLESTATE

全部标签

java - 用Java编写的编译器: Peephole optimizer implementation

我正在为Pascal的子集编写编译器。编译器为一台组装好的机器生成机器指令。我想为此机器语言编写一个窥孔优化器,但是我无法替换一些更复杂的模式。窥孔优化器规格我研究了几种编写窥视孔优化器的方法,并且选择了后端方法:每次要生成机器指令时,编码器都会调用emit()函数。emit(InstructioncurrentInstr)检查窥视孔优化表:如果当前指令与模式的尾部匹配:检查先前发出的指令以匹配如果所有指令都与该模式匹配,则应用优化,修改代码存储区的尾端如果未找到优化,则照常发出指令当前的设计方法该方法很容易,这是我遇到的麻烦。在我的编译器中,机器指令存储在Instruction类中。

java - 用Java编写的编译器: Peephole optimizer implementation

我正在为Pascal的子集编写编译器。编译器为一台组装好的机器生成机器指令。我想为此机器语言编写一个窥孔优化器,但是我无法替换一些更复杂的模式。窥孔优化器规格我研究了几种编写窥视孔优化器的方法,并且选择了后端方法:每次要生成机器指令时,编码器都会调用emit()函数。emit(InstructioncurrentInstr)检查窥视孔优化表:如果当前指令与模式的尾部匹配:检查先前发出的指令以匹配如果所有指令都与该模式匹配,则应用优化,修改代码存储区的尾端如果未找到优化,则照常发出指令当前的设计方法该方法很容易,这是我遇到的麻烦。在我的编译器中,机器指令存储在Instruction类中。