From 87ffe603e44e9be6f4109f6a9dd475df6dcfc489 Mon Sep 17 00:00:00 2001 From: Shaked Flur Date: Fri, 8 Mar 2019 16:02:02 +0000 Subject: Adds the DC and IC instructions to AArch64_small; Also, removes etc/regfp.sail and etc/regfp2.sail in favour of lib/regfp.sail --- lib/regfp.sail | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'lib') diff --git a/lib/regfp.sail b/lib/regfp.sail index cc017585..6044e1cc 100644 --- a/lib/regfp.sail +++ b/lib/regfp.sail @@ -90,6 +90,16 @@ enum trans_kind = { Transaction_abort } +/* cache maintenance instructions */ +enum cache_op_kind = { + /* AArch64 DC */ + Cache_op_D_IVAC, Cache_op_D_ISW, Cache_op_D_CSW, Cache_op_D_CISW, + Cache_op_D_ZVA, Cache_op_D_CVAC, Cache_op_D_CVAU, Cache_op_D_CIVAC, + /* AArch64 IC */ + Cache_op_I_IALLUIS, Cache_op_I_IALLU, Cache_op_I_IVAU +} + + union instruction_kind = { IK_barrier : barrier_kind, IK_mem_read : read_kind, @@ -97,5 +107,6 @@ union instruction_kind = { IK_mem_rmw : (read_kind, write_kind), IK_branch : unit, IK_trans : trans_kind, - IK_simple : unit + IK_simple : unit, + IK_cache_op : cache_op_kind } -- cgit v1.2.3