Dead Code Elimination Variants¶
-dce (Dead Code Elimination)¶
Most aggressive dead code elimination algorithm. This searches for dead instructions, then rechecks after eliminations have occurred. This allows removal of functions such as
void A() {
B();
}
void B() {
return;
}
int main() {
return 0;
}
Not only function A, but then function B in the same pass (whereas -die would only be able to detect function A)
-deadargelim (Dead Argument Elimination)¶
Removes arguments which are obviously unused. Does further removal of arguments which are simply forwarded to other unused arguments.
-deadtypeelim (Dead Type Elimination)¶
(IN PROGRESS)
-die (Dead Instruction Elimination)¶
Obvious removal of dead code. See -dce above.
-dse (Dead Store Elimination)¶
(IN PROGRESS)