pub struct TraceRecorder {
pub trace: Trace,
/* private fields */
}Fields§
§trace: TraceImplementations§
Source§impl TraceRecorder
impl TraceRecorder
pub fn new(function_idx: usize, start_ip: usize, max_length: usize) -> Self
Sourcepub fn specialize_trace_inputs(
&mut self,
registers: &[Value; 256],
function: &Function,
)
pub fn specialize_trace_inputs( &mut self, registers: &[Value; 256], function: &Function, )
Scan live registers at trace entry and specialize any loop-invariant arrays This should be called right after trace recording starts
pub fn record_instruction( &mut self, instruction: Instruction, current_ip: usize, registers: &[Value; 256], function: &Function, function_idx: usize, functions: &[Function], ) -> Result<(), LustError>
pub fn finish(self) -> Trace
pub fn is_recording(&self) -> bool
pub fn abort(&mut self)
Auto Trait Implementations§
impl Freeze for TraceRecorder
impl !RefUnwindSafe for TraceRecorder
impl !Send for TraceRecorder
impl !Sync for TraceRecorder
impl Unpin for TraceRecorder
impl UnsafeUnpin for TraceRecorder
impl !UnwindSafe for TraceRecorder
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more