dead-code elimination(死代码消除)是一种编译器优化:删除那些不会影响程序可观察行为的代码,例如计算结果从未被使用的表达式、永远不会执行到的分支、对最终输出无影响的赋值等(在不改变程序语义的前提下)。该术语也常被简称为 DCE。
注:在有副作用(如 I/O、抛异常、写共享内存)的情况下,相关代码通常不能被视为“死代码”。
/ˌdɛd ˈkoʊd ɪˌlɪməˈneɪʃən/
The compiler performed dead-code elimination to remove unused variables.
编译器进行了死代码消除,移除了未使用的变量。
After inlining functions, the optimizer applies dead-code elimination so that computations whose results are never observed are dropped without changing the program’s output.
在内联函数之后,优化器会应用死代码消除,把那些结果从未被观察到的计算删除,同时不改变程序的输出。
该术语由 dead code(死代码) + elimination(消除) 组成: