Expand description
Source-independent symbolic logic tree primitives.
This crate owns semantic bit-range state independently of any HDL frontend. Frontends provide their own address identity and SLT node type.
Re-exports§
pub use range_store::RangeStore;pub use range_store::RangeStoreError;pub use scheduler::FfAccessSummary;
Modules§
- const_
inline - Constant variable inlining for combinational logic paths.
- range_
store - scheduler
Structs§
- Comb
Observer - Source-independent combinational observation recipe retained until SIR construction.
- Glue
Block Base - Logic
Path - Logic
Path Id - NodeId
- SLTFor
Fold Group State - One loop-carried state in a grouped fixed-trip-count fold.
- SLTFor
Update - SLTIndex
- SLTNode
Arena - SLTNode
Facts - Width facts for every node in an
SLTNodeArena. - SLTNode
Facts Error - A structured failure produced while verifying an SLT node graph.
- SLTToSIR
Lowerer - Symbolic
Store - Statement-ordered symbolic state used while constructing SLT values.
Enums§
- Glue
Addr Base - Logic
Path Target - SLTFor
Effect - SLTFor
Fold Result - Selects the value returned by a legacy dynamic loop fold.
- SLTIndex
Kind - SLTLoop
Bound - SLTNode
- SLTNode
Arena Edit Error - Failure from a narrowly scoped mutation of a construction arena.
- SLTStep
Op
Functions§
- get_
width - Return the construction-time width cached when a node was interned.
- matches_
slt_ count_ idiom - Whether the ordinary expanded SLT already matches a native count idiom. Loop recovery uses this as a semantic priority check so it does not replace an exact PopCount/CLZ/CTZ plan with a slower counted loop.
- verify_
symbolic_ roots
Type Aliases§
- Boundary
Map - Symbolic state keyed by a frontend-independent semantic address.