MCPcopy Create free account
hub / github.com/IntegralPilot/rustc_codegen_jvm / optimise

Function optimise

src/lower2/optimise2.rs:43–75  ·  view source on GitHub ↗
(
    instructions: Vec<Instruction>,
    max_locals: u16,
    fixed_prefix_slots: u16,
)

Source from the content-addressed store, hash-verified

41 Float,
42 Double,
43 Reference,
44}
45
46#[derive(Clone, Copy, Debug)]
47struct LocalRef {
48 index: u16,
49 width: u16,
50}
51
52#[derive(Clone, Debug)]
53struct LiveRange {
54 width: u16,
55 first: usize,
56 last: usize,
57}
58
59#[derive(Debug)]
60struct LocalLiveness {
61 widths: Vec<u16>,
62 uses: Vec<Option<u16>>,
63 defs: Vec<Option<u16>>,
64 live_in: LocalBitMatrix,
65 live_out: LocalBitMatrix,
66}
67
68#[derive(Debug, Default)]
69enum CompactSuccessors {
70 #[default]
71 None,
72 One(usize),
73 Two(usize, usize),
74 Many(Vec<usize>),
75}
76
77impl CompactSuccessors {
78 fn push(&mut self, successor: usize) {

Callers 2

translateMethod · 0.85

Tested by

no test coverage detected