summaryrefslogtreecommitdiff
path: root/insns.h
diff options
context:
space:
mode:
authorH. Peter Anvin <hpa@zytor.com>2008-05-21 11:05:39 -0700
committerH. Peter Anvin <hpa@zytor.com>2008-05-21 11:05:39 -0700
commit2fb033af18c55d5e4412507b9a1bd513e8a6f2ff (patch)
treea96835d700178ff1ec1814dacd8bd1b46861c36a /insns.h
parenteb9e0938403b63e6478d6d874285a39e9984dbda (diff)
downloadnasm-2fb033af18c55d5e4412507b9a1bd513e8a6f2ff.tar.gz
nasm-2fb033af18c55d5e4412507b9a1bd513e8a6f2ff.tar.bz2
nasm-2fb033af18c55d5e4412507b9a1bd513e8a6f2ff.zip
Disassembler: select table based on VEX prefixes
We can use the new VEX prefixes to select into a large table of new opcode spaces. Since the table is (currently) sparse, add logic so we don't end up producing tons of empty tables for no good reason. This is also necessary since VEX is likely to reuse opcode bytes that would appear as prefixes at some point, which would cause conflicts with the regular tables.
Diffstat (limited to 'insns.h')
-rw-r--r--insns.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/insns.h b/insns.h
index 4f954a5..114b1ca 100644
--- a/insns.h
+++ b/insns.h
@@ -32,6 +32,7 @@ struct disasm_index {
/* Tables for the assembler and disassembler, respectively */
extern const struct itemplate * const nasm_instructions[];
extern const struct disasm_index itable[256];
+extern const struct disasm_index * const itable_VEX[32][8];
/* Common table for the byte codes */
extern const uint8_t nasm_bytecodes[];