add TEMPORARY svremap form and instruction
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 1 Jul 2021 14:17:35 +0000 (15:17 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Thu, 1 Jul 2021 14:17:35 +0000 (15:17 +0100)
openpower/isatables/fields.text
openpower/isatables/minor_22.csv
src/openpower/decoder/power_enums.py

index d939625a1f7f3744ebcb8650390bef4fcbd86e24..a46299e81625873122bc6a099c1ecc2ce62537e4 100644 (file)
    | PO   |   RT  |   RA | RC  | SVDS |  XO    |
    | PO   |   RS  |   RA | RC  | SVDS |  XO    |
 
+# 1.6.33 SVM-FORM
+   |0     |6        |11      |16     |21    |31  |
+   | PO   |  SVxd   |   SXyd |  SVRM |   XO |  / |
+
 # 1.6.28 Instruction Fields
     A (6)
         Field used by the tbegin. instruction to specify an
     SVi (16:23)
          Simple-V immediate field for setting VL or MVL
          Formats: SVL
+    SVRM (16:20)
+         Simple-V "REMAP" Mode
+         Formats: SVM
+    SVxd (6:10)
+         Simple-V "REMAP" x-dimension size
+         Formats: SVM
+    SVyd (11:15)
+         Simple-V "REMAP" y-dimension size
+         Formats: SVM
     SX,S (28,6:10)
          Fields SX and S are concatenated to specify a
          VSR to be used as a source.
index ab84b379219972ec637809ef124964da6c75dd9e..30c537fe016d0daadf0ddf37a6a035f5c3553609 100644 (file)
@@ -1,2 +1,3 @@
 opcode,unit,internal op,in1,in2,in3,out,CR in,CR out,inv A,inv out,cry in,cry out,ldst len,BR,sgn ext,upd,rsrv,32b,sgn,rc,lk,sgl pipe,comment,form,CONDITIONS
 0b00000,VL,OP_SETVL,RA_OR_ZERO,NONE,NONE,RT_OR_ZERO,NONE,CR0,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,setvl,SVL,
+0b00001,VL,OP_SVREMAP,NONE,NONE,NONE,NONE,NONE,NONE,0,0,ZERO,0,NONE,0,0,0,0,0,0,RC,0,0,svremap,SVM,
index bf5738997b4b08eae72f732b458e0fd24f73cb6f..37f14d1ed076c5ad066e123ac537c9ab5a652ba0 100644 (file)
@@ -118,6 +118,7 @@ class Form(Enum):
     SVL = 29  # Simple-V for setvl instruction
     SVD = 30  # Simple-V for LD/ST bit-reverse, variant of D-Form
     SVDS = 31  # Simple-V for LD/ST bit-reverse, variant of DS-Form
+    SVM = 32  # Simple-V REMAP mode - TEMPORARY TEMPORARY TEMPORARY
 
 # Simple-V svp64 fields https://libre-soc.org/openpower/sv/svp64/
 
@@ -383,6 +384,7 @@ class MicrOp(Enum):
     OP_FPOP = 77  # temporary: replace with actual ops
     OP_FPOP_I = 78 # temporary: replace with actual ops
     OP_FP_MADD = 79
+    OP_SVREMAP = 80
 
 
 @unique