summaryrefslogtreecommitdiff
path: root/src/arch/dalvik/opcodes
diff options
context:
space:
mode:
Diffstat (limited to 'src/arch/dalvik/opcodes')
-rw-r--r--src/arch/dalvik/opcodes/add.c20
-rw-r--r--src/arch/dalvik/opcodes/aget.c14
-rw-r--r--src/arch/dalvik/opcodes/and.c12
-rw-r--r--src/arch/dalvik/opcodes/array.c2
-rw-r--r--src/arch/dalvik/opcodes/cmp.c10
-rw-r--r--src/arch/dalvik/opcodes/const.c22
-rw-r--r--src/arch/dalvik/opcodes/div.c20
-rw-r--r--src/arch/dalvik/opcodes/iget.c14
-rw-r--r--src/arch/dalvik/opcodes/instanceof.c2
-rw-r--r--src/arch/dalvik/opcodes/move.c26
-rw-r--r--src/arch/dalvik/opcodes/mul.c20
-rw-r--r--src/arch/dalvik/opcodes/neg.c8
-rw-r--r--src/arch/dalvik/opcodes/new.c4
-rw-r--r--src/arch/dalvik/opcodes/not.c4
-rw-r--r--src/arch/dalvik/opcodes/or.c12
-rw-r--r--src/arch/dalvik/opcodes/rem.c20
-rw-r--r--src/arch/dalvik/opcodes/rsub.c4
-rw-r--r--src/arch/dalvik/opcodes/sget.c14
-rw-r--r--src/arch/dalvik/opcodes/shl.c10
-rw-r--r--src/arch/dalvik/opcodes/shr.c10
-rw-r--r--src/arch/dalvik/opcodes/sub.c16
-rw-r--r--src/arch/dalvik/opcodes/to.c30
-rw-r--r--src/arch/dalvik/opcodes/ushr.c10
-rw-r--r--src/arch/dalvik/opcodes/xor.c12
24 files changed, 316 insertions, 0 deletions
diff --git a/src/arch/dalvik/opcodes/add.c b/src/arch/dalvik/opcodes/add.c
index 792eacd..a4c0403 100644
--- a/src/arch/dalvik/opcodes/add.c
+++ b/src/arch/dalvik/opcodes/add.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_add_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_add_double_2addr(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_add_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_add_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_add_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_add_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_add_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_add_float_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_add_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_add_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/aget.c b/src/arch/dalvik/opcodes/aget.c
index bcf4984..c445aa4 100644
--- a/src/arch/dalvik/opcodes/aget.c
+++ b/src/arch/dalvik/opcodes/aget.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_aget(const bin_t *data, off_t *pos, off_t le
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_aget_boolean(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_aget_byte(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_aget_char(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_aget_object(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_aget_short(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_aget_wide(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/and.c b/src/arch/dalvik/opcodes/and.c
index 859fbe3..a136b0f 100644
--- a/src/arch/dalvik/opcodes/and.c
+++ b/src/arch/dalvik/opcodes/and.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_and_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_and_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_and_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_and_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_and_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_and_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/array.c b/src/arch/dalvik/opcodes/array.c
index 9223e47..5e85420 100644
--- a/src/arch/dalvik/opcodes/array.c
+++ b/src/arch/dalvik/opcodes/array.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_array_length(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/cmp.c b/src/arch/dalvik/opcodes/cmp.c
index eb3a601..77d0b6e 100644
--- a/src/arch/dalvik/opcodes/cmp.c
+++ b/src/arch/dalvik/opcodes/cmp.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_cmp_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_cmpg_double(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_cmpg_float(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_cmpl_double(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_cmpl_float(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/const.c b/src/arch/dalvik/opcodes/const.c
index 7918e93..11d678f 100644
--- a/src/arch/dalvik/opcodes/const.c
+++ b/src/arch/dalvik/opcodes/const.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_const(const bin_t *data, off_t *pos, off_t l
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_const_16(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_const_4(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_const_class(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_const_high16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_const_string(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_const_string_jumbo(const bin_t *data, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_const_wide(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_const_wide_16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_const_wide_32(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -431,6 +451,8 @@ GArchInstruction *dalvik_read_instr_const_wide_high16(const bin_t *data, off_t *
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/div.c b/src/arch/dalvik/opcodes/div.c
index 8732fd0..d22189b 100644
--- a/src/arch/dalvik/opcodes/div.c
+++ b/src/arch/dalvik/opcodes/div.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_div_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_div_double_2addr(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_div_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_div_float_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_div_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_div_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_div_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_div_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_div_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_div_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/iget.c b/src/arch/dalvik/opcodes/iget.c
index 3490b94..669a452 100644
--- a/src/arch/dalvik/opcodes/iget.c
+++ b/src/arch/dalvik/opcodes/iget.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_iget(const bin_t *data, off_t *pos, off_t le
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_iget_boolean(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_iget_byte(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_iget_char(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_iget_object(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_iget_short(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_iget_wide(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/instanceof.c b/src/arch/dalvik/opcodes/instanceof.c
index 9797b57..faed78e 100644
--- a/src/arch/dalvik/opcodes/instanceof.c
+++ b/src/arch/dalvik/opcodes/instanceof.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_instance_of(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/move.c b/src/arch/dalvik/opcodes/move.c
index 3daeab0..02ca204 100644
--- a/src/arch/dalvik/opcodes/move.c
+++ b/src/arch/dalvik/opcodes/move.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_move(const bin_t *data, off_t *pos, off_t le
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_move_exception(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_move_16(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_move_from_16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_move_object(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_move_object_16(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_move_object_from_16(const bin_t *data, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_move_result(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_move_result_object(const bin_t *data, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_move_result_wide(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -431,6 +451,8 @@ GArchInstruction *dalvik_read_instr_move_wide(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -468,6 +490,8 @@ GArchInstruction *dalvik_read_instr_move_wide_16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -505,6 +529,8 @@ GArchInstruction *dalvik_read_instr_move_wide_from_16(const bin_t *data, off_t *
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/mul.c b/src/arch/dalvik/opcodes/mul.c
index 959b859..cba9306 100644
--- a/src/arch/dalvik/opcodes/mul.c
+++ b/src/arch/dalvik/opcodes/mul.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_mul_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_mul_double_2addr(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_mul_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_mul_float_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_mul_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_mul_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_mul_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_mul_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_mul_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_mul_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/neg.c b/src/arch/dalvik/opcodes/neg.c
index ce96a68..0facb59 100644
--- a/src/arch/dalvik/opcodes/neg.c
+++ b/src/arch/dalvik/opcodes/neg.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_neg_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_neg_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_neg_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_neg_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/new.c b/src/arch/dalvik/opcodes/new.c
index 4a16787..1a5b56c 100644
--- a/src/arch/dalvik/opcodes/new.c
+++ b/src/arch/dalvik/opcodes/new.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_new_array(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_new_instance(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/not.c b/src/arch/dalvik/opcodes/not.c
index 2bbb61a..00d5edb 100644
--- a/src/arch/dalvik/opcodes/not.c
+++ b/src/arch/dalvik/opcodes/not.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_not_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_not_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/or.c b/src/arch/dalvik/opcodes/or.c
index 6e57ef1..91ce63d 100644
--- a/src/arch/dalvik/opcodes/or.c
+++ b/src/arch/dalvik/opcodes/or.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_or_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_or_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_or_int_lit8(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_or_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_or_long(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_or_long_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/rem.c b/src/arch/dalvik/opcodes/rem.c
index 687b651..0f7840d 100644
--- a/src/arch/dalvik/opcodes/rem.c
+++ b/src/arch/dalvik/opcodes/rem.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_rem_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_rem_double_2addr(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_rem_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_rem_float_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_rem_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_rem_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_rem_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_rem_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_rem_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_rem_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/rsub.c b/src/arch/dalvik/opcodes/rsub.c
index 37434eb..04987ae 100644
--- a/src/arch/dalvik/opcodes/rsub.c
+++ b/src/arch/dalvik/opcodes/rsub.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_rsub_int(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_rsub_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/sget.c b/src/arch/dalvik/opcodes/sget.c
index 1f5eff7..f8b3d31 100644
--- a/src/arch/dalvik/opcodes/sget.c
+++ b/src/arch/dalvik/opcodes/sget.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_sget(const bin_t *data, off_t *pos, off_t le
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_sget_boolean(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_sget_byte(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_sget_char(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_sget_object(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_sget_short(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_sget_wide(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/shl.c b/src/arch/dalvik/opcodes/shl.c
index a7a08f7..48ef45b 100644
--- a/src/arch/dalvik/opcodes/shl.c
+++ b/src/arch/dalvik/opcodes/shl.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_shl_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_shl_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_shl_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_shl_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_shl_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/shr.c b/src/arch/dalvik/opcodes/shr.c
index f665f64..9e46971 100644
--- a/src/arch/dalvik/opcodes/shr.c
+++ b/src/arch/dalvik/opcodes/shr.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_shr_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_shr_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_shr_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_shr_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_shr_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/sub.c b/src/arch/dalvik/opcodes/sub.c
index 42eef73..183d838 100644
--- a/src/arch/dalvik/opcodes/sub.c
+++ b/src/arch/dalvik/opcodes/sub.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_sub_double(const bin_t *data, off_t *pos, of
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_sub_double_2addr(const bin_t *data, off_t *p
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_sub_float(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_sub_float_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_sub_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_sub_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_sub_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_sub_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/to.c b/src/arch/dalvik/opcodes/to.c
index 809dc1f..509dc2d 100644
--- a/src/arch/dalvik/opcodes/to.c
+++ b/src/arch/dalvik/opcodes/to.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_to_int_byte(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_to_int_char(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_to_int_double(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_to_int_float(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_to_int_long(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_to_int_short(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -283,6 +295,8 @@ GArchInstruction *dalvik_read_instr_to_double_float(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -320,6 +334,8 @@ GArchInstruction *dalvik_read_instr_to_double_int(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -357,6 +373,8 @@ GArchInstruction *dalvik_read_instr_to_double_long(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -394,6 +412,8 @@ GArchInstruction *dalvik_read_instr_to_float_double(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -431,6 +451,8 @@ GArchInstruction *dalvik_read_instr_to_float_int(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -468,6 +490,8 @@ GArchInstruction *dalvik_read_instr_to_float_long(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -505,6 +529,8 @@ GArchInstruction *dalvik_read_instr_to_long_double(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -542,6 +568,8 @@ GArchInstruction *dalvik_read_instr_to_long_float(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -579,6 +607,8 @@ GArchInstruction *dalvik_read_instr_to_long_int(const bin_t *data, off_t *pos, o
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/ushr.c b/src/arch/dalvik/opcodes/ushr.c
index b5a9b00..01dcef9 100644
--- a/src/arch/dalvik/opcodes/ushr.c
+++ b/src/arch/dalvik/opcodes/ushr.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_ushr_int(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_ushr_int_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_ushr_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_ushr_long(const bin_t *data, off_t *pos, off
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_ushr_long_2addr(const bin_t *data, off_t *po
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
diff --git a/src/arch/dalvik/opcodes/xor.c b/src/arch/dalvik/opcodes/xor.c
index 40c5ef9..343d129 100644
--- a/src/arch/dalvik/opcodes/xor.c
+++ b/src/arch/dalvik/opcodes/xor.c
@@ -61,6 +61,8 @@ GArchInstruction *dalvik_read_instr_xor_int(const bin_t *data, off_t *pos, off_t
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -98,6 +100,8 @@ GArchInstruction *dalvik_read_instr_xor_int_2addr(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -135,6 +139,8 @@ GArchInstruction *dalvik_read_instr_xor_int_lit8(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -172,6 +178,8 @@ GArchInstruction *dalvik_read_instr_xor_int_lit16(const bin_t *data, off_t *pos,
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -209,6 +217,8 @@ GArchInstruction *dalvik_read_instr_xor_long(const bin_t *data, off_t *pos, off_
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}
@@ -246,6 +256,8 @@ GArchInstruction *dalvik_read_instr_xor_long_2addr(const bin_t *data, off_t *pos
return NULL;
}
+ dalvik_mark_first_operand_as_written(result);
+
return result;
}