8.1.2 Dead-Code Elimination

int global; 
 
void f () { 
  int i; 
  i = 1;     /* dead store */ 
  global = 1; /* dead store */ 
  global = 2; 
  return; 
  global = 3; /* unreachable */ 
}
will be changed to
int global; 
 
void f () { 
  global = 2;  
}