Coverage Report

Created: 2026-03-26 07:41

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/rust/registry/src/index.crates.io-1949cf8c6b5b557f/cranelift-codegen-0.129.1/src/machinst/isle.rs
Line
Count
Source
1
use crate::ir::{BlockCall, Value, ValueList};
2
use alloc::boxed::Box;
3
use alloc::vec::Vec;
4
use smallvec::SmallVec;
5
6
pub use super::MachLabel;
7
use super::RetPair;
8
pub use crate::ir::{condcodes::CondCode, *};
9
pub use crate::isa::{TargetIsa, unwind::UnwindInst};
10
pub use crate::machinst::{
11
    ABIArg, ABIArgSlot, ABIMachineSpec, InputSourceInst, Lower, LowerBackend, RealReg, Reg,
12
    RelocDistance, Sig, TryCallInfo, VCodeInst, Writable,
13
};
14
pub use crate::settings::{StackSwitchModel, TlsModel};
15
16
pub type Unit = ();
17
pub type ValueSlice = (ValueList, usize);
18
pub type ValueArray2 = [Value; 2];
19
pub type ValueArray3 = [Value; 3];
20
pub type BlockArray2 = [BlockCall; 2];
21
pub type WritableReg = Writable<Reg>;
22
pub type VecRetPair = Vec<RetPair>;
23
pub type VecMask = Vec<u8>;
24
pub type ValueRegs = crate::machinst::ValueRegs<Reg>;
25
pub type WritableValueRegs = crate::machinst::ValueRegs<WritableReg>;
26
pub type ValueRegsVec = SmallVec<[ValueRegs; 2]>;
27
pub type InstOutput = SmallVec<[ValueRegs; 2]>;
28
pub type BoxExternalName = Box<ExternalName>;
29
pub type MachLabelSlice = [MachLabel];
30
pub type BoxVecMachLabel = Box<Vec<MachLabel>>;
31
pub type OptionTryCallInfo = Option<TryCallInfo>;
32
33
/// Helper macro to define methods in `prelude.isle` within `impl Context for
34
/// ...` for each backend. These methods are shared amongst all backends.
35
#[macro_export]
36
#[doc(hidden)]
37
macro_rules! isle_lower_prelude_methods {
38
    () => {
39
        crate::isle_lower_prelude_methods!(MInst);
40
    };
41
    ($inst:ty) => {
42
        crate::isle_common_prelude_methods!();
43
44
        #[inline]
45
9.38M
        fn value_type(&mut self, val: Value) -> Type {
46
9.38M
            self.lower_ctx.dfg().value_type(val)
47
9.38M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_type
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_type
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_type
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_type
Line
Count
Source
45
9.38M
        fn value_type(&mut self, val: Value) -> Type {
46
9.38M
            self.lower_ctx.dfg().value_type(val)
47
9.38M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_type
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_type
48
49
        #[inline]
50
3.98M
        fn value_reg(&mut self, reg: Reg) -> ValueRegs {
51
3.98M
            ValueRegs::one(reg)
52
3.98M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_reg
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_reg
Line
Count
Source
50
3.98M
        fn value_reg(&mut self, reg: Reg) -> ValueRegs {
51
3.98M
            ValueRegs::one(reg)
52
3.98M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_reg
53
54
        #[inline]
55
40.8k
        fn value_regs(&mut self, r1: Reg, r2: Reg) -> ValueRegs {
56
40.8k
            ValueRegs::two(r1, r2)
57
40.8k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs
Line
Count
Source
55
40.8k
        fn value_regs(&mut self, r1: Reg, r2: Reg) -> ValueRegs {
56
40.8k
            ValueRegs::two(r1, r2)
57
40.8k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs
58
59
        #[inline]
60
0
        fn writable_value_regs(&mut self, r1: WritableReg, r2: WritableReg) -> WritableValueRegs {
61
0
            WritableValueRegs::two(r1, r2)
62
0
        }
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_value_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_value_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_value_regs
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_value_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_value_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_value_regs
63
64
        #[inline]
65
0
        fn writable_value_reg(&mut self, r: WritableReg) -> WritableValueRegs {
66
0
            WritableValueRegs::one(r)
67
0
        }
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_value_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_value_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_value_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_value_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_value_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_value_reg
68
69
        #[inline]
70
0
        fn value_regs_invalid(&mut self) -> ValueRegs {
71
0
            ValueRegs::invalid()
72
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_invalid
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_invalid
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_invalid
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_invalid
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_invalid
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_invalid
73
74
        #[inline]
75
2.17M
        fn output_none(&mut self) -> InstOutput {
76
2.17M
            smallvec::smallvec![]
77
2.17M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_none
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_none
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_none
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_none
Line
Count
Source
75
2.17M
        fn output_none(&mut self) -> InstOutput {
76
2.17M
            smallvec::smallvec![]
77
2.17M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_none
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_none
78
79
        #[inline]
80
4.14M
        fn output(&mut self, regs: ValueRegs) -> InstOutput {
81
4.14M
            smallvec::smallvec![regs]
82
4.14M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output
Line
Count
Source
80
4.14M
        fn output(&mut self, regs: ValueRegs) -> InstOutput {
81
4.14M
            smallvec::smallvec![regs]
82
4.14M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output
83
84
        #[inline]
85
0
        fn output_pair(&mut self, r1: ValueRegs, r2: ValueRegs) -> InstOutput {
86
0
            smallvec::smallvec![r1, r2]
87
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_pair
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_pair
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_pair
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_pair
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_pair
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_pair
88
89
        #[inline]
90
445k
        fn output_vec(&mut self, output: &ValueRegsVec) -> InstOutput {
91
445k
            output.clone()
92
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_vec
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_vec
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_vec
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::output_vec
Line
Count
Source
90
445k
        fn output_vec(&mut self, output: &ValueRegsVec) -> InstOutput {
91
445k
            output.clone()
92
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::output_vec
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::output_vec
93
94
        #[inline]
95
0
        fn temp_writable_reg(&mut self, ty: Type) -> WritableReg {
96
0
            let value_regs = self.lower_ctx.alloc_tmp(ty);
97
0
            value_regs.only_reg().unwrap()
98
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::temp_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::temp_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::temp_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::temp_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::temp_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::temp_writable_reg
99
100
        #[inline]
101
0
        fn is_valid_reg(&mut self, reg: Reg) -> bool {
102
            use crate::machinst::valueregs::InvalidSentinel;
103
0
            !reg.is_invalid_sentinel()
104
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::is_valid_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::is_valid_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::is_valid_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::is_valid_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::is_valid_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::is_valid_reg
105
106
        #[inline]
107
302
        fn invalid_reg(&mut self) -> Reg {
108
            use crate::machinst::valueregs::InvalidSentinel;
109
302
            Reg::invalid_sentinel()
110
302
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::invalid_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::invalid_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::invalid_reg
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::invalid_reg
Line
Count
Source
107
302
        fn invalid_reg(&mut self) -> Reg {
108
            use crate::machinst::valueregs::InvalidSentinel;
109
302
            Reg::invalid_sentinel()
110
302
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::invalid_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::invalid_reg
111
112
        #[inline]
113
0
        fn mark_value_used(&mut self, val: Value) {
114
0
            self.lower_ctx.increment_lowered_uses(val);
115
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::mark_value_used
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::mark_value_used
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::mark_value_used
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::mark_value_used
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::mark_value_used
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::mark_value_used
116
117
        #[inline]
118
7.82M
        fn put_in_reg(&mut self, val: Value) -> Reg {
119
7.82M
            self.put_in_regs(val).only_reg().unwrap()
120
7.82M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_reg
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_reg
Line
Count
Source
118
7.82M
        fn put_in_reg(&mut self, val: Value) -> Reg {
119
7.82M
            self.put_in_regs(val).only_reg().unwrap()
120
7.82M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_reg
121
122
        #[inline]
123
11.3M
        fn put_in_regs(&mut self, val: Value) -> ValueRegs {
124
11.3M
            self.lower_ctx.put_value_in_regs(val)
125
11.3M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs
Line
Count
Source
123
11.3M
        fn put_in_regs(&mut self, val: Value) -> ValueRegs {
124
11.3M
            self.lower_ctx.put_value_in_regs(val)
125
11.3M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs
126
127
        #[inline]
128
634k
        fn put_in_regs_vec(&mut self, (list, off): ValueSlice) -> ValueRegsVec {
129
634k
            (off..list.len(&self.lower_ctx.dfg().value_lists))
130
3.29M
                .map(|ix| {
131
3.29M
                    let val = list.get(ix, &self.lower_ctx.dfg().value_lists).unwrap();
132
3.29M
                    self.put_in_regs(val)
133
3.29M
                })
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
Line
Count
Source
130
3.29M
                .map(|ix| {
131
3.29M
                    let val = list.get(ix, &self.lower_ctx.dfg().value_lists).unwrap();
132
3.29M
                    self.put_in_regs(val)
133
3.29M
                })
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs_vec::{closure#0}
134
634k
                .collect()
135
634k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs_vec
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs_vec
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs_vec
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::put_in_regs_vec
Line
Count
Source
128
634k
        fn put_in_regs_vec(&mut self, (list, off): ValueSlice) -> ValueRegsVec {
129
634k
            (off..list.len(&self.lower_ctx.dfg().value_lists))
130
634k
                .map(|ix| {
131
                    let val = list.get(ix, &self.lower_ctx.dfg().value_lists).unwrap();
132
                    self.put_in_regs(val)
133
                })
134
634k
                .collect()
135
634k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::put_in_regs_vec
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::put_in_regs_vec
136
137
        #[inline]
138
0
        fn ensure_in_vreg(&mut self, reg: Reg, ty: Type) -> Reg {
139
0
            self.lower_ctx.ensure_in_vreg(reg, ty)
140
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::ensure_in_vreg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::ensure_in_vreg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::ensure_in_vreg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::ensure_in_vreg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::ensure_in_vreg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::ensure_in_vreg
141
142
        #[inline]
143
167k
        fn value_regs_get(&mut self, regs: ValueRegs, i: usize) -> Reg {
144
167k
            regs.regs()[i]
145
167k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_get
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_get
Line
Count
Source
143
167k
        fn value_regs_get(&mut self, regs: ValueRegs, i: usize) -> Reg {
144
167k
            regs.regs()[i]
145
167k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_get
146
147
        #[inline]
148
0
        fn value_regs_len(&mut self, regs: ValueRegs) -> usize {
149
0
            regs.regs().len()
150
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_len
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_regs_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_regs_len
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_regs_len
151
152
        #[inline]
153
634k
        fn value_list_slice(&mut self, list: ValueList) -> ValueSlice {
154
634k
            (list, 0)
155
634k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_list_slice
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_list_slice
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_list_slice
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_list_slice
Line
Count
Source
153
634k
        fn value_list_slice(&mut self, list: ValueList) -> ValueSlice {
154
634k
            (list, 0)
155
634k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_list_slice
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_list_slice
156
157
        #[inline]
158
0
        fn value_slice_empty(&mut self, slice: ValueSlice) -> Option<()> {
159
0
            let (list, off) = slice;
160
0
            if off >= list.len(&self.lower_ctx.dfg().value_lists) {
161
0
                Some(())
162
            } else {
163
0
                None
164
            }
165
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_empty
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_empty
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_empty
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_empty
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_empty
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_empty
166
167
        #[inline]
168
416k
        fn value_slice_unwrap(&mut self, slice: ValueSlice) -> Option<(Value, ValueSlice)> {
169
416k
            let (list, off) = slice;
170
416k
            if let Some(val) = list.get(off, &self.lower_ctx.dfg().value_lists) {
171
416k
                Some((val, (list, off + 1)))
172
            } else {
173
0
                None
174
            }
175
416k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_unwrap
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_unwrap
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_unwrap
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_unwrap
Line
Count
Source
168
416k
        fn value_slice_unwrap(&mut self, slice: ValueSlice) -> Option<(Value, ValueSlice)> {
169
416k
            let (list, off) = slice;
170
416k
            if let Some(val) = list.get(off, &self.lower_ctx.dfg().value_lists) {
171
416k
                Some((val, (list, off + 1)))
172
            } else {
173
0
                None
174
            }
175
416k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_unwrap
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_unwrap
176
177
        #[inline]
178
0
        fn value_slice_len(&mut self, slice: ValueSlice) -> usize {
179
0
            let (list, off) = slice;
180
0
            list.len(&self.lower_ctx.dfg().value_lists) - off
181
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_len
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_len
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_len
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_len
182
183
        #[inline]
184
0
        fn value_slice_get(&mut self, slice: ValueSlice, idx: usize) -> Value {
185
0
            let (list, off) = slice;
186
0
            list.get(off + idx, &self.lower_ctx.dfg().value_lists)
187
0
                .unwrap()
188
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_slice_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_slice_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_slice_get
189
190
        #[inline]
191
6.91k
        fn writable_reg_to_reg(&mut self, r: WritableReg) -> Reg {
192
6.91k
            r.to_reg()
193
6.91k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_reg_to_reg
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_reg_to_reg
Line
Count
Source
191
6.91k
        fn writable_reg_to_reg(&mut self, r: WritableReg) -> Reg {
192
6.91k
            r.to_reg()
193
6.91k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_reg_to_reg
194
195
        #[inline]
196
0
        fn inst_results(&mut self, inst: Inst) -> ValueSlice {
197
0
            (self.lower_ctx.dfg().inst_results_list(inst), 0)
198
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::inst_results
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::inst_results
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::inst_results
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::inst_results
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::inst_results
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::inst_results
199
200
        #[inline]
201
4.93M
        fn first_result(&mut self, inst: Inst) -> Option<Value> {
202
4.93M
            self.lower_ctx.dfg().inst_results(inst).first().copied()
203
4.93M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::first_result
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::first_result
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::first_result
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::first_result
Line
Count
Source
201
4.93M
        fn first_result(&mut self, inst: Inst) -> Option<Value> {
202
4.93M
            self.lower_ctx.dfg().inst_results(inst).first().copied()
203
4.93M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::first_result
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::first_result
204
205
        #[inline]
206
13.9M
        fn inst_data_value(&mut self, inst: Inst) -> InstructionData {
207
13.9M
            self.lower_ctx.dfg().insts[inst]
208
13.9M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::inst_data_value
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::inst_data_value
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::inst_data_value
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::inst_data_value
Line
Count
Source
206
13.9M
        fn inst_data_value(&mut self, inst: Inst) -> InstructionData {
207
13.9M
            self.lower_ctx.dfg().insts[inst]
208
13.9M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::inst_data_value
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::inst_data_value
209
210
        #[inline]
211
3.12M
        fn i64_from_iconst(&mut self, val: Value) -> Option<i64> {
212
3.12M
            let inst = self.def_inst(val)?;
213
3.10M
            let constant = match self.lower_ctx.data(inst) {
214
                InstructionData::UnaryImm {
215
                    opcode: Opcode::Iconst,
216
853k
                    imm,
217
853k
                } => imm.bits(),
218
2.25M
                _ => return None,
219
            };
220
853k
            let ty = self.lower_ctx.output_ty(inst, 0);
221
853k
            let shift_amt = core::cmp::max(0, 64 - self.ty_bits(ty));
222
853k
            Some((constant << shift_amt) >> shift_amt)
223
3.12M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::i64_from_iconst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::i64_from_iconst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::i64_from_iconst
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::i64_from_iconst
Line
Count
Source
211
3.12M
        fn i64_from_iconst(&mut self, val: Value) -> Option<i64> {
212
3.12M
            let inst = self.def_inst(val)?;
213
3.10M
            let constant = match self.lower_ctx.data(inst) {
214
                InstructionData::UnaryImm {
215
                    opcode: Opcode::Iconst,
216
853k
                    imm,
217
853k
                } => imm.bits(),
218
2.25M
                _ => return None,
219
            };
220
853k
            let ty = self.lower_ctx.output_ty(inst, 0);
221
853k
            let shift_amt = core::cmp::max(0, 64 - self.ty_bits(ty));
222
853k
            Some((constant << shift_amt) >> shift_amt)
223
3.12M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::i64_from_iconst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::i64_from_iconst
224
225
0
        fn zero_value(&mut self, value: Value) -> Option<Value> {
226
0
            let insn = self.def_inst(value);
227
0
            if insn.is_some() {
228
0
                let insn = insn.unwrap();
229
0
                let inst_data = self.lower_ctx.data(insn);
230
0
                match inst_data {
231
                    InstructionData::Unary {
232
                        opcode: Opcode::Splat,
233
0
                        arg,
234
                    } => {
235
0
                        let arg = arg.clone();
236
0
                        return self.zero_value(arg);
237
                    }
238
                    InstructionData::UnaryConst {
239
                        opcode: Opcode::Vconst | Opcode::F128const,
240
0
                        constant_handle,
241
                    } => {
242
0
                        let constant_data =
243
0
                            self.lower_ctx.get_constant_data(*constant_handle).clone();
244
0
                        if constant_data.into_vec().iter().any(|&x| x != 0) {
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::zero_value::{closure#0}
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::zero_value::{closure#0}
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::zero_value::{closure#0}
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::zero_value::{closure#0}
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::zero_value::{closure#0}
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::zero_value::{closure#0}
245
0
                            return None;
246
                        } else {
247
0
                            return Some(value);
248
                        }
249
                    }
250
0
                    InstructionData::UnaryImm { imm, .. } => {
251
0
                        if imm.bits() == 0 {
252
0
                            return Some(value);
253
                        } else {
254
0
                            return None;
255
                        }
256
                    }
257
0
                    InstructionData::UnaryIeee16 { imm, .. } => {
258
0
                        if imm.bits() == 0 {
259
0
                            return Some(value);
260
                        } else {
261
0
                            return None;
262
                        }
263
                    }
264
0
                    InstructionData::UnaryIeee32 { imm, .. } => {
265
0
                        if imm.bits() == 0 {
266
0
                            return Some(value);
267
                        } else {
268
0
                            return None;
269
                        }
270
                    }
271
0
                    InstructionData::UnaryIeee64 { imm, .. } => {
272
0
                        if imm.bits() == 0 {
273
0
                            return Some(value);
274
                        } else {
275
0
                            return None;
276
                        }
277
                    }
278
0
                    _ => None,
279
                }
280
            } else {
281
0
                None
282
            }
283
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::zero_value
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::zero_value
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::zero_value
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::zero_value
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::zero_value
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::zero_value
284
285
        #[inline]
286
0
        fn tls_model(&mut self, _: Type) -> TlsModel {
287
0
            self.backend.flags().tls_model()
288
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model
289
290
        #[inline]
291
0
        fn tls_model_is_elf_gd(&mut self) -> Option<()> {
292
0
            if self.backend.flags().tls_model() == TlsModel::ElfGd {
293
0
                Some(())
294
            } else {
295
0
                None
296
            }
297
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_elf_gd
298
299
        #[inline]
300
0
        fn tls_model_is_macho(&mut self) -> Option<()> {
301
0
            if self.backend.flags().tls_model() == TlsModel::Macho {
302
0
                Some(())
303
            } else {
304
0
                None
305
            }
306
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_macho
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_macho
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_macho
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_macho
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_macho
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_macho
307
308
        #[inline]
309
0
        fn tls_model_is_coff(&mut self) -> Option<()> {
310
0
            if self.backend.flags().tls_model() == TlsModel::Coff {
311
0
                Some(())
312
            } else {
313
0
                None
314
            }
315
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_coff
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_coff
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_coff
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::tls_model_is_coff
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::tls_model_is_coff
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::tls_model_is_coff
316
317
        #[inline]
318
0
        fn preserve_frame_pointers(&mut self) -> Option<()> {
319
0
            if self.backend.flags().preserve_frame_pointers() {
320
0
                Some(())
321
            } else {
322
0
                None
323
            }
324
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::preserve_frame_pointers
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::preserve_frame_pointers
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::preserve_frame_pointers
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::preserve_frame_pointers
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::preserve_frame_pointers
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::preserve_frame_pointers
325
326
        #[inline]
327
0
        fn stack_switch_model(&mut self) -> Option<StackSwitchModel> {
328
0
            Some(self.backend.flags().stack_switch_model())
329
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::stack_switch_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::stack_switch_model
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::stack_switch_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::stack_switch_model
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::stack_switch_model
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::stack_switch_model
330
331
        #[inline]
332
28.9k
        fn func_ref_data(
333
28.9k
            &mut self,
334
28.9k
            func_ref: FuncRef,
335
28.9k
        ) -> (SigRef, ExternalName, RelocDistance, bool) {
336
28.9k
            let funcdata = &self.lower_ctx.dfg().ext_funcs[func_ref];
337
28.9k
            let reloc_distance = if funcdata.colocated {
338
28.9k
                RelocDistance::Near
339
            } else {
340
0
                RelocDistance::Far
341
            };
342
28.9k
            (
343
28.9k
                funcdata.signature,
344
28.9k
                funcdata.name.clone(),
345
28.9k
                reloc_distance,
346
28.9k
                funcdata.patchable,
347
28.9k
            )
348
28.9k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::func_ref_data
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::func_ref_data
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::func_ref_data
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::func_ref_data
Line
Count
Source
332
28.9k
        fn func_ref_data(
333
28.9k
            &mut self,
334
28.9k
            func_ref: FuncRef,
335
28.9k
        ) -> (SigRef, ExternalName, RelocDistance, bool) {
336
28.9k
            let funcdata = &self.lower_ctx.dfg().ext_funcs[func_ref];
337
28.9k
            let reloc_distance = if funcdata.colocated {
338
28.9k
                RelocDistance::Near
339
            } else {
340
0
                RelocDistance::Far
341
            };
342
28.9k
            (
343
28.9k
                funcdata.signature,
344
28.9k
                funcdata.name.clone(),
345
28.9k
                reloc_distance,
346
28.9k
                funcdata.patchable,
347
28.9k
            )
348
28.9k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::func_ref_data
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::func_ref_data
349
350
        #[inline]
351
0
        fn exception_sig(&mut self, et: ExceptionTable) -> SigRef {
352
0
            self.lower_ctx.dfg().exception_tables[et].signature()
353
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::exception_sig
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::exception_sig
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::exception_sig
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::exception_sig
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::exception_sig
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::exception_sig
354
355
        #[inline]
356
0
        fn box_external_name(&mut self, extname: ExternalName) -> BoxExternalName {
357
0
            Box::new(extname)
358
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::box_external_name
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::box_external_name
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::box_external_name
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::box_external_name
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::box_external_name
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::box_external_name
359
360
        #[inline]
361
0
        fn symbol_value_data(
362
0
            &mut self,
363
0
            global_value: GlobalValue,
364
0
        ) -> Option<(ExternalName, RelocDistance, i64)> {
365
0
            let (name, reloc, offset) = self.lower_ctx.symbol_value_data(global_value)?;
366
0
            Some((name.clone(), reloc, offset))
367
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::symbol_value_data
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::symbol_value_data
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::symbol_value_data
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::symbol_value_data
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::symbol_value_data
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::symbol_value_data
368
369
        #[inline]
370
0
        fn u128_from_immediate(&mut self, imm: Immediate) -> Option<u128> {
371
0
            let bytes = self.lower_ctx.get_immediate_data(imm).as_slice();
372
0
            Some(u128::from_le_bytes(bytes.try_into().ok()?))
373
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u128_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u128_from_immediate
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u128_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u128_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u128_from_immediate
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u128_from_immediate
374
375
        #[inline]
376
0
        fn vconst_from_immediate(&mut self, imm: Immediate) -> Option<VCodeConstant> {
377
0
            Some(self.lower_ctx.use_constant(VCodeConstantData::Generated(
378
0
                self.lower_ctx.get_immediate_data(imm).clone(),
379
0
            )))
380
0
        }
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::vconst_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::vconst_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::vconst_from_immediate
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::vconst_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::vconst_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::vconst_from_immediate
381
382
        #[inline]
383
0
        fn vec_mask_from_immediate(&mut self, imm: Immediate) -> Option<VecMask> {
384
0
            let data = self.lower_ctx.get_immediate_data(imm);
385
0
            if data.len() == 16 {
386
0
                Some(Vec::from(data.as_slice()))
387
            } else {
388
0
                None
389
            }
390
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::vec_mask_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::vec_mask_from_immediate
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::vec_mask_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::vec_mask_from_immediate
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::vec_mask_from_immediate
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::vec_mask_from_immediate
391
392
        #[inline]
393
0
        fn u64_from_constant(&mut self, constant: Constant) -> Option<u64> {
394
0
            let bytes = self.lower_ctx.get_constant_data(constant).as_slice();
395
0
            Some(u64::from_le_bytes(bytes.try_into().ok()?))
396
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u64_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u64_from_constant
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u64_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u64_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u64_from_constant
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u64_from_constant
397
398
        #[inline]
399
0
        fn u128_from_constant(&mut self, constant: Constant) -> Option<u128> {
400
0
            let bytes = self.lower_ctx.get_constant_data(constant).as_slice();
401
0
            Some(u128::from_le_bytes(bytes.try_into().ok()?))
402
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u128_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u128_from_constant
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u128_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::u128_from_constant
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::u128_from_constant
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::u128_from_constant
403
404
        #[inline]
405
26.7k
        fn emit_u64_le_const(&mut self, value: u64) -> VCodeConstant {
406
26.7k
            let data = VCodeConstantData::U64(value.to_le_bytes());
407
26.7k
            self.lower_ctx.use_constant(data)
408
26.7k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u64_le_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u64_le_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u64_le_const
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u64_le_const
Line
Count
Source
405
26.7k
        fn emit_u64_le_const(&mut self, value: u64) -> VCodeConstant {
406
26.7k
            let data = VCodeConstantData::U64(value.to_le_bytes());
407
26.7k
            self.lower_ctx.use_constant(data)
408
26.7k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u64_le_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u64_le_const
409
410
        #[inline]
411
0
        fn emit_u64_be_const(&mut self, value: u64) -> VCodeConstant {
412
0
            let data = VCodeConstantData::U64(value.to_be_bytes());
413
0
            self.lower_ctx.use_constant(data)
414
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u64_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u64_be_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u64_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u64_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u64_be_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u64_be_const
415
416
        #[inline]
417
43.9k
        fn emit_u128_le_const(&mut self, value: u128) -> VCodeConstant {
418
43.9k
            let data = VCodeConstantData::Generated(value.to_le_bytes().as_slice().into());
419
43.9k
            self.lower_ctx.use_constant(data)
420
43.9k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u128_le_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u128_le_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u128_le_const
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u128_le_const
Line
Count
Source
417
43.9k
        fn emit_u128_le_const(&mut self, value: u128) -> VCodeConstant {
418
43.9k
            let data = VCodeConstantData::Generated(value.to_le_bytes().as_slice().into());
419
43.9k
            self.lower_ctx.use_constant(data)
420
43.9k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u128_le_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u128_le_const
421
422
        #[inline]
423
0
        fn emit_u128_be_const(&mut self, value: u128) -> VCodeConstant {
424
0
            let data = VCodeConstantData::Generated(value.to_be_bytes().as_slice().into());
425
0
            self.lower_ctx.use_constant(data)
426
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u128_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u128_be_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u128_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::emit_u128_be_const
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::emit_u128_be_const
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::emit_u128_be_const
427
428
        #[inline]
429
0
        fn const_to_vconst(&mut self, constant: Constant) -> VCodeConstant {
430
0
            self.lower_ctx.use_constant(VCodeConstantData::Pool(
431
0
                constant,
432
0
                self.lower_ctx.get_constant_data(constant).clone(),
433
0
            ))
434
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::const_to_vconst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::const_to_vconst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::const_to_vconst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::const_to_vconst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::const_to_vconst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::const_to_vconst
435
436
0
        fn only_writable_reg(&mut self, regs: WritableValueRegs) -> Option<WritableReg> {
437
0
            regs.only_reg()
438
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::only_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::only_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::only_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::only_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::only_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::only_writable_reg
439
440
0
        fn writable_regs_get(&mut self, regs: WritableValueRegs, idx: usize) -> WritableReg {
441
0
            regs.regs()[idx]
442
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_regs_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_regs_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_regs_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::writable_regs_get
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::writable_regs_get
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::writable_regs_get
443
444
445k
        fn abi_sig(&mut self, sig_ref: SigRef) -> Sig {
445
445k
            self.lower_ctx.sigs().abi_sig_for_sig_ref(sig_ref)
446
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_sig
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_sig
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_sig
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_sig
Line
Count
Source
444
445k
        fn abi_sig(&mut self, sig_ref: SigRef) -> Sig {
445
445k
            self.lower_ctx.sigs().abi_sig_for_sig_ref(sig_ref)
446
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_sig
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_sig
447
448
0
        fn abi_num_args(&mut self, abi: Sig) -> usize {
449
0
            self.lower_ctx.sigs().num_args(abi)
450
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_num_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_num_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_num_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_num_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_num_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_num_args
451
452
0
        fn abi_get_arg(&mut self, abi: Sig, idx: usize) -> ABIArg {
453
0
            self.lower_ctx.sigs().get_arg(abi, idx)
454
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_get_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_get_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_get_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_get_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_get_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_get_arg
455
456
0
        fn abi_num_rets(&mut self, abi: Sig) -> usize {
457
0
            self.lower_ctx.sigs().num_rets(abi)
458
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_num_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_num_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_num_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_num_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_num_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_num_rets
459
460
0
        fn abi_get_ret(&mut self, abi: Sig, idx: usize) -> ABIArg {
461
0
            self.lower_ctx.sigs().get_ret(abi, idx)
462
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_get_ret
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_get_ret
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_get_ret
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_get_ret
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_get_ret
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_get_ret
463
464
0
        fn abi_ret_arg(&mut self, abi: Sig) -> Option<ABIArg> {
465
0
            self.lower_ctx.sigs().get_ret_arg(abi)
466
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_ret_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_ret_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_ret_arg
467
468
0
        fn abi_no_ret_arg(&mut self, abi: Sig) -> Option<()> {
469
0
            if let Some(_) = self.lower_ctx.sigs().get_ret_arg(abi) {
470
0
                None
471
            } else {
472
0
                Some(())
473
            }
474
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_no_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_no_ret_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_no_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_no_ret_arg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_no_ret_arg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_no_ret_arg
475
476
0
        fn abi_arg_only_slot(&mut self, arg: &ABIArg) -> Option<ABIArgSlot> {
477
0
            match arg {
478
0
                &ABIArg::Slots { ref slots, .. } => {
479
0
                    if slots.len() == 1 {
480
0
                        Some(slots[0])
481
                    } else {
482
0
                        None
483
                    }
484
                }
485
0
                _ => None,
486
            }
487
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_arg_only_slot
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_arg_only_slot
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_arg_only_slot
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_arg_only_slot
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_arg_only_slot
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_arg_only_slot
488
489
0
        fn abi_arg_implicit_pointer(&mut self, arg: &ABIArg) -> Option<(ABIArgSlot, i64, Type)> {
490
0
            match arg {
491
                &ABIArg::ImplicitPtrArg {
492
0
                    pointer,
493
0
                    offset,
494
0
                    ty,
495
                    ..
496
0
                } => Some((pointer, offset, ty)),
497
0
                _ => None,
498
            }
499
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_arg_implicit_pointer
500
501
0
        fn abi_unwrap_ret_area_ptr(&mut self) -> Reg {
502
0
            self.lower_ctx.abi().ret_area_ptr().unwrap()
503
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_unwrap_ret_area_ptr
504
505
0
        fn abi_stackslot_addr(
506
0
            &mut self,
507
0
            dst: WritableReg,
508
0
            stack_slot: StackSlot,
509
0
            offset: Offset32,
510
0
        ) -> MInst {
511
0
            let offset = u32::try_from(i32::from(offset)).unwrap();
512
0
            self.lower_ctx
513
0
                .abi()
514
0
                .sized_stackslot_addr(stack_slot, offset, dst)
515
0
                .into()
516
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_stackslot_addr
517
518
0
        fn abi_stackslot_offset_into_slot_region(
519
0
            &mut self,
520
0
            stack_slot: StackSlot,
521
0
            offset1: Offset32,
522
0
            offset2: Offset32,
523
0
        ) -> i32 {
524
0
            let offset1 = i32::from(offset1);
525
0
            let offset2 = i32::from(offset2);
526
0
            i32::try_from(self.lower_ctx.abi().sized_stackslot_offset(stack_slot))
527
0
                .expect("Stack slot region cannot be larger than 2GiB")
528
0
                .checked_add(offset1)
529
0
                .expect("Stack slot region cannot be larger than 2GiB")
530
0
                .checked_add(offset2)
531
0
                .expect("Stack slot region cannot be larger than 2GiB")
532
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_stackslot_offset_into_slot_region
533
534
0
        fn abi_dynamic_stackslot_addr(
535
0
            &mut self,
536
0
            dst: WritableReg,
537
0
            stack_slot: DynamicStackSlot,
538
0
        ) -> MInst {
539
0
            assert!(
540
0
                self.lower_ctx
541
0
                    .abi()
542
0
                    .dynamic_stackslot_offsets()
543
0
                    .is_valid(stack_slot)
544
            );
545
0
            self.lower_ctx
546
0
                .abi()
547
0
                .dynamic_stackslot_addr(stack_slot, dst)
548
0
                .into()
549
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::abi_dynamic_stackslot_addr
550
551
0
        fn real_reg_to_reg(&mut self, reg: RealReg) -> Reg {
552
0
            Reg::from(reg)
553
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::real_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::real_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::real_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::real_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::real_reg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::real_reg_to_reg
554
555
0
        fn real_reg_to_writable_reg(&mut self, reg: RealReg) -> WritableReg {
556
0
            Writable::from_reg(Reg::from(reg))
557
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::real_reg_to_writable_reg
558
559
1.95M
        fn is_sinkable_inst(&mut self, val: Value) -> Option<Inst> {
560
1.95M
            let input = self.lower_ctx.get_value_as_source_or_const(val);
561
562
1.95M
            if let InputSourceInst::UniqueUse(inst, _) = input.inst {
563
412k
                Some(inst)
564
            } else {
565
1.54M
                None
566
            }
567
1.95M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::is_sinkable_inst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::is_sinkable_inst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::is_sinkable_inst
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::is_sinkable_inst
Line
Count
Source
559
1.95M
        fn is_sinkable_inst(&mut self, val: Value) -> Option<Inst> {
560
1.95M
            let input = self.lower_ctx.get_value_as_source_or_const(val);
561
562
1.95M
            if let InputSourceInst::UniqueUse(inst, _) = input.inst {
563
412k
                Some(inst)
564
            } else {
565
1.54M
                None
566
            }
567
1.95M
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::is_sinkable_inst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::is_sinkable_inst
568
569
        #[inline]
570
0
        fn sink_inst(&mut self, inst: Inst) {
571
0
            self.lower_ctx.sink_inst(inst);
572
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::sink_inst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::sink_inst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::sink_inst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::sink_inst
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::sink_inst
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::sink_inst
573
574
        #[inline]
575
77
        fn maybe_uextend(&mut self, value: Value) -> Option<Value> {
576
77
            if let Some(def_inst) = self.def_inst(value) {
577
                if let InstructionData::Unary {
578
                    opcode: Opcode::Uextend,
579
0
                    arg,
580
76
                } = self.lower_ctx.data(def_inst)
581
                {
582
0
                    return Some(*arg);
583
76
                }
584
1
            }
585
586
77
            Some(value)
587
77
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::maybe_uextend
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::maybe_uextend
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::maybe_uextend
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::maybe_uextend
Line
Count
Source
575
77
        fn maybe_uextend(&mut self, value: Value) -> Option<Value> {
576
77
            if let Some(def_inst) = self.def_inst(value) {
577
                if let InstructionData::Unary {
578
                    opcode: Opcode::Uextend,
579
0
                    arg,
580
76
                } = self.lower_ctx.data(def_inst)
581
                {
582
0
                    return Some(*arg);
583
76
                }
584
1
            }
585
586
77
            Some(value)
587
77
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::maybe_uextend
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::maybe_uextend
588
589
        #[inline]
590
298
        fn uimm8(&mut self, x: Imm64) -> Option<u8> {
591
298
            let x64: i64 = x.into();
592
298
            let x8: u8 = x64.try_into().ok()?;
593
298
            Some(x8)
594
298
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::uimm8
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::uimm8
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::uimm8
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::uimm8
Line
Count
Source
590
298
        fn uimm8(&mut self, x: Imm64) -> Option<u8> {
591
298
            let x64: i64 = x.into();
592
298
            let x8: u8 = x64.try_into().ok()?;
593
298
            Some(x8)
594
298
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::uimm8
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::uimm8
595
596
        #[inline]
597
0
        fn preg_to_reg(&mut self, preg: PReg) -> Reg {
598
0
            preg.into()
599
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::preg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::preg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::preg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::preg_to_reg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::preg_to_reg
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::preg_to_reg
600
601
        #[inline]
602
0
        fn gen_move(&mut self, ty: Type, dst: WritableReg, src: Reg) -> MInst {
603
0
            <$inst>::gen_move(dst, src, ty).into()
604
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_move
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_move
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_move
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_move
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_move
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_move
605
606
        /// Generate the return instruction.
607
189k
        fn gen_return(&mut self, rets: &ValueRegsVec) {
608
189k
            self.lower_ctx.gen_return(rets);
609
189k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_return
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_return
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_return
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_return
Line
Count
Source
607
189k
        fn gen_return(&mut self, rets: &ValueRegsVec) {
608
189k
            self.lower_ctx.gen_return(rets);
609
189k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_return
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_return
610
611
445k
        fn gen_call_output(&mut self, sig_ref: SigRef) -> ValueRegsVec {
612
445k
            self.lower_ctx.gen_call_output_from_sig_ref(sig_ref)
613
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_output
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_output
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_output
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_output
Line
Count
Source
611
445k
        fn gen_call_output(&mut self, sig_ref: SigRef) -> ValueRegsVec {
612
445k
            self.lower_ctx.gen_call_output_from_sig_ref(sig_ref)
613
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_output
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_output
614
615
445k
        fn gen_call_args(&mut self, sig: Sig, inputs: &ValueRegsVec) -> CallArgList {
616
445k
            self.lower_ctx.gen_call_args(sig, inputs)
617
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_args
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_args
Line
Count
Source
615
445k
        fn gen_call_args(&mut self, sig: Sig, inputs: &ValueRegsVec) -> CallArgList {
616
445k
            self.lower_ctx.gen_call_args(sig, inputs)
617
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_args
618
619
0
        fn gen_return_call_args(&mut self, sig: Sig, inputs: &ValueRegsVec) -> CallArgList {
620
0
            self.lower_ctx.gen_return_call_args(sig, inputs)
621
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_return_call_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_return_call_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_return_call_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_return_call_args
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_return_call_args
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_return_call_args
622
623
445k
        fn gen_call_rets(&mut self, sig: Sig, outputs: &ValueRegsVec) -> CallRetList {
624
445k
            self.lower_ctx.gen_call_rets(sig, &outputs)
625
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_rets
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_call_rets
Line
Count
Source
623
445k
        fn gen_call_rets(&mut self, sig: Sig, outputs: &ValueRegsVec) -> CallRetList {
624
445k
            self.lower_ctx.gen_call_rets(sig, &outputs)
625
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_call_rets
626
627
0
        fn gen_try_call_rets(&mut self, sig: Sig) -> CallRetList {
628
0
            self.lower_ctx.gen_try_call_rets(sig)
629
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_try_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_try_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_try_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_try_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_try_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_try_call_rets
630
631
0
        fn gen_patchable_call_rets(&mut self) -> CallRetList {
632
0
            smallvec::smallvec![]
633
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_patchable_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_patchable_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_patchable_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::gen_patchable_call_rets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::gen_patchable_call_rets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::gen_patchable_call_rets
634
635
445k
        fn try_call_none(&mut self) -> OptionTryCallInfo {
636
445k
            None
637
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::try_call_none
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::try_call_none
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::try_call_none
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::try_call_none
Line
Count
Source
635
445k
        fn try_call_none(&mut self) -> OptionTryCallInfo {
636
445k
            None
637
445k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::try_call_none
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::try_call_none
638
639
0
        fn try_call_info(
640
0
            &mut self,
641
0
            et: ExceptionTable,
642
0
            labels: &MachLabelSlice,
643
0
        ) -> OptionTryCallInfo {
644
0
            let mut exception_handlers = vec![];
645
0
            let mut labels = labels.iter().cloned();
646
0
            for item in self.lower_ctx.dfg().exception_tables[et].clone().items() {
647
0
                match item {
648
0
                    crate::ir::ExceptionTableItem::Tag(tag, _) => {
649
0
                        exception_handlers.push(crate::machinst::abi::TryCallHandler::Tag(
650
0
                            tag,
651
0
                            labels.next().unwrap(),
652
0
                        ));
653
0
                    }
654
0
                    crate::ir::ExceptionTableItem::Default(_) => {
655
0
                        exception_handlers.push(crate::machinst::abi::TryCallHandler::Default(
656
0
                            labels.next().unwrap(),
657
0
                        ));
658
0
                    }
659
0
                    crate::ir::ExceptionTableItem::Context(ctx) => {
660
0
                        let reg = self.put_in_reg(ctx);
661
0
                        exception_handlers.push(crate::machinst::abi::TryCallHandler::Context(reg));
662
0
                    }
663
                }
664
            }
665
666
0
            let continuation = labels.next().unwrap();
667
0
            assert_eq!(labels.next(), None);
668
669
0
            let exception_handlers = exception_handlers.into_boxed_slice();
670
671
0
            Some(TryCallInfo {
672
0
                continuation,
673
0
                exception_handlers,
674
0
            })
675
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::try_call_info
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::try_call_info
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::try_call_info
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::try_call_info
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::try_call_info
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::try_call_info
676
677
        /// Same as `shuffle32_from_imm`, but for 64-bit lane shuffles.
678
0
        fn shuffle64_from_imm(&mut self, imm: Immediate) -> Option<(u8, u8)> {
679
            use crate::machinst::isle::shuffle_imm_as_le_lane_idx;
680
681
0
            let bytes = self.lower_ctx.get_immediate_data(imm).as_slice();
682
            Some((
683
0
                shuffle_imm_as_le_lane_idx(8, &bytes[0..8])?,
684
0
                shuffle_imm_as_le_lane_idx(8, &bytes[8..16])?,
685
            ))
686
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle64_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle64_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle64_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle64_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle64_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle64_from_imm
687
688
        /// Attempts to interpret the shuffle immediate `imm` as a shuffle of
689
        /// 32-bit lanes, returning four integers, each of which is less than 8,
690
        /// which represents a permutation of 32-bit lanes as specified by
691
        /// `imm`.
692
        ///
693
        /// For example the shuffle immediate
694
        ///
695
        /// `0 1 2 3 8 9 10 11 16 17 18 19 24 25 26 27`
696
        ///
697
        /// would return `Some((0, 2, 4, 6))`.
698
0
        fn shuffle32_from_imm(&mut self, imm: Immediate) -> Option<(u8, u8, u8, u8)> {
699
            use crate::machinst::isle::shuffle_imm_as_le_lane_idx;
700
701
0
            let bytes = self.lower_ctx.get_immediate_data(imm).as_slice();
702
            Some((
703
0
                shuffle_imm_as_le_lane_idx(4, &bytes[0..4])?,
704
0
                shuffle_imm_as_le_lane_idx(4, &bytes[4..8])?,
705
0
                shuffle_imm_as_le_lane_idx(4, &bytes[8..12])?,
706
0
                shuffle_imm_as_le_lane_idx(4, &bytes[12..16])?,
707
            ))
708
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle32_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle32_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle32_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle32_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle32_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle32_from_imm
709
710
        /// Same as `shuffle32_from_imm`, but for 16-bit lane shuffles.
711
0
        fn shuffle16_from_imm(
712
0
            &mut self,
713
0
            imm: Immediate,
714
0
        ) -> Option<(u8, u8, u8, u8, u8, u8, u8, u8)> {
715
            use crate::machinst::isle::shuffle_imm_as_le_lane_idx;
716
0
            let bytes = self.lower_ctx.get_immediate_data(imm).as_slice();
717
            Some((
718
0
                shuffle_imm_as_le_lane_idx(2, &bytes[0..2])?,
719
0
                shuffle_imm_as_le_lane_idx(2, &bytes[2..4])?,
720
0
                shuffle_imm_as_le_lane_idx(2, &bytes[4..6])?,
721
0
                shuffle_imm_as_le_lane_idx(2, &bytes[6..8])?,
722
0
                shuffle_imm_as_le_lane_idx(2, &bytes[8..10])?,
723
0
                shuffle_imm_as_le_lane_idx(2, &bytes[10..12])?,
724
0
                shuffle_imm_as_le_lane_idx(2, &bytes[12..14])?,
725
0
                shuffle_imm_as_le_lane_idx(2, &bytes[14..16])?,
726
            ))
727
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle16_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle16_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle16_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::shuffle16_from_imm
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::shuffle16_from_imm
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::shuffle16_from_imm
728
729
129
        fn safe_divisor_from_imm64(&mut self, ty: Type, val: Imm64) -> Option<u64> {
730
129
            let minus_one = if ty.bytes() == 8 {
731
78
                -1
732
            } else {
733
51
                (1 << (ty.bytes() * 8)) - 1
734
            };
735
129
            let bits = val.bits() & minus_one;
736
129
            if bits == 0 || bits == minus_one {
737
129
                None
738
            } else {
739
0
                Some(bits as u64)
740
            }
741
129
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
Line
Count
Source
729
129
        fn safe_divisor_from_imm64(&mut self, ty: Type, val: Imm64) -> Option<u64> {
730
129
            let minus_one = if ty.bytes() == 8 {
731
78
                -1
732
            } else {
733
51
                (1 << (ty.bytes() * 8)) - 1
734
            };
735
129
            let bits = val.bits() & minus_one;
736
129
            if bits == 0 || bits == minus_one {
737
129
                None
738
            } else {
739
0
                Some(bits as u64)
740
            }
741
129
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::safe_divisor_from_imm64
742
743
540k
        fn single_target(&mut self, targets: &MachLabelSlice) -> Option<MachLabel> {
744
540k
            if targets.len() == 1 {
745
540k
                Some(targets[0])
746
            } else {
747
0
                None
748
            }
749
540k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::single_target
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::single_target
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::single_target
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::single_target
Line
Count
Source
743
540k
        fn single_target(&mut self, targets: &MachLabelSlice) -> Option<MachLabel> {
744
540k
            if targets.len() == 1 {
745
540k
                Some(targets[0])
746
            } else {
747
0
                None
748
            }
749
540k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::single_target
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::single_target
750
751
344k
        fn two_targets(&mut self, targets: &MachLabelSlice) -> Option<(MachLabel, MachLabel)> {
752
344k
            if targets.len() == 2 {
753
344k
                Some((targets[0], targets[1]))
754
            } else {
755
0
                None
756
            }
757
344k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::two_targets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::two_targets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::two_targets
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::two_targets
Line
Count
Source
751
344k
        fn two_targets(&mut self, targets: &MachLabelSlice) -> Option<(MachLabel, MachLabel)> {
752
344k
            if targets.len() == 2 {
753
344k
                Some((targets[0], targets[1]))
754
            } else {
755
0
                None
756
            }
757
344k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::two_targets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::two_targets
758
759
307
        fn jump_table_targets(
760
307
            &mut self,
761
307
            targets: &MachLabelSlice,
762
307
        ) -> Option<(MachLabel, BoxVecMachLabel)> {
763
            use alloc::boxed::Box;
764
307
            if targets.is_empty() {
765
0
                return None;
766
307
            }
767
768
307
            let default_label = targets[0];
769
307
            let jt_targets = Box::new(targets[1..].to_vec());
770
307
            Some((default_label, jt_targets))
771
307
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::jump_table_targets
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::jump_table_targets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::jump_table_targets
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::jump_table_targets
Line
Count
Source
759
307
        fn jump_table_targets(
760
307
            &mut self,
761
307
            targets: &MachLabelSlice,
762
307
        ) -> Option<(MachLabel, BoxVecMachLabel)> {
763
            use alloc::boxed::Box;
764
307
            if targets.is_empty() {
765
0
                return None;
766
307
            }
767
768
307
            let default_label = targets[0];
769
307
            let jt_targets = Box::new(targets[1..].to_vec());
770
307
            Some((default_label, jt_targets))
771
307
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::jump_table_targets
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::jump_table_targets
772
773
307
        fn jump_table_size(&mut self, targets: &BoxVecMachLabel) -> u32 {
774
307
            targets.len() as u32
775
307
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::jump_table_size
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::jump_table_size
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::jump_table_size
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::jump_table_size
Line
Count
Source
773
307
        fn jump_table_size(&mut self, targets: &BoxVecMachLabel) -> u32 {
774
307
            targets.len() as u32
775
307
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::jump_table_size
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::jump_table_size
776
777
528
        fn add_range_fact(&mut self, reg: Reg, bits: u16, min: u64, max: u64) -> Reg {
778
528
            self.lower_ctx.add_range_fact(reg, bits, min, max);
779
528
            reg
780
528
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::add_range_fact
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::add_range_fact
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::add_range_fact
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::add_range_fact
Line
Count
Source
777
528
        fn add_range_fact(&mut self, reg: Reg, bits: u16, min: u64, max: u64) -> Reg {
778
528
            self.lower_ctx.add_range_fact(reg, bits, min, max);
779
528
            reg
780
528
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::add_range_fact
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::add_range_fact
781
782
4.55k
        fn value_is_unused(&mut self, val: Value) -> bool {
783
4.55k
            self.lower_ctx.value_is_unused(val)
784
4.55k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_is_unused
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_is_unused
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_is_unused
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::value_is_unused
Line
Count
Source
782
4.55k
        fn value_is_unused(&mut self, val: Value) -> bool {
783
4.55k
            self.lower_ctx.value_is_unused(val)
784
4.55k
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::value_is_unused
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::value_is_unused
785
786
0
        fn block_exn_successor_label(&mut self, block: &Block, exn_succ: u64) -> MachLabel {
787
            // The first N successors are the exceptional edges, and
788
            // the normal return is last; so the `exn_succ`'th
789
            // exceptional edge is just the `exn_succ`'th edge overall.
790
0
            let succ = usize::try_from(exn_succ).unwrap();
791
0
            self.lower_ctx.block_successor_label(*block, succ)
792
0
        }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::block_exn_successor_label
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::block_exn_successor_label
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::block_exn_successor_label
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend> as cranelift_codegen::isa::x64::lower::isle::generated_code::Context>::block_exn_successor_label
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend> as cranelift_codegen::isa::aarch64::lower::isle::generated_code::Context>::block_exn_successor_label
Unexecuted instantiation: <cranelift_codegen::isa::riscv64::lower::isle::RV64IsleContext<cranelift_codegen::isa::riscv64::lower::isle::generated_code::MInst, cranelift_codegen::isa::riscv64::Riscv64Backend> as cranelift_codegen::isa::riscv64::lower::isle::generated_code::Context>::block_exn_successor_label
793
    };
794
}
795
796
/// Returns the `size`-byte lane referred to by the shuffle immediate specified
797
/// in `bytes`.
798
///
799
/// This helper is used by `shuffleNN_from_imm` above and is used to interpret a
800
/// byte-based shuffle as a higher-level shuffle of bigger lanes. This will see
801
/// if the `bytes` specified, which must have `size` length, specifies a lane in
802
/// vectors aligned to a `size`-byte boundary.
803
///
804
/// Returns `None` if `bytes` doesn't specify a `size`-byte lane aligned
805
/// appropriately, or returns `Some(n)` where `n` is the index of the lane being
806
/// shuffled.
807
0
pub fn shuffle_imm_as_le_lane_idx(size: u8, bytes: &[u8]) -> Option<u8> {
808
0
    assert_eq!(bytes.len(), usize::from(size));
809
810
    // The first index in `bytes` must be aligned to a `size` boundary for the
811
    // bytes to be a valid specifier for a lane of `size` bytes.
812
0
    if bytes[0] % size != 0 {
813
0
        return None;
814
0
    }
815
816
    // Afterwards the bytes must all be one larger than the prior to specify a
817
    // contiguous sequence of bytes that's being shuffled. Basically `bytes`
818
    // must refer to the entire `size`-byte lane, in little-endian order.
819
0
    for i in 0..size - 1 {
820
0
        let idx = usize::from(i);
821
0
        if bytes[idx] + 1 != bytes[idx + 1] {
822
0
            return None;
823
0
        }
824
    }
825
826
    // All of the `bytes` are in-order, meaning that this is a valid shuffle
827
    // immediate to specify a lane of `size` bytes. The index, when viewed as
828
    // `size`-byte immediates, will be the first byte divided by the byte size.
829
0
    Some(bytes[0] / size)
830
0
}
Unexecuted instantiation: cranelift_codegen::machinst::isle::shuffle_imm_as_le_lane_idx
Unexecuted instantiation: cranelift_codegen::machinst::isle::shuffle_imm_as_le_lane_idx
831
832
/// This structure is used to implement the ISLE-generated `Context` trait and
833
/// internally has a temporary reference to a machinst `LowerCtx`.
834
pub(crate) struct IsleContext<'a, 'b, I, B>
835
where
836
    I: VCodeInst,
837
    B: LowerBackend,
838
{
839
    pub lower_ctx: &'a mut Lower<'b, I>,
840
    pub backend: &'a B,
841
}
842
843
impl<I, B> IsleContext<'_, '_, I, B>
844
where
845
    I: VCodeInst,
846
    B: LowerBackend,
847
{
848
14.6M
    pub(crate) fn dfg(&self) -> &crate::ir::DataFlowGraph {
849
14.6M
        &self.lower_ctx.f.dfg
850
14.6M
    }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend>>::dfg
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend>>::dfg
<cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::x64::lower::isle::generated_code::MInst, cranelift_codegen::isa::x64::X64Backend>>::dfg
Line
Count
Source
848
14.6M
    pub(crate) fn dfg(&self) -> &crate::ir::DataFlowGraph {
849
14.6M
        &self.lower_ctx.f.dfg
850
14.6M
    }
Unexecuted instantiation: <cranelift_codegen::machinst::isle::IsleContext<cranelift_codegen::isa::aarch64::lower::isle::generated_code::MInst, cranelift_codegen::isa::aarch64::AArch64Backend>>::dfg
851
}