cranelift_codegen/isa/pulley_shared/
lower.rs

1//! Lowering backend for Pulley.
2
3pub mod isle;
4
5use super::{inst::*, PulleyBackend, PulleyTargetKind};
6use crate::{
7    ir,
8    machinst::{lower::*, *},
9};
10
11impl<P> LowerBackend for PulleyBackend<P>
12where
13    P: PulleyTargetKind,
14{
15    type MInst = InstAndKind<P>;
16
17    fn lower(&self, ctx: &mut Lower<Self::MInst>, ir_inst: ir::Inst) -> Option<InstOutput> {
18        isle::lower(ctx, self, ir_inst)
19    }
20
21    fn lower_branch(
22        &self,
23        ctx: &mut Lower<Self::MInst>,
24        ir_inst: ir::Inst,
25        targets: &[MachLabel],
26    ) -> Option<()> {
27        isle::lower_branch(ctx, self, ir_inst, targets)
28    }
29
30    fn maybe_pinned_reg(&self) -> Option<Reg> {
31        // Pulley does not support this feature right now.
32        None
33    }
34
35    type FactFlowState = ();
36}