Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions majit/majit-metainterp/src/history.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2711,6 +2711,14 @@ impl TraceCtx {
self.recorder.set_last_guard_op_resume_position(snapshot_id);
}

/// Set rd_resume_position on the guard op `from_end` guards back from the
/// most recent one (see
/// [`crate::recorder::Trace::set_guard_op_resume_position_from_end`]).
pub fn set_guard_op_resume_position_from_end(&mut self, from_end: usize, snapshot_id: i32) {
self.recorder
.set_guard_op_resume_position_from_end(from_end, snapshot_id);
}

/// TODO: low-level / single-frame snapshot helper
/// used by callers that record guards without a populated framestack
/// to walk.
Expand Down
1 change: 1 addition & 0 deletions majit/majit-metainterp/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -171,6 +171,7 @@ pub use trace_ctx::GreenBox;
pub use trace_ctx::MergePoint;
pub use trace_ctx::ReconstructRecipe;
pub use trace_ctx::TraceCtx;
pub use trace_ctx::VableArrayStore;

/// Compute green key from code pointer and PC.
/// Must use the same hash as the front-end's make_green_key — the full
Expand Down
12 changes: 6 additions & 6 deletions majit/majit-metainterp/src/pyjitpl.rs
Original file line number Diff line number Diff line change
Expand Up @@ -5086,7 +5086,7 @@ impl<M: Clone> MetaInterp<M> {
fdescr: DescrRef,
adescr: DescrRef,
) {
let ok = self
let stored = self
.tracing
.as_mut()
.expect("opimpl_setarrayitem_vable_int requires active tracing")
Expand All @@ -5102,7 +5102,7 @@ impl<M: Clone> MetaInterp<M> {
false,
);
assert!(
ok,
matches!(stored, crate::trace_ctx::VableArrayStore::Stored(_)),
"opimpl_setarrayitem_vable_int: virtualizable array slot missing"
);
}
Expand All @@ -5119,7 +5119,7 @@ impl<M: Clone> MetaInterp<M> {
fdescr: DescrRef,
adescr: DescrRef,
) {
let ok = self
let stored = self
.tracing
.as_mut()
.expect("opimpl_setarrayitem_vable_ref requires active tracing")
Expand All @@ -5135,7 +5135,7 @@ impl<M: Clone> MetaInterp<M> {
false,
);
assert!(
ok,
matches!(stored, crate::trace_ctx::VableArrayStore::Stored(_)),
"opimpl_setarrayitem_vable_ref: virtualizable array slot missing"
);
}
Expand All @@ -5152,7 +5152,7 @@ impl<M: Clone> MetaInterp<M> {
fdescr: DescrRef,
adescr: DescrRef,
) {
let ok = self
let stored = self
.tracing
.as_mut()
.expect("opimpl_setarrayitem_vable_float requires active tracing")
Expand All @@ -5168,7 +5168,7 @@ impl<M: Clone> MetaInterp<M> {
false,
);
assert!(
ok,
matches!(stored, crate::trace_ctx::VableArrayStore::Stored(_)),
"opimpl_setarrayitem_vable_float: virtualizable array slot missing"
);
}
Expand Down
Loading
Loading