pub fn default_passes() -> Vec<Box<dyn OptimizationPass>>Expand description
The device-independent Phase-1 pass pipeline, in run order.
ConstantFolding → DeadNodeEliminationConstant folding runs first so it can materialize shape-computation constants, then dead-node elimination prunes any node left unreachable, and then dead-node elimination prunes any node left unreachable. Operator fusion is provider-scoped because its replacements change the operator set.
Deferred passes (each in its eventual pipeline slot; see the crate-level
docs for why): after ConstantFolding would come ShapeInference; after
provider-scoped fusion would come AttentionFusionPass, then LayoutPropagation,
PlacementOptimizer, TransferInsertion, InPlaceDetection,
MemoryPlanning, CudaGraphRegionDetection, and OverlapScheduling.