qemu/accel/tcg
Peter Maydell f7b78602fd accel/tcg: Add cluster number to TCG TB hash
Include the cluster number in the hash we use to look
up TBs. This is important because a TB that is valid
for one cluster at a given physical address and set
of CPU flags is not necessarily valid for another:
the two clusters may have different views of physical
memory, or may have different CPU features (eg FPU
present or absent).

We put the cluster number in the high 8 bits of the
TB cflags. This gives us up to 256 clusters, which should
be enough for anybody. If we ever need more, or need
more bits in cflags for other purposes, we could make
tb_hash_func() take more data (and expand qemu_xxhash7()
to qemu_xxhash8()).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Alistair Francis <alistair.francis@wdc.com>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Message-id: 20190121152218.9592-4-peter.maydell@linaro.org
2019-01-29 11:46:06 +00:00
..
atomic_template.h tcg: Split CONFIG_ATOMIC128 2018-10-18 19:46:36 -07:00
cpu-exec-common.c icount: fix cpu_restore_state_from_tb for non-tb-exit cases 2018-04-11 09:05:22 +10:00
cpu-exec.c accel/tcg: Add cluster number to TCG TB hash 2019-01-29 11:46:06 +00:00
cputlb.c cputlb: Remove static tlb sizing 2019-01-28 07:04:35 -08:00
Makefile.objs tcg: Add generic vector expanders 2018-02-08 15:54:05 +00:00
softmmu_template.h cputlb: read CPUTLBEntry.addr_write atomically 2018-10-18 19:46:53 -07:00
tcg-all.c tcg: access cpu->icount_decr.u16.high with atomics 2018-10-18 18:58:10 -07:00
tcg-runtime-gvec.c tcg: Add opcodes for vector minmax arithmetic 2019-01-28 07:03:34 -08:00
tcg-runtime.c tcg: add cs_base and flags to -d exec output 2017-12-29 12:43:40 -08:00
tcg-runtime.h tcg: Add opcodes for vector minmax arithmetic 2019-01-28 07:03:34 -08:00
trace-events trace-events: fix code style: print 0x before hex numbers 2017-08-01 12:13:07 +01:00
translate-all.c accel/tcg: Add cluster number to TCG TB hash 2019-01-29 11:46:06 +00:00
translate-all.h move public invalidate APIs out of translate-all.{c,h}, clean up 2018-06-28 19:05:30 +02:00
translator.c translator: fix breakpoint processing 2018-10-02 19:08:57 +02:00
user-exec-stub.c i386/cpu: make -cpu host support monitor/mwait 2018-06-29 13:02:47 +02:00
user-exec.c accel/tcg/user-exec: Don't parse aarch64 insns to test for read vs write 2019-01-29 11:46:04 +00:00