常量传播:编译器优化中的一种技术,把已知为常量的变量值沿着程序的“使用路径”向后传递,用常量直接替换变量,从而为进一步优化(如常量折叠、删除无用分支/代码)创造条件。该术语也常出现在“数据流分析/中间表示优化”的语境中。
/ˈkɑːnstənt ˌprɑːpəˈɡeɪʃən/
The compiler performs constant propagation to replace variables with known values.
编译器进行常量传播,用已知的值替换变量。
After constant propagation, the condition became always true, so the optimizer removed the unreachable branch.
常量传播之后,该条件变成恒为真,因此优化器删除了不可达的分支。
constant(常量)来自拉丁语 constans,意为“固定不变的”;propagation(传播/传递)来自拉丁语 propagare,有“扩散、延伸”之意。合在一起直观表达了“把常量信息在程序中向前传递”的优化思想。