luaur_code_gen/methods/
scoped_reg_x_64_alloc.rs1use crate::enums::size_x_64::SizeX64;
2use crate::macros::codegen_assert::CODEGEN_ASSERT;
3use crate::records::ir_data::k_invalid_inst_idx;
4use crate::records::ir_reg_alloc_x_64::IrRegAllocX64;
5use crate::records::register_x_64::RegisterX64;
6use crate::records::scoped_reg_x_64::ScopedRegX64;
7
8impl ScopedRegX64 {
9 pub fn alloc(&mut self, size: SizeX64) {
10 CODEGEN_ASSERT!(self.reg == RegisterX64::noreg);
11 let owner = unsafe { &mut *self.owner };
12 self.reg = owner.alloc_reg(size, k_invalid_inst_idx);
13 }
14}