luaur_code_gen/records/
call_argument.rs1use crate::enums::size_x_64::SizeX64;
2use crate::records::ir_op::IrOp;
3use crate::records::operand_x_64::OperandX64;
4
5#[derive(Debug, Clone)]
6#[repr(C)]
7pub struct CallArgument {
8 pub target_size: SizeX64,
9 pub source: OperandX64,
10 pub source_op: IrOp,
11 pub target: OperandX64,
12 pub candidate: bool,
13}
14
15impl Default for CallArgument {
16 fn default() -> Self {
17 Self {
18 target_size: SizeX64::none,
19 source: OperandX64 {
20 cat: crate::enums::category_x_64::CategoryX64::reg,
21 index: crate::records::register_x_64::RegisterX64::noreg,
22 base: crate::records::register_x_64::RegisterX64::noreg,
23 memSize: SizeX64::none,
24 scale: 1,
25 imm: 0,
26 },
27 source_op: IrOp::default(),
28 target: OperandX64 {
29 cat: crate::enums::category_x_64::CategoryX64::reg,
30 index: crate::records::register_x_64::RegisterX64::noreg,
31 base: crate::records::register_x_64::RegisterX64::noreg,
32 memSize: SizeX64::none,
33 scale: 1,
34 imm: 0,
35 },
36 candidate: true,
37 }
38 }
39}