[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v7 44/52] tcg: introduce **tcg_ctxs to keep track of
From: |
Richard Henderson |
Subject: |
[Qemu-devel] [PATCH v7 44/52] tcg: introduce **tcg_ctxs to keep track of all TCGContext's |
Date: |
Fri, 20 Oct 2017 16:20:15 -0700 |
From: "Emilio G. Cota" <address@hidden>
Groundwork for supporting multiple TCG contexts.
Note that having n_tcg_ctxs is unnecessary. However, it is
convenient to have it, since it will simplify iterating over the
array: we'll have just a for loop instead of having to iterate
over a NULL-terminated array (which would require n+1 elems)
or having to check with ifdef's for usermode/softmmu.
Reviewed-by: Richard Henderson <address@hidden>
Signed-off-by: Emilio G. Cota <address@hidden>
Signed-off-by: Richard Henderson <address@hidden>
---
tcg/tcg.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/tcg/tcg.c b/tcg/tcg.c
index 62f418ac8a..24ef6df6b5 100644
--- a/tcg/tcg.c
+++ b/tcg/tcg.c
@@ -118,6 +118,9 @@ static bool tcg_out_ldst_finalize(TCGContext *s);
#define TCG_HIGHWATER 1024
+static TCGContext **tcg_ctxs;
+static unsigned int n_tcg_ctxs;
+
static TCGRegSet tcg_target_available_regs[2];
static TCGRegSet tcg_target_call_clobber_regs;
@@ -384,6 +387,8 @@ void tcg_context_init(TCGContext *s)
}
tcg_ctx = s;
+ tcg_ctxs = &tcg_ctx;
+ n_tcg_ctxs = 1;
}
/*
--
2.13.6
- [Qemu-devel] [PATCH v7 31/52] target/s390x: check CF_PARALLEL instead of parallel_cpus, (continued)
- [Qemu-devel] [PATCH v7 31/52] target/s390x: check CF_PARALLEL instead of parallel_cpus, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 33/52] target/sparc: check CF_PARALLEL instead of parallel_cpus, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 34/52] tcg: check CF_PARALLEL instead of parallel_cpus, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 35/52] cpu-exec: lookup/generate TB outside exclusive region during step_atomic, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 36/52] tcg: Add CF_LAST_IO + CF_USE_ICOUNT to CF_HASH_MASK, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 37/52] tcg: Remove CF_IGNORE_ICOUNT, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 39/52] exec-all: rename tb_free to tb_remove, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 38/52] translate-all: use a binary search tree to track TBs in TBContext, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 40/52] translate-all: report correct avg host TB size, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 41/52] tcg: take tb_ctx out of TCGContext, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 44/52] tcg: introduce **tcg_ctxs to keep track of all TCGContext's,
Richard Henderson <=
- [Qemu-devel] [PATCH v7 45/52] tcg: distribute profiling counters across TCGContext's, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 42/52] tcg: define tcg_init_ctx and make tcg_ctx a pointer, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 46/52] tcg: allocate optimizer temps with tcg_malloc, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 43/52] gen-icount: fold exitreq_label into TCGContext, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 47/52] osdep: introduce qemu_mprotect_rwx/none, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 49/52] tcg: introduce regions to split code_gen_buffer, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 50/52] tcg: enable multiple TCG contexts in softmmu, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 52/52] translate-all: exit from tb_phys_invalidate if qht_remove fails, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 48/52] translate-all: use qemu_protect_rwx/none helpers, Richard Henderson, 2017/10/20
- [Qemu-devel] [PATCH v7 51/52] tcg: Initialize cpu_env generically, Richard Henderson, 2017/10/20