Skip to main content

luaur_code_gen/functions/
same_underlying_register.rs

1use crate::enums::size_x_64::SizeX64;
2use crate::records::register_x_64::RegisterX64;
3
4pub fn same_underlying_register(a: RegisterX64, b: RegisterX64) -> bool {
5    let underlying_size_a = if a.size() == SizeX64::xmmword {
6        SizeX64::xmmword
7    } else {
8        SizeX64::qword
9    };
10
11    let underlying_size_b = if b.size() == SizeX64::xmmword {
12        SizeX64::xmmword
13    } else {
14        SizeX64::qword
15    };
16
17    underlying_size_a == underlying_size_b && a.index() == b.index()
18}