To protect your data, the CISO officer has suggested users to enable 2FA as soon as possible.
Currently 2.7% of users enabled 2FA.

Commit ac942157 authored by qinsoon's avatar qinsoon
Browse files

make changes based on formal spec changes

parent 87720ecb
...@@ -72,9 +72,9 @@ pub struct BlockContent { ...@@ -72,9 +72,9 @@ pub struct BlockContent {
pub keepalives: Option<Vec<P<SSAVar>>> pub keepalives: Option<Vec<P<SSAVar>>>
} }
pub struct TerminationData { pub struct ResumptionData {
normal_dest: Destination, pub normal_dest: Destination,
exn_dest: Destination pub exn_dest: Destination
} }
pub enum DestArg { pub enum DestArg {
...@@ -188,7 +188,15 @@ pub enum Terminal { ...@@ -188,7 +188,15 @@ pub enum Terminal {
true_dest: Destination, true_dest: Destination,
false_dest: Destination false_dest: Destination
}, },
Watchpoint, // TODO: Watchpoint ((wpid # destination) option) termination_data Watchpoint{ // Watchpoint NONE ResumptionData
// serves as an unconditional trap. Trap to client, and resume with ResumptionData
// Watchpoint (WPID dest) ResumptionData
// when disabled, jump to dest
// when enabled, trap to client and resume
id: Option<WPID>,
disable_dest: Option<Destination>,
resume: ResumptionData
},
WPBranch{ WPBranch{
wp: WPID, wp: WPID,
disable_dest: Destination, disable_dest: Destination,
...@@ -196,14 +204,13 @@ pub enum Terminal { ...@@ -196,14 +204,13 @@ pub enum Terminal {
}, },
Call{ Call{
data: CallData, data: CallData,
normal_dest: Destination, resume: ResumptionData
exn_dest: Option<Destination>
}, },
SwapStack{ SwapStack{
stack: P<Value>, stack: P<Value>,
is_exception: bool,
args: Vec<P<Value>>, args: Vec<P<Value>>,
normal_dest: Destination, resume: ResumptionData
exn_dest: Destination
}, },
Switch{ Switch{
cond: P<Value>, cond: P<Value>,
...@@ -212,7 +219,7 @@ pub enum Terminal { ...@@ -212,7 +219,7 @@ pub enum Terminal {
}, },
ExnInstruction{ ExnInstruction{
inner: Expression, inner: Expression,
term: TerminationData resume: ResumptionData
} }
} }
......
...@@ -111,11 +111,16 @@ mod test_ir { ...@@ -111,11 +111,16 @@ mod test_ir {
args: vec![blk_1_v50.clone()], args: vec![blk_1_v50.clone()],
convention: CallConvention::Mu convention: CallConvention::Mu
}, },
normal_dest: Destination { resume: ResumptionData {
target: "blk_1_cont", normal_dest: Destination {
args: vec![DestArg::Normal(blk_1_n_3.clone()), DestArg::Freshbound(0)] target: "blk_1_cont",
}, args: vec![DestArg::Normal(blk_1_n_3.clone()), DestArg::Freshbound(0)]
exn_dest: None },
exn_dest: Destination {
target: "blk_1_cont",
args: vec![DestArg::Normal(blk_1_n_3.clone()), DestArg::Freshbound(0)]
}
}
}; };
let blk_1_content = BlockContent { let blk_1_content = BlockContent {
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment