aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/linearize.c
diff options
Diffstat (limited to 'linearize.c')
-rw-r--r--linearize.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/linearize.c b/linearize.c
index e0232dfd..14794285 100644
--- a/linearize.c
+++ b/linearize.c
@@ -152,7 +152,7 @@ static const char *show_pseudo(pseudo_t pseudo)
return buf;
}
-static void show_instruction(struct instruction *insn)
+void show_instruction(struct instruction *insn)
{
int op = insn->opcode;
@@ -1630,6 +1630,12 @@ struct entrypoint *linearize_symbol(struct symbol *sym)
simplify_phi_nodes(ep);
/*
+ * Remove trivial instructions, and try to CSE
+ * the rest.
+ */
+ cleanup_and_cse(ep);
+
+ /*
* Remove or merge basic blocks.
*/
pack_basic_blocks(ep);