(no commit message)
authorlkcl <lkcl@web>
Mon, 13 Jun 2022 22:39:13 +0000 (23:39 +0100)
committerIkiWiki <ikiwiki.info>
Mon, 13 Jun 2022 22:39:13 +0000 (23:39 +0100)
openpower/sv/mv.swizzle.mdwn

index 77d457ef38a08e2d814f212dfc099282b1f3cfaf..af8c797a0e0cc51b126910f65d819be7116bd7cd 100644 (file)
@@ -187,12 +187,16 @@ may be assumed to be 4.
     def index_dest():
         for i in range(VL):
             for j in range(dst_subvl):
+                if swiz[j] == 0b000: # skip
+                    continue
                 yield i*dst_subvl+j
 
     # walk through both source and dest indices simultaneously
     for (src_idx, offs), dst_idx in zip(index_src(), index_dst()):
         if offs == CONSTANT:
-        move_operation(RT+dst_idx, RA+src_idx+offs)
+             set(RT+dst_idx, CONSTANT)
+        else
+             move_operation(RT+dst_idx, RA+src_idx+offs)
 ```
 
 **Effect of Saturation on Vectorised Swizzle**