(&self, vm: &mut icicle_vm::Vm, count: usize)
| 172 | } |
| 173 | |
| 174 | pub fn print_last_blocks(&self, vm: &mut icicle_vm::Vm, count: usize) -> String { |
| 175 | use std::fmt::Write; |
| 176 | |
| 177 | let mut output = String::new(); |
| 178 | |
| 179 | for entry in self.get_last_blocks(vm).iter().rev().take(count) { |
| 180 | let location = vm |
| 181 | .env |
| 182 | .symbolize_addr(&mut vm.cpu, entry.pc) |
| 183 | .unwrap_or(icicle_vm::cpu::debug_info::SourceLocation::default()); |
| 184 | writeln!(output, "{:#x}: {location}", entry.pc).unwrap(); |
| 185 | } |
| 186 | |
| 187 | output |
| 188 | } |
| 189 | |
| 190 | pub fn snapshot(&self, vm: &mut icicle_vm::Vm) -> PathTracerSnapshot { |
| 191 | let path_tracer = vm.cpu.get_hook_mut(self.0); |
nothing calls this directly
no test coverage detected