Generate a reload (fill).
(&self, to_reg: Writable<RealReg>, from_slot: SpillSlot)
| 2400 | |
| 2401 | /// Generate a reload (fill). |
| 2402 | pub fn gen_reload(&self, to_reg: Writable<RealReg>, from_slot: SpillSlot) -> M::I { |
| 2403 | let ty = M::I::canonical_type_for_rc(to_reg.to_reg().class()); |
| 2404 | debug_assert_eq!(<M>::I::rc_for_type(ty).unwrap().1, &[ty]); |
| 2405 | |
| 2406 | let sp_off = self.get_spillslot_offset(from_slot); |
| 2407 | trace!("gen_reload: {to_reg:?} from slot {from_slot:?} at offset {sp_off}"); |
| 2408 | |
| 2409 | let from = StackAMode::Slot(sp_off); |
| 2410 | <M>::gen_load_stack(from, to_reg.map(Reg::from), ty) |
| 2411 | } |
| 2412 | |
| 2413 | /// Provide metadata to be emitted alongside machine code. |
| 2414 | /// |