diff options
Diffstat (limited to 'risc-v/riscv_regfp.sail')
| -rw-r--r-- | risc-v/riscv_regfp.sail | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/risc-v/riscv_regfp.sail b/risc-v/riscv_regfp.sail index 1dff5064..0c7a67d8 100644 --- a/risc-v/riscv_regfp.sail +++ b/risc-v/riscv_regfp.sail @@ -29,7 +29,7 @@ function (regfps,regfps,regfps,niafps,diafp,instruction_kind) initial_analysis ( if (rs == 0) then () else iR := RFull(GPRstr[rs]) :: iR; if (rd == 0) then () else oR := RFull(GPRstr[rd]) :: oR; let (bit[64]) offset = EXTS(imm) in - Nias := [|| NIAFP_register (RFull(GPRstr[rs])) ||]; + Nias := [|| NIAFP_register (RFull(GPRstr[rs])) ||]; (* XXX this should br rs + offset... *) } case (BTYPE ( imm, rs2, rs1, op)) -> { if (rs2 == 0) then () else iR := RFull(GPRstr[rs2]) :: iR; @@ -76,6 +76,9 @@ function (regfps,regfps,regfps,niafps,diafp,instruction_kind) initial_analysis ( if (rs1 == 0) then () else iR := RFull(GPRstr[rs1]) :: iR; if (rd == 0) then () else oR := RFull(GPRstr[rd]) :: oR; } + case (FENCE(pred, succ)) -> { + ik := IK_barrier (Barrier_MIPS_SYNC); + } }; (iR,oR,aR,Nias,Dia,ik) } |
