summaryrefslogtreecommitdiff
path: root/src/arch/instruction.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2008-07-27 19:38:15 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2008-07-27 19:38:15 (GMT)
commit1bf9c5ebe8bb3326e10491974cd43b221e2a56a1 (patch)
tree01a745a798661478eb7a6e02c0a0831bb1b4950c /src/arch/instruction.c
parentdbf4d1f93e54251568854bff0ebc9c84f60857f6 (diff)
Supported new x86 opcodes (nop and mov).
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@7 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/instruction.c')
-rw-r--r--src/arch/instruction.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/arch/instruction.c b/src/arch/instruction.c
index 1af3b97..e199dc5 100644
--- a/src/arch/instruction.c
+++ b/src/arch/instruction.c
@@ -45,7 +45,7 @@
* *
******************************************************************************/
-asm_instr *create_db_instruction(const char *data, off_t *pos, off_t len)
+asm_instr *create_db_instruction(const uint8_t *data, off_t *pos, off_t len)
{
asm_instr *result; /* Représentation à renvoyer */
@@ -54,7 +54,9 @@ asm_instr *create_db_instruction(const char *data, off_t *pos, off_t len)
result->opcode = DB_OPCODE;
/* TODO: check result */
- fill_db_operand(&result->operands[0], data[(*pos)++]);
+ result->operands = (asm_operand **)calloc(1, sizeof(asm_operand *));
+ result->operands[0] = (asm_operand *)calloc(1, sizeof(asm_operand));
+ fill_db_operand(result->operands[0], data[(*pos)++]);
result->operands_count = 1;