Merge pull request #8 from m-spitfire/irviz

Fix: Optimize before visualizing IR
This commit is contained in:
Rhee Jung In
2023-02-28 13:17:06 +09:00
committed by GitHub

View File

@@ -141,6 +141,26 @@ fn compile_ir(
return;
}
if matches.optimize {
O1::default().optimize(input);
} else {
if matches.simplify_cfg {
SimplifyCfg::default().optimize(input);
}
if matches.mem2reg {
Mem2reg::default().optimize(input);
}
if matches.deadcode {
Deadcode::default().optimize(input);
}
if matches.gvn {
Gvn::default().optimize(input);
}
}
if let Some(path) = &matches.irviz {
assert_eq!(
Path::new(&path).extension(),
@@ -181,26 +201,6 @@ fn compile_ir(
temp_dir.close().expect("temp dir deletion failed");
}
if matches.optimize {
O1::default().optimize(input);
} else {
if matches.simplify_cfg {
SimplifyCfg::default().optimize(input);
}
if matches.mem2reg {
Mem2reg::default().optimize(input);
}
if matches.deadcode {
Deadcode::default().optimize(input);
}
if matches.gvn {
Gvn::default().optimize(input);
}
}
if matches.iroutput {
write(input, output).unwrap();
return;