aboutsummaryrefslogtreecommitdiff
path: root/model/riscv_step.sail
diff options
context:
space:
mode:
authorRobert Norton <rmn30@cam.ac.uk>2019-04-29 14:31:18 +0100
committerPrashanth Mundkur <prashanth.mundkur@gmail.com>2019-04-29 16:22:38 -0700
commitf14e8ebac39bf6771f0d1775d5145f7f6549c5ea (patch)
treef6ec2ea0e26c1716dd10e9d19ae8d55ae2f8d06e /model/riscv_step.sail
parenteb176111887b6dc1a52d17bcac1a4bdd8af4d4fc (diff)
downloadsail-riscv-f14e8ebac39bf6771f0d1775d5145f7f6549c5ea.zip
sail-riscv-f14e8ebac39bf6771f0d1775d5145f7f6549c5ea.tar.gz
sail-riscv-f14e8ebac39bf6771f0d1775d5145f7f6549c5ea.tar.bz2
Add a post decode hook aimed at implementing CHERI capability mode.
Diffstat (limited to 'model/riscv_step.sail')
-rw-r--r--model/riscv_step.sail4
1 files changed, 2 insertions, 2 deletions
diff --git a/model/riscv_step.sail b/model/riscv_step.sail
index 0b6e531..fda2777 100644
--- a/model/riscv_step.sail
+++ b/model/riscv_step.sail
@@ -35,7 +35,7 @@ function step(step_no) = {
/* check for RVC once here instead of every RVC execute clause. */
if haveRVC() then {
nextPC = PC + 2;
- (execute(ast), true)
+ (execute(ext_post_decode_hook(ast)), true)
} else {
handle_illegal();
(false, true)
@@ -45,7 +45,7 @@ function step(step_no) = {
let ast = decode(w);
print_instr("[" ^ string_of_int(step_no) ^ "] [" ^ cur_privilege ^ "]: " ^ BitStr(PC) ^ " (" ^ BitStr(w) ^ ") " ^ ast);
nextPC = PC + 4;
- (execute(ast), true)
+ (execute(ext_post_decode_hook(ast)), true)
}
}
}