change SimulationImpl::trace_memories to a BTreeMap for consistent iteration order

This commit is contained in:
Jacob Lifshay 2025-10-24 00:53:13 -07:00
parent b6e4cd0614
commit 838bd469ce
Signed by: programmerjake
SSH key fingerprint: SHA256:HnFTLGpSm4Q4Fj502oCFisjZSoakwEuTsJJMSke63RQ

View file

@ -1522,7 +1522,7 @@ struct SimulationImpl {
state_ready_to_run: bool,
trace_decls: TraceModule,
traces: SimTraces<Box<[SimTrace<SimTraceKind, SimTraceState>]>>,
trace_memories: HashMap<StatePartIndex<StatePartKindMemories>, TraceMem>,
trace_memories: BTreeMap<StatePartIndex<StatePartKindMemories>, TraceMem>,
trace_writers: Vec<TraceWriterState<DynTraceWriterDecls>>,
instant: SimInstant,
clocks_triggered: Interned<[StatePartIndex<StatePartKindSmallSlots>]>,
@ -1622,7 +1622,7 @@ impl SimulationImpl {
last_state: kind.make_state(),
},
))),
trace_memories: HashMap::from_iter(compiled.trace_memories.iter().copied()),
trace_memories: BTreeMap::from_iter(compiled.trace_memories.iter().copied()),
trace_writers: vec![],
instant: SimInstant::START,
clocks_triggered: compiled.clocks_triggered,