add missing bitmanip opcodes
authorLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 30 Sep 2019 16:04:13 +0000 (17:04 +0100)
committerLuke Kenneth Casson Leighton <lkcl@lkcl.net>
Mon, 30 Sep 2019 16:04:13 +0000 (17:04 +0100)
simple_v_extension/specification/bitmanip.mdwn

index bc52fb7633cf9a2cdf55f6c941992a9be344d7f0..25acef4690a985db5cb77a30da972215ae89766b 100644 (file)
@@ -127,3 +127,41 @@ Pseudo-code:
                 if (regs[rs2] & bit):
                     setting_mode = True # back into "setting" mode
             i += 1
+
+## sif - set including first bit
+
+     # Example
+
+     7 6 5 4 3 2 1 0   Element number
+
+     1 0 0 1 0 1 0 0   a3 contents
+                       sif a2, a3
+     0 0 0 0 0 1 1 1   a2 contents
+
+     1 0 0 1 0 1 0 1   a3 contents
+                       sif a2, a3
+     0 0 0 0 0 0 0 1   a2
+
+     1 1 0 0 0 0 1 1   a0 vcontents
+     1 0 0 1 0 1 0 0   a3 contents
+                       sif a2, a3, a0
+     1 1 x x x x 1 1   a2 contents
+
+## sof - set only first bit
+
+     # Example
+
+     7 6 5 4 3 2 1 0   Element number
+
+     1 0 0 1 0 1 0 0   a3 contents
+                       sof a2, a3
+     0 0 0 0 0 1 0 0   a2 contents
+
+     1 0 0 1 0 1 0 1   a3 contents
+                       sof a2, a3
+     0 0 0 0 0 0 0 1   a2
+
+     1 1 0 0 0 0 1 1   a0 vcontents
+     1 1 0 1 0 1 0 0   a3 contents
+                       sof a2, a3, a0
+     0 1 x x x x 0 0   a2 contents