(no commit message)
authorlkcl <lkcl@web>
Fri, 11 Dec 2020 23:29:45 +0000 (23:29 +0000)
committerIkiWiki <ikiwiki.info>
Fri, 11 Dec 2020 23:29:45 +0000 (23:29 +0000)
openpower/sv/sv/mv.swizzle.mdwn

index 8124256c27204c4b3b4cb5c8de64beb3a615bd0d..1343bc0e6015ef7d10a6c58e87bc47ebdf2c0412 100644 (file)
@@ -1,2 +1,28 @@
 # mv.swizzle
 
+# Format
+
+| 0..5 |6..10|11..15|16.20|21.....25|26.....30|31|  name   |
+|------|-----|------|-----|---------|---------|--|---------|
+| 19   | RT  | RA   |     | XO[0:4] | XO[5:9] |Rc| XL-Form |
+| 19   | RT  | RA   |imm  | imm     | Nn  NNN |im| mv.swiz |
+
+also f.mv
+
+this gives an 11 bit immediate across bits 16 to 25 and bit 31.  a permutation based encoding should allow the 12 bits to be covered
+
+* 3 bits X
+* 3 bits Y
+* 3 bits Z
+* 3 bits W
+
+except that the options are:
+
+* 0b1NN index 0 thru 3 to place subelement in pos XYZW
+* 0b000 to indicate "skip"
+* 0b001 to indicate "constant 0"
+* 0b010 to indicate "constant 1" (or 1.0)
+* 0b011 is not needed.
+
+this "not needed" means the encoding is actually a lot less.  the sequences involve expressing how many 0s and 1s are embedded in amongst the XYZWs which gets really interesting.
+