summaryrefslogtreecommitdiff
path: root/mips/mips.sail
diff options
context:
space:
mode:
authorRobert Norton2015-11-25 15:36:57 +0000
committerRobert Norton2015-11-25 15:37:15 +0000
commit2c70d527fa52f8dc629e82323e2d2a4c22ad7e2e (patch)
tree963188b05bfa4218816518af64668dec99578765 /mips/mips.sail
parentda258def4f0253c218cdcfef7d144bc256bf4ba5 (diff)
non-working sail/mips interpreter integration for kathy to look at and example mips elf file.
Diffstat (limited to 'mips/mips.sail')
-rw-r--r--mips/mips.sail8
1 files changed, 6 insertions, 2 deletions
diff --git a/mips/mips.sail b/mips/mips.sail
index fc639d65..4f468354 100644
--- a/mips/mips.sail
+++ b/mips/mips.sail
@@ -1478,6 +1478,10 @@ function clause decode (0b000000 : 0b00000 : 0b00000 : 0b00000 : (regno) stype :
function clause execute(SYNC) =
MEM_sync()
+union ast member unit HCF
+function clause decode (0b010000 : 0b00100 : (regno) rt : 0b10111 : 0b00000000000) =
+ HCF() (* simulator halt instruction "MTC0 rt, $23" (cheri specific behaviour) *)
+
function clause decode _ = exit no_matching_pattern
end decode
@@ -1505,8 +1509,8 @@ function unit fde() =
else if inBranchDelay then
{
PC := delayedPC;
- inBranchDelay := 1;
- branchPending := 1;
+ inBranchDelay := 0;
+ branchPending := 0;
}
else
{