백엔드
export 27개
백엔드가 지켜야 하는 계약과 기능 모델, 그리고 대상마다 내장 함수를 어떤 이름으로 낼지 정하는 레지스트리입니다.
시그니처, 설명, 예제는 커밋 26de7be8의 컴파일러 소스에서 그대로 가져온 영어 원문입니다.
-
ATOMIC_INTRINSICS상수 - The atomic builtins, with the arity and result of each: atomicLoad takes the location alone and returns its value; atomicStore takes a value and returns nothing; the eight read-modify-write forms take a value and return the value the location held before the update.
-
Backend인터페이스 - The contract a target writer implements.
-
BARRIER_INTRINSICS상수 - The barriers: workgroupBarrier() and storageBarrier(), statements with no value that every invocation of a workgroup reaches before any runs on.
-
barrierOutsideDispatch함수 - The error every CPU path throws when a barrier runs outside a dispatch: a barrier waits for the other invocations of the workgroup, and one invocation run alone, by a direct fns call or by a debug session, has none.
-
Capabilities클래스 - The set of capabilities a backend supports, built from its capProfile with Capabilities.fromProfile.
-
capabilityMatrix함수 - Report which backend can spell which capability, as one row per capability with a support class per backend.
-
CapabilityRow인터페이스 - One row of the capability matrix: a capability and how each backend supports it.
-
CapProfile타입 - A backend's capability table, and the single authority for what its target supports.
-
CapSupport인터페이스 - What one capability costs on one target: the row of a backend's capProfile.
-
CapSupportKind타입 - How one backend supports one capability. - 'native': supported, with nothing to emit and nothing for the host to turn on. - 'directive': supported, and the emitted source declares it.
-
DERIVATIVE_INTRINSICS상수 - The intrinsics whose value is a difference between neighbouring invocations, so WGSL requires uniform control flow at the call: the derivatives themselves and every sampling form that derives its level of detail implicitly.
-
hostFeaturesFor함수 - Translate neutral capability ids into the feature strings one target's host has to activate before it creates a pipeline.
-
INTRINSIC_BINDING_REFS상수 - The binding names an intrinsic's emitted text reads directly, keyed by intrinsic id, for the intrinsics whose spelling names a binding with no argument carrying it.
-
INTRINSIC_HELPERS상수 - The helper functions an intrinsic's GLSL spelling calls, keyed by intrinsic id.
-
intrinsicNeedsAtomArgs함수 - Returns true when name's spelling splices an argument into a position that binds tighter than a plain argument slot, such as an operand of an inlined operator or the base of a .field postfix.
-
INTRINSICS상수 - The spelling of each builtin id on each target, keyed by id.
-
IntrinsicTarget타입 - The emit target that spellIntrinsic and the INTRINSICS table spell for: 'wgsl' or 'glsl'.
-
isAtomicIntrinsic함수 - Whether name is one of the ATOMIC_INTRINSICS.
-
isBarrierIntrinsic함수 - Whether name is one of the BARRIER_INTRINSICS.
-
isKnownIntrinsic함수 - Returns true when name is a builtin the registry can spell on every target: either an id with an INTRINSICS entry or a member of PORTABLE_INTRINSICS.
-
PACKED_4X8_IDS상수 - The eight packed 4x8 integer builtins.
-
PACKED_4X8_LANGUAGE_FEATURE상수 - The WGSL language feature a module using PACKED_4X8_IDS depends on, as navigator.gpu.wgslLanguageFeatures names it.
-
PORTABLE_INTRINSICS상수 - The builtin ids that spell identically on both targets, such as sin, dot and clamp.
-
PRE_EMIT_INTRINSICS상수 - The builtin ids that fp64Lower rewrites away before any backend runs: 'f64', 'f64FromParts' and 'f64Parts'.
-
spellIntrinsic함수 - Spells a call for one target.
-
TEXTURE_GATHER_IDS상수 - The neutral ids a textureGather / textureGatherCompare call lowers to, one per WGSL argument structure.
-
UnsupportedFeatureError클래스 - Thrown when a module needs a feature the target backend does not support, with code SD0030.