Skip to main content

Module types

Module types 

Source
Expand description

Auto-generated module

🤖 Generated with SplitRS

Structs§

HoistCandidate
A candidate expression ready to be hoisted to a preheader.
LICMAnalysisCache
LICMCacheEntry
LICMConfig
Configuration knobs for the LICM pass.
LICMConstantFoldingHelper
LICMDepGraph
LICMDominatorTree
LICMHeuristics
LICM heuristics configuration for LICMPassV2.
LICMLivenessInfo
LICMPass
The main Loop Invariant Code Motion pass.
LICMPassConfig
LICMPassRegistry
LICMPassStats
LICMPassV2
Version 2 of the LICM pass with heuristic control.
LICMProfileData
Profiling data used to guide LICM decisions.
LICMReport
Statistics produced by a single LICM run.
LICMWorklist
LicmCandidateRegistry
LICM candidate registry
LicmCodeStats
LICM code stats
LicmConfigExt
LICM pass config (extended)
LicmDiagSink
LicmExtEmitStats
LICM emit stats
LicmExtIdGen
LICM id generator
LicmExtProfiler
LICM profiler
LicmExtSourceBuffer
LICM source buffer
LicmFeatureFlags
LICM feature flags
LicmHoistCandidate
LICM hoistable expression
LicmLoopAnalysis
LICM loop analysis result
LicmPassBuilder
LICM pass builder
LicmPassSummary
LICM pass summary
LicmPreheaderBuilder
LICM preheader builder
LicmPreheaderMap
LICM preheader map
LicmResultMap
LICM result map
LicmScheduler
LICM scheduler (ordering of hoisted instructions)
LicmSinkCandidate
LICM sink candidate (for loop exit sinking)
LicmStatsExt
LICM pass statistics (extended)
LicmVersion
LICM versioning (for speculative hoisting)
LoopBodyAnalysis
LICM loop body analysis result
LoopBodyComplexity
Measures the “complexity” of a loop body to guide hoisting aggressiveness.
LoopInfoBuilder
LICM loop info builder
LoopInfoSummary
LICM loop info summary
LoopInvariantExpr
A let-binding inside a loop whose value is loop-invariant.
LoopLevelId
Loop level (nesting depth)
LoopNest
LICM loop nest (for perfectly nested loops)
LoopNestInfo
Loop nest information aggregated from a set of loop structures.
LoopNode
Loop tree node
LoopPreheader
Loop preheader (block before loop)
LoopStructure
Identifies a loop in the LCNF control-flow graph.
LoopTree
Loop tree
LoopVersion
Represents a versioned loop: an if-then-else where each branch has a specialized loop copy optimized for a specific condition.
LoopVersioningConfig
Configuration for loop versioning.
PreheaderBlock
A synthetic block that is prepended before a loop to receive hoisted code.
RedundantLoadInfo
Identifies load-like operations (projections, field reads) that are redundant because the same value has already been loaded earlier in the same scope.

Enums§

InvariantPattern
Recognizes structural patterns in let-values that are always loop-invariant.
LICMPassPhase
LICMPhase
A named phase in a LICM-centric optimization pipeline.
LicmDiagLevel
LICM diagnostic

Functions§

materialize_preheader
Materialize a preheader block by wrapping an inner expression with the let bindings from the preheader.
topo_sort_candidates
Topologically sort hoist candidates so that producers come before consumers (i.e., if candidate B uses the variable defined by A, A must appear first).