[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Does the page boundary check still necessary?
From: |
Kenneth Lee |
Subject: |
Does the page boundary check still necessary? |
Date: |
Wed, 15 Feb 2023 16:39:51 +0800 |
Hello,
I hope I send this mail to the right place.
I'm porting a new guest arch. It jumps of out of physical page
constantly. So many TBs cannot be chained with goto_tb. I'm wondering
if the following check is still necessary?
bool translator_use_goto_tb(DisasContextBase *db, target_ulong dest)
{
/* Suppress goto_tb if requested. */
if (tb_cflags(db->tb) & CF_NO_GOTO_TB) {
return false;
}
/* Check for the dest on the same page as the start of the TB. */
return ((db->pc_first ^ dest) & TARGET_PAGE_MASK) == 0; <--- Is
this check really necessary?
}
Now the chained TBs have been link with tb_link_page(), the chain will
be rebuilt if it is invalidate on page. So why is this check still there?
Acutally, I have tested some use cases with this check removed. It works
fine. Could anybody tell me in what case it is still necessary?
Thanks.
--
-Kenneth
- Does the page boundary check still necessary?,
Kenneth Lee <=