bug 1034: making room for crfbinlog/crfternlogi/crbinlog/crternlogi
[libreriscv.git] / openpower / sv / draft_opcode_tables.mdwn
index ce182c11e10ed9a6df513547a00c8a8b909f71ad..06d1067f7af0391c0482f40a05d5692d4734281f 100644 (file)
@@ -9,8 +9,20 @@ ternlog has its own major opcode
 |  29.30 |31| name      | Form |
 | ------ |--| --------- | ---- |
 |   0  0   |Rc| ternlogi  | TLI-Form |
-|   0  1   |  | crternlogi | TLI-Form |
-|   1 iv   |  | grevlogi | TLI-Form |
+|   0  1   |0 | crfternlogi | TLI-Form |
+|   0  1   |1 | crternlogi | TLI-Form |
+|   1 iv   |1 | grevlogi | TLI-Form |
+|0nn1 0    |0 | madd/sub | A-Form |
+|   1 1    |0 | rsvd     | A-Form |
+
+PO5 (temporary)
+
+| 0.5|6.10|11.15|16.20 |21..25   | 26....30  |31| name     | Form    |
+| -- | -- | --- | ---  | -----   | --------  |--| ------   | -------- |
+| NN | RT | RA  | RB   | RC      | /  00  10 |0 | maddsubrs | A-Form  |
+| NN | RT | RA  | RB   | RC      | /  01  10 |0 | maddrs    | A-Form  |
+| NN | RT | RA  | RB   | RC      | /  10  10 |0 | msubrs    | A-Form  |
+
 
 2nd major opcode for other bitmanip: minor opcode allocation
 
@@ -61,9 +73,8 @@ TODO: convert all instructions to use RT and not RS
 | 0.5|6.10|11.15|16.20 |21..25   | 26....30  |31| name     | Form    |
 | -- | -- | --- | ---  | -----   | --------  |--| ------   | -------- |
 | NN | RT | RA  |it/im57|im0-4   | 0  00  00 |0 | xpermi  | TODO-Form  |
-| NN | RT | RA  | RB   | RC      | sh 01  00 |0 | maddsubrs | BF-Form  |
-| NN |    |     |      |         | -  10  00 |0 | rsvd     | rsvd  |
-| NN |    |     |      |         | -  11  00 |0 | rsvd     | rsvd  |
+| NN |    |     |      |         | -  10  00 |0 | svshape3 | rsvd  |
+| NN |    |     |      |         | -  11  00 |0 | svshape4 | rsvd  |
 | NN | RT | RA  | RB   | RC      | nh 00  00 |1 | binlut |  VA-Form      |
 | NN | RT | RA  | RB   | /BFA/   | 0  01  00 |1 | bincrflut  | VA-Form     |
 | NN |    |     |      |         | 1  01  00 |1 | svindex    | SVI-Form    |
@@ -100,8 +111,9 @@ the [[sv/av_opcodes]])
 | NN | RT | RA  | RB  | 0  |   01  | 0001 110 |Rc| rsvd      |         |
 | NN | RT | RA  | RB  | 0  |   10  | 0001 110 |Rc| rsvd      |         |
 | NN | RT | RA  | RB  | 0  |   11  | 0001 110 |Rc| vec cprop | X-Form  |
-| NN |    |     |     |    |   00  | 0101 110 |0 | crfbinlog | {TODO}  |
-| NN |    |     |     |    |   00  | 0101 110 |1 | rsvd      |         |
+| NN |    |     |     |    |   00  | 0101 110 |0 | crfbinlog | CRB-Form|
+| NN | BT | BA  |BFB//| 0  |   00  | 0101 110 |1 | crbinlog  | X-Form  |
+| NN |    |     |     | 1  |   00  | 0101 110 |1 | rsvd      |         |
 | NN |    |     |     |    |   10  | 0101 110 |Rc| rsvd      |         |
 | NN | RT | RA  | RB  | sm0| sm1 1 | 0101 110 |Rc| shaddw    | X-Form  |
 | NN |    |     |     | 0  |       | 1001 110 |Rc| rsvd      |         |