Skip to main content

Module equality_analysis

Module equality_analysis 

Source
Expand description

Equality analysis for lowered IR.

This module tracks semantic equivalence between variables as information flows through the program. Two variables are equivalent if they hold the same value. Additionally, the analysis tracks Box/unbox, snapshot/desnap, struct construct, and array construct relationships between equivalence classes via unified forward/reverse maps. Structs and arrays both map (TypeId, Vec<FieldVar>) but use distinct relations so they never hashcons together — array pop operations act as destructures on the array relation.

Structs§

EqualityAnalysis
Variable equality analysis.
EqualityState
State for the equality analysis, tracking variable equivalences.