Next: Insn Attributes, Previous: Including Patterns, Up: Machine Desc
除了指令模式,md文件还可以包含关于机器特定的窥孔优化的定义。
当程序中的数据流没有建议进行尝试的时候, 组合器便不会注意某些可能存在的窥孔优化。 例如,有时两个连续的insn是可以被组合的, 虽然第二个没有显示出要使用在第一个中所计算的寄存器。 机器特定的窥孔优化器可以检测出这样的机会。
有两种窥孔定义形式可以使用。
最初的define_peephole
运行于汇编输出时,
用于匹配insn和替换汇编文本。不赞成使用define_peephole
。
较新的define_peephole2
用来匹配insn和替换新的insn。
peephole2
过程运行于寄存器分配之后,调度之前,
其使进行调度的target获得更好的代码。