【发布时间】:2017-01-28 01:19:37
【问题描述】:
我想(手动)减少 Linux 汇编文件中的指令数量。这基本上是通过在抽象语法树中搜索预定义的约简来完成的。
例如:
pushl <reg1>
popl <reg1>
将被删除,因为它没有意义。
或者:
pushl <something1>
popl <something2>
会变成:
movl <something1>, <something2>
我正在寻找其他涉及固定数量指令的优化。我不想搜索指令的动态范围。
您能否推荐其他可以用更少指令替换的类似模式?
稍后编辑:感谢 Richard Pennington,我发现我想要的是窥视孔优化。
所以我将问题改写为:Linux 汇编代码上的窥孔优化建议。
【问题讨论】:
-
动机是什么?我并不是说这是一个坏问题,它只是......奇怪。
-
我想减小输出文件的大小
-
并不是说操作系统与窥孔优化无关。如果它适用于 linux 代码,它也适用于 windows 或 mac os。您需要区分的是架构。
标签: linux assembly design-patterns optimization peephole-optimization