diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-06-05 14:39:02 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2005-06-05 14:39:02 +0000 |
commit | 2d6187930509063b3103c76d200ced50639acdb6 (patch) | |
tree | 6503ae0160ac185f90584c7fa6da24be4c862e2b /target-ppc | |
parent | 7c48011b451f1a80cc98d99b796d41c97c96bcd1 (diff) |
simplified end of page handling
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@1443 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc')
-rw-r--r-- | target-ppc/translate.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/target-ppc/translate.c b/target-ppc/translate.c index 2a828ed291..b2006df532 100644 --- a/target-ppc/translate.c +++ b/target-ppc/translate.c @@ -3321,14 +3321,9 @@ int gen_intermediate_code_internal (CPUState *env, TranslationBlock *tb, ctx.exception != EXCP_TRAP)) { RET_EXCP(ctxp, EXCP_TRACE, 0); } - if (ctx.exception != EXCP_NONE) - break; /* if we reach a page boundary, stop generation */ - if ((ctx.nip & (TARGET_PAGE_SIZE - 1)) == 0) { - gen_op_b((long)ctx.tb, ctx.nip); - ctx.exception = EXCP_BRANCH; + if ((ctx.nip & (TARGET_PAGE_SIZE - 1)) == 0) break; - } } if (ctx.exception == EXCP_NONE) { gen_op_b((unsigned long)ctx.tb, ctx.nip); |