Sarek_metal.Metal_pluginmodule Metal_base : sig ... endReuse the existing Metal implementation
Extend Framework_sig.kargs with Metal-specific variant
type metal_intrinsic = {intr_name : string;intr_codegen : string;intr_convergence : Spoc_framework.Framework_sig.convergence;}Metal-specific intrinsic implementation
Intrinsic registry for Metal-specific intrinsics
Metal Backend - implements BACKEND
val register_intrinsic : string -> Metal_intrinsics.intrinsic_impl -> unitRegister a custom Metal intrinsic
val find_intrinsic : string -> Metal_intrinsics.intrinsic_impl optionLook up a Metal intrinsic
val generate_with_types :
types:(string * (string * Sarek_ir_types.elttype) list) list ->
Sarek_ir_types.kernel ->
stringGenerate Metal source with custom types
val generate_source : Sarek_ir_types.kernel -> stringGenerate Metal source for a kernel