/src/wasmtime/cranelift/codegen/src/isa/s390x/lower.rs
Line | Count | Source |
1 | | //! Lowering rules for S390x. |
2 | | |
3 | | use crate::ir::Inst as IRInst; |
4 | | use crate::isa::s390x::S390xBackend; |
5 | | use crate::isa::s390x::inst::Inst; |
6 | | use crate::machinst::{InstOutput, Lower, LowerBackend, MachLabel}; |
7 | | |
8 | | pub mod isle; |
9 | | |
10 | | //============================================================================= |
11 | | // Lowering-backend trait implementation. |
12 | | |
13 | | impl LowerBackend for S390xBackend { |
14 | | type MInst = Inst; |
15 | | |
16 | 1.01M | fn lower(&self, ctx: &mut Lower<Inst>, ir_inst: IRInst) -> Option<InstOutput> { |
17 | 1.01M | isle::lower(ctx, self, ir_inst) |
18 | 1.01M | } |
19 | | |
20 | 88.0k | fn lower_branch( |
21 | 88.0k | &self, |
22 | 88.0k | ctx: &mut Lower<Inst>, |
23 | 88.0k | ir_inst: IRInst, |
24 | 88.0k | targets: &[MachLabel], |
25 | 88.0k | ) -> Option<()> { |
26 | 88.0k | isle::lower_branch(ctx, self, ir_inst, targets) |
27 | 88.0k | } |
28 | | } |