X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=src%2Fvm%2Fjit%2Fpowerpc%2Fpatcher.c;h=0dc24cadd927788661a136b216916118a60a106c;hb=167cdb4568b39860841183e6886bfc2bb0c28887;hp=051a186e616fe6fc582bdfbd10d73ceb48dee222;hpb=cd82025560ebc4082b4bdff1e23084aeedd6368e;p=cacao.git diff --git a/src/vm/jit/powerpc/patcher.c b/src/vm/jit/powerpc/patcher.c index 051a186e6..0dc24cadd 100644 --- a/src/vm/jit/powerpc/patcher.c +++ b/src/vm/jit/powerpc/patcher.c @@ -2,6 +2,7 @@ Copyright (C) 1996-2005, 2006, 2007, 2008 CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO + Copyright (C) 2008 Theobroma Systems Ltd. This file is part of CACAO. @@ -65,6 +66,22 @@ void patcher_patch_code(patchref_t *pr) } +/** + * Check if the trap instruction at the given PC is valid. + * + * @param pc Program counter. + * + * @return true if valid, false otherwise. + */ +bool patcher_is_valid_trap_instruction_at(void* pc) +{ + uint32_t mcode = *((uint32_t*) pc); + + // Check for the undefined instruction we use. + return (mcode == 0x00000000); +} + + /* patcher_resolve_classref_to_classinfo *************************************** ACONST: