update_stmt (stmt);
if (maybe_clean_or_replace_eh_stmt (old_stmt, stmt))
bitmap_set_bit (need_eh_cleanup, gimple_bb (stmt)->index);
- bitmap_set_bit (dce_worklist, SSA_NAME_VERSION (gimple_assign_lhs (stmt)));
+ if (optimize)
+ bitmap_set_bit (dce_worklist, SSA_NAME_VERSION (gimple_assign_lhs (stmt)));
update_complex_components (gsi, gsi_stmt (*gsi), r, i);
}
complex_propagate.ssa_propagate ();
need_eh_cleanup = BITMAP_ALLOC (NULL);
- dce_worklist = BITMAP_ALLOC (NULL);
+ if (optimize)
+ dce_worklist = BITMAP_ALLOC (NULL);
complex_variable_components = new int_tree_htab_type (10);
gsi_commit_edge_inserts ();
- simple_dce_from_worklist (dce_worklist, need_eh_cleanup);
- BITMAP_FREE (dce_worklist);
+ if (optimize)
+ {
+ simple_dce_from_worklist (dce_worklist, need_eh_cleanup);
+ BITMAP_FREE (dce_worklist);
+ }
unsigned todo
= gimple_purge_all_dead_eh_edges (need_eh_cleanup) ? TODO_cleanup_cfg : 0;