aboutsummaryrefslogtreecommitdiff
path: root/rv_zvkn
diff options
context:
space:
mode:
authorLucas <30680577+Lucas-Wye@users.noreply.github.com>2024-03-02 15:03:14 +0800
committerGitHub <noreply@github.com>2024-03-01 23:03:14 -0800
commitd3fcce5c25ab2ed5343516175182de8357c57f07 (patch)
tree708a006d7f317ee2312d6892beefe7c3c228b70b /rv_zvkn
parentf7c71810cd75d52f5d613d9f752646e82533bf09 (diff)
downloadriscv-opcodes-d3fcce5c25ab2ed5343516175182de8357c57f07.zip
riscv-opcodes-d3fcce5c25ab2ed5343516175182de8357c57f07.tar.gz
riscv-opcodes-d3fcce5c25ab2ed5343516175182de8357c57f07.tar.bz2
move opcode of zvb* (#236)
* move opcode of zvbb * move all zvk* out
Diffstat (limited to 'rv_zvkn')
-rw-r--r--rv_zvkn46
1 files changed, 46 insertions, 0 deletions
diff --git a/rv_zvkn b/rv_zvkn
new file mode 100644
index 0000000..5a17e6d
--- /dev/null
+++ b/rv_zvkn
@@ -0,0 +1,46 @@
+# Zvkn, Vector Crypto Extension, NIST Algorithm Suite
+
+# Import Zvbb
+$import rv_zvbb::vandn.vv
+$import rv_zvbb::vandn.vx
+$import rv_zvbb::vbrev.v
+$import rv_zvbb::vbrev8.v
+$import rv_zvbb::vrev8.v
+$import rv_zvbb::vrol.vv
+$import rv_zvbb::vrol.vx
+$import rv_zvbb::vror.vv
+$import rv_zvbb::vror.vx
+$import rv_zvbb::vror.vi
+$import rv_zvbb::vclz.v
+$import rv_zvbb::vctz.v
+$import rv_zvbb::vcpop.v
+$import rv_zvbb::vwsll.vv
+$import rv_zvbb::vwsll.vx
+$import rv_zvbb::vwsll.vi
+
+# Import Zvbc
+$import rv_zvbc::vclmul.vv
+$import rv_zvbc::vclmul.vx
+$import rv_zvbc::vclmulh.vv
+$import rv_zvbc::vclmulh.vx
+
+# Import Zvkned
+$import rv_zvkned::vaesef.vs
+$import rv_zvkned::vaesef.vv
+$import rv_zvkned::vaesem.vs
+$import rv_zvkned::vaesem.vv
+$import rv_zvkned::vaesdf.vs
+$import rv_zvkned::vaesdf.vv
+$import rv_zvkned::vaesdm.vs
+$import rv_zvkned::vaesdm.vv
+$import rv_zvkned::vaeskf1.vi
+$import rv_zvkned::vaeskf2.vi
+$import rv_zvkned::vaesz.vs
+
+# Import Zvknh.
+# "Zvkn" implies "Zvknhb". We import the instructions from 'rv_zvknha',
+# because we cannot import already imported instructions, 'rv_zvknhb'
+# imports them from 'rv_zvknha', and the instructions are identical.
+$import rv_zvknha::vsha2ms.vv
+$import rv_zvknha::vsha2ch.vv
+$import rv_zvknha::vsha2cl.vv