summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormrb0nk500 <b0nk@b0nk.xyz>2022-01-19 13:48:08 -0400
committermrb0nk500 <b0nk@b0nk.xyz>2022-01-19 13:53:01 -0400
commitd9e94740a5ca5ed79594afb9db7c1c5c92872a48 (patch)
tree770336192ffbac8fd0b9b3da67e606211e7de1ff
parent734584c6a75cfba5c3ebf456c3bb03269157536b (diff)
opcode-bitmask-gen: Fixed bug that occurred when masking
out unwanted bits when inverting the addressing mode bitmask.
-rw-r--r--opcode-bitmask-gen.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/opcode-bitmask-gen.c b/opcode-bitmask-gen.c
index f59969f..9781e2f 100644
--- a/opcode-bitmask-gen.c
+++ b/opcode-bitmask-gen.c
@@ -436,7 +436,7 @@ uint32_t get_addr_mode_bits(const char **list, int *ext) {
}
is_ext = (bits & ext_mask) ? 1 : is_ext;
- addr_modes |= (is_inv) ? ~(bits) & (max_addr_mode_mask & (is_ext) ? -1 : ~ext_mask) : bits;
+ addr_modes |= (is_inv) ? ~(bits) & (max_addr_mode_mask & ((is_ext) ? -1 : ~ext_mask)) : bits;
addr_modes &= (is_ext && (bits & ~(AM_ORTHO|AM_ORTHO2))) ? ~(AM_ORTHO|AM_ORTHO2) : -1;
if (is_ext) {