use super::backend::BackendUnavailable;
use super::coverage::{Coverage, Dispatch, Fidelity};
use super::formula::{Formula, Precision};
use super::manifest::Manifest;
pub(super) struct StableHlo;
impl Manifest for StableHlo {
const DISPATCH: Dispatch = Dispatch::Translated;
fn coverage(formula: Formula) -> Coverage {
match formula {
Formula::Gemm
| Formula::Map
| Formula::WindowProduct
| Formula::ReduceWindow
| Formula::BatchNormTraining
| Formula::BatchNormInference => Coverage::Serves {
fidelity: Fidelity::Envelope,
precisions: Precision::ALL,
},
}
}
fn compiled() -> bool {
true
}
fn status() -> Result<(), BackendUnavailable> {
Ok(())
}
}