diff options
author | iximeow <me@iximeow.net> | 2021-12-27 20:37:51 -0800 |
---|---|---|
committer | iximeow <me@iximeow.net> | 2021-12-27 20:37:51 -0800 |
commit | 999eb2ac6950c589e8649651f9b538b85900cf39 (patch) | |
tree | b3f1d9a3cb44d74144c46fb614d3104c1a9c16b9 /src/armv8 | |
parent | b1d0fc26e1c4757953ef80c92c7a4e82c0d698cf (diff) |
that decode arm is already handled
Diffstat (limited to 'src/armv8')
-rw-r--r-- | src/armv8/a64.rs | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/src/armv8/a64.rs b/src/armv8/a64.rs index a38511d..a02be49 100644 --- a/src/armv8/a64.rs +++ b/src/armv8/a64.rs @@ -5806,13 +5806,10 @@ impl Decoder<ARMv8> for InstDecoder { (SIMDSizeCode::S, ((immh & 0b0011) << 4)| immb) } 0 => { - if !Q { - return Err(DecodeError::InvalidOperand); - } else { - // `Advanced SIMD modified immediate` - return Err(DecodeError::IncompleteDecoder); - } - (SIMDSizeCode::D, ((immh & 0b0111) << 4)| immb) + // the +q version of this check would be `Advanced SIMD + // modified immediate`, checked well before we got + // here. so assume q is 0, error. + return Err(DecodeError::InvalidOperand); } _ => { return Err(DecodeError::InvalidOperand); |