All of lore.kernel.org
 help / color / mirror / Atom feed
* How does the TB chaining works?
@ 2020-07-14 15:37 沈梦姣
  2020-07-14 16:13 ` Alex Bennée
  0 siblings, 1 reply; 2+ messages in thread
From: 沈梦姣 @ 2020-07-14 15:37 UTC (permalink / raw)
  To: QEMU Developers


I just see the current TB’s code pointer given to prologue which works as function call. But how to jump to the next TB to execution instead exit the execution and entry the prologue again?



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: How does the TB chaining works?
  2020-07-14 15:37 How does the TB chaining works? 沈梦姣
@ 2020-07-14 16:13 ` Alex Bennée
  0 siblings, 0 replies; 2+ messages in thread
From: Alex Bennée @ 2020-07-14 16:13 UTC (permalink / raw)
  To: 沈梦姣; +Cc: qemu-devel


沈梦姣 <shen.mengjiao3@icloud.com> writes:

> I just see the current TB’s code pointer given to prologue which works as function call. But how to jump to the next TB to execution instead exit the execution and entry the prologue again?

The first time a block is translated it will exit back to the main loop.
After the next block is translated the previous TB is patched via
tb_add_jump which calls tb_set_jmp_target to set the target TB.

Computed jumps or jumps that cross page boundaries are generally handled
via the lookup_tb_ptr helper function. 

-- 
Alex Bennée


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-07-14 16:14 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-07-14 15:37 How does the TB chaining works? 沈梦姣
2020-07-14 16:13 ` Alex Bennée

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.