Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Expose the checkpoint and some task/frame members #26

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
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
2 changes: 1 addition & 1 deletion isla-lib/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ lalrpop-util = "0.19.0"
crossbeam = "0.7.3"
lazy_static = "1.4.0"
toml = "0.5.5"
z3-sys = "0.5.0"
z3-sys = "0.6.3"
libc = "0.2.5"
serde = { version = "1.0.104", features = ["derive"] }
bincode = "1.2.1"
Expand Down
18 changes: 9 additions & 9 deletions isla-lib/src/executor.rs
Original file line number Diff line number Diff line change
Expand Up @@ -426,13 +426,13 @@ pub struct Frame<'ir, B> {
/// executing thread. It is turned into an immutable `Frame` when the
/// control flow forks on a choice, which can be shared by threads.
pub struct LocalFrame<'ir, B> {
function_name: Name,
pc: usize,
pub function_name: Name,
pub pc: usize,
forks: u32,
backjumps: u32,
local_state: LocalState<'ir, B>,
memory: Memory<B>,
instrs: &'ir [Instr<Name, B>],
pub instrs: &'ir [Instr<Name, B>],
stack_vars: Vec<Bindings<'ir, B>>,
stack_call: Stack<'ir, B>,
backtrace: Backtrace,
Expand Down Expand Up @@ -1050,12 +1050,12 @@ impl<B> Default for TaskState<B> {
/// SMT solver state, and finally an option SMTLIB definiton which is
/// added to the solver state when the task is resumed.
pub struct Task<'ir, 'task, B> {
id: usize,
frame: Frame<'ir, B>,
checkpoint: Checkpoint<B>,
fork_cond: Option<smtlib::Def>,
state: &'task TaskState<B>,
stop_functions: Option<&'task HashSet<Name>>,
pub id: usize,
pub frame: Frame<'ir, B>,
pub checkpoint: Checkpoint<B>,
pub fork_cond: Option<smtlib::Def>,
pub state: &'task TaskState<B>,
pub stop_functions: Option<&'task HashSet<Name>>,
}

impl<'ir, 'task, B> Task<'ir, 'task, B> {
Expand Down
6 changes: 3 additions & 3 deletions isla-lib/src/smt.rs
Original file line number Diff line number Diff line change
Expand Up @@ -311,7 +311,7 @@ use smtlib::*;
pub struct Checkpoint<B> {
num: usize,
next_var: u32,
trace: Arc<Option<Trace<B>>>,
pub trace: Arc<Option<Trace<B>>>,
}

impl<B> Checkpoint<B> {
Expand Down Expand Up @@ -451,8 +451,8 @@ pub type EvPath<B> = Vec<Event<B>>;
#[derive(Debug)]
pub struct Trace<B> {
checkpoints: usize,
head: Vec<Event<B>>,
tail: Arc<Option<Trace<B>>>,
pub head: Vec<Event<B>>,
pub tail: Arc<Option<Trace<B>>>,
}

impl<B: BV> Trace<B> {
Expand Down