SIMD spec transition progress

Generated by archsimd/_gen/cmd/specstats; do not edit.
Regenerate with: go run ./cmd/specstats -w

Every fraction heads for 100%; every count heads for zero. Bracketed
names are SPEC-TRANSITION.md tasks that move the figure. Indented,
untagged numbers are context breaking down the figure above them.
String, Len, ToArch, and FromArch are excluded throughout (§2.7).


## Summary

Heading for 100%:

spec coverage, by (receiver, name) (§1)          1823 / 2929   62%  [spec-common, spec-all]
docs sourced from spec (§3)                      2958 / 3206   92%  [gen-docs, comments-yaml, handwritten-fill, template-docs]

Heading for zero:

type mismatches with spec (§2)                      0 -> 0       [fill-enforce]
type divergence across targets (§2)                 0 -> 0       [fill-enforce]
spec coverage gaps in defined names (§5)            8 -> 0       [spec-all, convert-lo, mask-bits]
hand-written doc conflicts with spec (§3)         164 -> 0       [doc-triage]
simd mirror drift (§3)                              0 -> 0       [comments-yaml]
categories.yaml entries (§4)                      229 -> 0       [cat-rehome, compiler-ops-impl, cat-delete]
midway/comments.yaml entries spec covers (§4)       0 -> 0       [comments-yaml, spec-all]


## 1. Spec coverage of API   [spec-common, spec-all]

by (target, receiver, name)                      3934 / 5204   76%
by (receiver, name)                              1823 / 2929   62%
by name                                           276 / 462    60%

By build configuration:

  amd64                                          1737 / 2692   65%
  arm64                                          1099 / 1311   84%
  wasm                                            750 / 829    90%
  portable                                        348 / 372    94%

By generator (declarations per tool, counted once per tool per pair):

  hand-written                                    502 / 561    89%
  midway                                          348 / 348   100%
  simdgen                                        1293 / 2272   57%
  tmplgen                                         373 / 421    89%
  wasmgen                                         337 / 392    86%

High-drift-risk names (emitted by >1 generator):

  covered                                         135 / 143    94%  [spec-all]
  portable core (comments.yaml .common_methods)    65 / 65    100%  [spec-common]

spec operations written so far                     81
  expanding to distinct names                     287
  expanding to (receiver, name) pairs            2672


## 2. Signatures and names   [named-results, fill-enforce]

Spec/API disagreement, for declarations spec covers. As in specdoc.Fill,
a named argument whose name differs from spec's is a mismatch; an unnamed
one (or _) is not, and is counted below as a name Fill fills in instead:

  type mismatches                                   0 -> 0       [fill-enforce]
  parameter-name mismatches                         0 -> 0       [named-results]
  result-name mismatches                            0 -> 0       [named-results]

Names spec gives that the API leaves unnamed, for declarations spec covers:

  declarations with unnamed parameters              0 -> 0       [named-results]
  declarations with unnamed results                 0 -> 0       [named-results]

API consistency across targets (the "one meaning" invariant), for
(receiver, name) pairs declared for more than one target. An unnamed
argument agrees with any name:

  divergent parameter or result types               0 -> 0       [fill-enforce]
  divergent parameter names                         0 -> 0       [fill-enforce, spec-all]
  divergent result names                            0 -> 0       [named-results]


## 3. Documentation   [gen-docs, comments-yaml, handwritten-fill, template-docs]

A declaration counts as sourced from spec when its doc comment begins with
spec's text (a prefix test, because Fill leaves generator notes below).

covered declarations whose doc comes from spec   2958 / 3206   92%  [gen-docs, comments-yaml, handwritten-fill, template-docs]

simd ∩ archsimd methods with matching docs        270 / 270   100%  [gen-docs, comments-yaml]

hand-written doc conflicts with spec              164 -> 0       [doc-triage]
    archsimd/clmul_arm64.go                         4 -> 0       [doc-triage]
    archsimd/extra_amd64.go                         6 -> 0       [doc-triage]
    archsimd/maskrange_128.go                       4 -> 0       [doc-triage]
    archsimd/maskrange_amd64.go                    12 -> 0       [doc-triage]
    archsimd/ops_emulated_amd64.go                 48 -> 0       [doc-triage]
    archsimd/ops_emulated_arm64.go                  1 -> 0       [doc-triage]
    archsimd/ops_emulated_wasm.go                  29 -> 0       [doc-triage]
    archsimd/shuffles_amd64.go                     12 -> 0       [doc-triage]
    archsimd/slicepart_128.go                       8 -> 0       [doc-triage]
    archsimd/slicepart_amd64.go                     4 -> 0       [doc-triage]
    archsimd/slicepart_arm64.go                    12 -> 0       [doc-triage]
    archsimd/slicepart_wasm.go                     12 -> 0       [doc-triage]
    simd_emulated.go                               12 -> 0       [doc-triage]
drifted docs in simd mirror (stubs vs emulated)     0 -> 0       [comments-yaml]
  mirrored declarations                           372


## 4. Retiring the old inputs
   [comments-yaml, cat-rehome, compiler-ops-impl, cat-delete]

categories.yaml's exported entries are emptied field by field: template-docs
removes documentation, cat-rehome removes the rest, sig-from-spec removes
commutative, and cat-delete removes the file. Compiler-only entries are
handled wholesale by compiler-ops-impl.

categories.yaml entries                           229 -> 0       [cat-rehome, compiler-ops-impl, cat-delete]
    unique operation names                        200
      exported                                    167
compiler-only categories.yaml entries              42 -> 0       [compiler-ops-impl]

  exported entries, by field:
    base                                            6 -> 0       [cat-rehome]
    commutative                                   187 -> 0       [sig-from-spec]
    constImm                                       22 -> 0       [cat-rehome]
    documentation                                 186 -> 0       [cat-rehome]
    elemBits                                       14 -> 0       [cat-rehome]
    out                                            20 -> 0       [cat-rehome]
    regexpTag                                      25 -> 0       [cat-rehome]
    signed                                          6 -> 0       [cat-rehome]

midway/comments.yaml entries spec covers            0 -> 0       [comments-yaml, spec-all]

commutativity disagreements, spec vs categories.yaml     7 -> 0       [spec-all]


## 5. Spec/API coverage disagreement detail   [spec-all, convert-lo, mask-bits]

Where both sides define a name, receivers only the API declares are spec
bugs (a constraint is wrong or a sibling function is missing). Receivers
only spec generates are a review queue -- spec is deliberately maximal.

spec misses receivers of a name it defines          8 -> 0       [spec-all, convert-lo, mask-bits]
    declarations affected, counting each target     8 -> 0       [spec-all, convert-lo, mask-bits]
spec operations implemented nowhere                 1 -> 0       [spec-all]
    TrailingZeros

Every name either side defines, less the 186 spec has never defined at all
(1098 receivers, counted as coverage in §1 rather than disagreement):

  relation         names  Σ|api - spec|  Σ|spec - api|
                                 (-> 0)       (review)
  api = spec         219              0              0
  api ⊂ spec          51              0            799
  api ⊃ spec           0              0              0
  overlapping          0              0              0
  disjoint             6              8             16
  api = ∅             11              0             34
  total              287              8            849

Names that disagree, with api - spec receivers (the defects):

  name                       relation    |api| |spec| |api - spec| |spec - api|
  AddSaturated               api ⊂ spec     24     32            0            8
  Average                    api ⊂ spec     12     32            0           20
  CarrylessMultiplyEven      api ⊂ spec      4     16            0           12
  CarrylessMultiplyEvenOdd   api ⊂ spec      3     16            0           13
  CarrylessMultiplyOdd       api ⊂ spec      4     16            0           12
  CarrylessMultiplyOddEven   api ⊂ spec      3     16            0           13
  ConcatAddPairs             api ⊂ spec     10     40            0           30
  ConcatAddPairsGrouped      api ⊂ spec      6     40            0           34
  ConcatAddPairsSaturated    api ⊂ spec      1     32            0           31
  ConcatAddPairsSaturatedGrouped api ⊂ spec      1     32            0           31
  ConcatSubPairs             api ⊂ spec      6     40            0           34
  ConcatSubPairsGrouped      api ⊂ spec      6     40            0           34
  ConcatSubPairsSaturated    api ⊂ spec      1     32            0           31
  ConcatSubPairsSaturatedGrouped api ⊂ spec      1     32            0           31
  ConvertLo16ToFloat32       api = ∅         0      4            0            4
  ConvertLo2ToFloat64        api ⊂ spec      3      7            0            4
  ConvertLo4ToFloat32        api = ∅         0      4            0            4
  ConvertLo4ToFloat64        api = ∅         0      7            0            7
  ConvertLo8ToFloat32        api = ∅         0      4            0            4
  ConvertLo8ToFloat64        api = ∅         0      7            0            7
  ConvertToFloat32           api ⊂ spec     16     23            0            7
  ConvertToFloat64           api ⊂ spec     12     16            0            4
  ConvertToInt16             api ⊂ spec      4     26            0           22
  ConvertToInt32             api ⊂ spec     11     23            0           12
  ConvertToInt64             api ⊂ spec      9     16            0            7
  ConvertToInt8              api ⊂ spec      4     28            0           24
  ConvertToUint16            api ⊂ spec      4     26            0           22
  ConvertToUint32            api ⊂ spec     10     23            0           13
  ConvertToUint64            api ⊂ spec      9     16            0            7
  ConvertToUint8             api ⊂ spec      4     28            0           24
  Div                        api ⊂ spec     12     40            0           28
  DotProductPairs            api ⊂ spec      3     28            0           25
  DotProductPairsSaturated   api ⊂ spec      3     12            0            9
  ExtendLo16ToInt16          api = ∅         0      1            0            1
  ExtendLo16ToInt32          api = ∅         0      2            0            2
  ExtendLo16ToUint16         api = ∅         0      1            0            1
  ExtendLo16ToUint32         api = ∅         0      2            0            2
  ExtendLo32ToInt16          api = ∅         0      1            0            1
  ExtendLo32ToUint16         api = ∅         0      1            0            1
  ExtendLo4ToInt64           disjoint        2      3            2            3
      api - spec = Int16x8 Int8x16
  ExtendLo4ToUint64          disjoint        2      3            2            3
      api - spec = Uint16x8 Uint8x16
  ExtendLo8ToInt32           disjoint        1      2            1            2
      api - spec = Int8x16
  ExtendLo8ToInt64           disjoint        1      3            1            3
      api - spec = Int8x16
  ExtendLo8ToUint32          disjoint        1      2            1            2
      api - spec = Uint8x16
  ExtendLo8ToUint64          disjoint        1      3            1            3
      api - spec = Uint8x16
  IsNaN                      api ⊂ spec      6      8            0            2
  LeadingZeros               api ⊂ spec     16     32            0           16
  Less                       api ⊂ spec     39     40            0            1
  LessEqual                  api ⊂ spec     39     40            0            1
  MulAdd                     api ⊂ spec     22     40            0           18
  NotEqual                   api ⊂ spec     40     56            0           16
  OnesCount                  api ⊂ spec     26     32            0            6
  Permute                    api ⊂ spec     24     40            0           16
  ReduceMax                  api ⊂ spec     10     40            0           30
  ReduceSum                  api ⊂ spec     34     40            0            6
  RotateAllLeft              api ⊂ spec     13     16            0            3
  RotateAllRight             api ⊂ spec     13     16            0            3
  RotateLeft                 api ⊂ spec      6     16            0           10
  RotateRight                api ⊂ spec      6     16            0           10
  ScaleSaturated             api ⊂ spec      8     32            0           24
  ShiftAllLeft               api ⊂ spec     28     32            0            4
  ShiftAllRight              api ⊂ spec     25     32            0            7
  ShiftLeft                  api ⊂ spec     18     32            0           14
  ShiftRight                 api ⊂ spec     18     32            0           14
  StoreArrayMasked           api ⊂ spec     22     30            0            8
  SubSaturated               api ⊂ spec     24     32            0            8
  ToMask                     api ⊂ spec     16     40            0           24
  TrailingZeros              api ⊂ spec     16     32            0           16
