unicorn/qemu/include/exec
Peter Crosthwaite b82e711a65
memory: Add address_space_init_shareable()
This will either create a new AS or return a pointer to an
already existing equivalent one, if we have already created
an AS for the specified root memory region.

The motivation is to reuse address spaces as much as possible.
It's going to be quite common that bus masters out in device land
have pointers to the same memory region for their mastering yet
each will need to create its own address space. Let the memory
API implement sharing for them.

Aside from the perf optimisations, this should reduce the amount
of redundant output on info mtree as well.

Thee returned value will be malloced, but the malloc will be
automatically freed when the AS runs out of refs.

Backports commit f0c02d15b57da6f5463e3768aa0cfeedccf4b8f4 from qemu
2018-02-18 00:18:21 -05:00
..
address-spaces.h import 2015-08-21 15:04:50 +08:00
cpu-all.h cpu-all: complete real host page size API 2018-02-17 15:23:16 -05:00
cpu-common.h qemu_ram_block_by_name 2018-02-17 18:01:16 -05:00
cpu-defs.h cpu_defs: Simplify CPUTLB padding logic 2018-02-17 15:23:27 -05:00
cpu_ldst.h softmmu: remove now unused functions 2018-02-17 15:23:38 -05:00
cpu_ldst_template.h softmmu: add helper function to pass through retaddr 2018-02-17 15:23:38 -05:00
cputlb.h cputlb.c: Use correct address space when looking up MemoryRegionSection 2018-02-17 23:15:22 -05:00
exec-all.h exec.c: Add cpu_get_address_space() 2018-02-17 23:22:23 -05:00
gen-icount.h tcg: Change translator-side labels to a pointer 2018-02-09 14:17:56 -05:00
helper-gen.h import 2015-08-21 15:04:50 +08:00
helper-head.h import 2015-08-21 15:04:50 +08:00
helper-proto.h import 2015-08-21 15:04:50 +08:00
helper-tcg.h This code should now build the x86_x64-softmmu part 2. 2017-01-19 22:50:28 +11:00
hwaddr.h platform.h move #3 2017-01-21 00:13:21 +11:00
ioport.h import 2015-08-21 15:04:50 +08:00
memattrs.h target-i386: introduce cpu_get_mem_attrs 2018-02-13 11:33:39 -05:00
memory-internal.h import 2015-08-21 15:04:50 +08:00
memory.h memory: Add address_space_init_shareable() 2018-02-18 00:18:21 -05:00
ram_addr.h memory: try to inline constant-length reads 2018-02-17 20:44:39 -05:00
semihost.h exec: Add semihosting stubs 2018-02-17 15:23:33 -05:00
tb-hash.h cpu-defs: Move out TB_JMP defines 2018-02-17 15:23:15 -05:00