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

Method save_trace

hail-fuzz/src/debugging/trace.rs:202–219  ·  view source on GitHub ↗
(&self, vm: &mut icicle_vm::Vm, path: &std::path::Path, symbolize: bool)

Source from the content-addressed store, hash-verified

200 }
201
202 pub fn save_trace(&self, vm: &mut icicle_vm::Vm, path: &std::path::Path, symbolize: bool) {
203 use std::io::Write;
204
205 if symbolize {
206 let mut output = std::io::BufWriter::new(std::fs::File::create(path).unwrap());
207 for entry in self.get_last_blocks(vm) {
208 let location = vm
209 .env
210 .symbolize_addr(&mut vm.cpu, entry.pc)
211 .unwrap_or(icicle_vm::cpu::debug_info::SourceLocation::default());
212 writeln!(output, "{:#08x},sp={:#08x},location={location}", entry.pc, entry.sp)
213 .unwrap();
214 }
215 }
216 else {
217 save_path_trace(path, &self.get_last_blocks(vm))
218 }
219 }
220}
221
222pub fn save_path_trace(path: &std::path::Path, blocks: &Vec<TraceEntry>) {

Callers 1

replay_traceFunction · 0.80

Calls 3

save_path_traceFunction · 0.85
get_last_blocksMethod · 0.80
symbolize_addrMethod · 0.80

Tested by

no test coverage detected