Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
bytecodealliance
GitHub Repository: bytecodealliance/wasmtime
Path: blob/main/cranelift/codegen/src/isa/pulley_shared/lower.rs
1693 views
1
//! Lowering backend for Pulley.
2
3
pub mod isle;
4
5
use super::{PulleyBackend, PulleyTargetKind, inst::*};
6
use crate::{
7
ir,
8
machinst::{lower::*, *},
9
};
10
11
impl<P> LowerBackend for PulleyBackend<P>
12
where
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
}
37
38