(no commit message)
authorshriya <shriya@web>
Tue, 21 Nov 2023 15:52:41 +0000 (15:52 +0000)
committerIkiWiki <ikiwiki.info>
Tue, 21 Nov 2023 15:52:41 +0000 (15:52 +0000)
openpower/sv/cookbook/pospopcnt.mdwn

index d6d43a2aa9f77403515da6ff4d8b51a2ab202f43..37bda1a17c334c1bf82e431e847a0bb7f124b98a 100644 (file)
@@ -6,8 +6,7 @@
 Positional popcount in optimised assembler is typically done on SIMD ISAs in
 around 500 lines.  Power ISA thanks to `bpermd` can be much more efficient:
 with SVP64 even more so.  The reference implementation showing the concept
-is below, and it adds up the totals of each bit set to 1 in each bit-position,
-of an array of input values.
+is below.
 
 ```
 // Copyright (c) 2020 Robert Clausecker <fuz@fuz.su>
@@ -20,7 +19,7 @@ func count8safe(counts *[8]int, buf []uint8) {
        }
 }
 ```
-
+Array popcount is just standard popcount function on an array of values whereas positional popcount adds up the totals of each bit set to 1 in each bit-position, of an array of input values.
 <img src="/openpower/sv/cookbook/popcount.svg " alt="pospopcnt" width="70%" />
 
 [[!tag svp64_cookbook ]]