MCPcopy Create free account
hub / github.com/MultiFuzz/MultiFuzz / init

Method init

icicle-cortexm/src/lib.rs:575–590  ·  view source on GitHub ↗
(&mut self, cpu: &mut Cpu)

Source from the content-addressed store, hash-verified

573 }
574
575 pub fn init(&mut self, cpu: &mut Cpu) {
576 if let Some(reg) = cpu.arch.sleigh.get_varnode("afl.prev_pc") {
577 tracing::info!("Edge hit counts (afl.prev_pc) masking enabled for interrupts");
578 self.masking = CovMasking::HitCounts { prev_pc_var: reg };
579 }
580 self.xpsr =
581 cpu.arch.sleigh.get_varnode("xpsr").expect("xpsr must be configured before init");
582
583 if let Some(hook) = cpu
584 .get_hooks()
585 .iter_mut()
586 .position(|x| x.data_mut::<icicle_fuzzing::coverage::EdgeHookData>().is_some())
587 {
588 self.masking = CovMasking::ExactEdgeCov { hook: hook as pcode::HookId }
589 }
590 }
591
592 /// Handles code associated with pushing the stack frame associated with an interrupt entry.
593 ///

Callers 1

initialize_vmMethod · 0.45

Calls

no outgoing calls

Tested by

no test coverage detected