Module Sarek_execute.Matrix_admission

module Device = Spoc_core.Device
val (let*) : ('a, 'b) Stdlib.result -> ('a -> ('c, 'b) Stdlib.result) -> ('c, 'b) Stdlib.result
val verdict_ok : Sarek_capability.verdict -> (unit, string) Stdlib.result
val rewrite_backends : string list
val fragment_refusal : Device.t -> Rw.lowering -> frag:int -> string option
val framework_refusal : Device.t -> Rw.lowering -> string option
val lowering_refusal : Device.t -> Rw.lowering -> frag:int -> string option
val subgroup_override : int option Stdlib.Atomic.t
val subgroup_override_for_tests : int option -> unit
val subgroup_of : Device.t -> int
val fragment_override : int option Stdlib.Atomic.t
val fragment_override_for_tests : int option -> unit
val fragment_of : Device.t -> Rw.lowering -> operand_elt:Sarek_ir_types.elttype -> int
val vulkan_measured_width : int
val vulkan_width_ok : Device.t -> explicit:bool -> (unit, string) Stdlib.result
val device_offers : Device.t -> explicit:bool -> Sarek_coopmat.config -> (unit, string) Stdlib.result
val device_admits : budget:Sarek_policy.Budget.t -> Device.t -> explicit:bool -> Rw.lowering -> Sarek_coopmat.config -> (unit, string) Stdlib.result