summaryrefslogtreecommitdiff
path: root/parser.c
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2007-09-12 20:32:39 -0700
committerH. Peter Anvin <hpa@zytor.com>2007-09-12 21:04:39 -0700
commit0da6b580ebb5ed60164b95a720fcf26591007b0f (patch)
treeb39606b1ca116922706cf1af0e076ba4345a96b9 /parser.c
parent16b0a33ceae7b57cf4ebc9ab62cd4e1dc00dbf8c (diff)
downloadnasm-0da6b580ebb5ed60164b95a720fcf26591007b0f.tar.gz
Support r/m operands for non-integer types
Support r/m operands for non-integer operands types, i.e. mmx or xmm operands. This allows mmx and xmm operands to be written more compactly, speeding up the assembler.
Diffstat (limited to 'parser.c')
-rw-r--r--parser.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/parser.c b/parser.c
index 8a376fd1..1c7b8d9b 100644
--- a/parser.c
+++ b/parser.c
@@ -667,7 +667,8 @@ insn *parse_line(int pass, char *buffer, insn * result,
return result;
}
- result->oprs[operand].type |= MEMORY;
+ /* It is memory, but it can match any r/m operand */
+ result->oprs[operand].type |= MEMORY_ANY;
if (b == -1 && (i == -1 || s == 0)) {
int is_rel = globalbits == 64 &&