Tooling
20 members
Registry generation, semantic comparison, emit identity and size measurement.
The signature, the description and the examples come from the compiler's own source at commit 26de7be8.
-
accuracyOfFunction - What WGSL §15.7.4 allows the result of one operation to be, for a builtin id, a binary operator or a matrix product as the IR names it, computing in f32: { kind: 'exact' } when there is one answer and both targets give it, otherwise the kind and bound determinismReport would list it with.
-
buildRegistryFunction - Validate a discovered module set against a curated order and render a registry module from it: a union type of the ids, a record from id to module, and the imports feeding it.
-
BuildRegistryOptionsInterface - Options for buildRegistry.
-
BuiltRegistryInterface - What buildRegistry produced.
-
ClassifiedSemanticDiffInterface - A SemanticDiff whose differences were classified against a declared transform pipeline (SemanticDiffOptions.transforms).
-
DeterminismAccuracyType - What accuracyOf says about one operation: exact when WGSL gives it one answer and both targets agree, otherwise the kind of room left and its bound in words, with a note where the GLSL ES 3.00 spelling matters.
-
DeterminismEntryInterface - One row of determinismReport: an operation the module uses whose result may differ by driver, with the spec's bound, how many times it occurs and where, in declaration order.
-
DeterminismKindType - Why an operation's result may differ by driver, in WGSL §15.7.4's own categories plus four of TypeShade's.
-
determinismReportFunction - The operations in m whose result may differ by driver, one entry per operation and float kind, in order of first appearance over the module constants, the module variables and the functions: a builtin with a ULP or absolute bound, one inherited from a formula the driver may reassociate or fuse, a derivative or determinant, a filtered texture read or gather, an operation the GLSL ES 3.00 spelling may answer differently, every emulated f64 arithmetic operator and bounded builtin, and each floating-point reduction of a kernel function's loop, which runs in the tree order.
-
emitIdentityFunction - A stable, human-readable identity for one emit configuration.
-
EmitIdentityInputInterface - The emit options that change the emitted text, other than plugins.
-
EmitTargetType - The emit target an identity is computed for.
-
ExplainedDiffEntryInterface - One diff line that a declared transform explains: applying transform to the reference side made line disappear from bucket.
-
isSemanticallyEqualFunction - True when every bucket of d is empty.
-
RegistryEntryInterface - One discovered module, as the caller's scan found it.
-
SemanticAspectType - An axis of difference semanticDiff can be told to disregard.
-
semanticDiffFunction - Compare two modules at the IR and reflection layer.
-
SemanticDiffInterface - The four buckets of difference.
-
SemanticDiffBucketType - One of the four fact buckets of a SemanticDiff.
-
SemanticDiffOptionsInterface - Options for semanticDiff.