summaryrefslogtreecommitdiff
path: root/src/analysis/disass/routines.c
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2019-01-14 00:04:49 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2019-01-14 00:04:49 (GMT)
commit20289d6a5d60d1bcf979ff7fdfc236486848d149 (patch)
tree06ad6792a175f6ca1994f6bb3709c2986629af68 /src/analysis/disass/routines.c
parent2a6d92e2d55c0a7826137b2cc2e3148bb298abb9 (diff)
Handled irreducible loops without blocking.
Diffstat (limited to 'src/analysis/disass/routines.c')
-rw-r--r--src/analysis/disass/routines.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/analysis/disass/routines.c b/src/analysis/disass/routines.c
index d260bad..d288fc0 100644
--- a/src/analysis/disass/routines.c
+++ b/src/analysis/disass/routines.c
@@ -400,12 +400,12 @@ void g_routines_study_handle_blocks(GRoutinesStudy *study, GBinRoutine *routine,
/* Traitement par blocs */
- detect_loops_in_code(knight);
-
blocks = translate_dragon_knight(knight, study->binary);
g_binary_routine_set_basic_blocks(routine, blocks);
+ detect_loops_in_basic_blocks(blocks);
+
rank_routine_blocks(routine);
/* Nettoyage final */