diff options
| author | iximeow <me@iximeow.net> | 2026-05-13 04:30:27 +0000 |
|---|---|---|
| committer | iximeow <me@iximeow.net> | 2026-05-13 04:30:27 +0000 |
| commit | 89549f17a48236b890f4af254e75c379455a00f1 (patch) | |
| tree | ecbbb3f6d9175a2ec0f1497c5923f335bb999e17 /src/long_mode/mod.rs | |
| parent | 6f0426bc30ae65aac2f08cbf90aafa823f4554bc (diff) | |
add behavior fuzzing, fix some stuff it noticed
Diffstat (limited to 'src/long_mode/mod.rs')
| -rw-r--r-- | src/long_mode/mod.rs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/long_mode/mod.rs b/src/long_mode/mod.rs index 1b5caf1..04b89ff 100644 --- a/src/long_mode/mod.rs +++ b/src/long_mode/mod.rs @@ -462,6 +462,9 @@ impl OperandSpec { fn is_memory(&self) -> bool { (*self as u8) & 0x80 != 0 } + fn is_masked(&self) -> bool { + (*self as u8) & 0x40 != 0 + } } /// an `avx512` merging mode. @@ -7128,6 +7131,8 @@ fn read_operands< instruction.imm = read_num(words, 1)? as u64; instruction.operands[0] = OperandSpec::ImmInDispField; instruction.operands[1] = OperandSpec::ImmU8; + // because there is an implied push of the adjusted base pointer + instruction.mem_size = 8; instruction.operand_count = 2; } OperandCase::Fw => { |
