diff options
| -rw-r--r-- | risc-v/hgen/trans_sail.hgen | 8 | ||||
| -rw-r--r-- | risc-v/hgen/types_trans_sail.hgen | 2 |
2 files changed, 9 insertions, 1 deletions
diff --git a/risc-v/hgen/trans_sail.hgen b/risc-v/hgen/trans_sail.hgen index 4275670c..28a4f4ba 100644 --- a/risc-v/hgen/trans_sail.hgen +++ b/risc-v/hgen/trans_sail.hgen @@ -103,4 +103,10 @@ translate_ropw "op" op; ], []) -| `RISCVFENCE -> ("FENCE", [], []) +| `RISCVFENCE -> + ("FENCE", + [ + translate_imm4 "pred" 0; + translate_imm4 "succ" 0; + ], + []) diff --git a/risc-v/hgen/types_trans_sail.hgen b/risc-v/hgen/types_trans_sail.hgen index 9dd36d5e..4dc7707e 100644 --- a/risc-v/hgen/types_trans_sail.hgen +++ b/risc-v/hgen/types_trans_sail.hgen @@ -29,5 +29,7 @@ let translate_imm6 name value = (name, Bvector (Some 6), bit_list_of_integer 6 (Nat_big_num.of_int value)) let translate_imm5 name value = (name, Bvector (Some 5), bit_list_of_integer 5 (Nat_big_num.of_int value)) +let translate_imm4 name value = + (name, Bvector (Some 4), bit_list_of_integer 4 (Nat_big_num.of_int value)) let translate_bool name value = (name, Bit, [if value then Bitc_one else Bitc_zero]) |
