Module Sarek_matrix_alert

module Pattern = Sarek_matrix_pattern
module Advice = Sarek_matrix_advice
val for_loops_named : Ppxlib__.Import.Ast.expression -> Stdlib.String.t -> Ppxlib.Location.t list
val alert_loc : kernel_loc:Ppxlib.location -> payload:Ppxlib__.Import.Ast.expression -> Pattern.gemm -> Ppxlib.Location.t
val alert_attribute : loc:Ppxlib__.Location.t -> string -> Ppxlib__.Import.attribute
val alert_expression : loc:Ppxlib__.Location.t -> string -> Ppxlib__.Import.expression
val case_name : Advice.element_case -> string
val scan_line : where:string -> name:string -> Pattern.finding -> string
val record_scan : kernel_loc:Ppxlib.location -> name:string -> Pattern.finding list -> unit
val has_native : Sarek_ir_ppx.kernel -> bool

wrap ~kernel_loc ~payload ?name ir result analyses ir (unless it has a %native block), records the scan when requested, and returns result preceded by one alert per advised GEMM nest (result itself when there is none).

val advices : kernel_loc:Ppxlib.location -> payload:Ppxlib__.Import.Ast.expression -> ?name:string -> Sarek_ir_ppx.kernel -> Ppxlib__.Import.expression list
val wrap : kernel_loc:Ppxlib.location -> payload:Ppxlib__.Import.Ast.expression -> ?name:string -> Sarek_ir_ppx.kernel -> Ppxlib.expression -> Ppxlib__.Import.expression