neo_solidity/cli/
ir_optimize.rs

1//! IR Optimization Module
2//!
3//! Performs optimization passes on the intermediate representation (IR) before
4//! bytecode generation. These optimizations reduce code size and improve runtime
5//! performance.
6//!
7//! # Optimization Levels
8//!
9//! - **Level 0**: No IR optimization
10//! - **Level 1**: Basic dead code elimination
11//! - **Level 2**: Constant folding and propagation
12//! - **Level 3**: NeoVM-specific optimizations (identity ops, boolean simplification)
13
14use neo_solidity::ir;
15use num_traits::{ToPrimitive, Zero};
16
17include!("ir_optimize/optimize.rs");
18include!("ir_optimize/constant_folding.rs");
19include!("ir_optimize/labels.rs");
20include!("ir_optimize/neovm.rs");