Re: [Qemu-devel] Semantics of tcg_enabled() and what it means for multi-arch

2015-07-11 Thread Peter Crosthwaite
On Sat, Jul 11, 2015 at 3:23 PM, Paolo Bonzini wrote: > > > On 11/07/2015 22:46, Peter Crosthwaite wrote: >> include/exec/ram_addr.h:if (tcg_enabled()) { >> include/exec/ram_addr.h:uint8_t clients = tcg_enabled() ? >> DIRTY_CLIENTS_ALL : DIRTY_CLIENTS_NOCODE; >> memory.c:

Re: [Qemu-devel] Semantics of tcg_enabled() and what it means for multi-arch

2015-07-11 Thread Paolo Bonzini
On 11/07/2015 22:46, Peter Crosthwaite wrote: > include/exec/ram_addr.h:if (tcg_enabled()) { > include/exec/ram_addr.h:uint8_t clients = tcg_enabled() ? > DIRTY_CLIENTS_ALL : DIRTY_CLIENTS_NOCODE; > memory.c:mr->dirty_log_mask = tcg_enabled() ? (1 << DIRTY_MEMORY_CODE)

[Qemu-devel] Semantics of tcg_enabled() and what it means for multi-arch

2015-07-11 Thread Peter Crosthwaite
Hi Paolo, Richard and all, What is the exact semantic of tcg_enabled() supposed to be and is it ill-defined in multi-arch? Currently, tcg_enabled is defined as: bool tcg_enabled(void) { return tcg_ctx.code_gen_buffer != NULL; } In the multi-arch work, the tcg_ctx is now multiple per-arch. S