Lots of improvements.

* Better script names and grammar fix.
* Bump Rust
* Enforce more lints.
* Improve few struct definitions by removing box.
* Many minor implementation improvements.
This commit is contained in:
Janggun Lee
2022-11-21 15:27:04 +09:00
parent cb698a5e43
commit 094cbfdd2c
40 changed files with 446 additions and 498 deletions

View File

@@ -10,19 +10,19 @@ pub type SimplifyCfg = FunctionPass<
>;
/// Simplifies block exits by propagating constants.
#[derive(Default, Debug)]
#[derive(Default, Clone, Copy, Debug)]
pub struct SimplifyCfgConstProp {}
/// Retains only those blocks that are reachable from the init.
#[derive(Default, Debug)]
#[derive(Default, Clone, Copy, Debug)]
pub struct SimplifyCfgReach {}
/// Merges two blocks if a block is pointed to only by another
#[derive(Default, Debug)]
#[derive(Default, Clone, Copy, Debug)]
pub struct SimplifyCfgMerge {}
/// Removes empty blocks
#[derive(Default, Debug)]
#[derive(Default, Clone, Copy, Debug)]
pub struct SimplifyCfgEmpty {}
impl Optimize<FunctionDefinition> for SimplifyCfgConstProp {