diff options
| -rw-r--r-- | mips/mips.sail | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/mips/mips.sail b/mips/mips.sail index fc98576a..6ad7b825 100644 --- a/mips/mips.sail +++ b/mips/mips.sail @@ -560,6 +560,10 @@ function clause decode (0b000000 : (regno) rs : (regno) rt : (regno) rd : 0b0000 function clause execute (DSLLV (rs, rt, rd)) = { wGPR(rd) := (rGPR(rs) << ((rGPR(rt))[5 .. 0])) (* make tuareg mode less blue >> *) + (* alternative slicing based version of above + sa := (rGPR(rt))[5 .. 0]; + v := rGPR(rs); + wGPR(rd) := v[(63-sa) .. 0] : (0b0 ^^ sa) *) } (* DSRA arithmetic shift duplicating sign bit - reg, reg, imm5 *) |
