summaryrefslogtreecommitdiff
path: root/assemble.c
diff options
context:
space:
mode:
authorCyrill Gorcunov <gorcunov@gmail.com>2012-09-10 00:19:12 +0400
committerCyrill Gorcunov <gorcunov@gmail.com>2012-09-10 01:35:38 +0400
commit167917abe5c7aa69da9543c579ba93a0eaae5eed (patch)
tree12d8b8f4c97e8cdd3d82f163fe3e4dbe91b0d947 /assemble.c
parent315d049646efe36773380a03826c8589d24b2692 (diff)
downloadnasm-167917abe5c7aa69da9543c579ba93a0eaae5eed.tar.gz
nasm-167917abe5c7aa69da9543c579ba93a0eaae5eed.tar.bz2
nasm-167917abe5c7aa69da9543c579ba93a0eaae5eed.zip
opflags: Extend opflags_t to 64 bits
Soon we will need to encode 512 bits values thus there is no space left in our opflags_t which is 32 bitfield. Extend it to 64 bits width. Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Diffstat (limited to 'assemble.c')
-rw-r--r--assemble.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/assemble.c b/assemble.c
index 1a1e2df..4f791ec 100644
--- a/assemble.c
+++ b/assemble.c
@@ -2070,8 +2070,9 @@ done:
static enum match_result matches(const struct itemplate *itemp,
insn *instruction, int bits)
{
- int i, size[MAX_OPERANDS], asize, oprs;
+ opflags_t size[MAX_OPERANDS], asize;
bool opsizemissing = false;
+ int i, oprs;
/*
* Check the opcode
@@ -2353,7 +2354,7 @@ static enum ea_type process_ea(operand *input, ea *output, int bits,
/* if either one are a vector register... */
if ((ix|bx) & (XMMREG|YMMREG) & ~REG_EA) {
- int32_t sok = BITS32 | BITS64;
+ opflags_t sok = BITS32 | BITS64;
int32_t o = input->offset;
int mod, scale, index, base;
@@ -2444,7 +2445,7 @@ static enum ea_type process_ea(operand *input, ea *output, int bits,
* it must be a 32/64-bit memory reference. Firstly we have
* to check that all registers involved are type E/Rxx.
*/
- int32_t sok = BITS32 | BITS64;
+ opflags_t sok = BITS32 | BITS64;
int32_t o = input->offset;
if (it != -1) {