summaryrefslogtreecommitdiff
path: root/src/arch/arm
diff options
context:
space:
mode:
authorCyrille Bagard <nocbos@gmail.com>2015-10-15 19:18:31 (GMT)
committerCyrille Bagard <nocbos@gmail.com>2015-10-15 19:18:31 (GMT)
commit83dccba3a9b6c18d6fe7b6f30794a16336803962 (patch)
tree982e6ec5d7eae20020315936cbfbd9494bc9111e /src/arch/arm
parentc9449c389834c580196527c4e1cb010a701e7a32 (diff)
Detected loops as introduced in the book "Compilers: Principles, Techniques, and Tools".
git-svn-id: svn://svn.gna.org/svn/chrysalide/trunk@596 abbe820e-26c8-41b2-8c08-b7b2b41f8b0a
Diffstat (limited to 'src/arch/arm')
-rw-r--r--src/arch/arm/context.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/arch/arm/context.c b/src/arch/arm/context.c
index 386f21a..b54de42 100644
--- a/src/arch/arm/context.c
+++ b/src/arch/arm/context.c
@@ -267,6 +267,8 @@ void _g_arm_context_define_encoding(GArmContext *ctx, virt_t addr, unsigned int
selected = find_disass_arm_area(ctx->areas, addr, 0, ctx->acount - 1);
+ assert(ctx->areas[selected].start != addr || ctx->areas[selected].marker == marker);
+
/* S'agit-il d'une redéfinition ? */
if (ctx->areas[selected].start == addr)
ctx->areas[selected].marker = marker;