Skip to main content

luaur_code_gen/methods/
scoped_reg_x_64_alloc.rs

1use 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}