diff options
Diffstat (limited to 'src/analysis/disass/macro.c')
-rw-r--r-- | src/analysis/disass/macro.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/analysis/disass/macro.c b/src/analysis/disass/macro.c index 4e77881..a9ae261 100644 --- a/src/analysis/disass/macro.c +++ b/src/analysis/disass/macro.c @@ -638,10 +638,10 @@ static void find_next_hops(GArchProcessor *proc, const vmpa2t *start, const code - if (g_arch_instruction_is_return(iter)) + if (g_arch_instruction_get_flags(iter) & AIF_RETURN_POINT) printf(" ++ return 0x%08x\n", (unsigned int)range->addr.virtual); - if (g_arch_instruction_is_return(iter)) + if (g_arch_instruction_get_flags(iter) & AIF_RETURN_POINT) { iter = NULL; break; @@ -1231,7 +1231,7 @@ static GInstrBlock *build_instruction_blocks(GArchProcessor *proc, code_coverage * L'expérience montre qu'il peut y avoir plusieurs fins dans une routine, * et donc des fins en milieu de couverture de cette même routine. */ - if (g_arch_instruction_is_return(iter)) break; + if (g_arch_instruction_get_flags(iter) & AIF_RETURN_POINT) break; /* On n'approfondit que les chemins qui se séparent */ if (!g_arch_instruction_has_destinations(iter)) |