On Tue, May 20, 2014 at 3:17 PM, Max Filippov <[email protected]> wrote:
> Move cross-page jump check to gen_jump_slot and use tb->pc instead of
> dc->pc to check for cross-page jumps.
> When TB ends at the page boundary dc->pc points to the next page
> allowing chaining to TBs in it.
>
> Cc: [email protected]
> Signed-off-by: Max Filippov <[email protected]>
> ---
>  target-xtensa/translate.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> diff --git a/target-xtensa/translate.c b/target-xtensa/translate.c
> index 764cee9..d93d0a3 100644
> --- a/target-xtensa/translate.c
> +++ b/target-xtensa/translate.c
> @@ -401,7 +401,7 @@ static void gen_jump_slot(DisasContext *dc, TCGv dest, 
> int slot)
>      if (dc->singlestep_enabled) {
>          gen_exception(dc, EXCP_DEBUG);
>      } else {
> -        if (slot >= 0) {
> +        if (slot >= 0 && ((dc->tb->pc ^ dest) & TARGET_PAGE_MASK) == 0) {

Ugh, complete nonsense, please ignore. ):

-- 
Thanks.
-- Max

Reply via email to