max ops and max size for x64 inst

This commit is contained in:
Nikita Smith
2026-02-20 18:06:00 -08:00
parent cfe3cde396
commit 6ece754edd
2 changed files with 34 additions and 0 deletions
+32
View File
@@ -459,6 +459,38 @@ byte_size_from_arch(Arch arch)
return bit_size_from_arch(arch) / 8; return bit_size_from_arch(arch) / 8;
} }
internal U64
max_ops_per_instruction_from_arch(Arch arch)
{
U64 max_ops = 0;
switch (arch)
{
case Arch_Null: break;
case Arch_x64: max_ops = 1; break;
case Arch_x86:
case Arch_arm32:
case Arch_arm64: NotImplemented; break;
default: InvalidPath;
}
return max_ops;
}
internal U64
min_instruction_size_from_arch(Arch arch)
{
U64 min_instruction_size = 0;
switch(arch)
{
case Arch_Null: break;
case Arch_x64: min_instruction_size = 1; break;
case Arch_x86:
case Arch_arm32:
case Arch_arm64: NotImplemented; break;
default: InvalidPath;
}
return min_instruction_size;
}
internal U64 internal U64
max_instruction_size_from_arch(Arch arch) max_instruction_size_from_arch(Arch arch)
{ {
+2
View File
@@ -1035,6 +1035,8 @@ internal B32 txt_rng_contains(TxtRng r, TxtPt pt);
internal U64 bit_size_from_arch(Arch arch); internal U64 bit_size_from_arch(Arch arch);
internal U64 byte_size_from_arch(Arch arch); internal U64 byte_size_from_arch(Arch arch);
internal U64 max_ops_per_instruction_from_arch(Arch arch);
internal U64 min_instruction_size_from_arch(Arch arch);
internal U64 max_instruction_size_from_arch(Arch arch); internal U64 max_instruction_size_from_arch(Arch arch);
//////////////////////////////// ////////////////////////////////