On 26 June 2017 at 13:04, Lluís Vilanova <vilan...@ac.upc.edu> wrote: > Peter Maydell writes: > >> On 26 June 2017 at 10:26, Lluís Vilanova <vilan...@ac.upc.edu> wrote: >>> There's two places where memory access tracing is triggered: >>> >>> * tcg_gen_qemu_ld/st_... >>> * ld/st templates (both softmmu and user) >>> >>> AFAIK, helpers use the ld/st templates to access guest memory. > >> Mostly, but there are one or two special cases, for instance >> the ARM HELPER(dc_zva) in target/arm/helper.c, which has a >> fastpath that uses tlb_vaddr_to_host to look up the host memory >> address and then memset to do the clear-to-zeroes operation. > > Should that be replaced with a cpu_memset or similar?
Possibly -- PPC and S390 also have a fast-memset like this (and S390 also has a fast-memmove). However I would be wary of there being architecture-specific corner cases (eg needing to get the right vaddr for a fault if the accesses fault). thanks -- PMM