[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 09/14] Switch non-CPU callers from ld/st*_phy
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [PATCH v2 09/14] Switch non-CPU callers from ld/st*_phys to address_space_ld/st* |
Date: |
Tue, 21 Apr 2015 09:44:21 +0100 |
Peter Maydell <address@hidden> writes:
> Switch all the uses of ld/st*_phys to address_space_ld/st*,
> except for those cases where the address space is the CPU's
> (ie cs->as). This was done with the following script which
> generates a Coccinelle patch.
>
> A few over-80-columns lines in the result were rewrapped by
> hand where Coccinelle failed to do the wrapping automatically,
> as well as one location where it didn't put a line-continuation
> '\' when wrapping lines on a change made to a match inside
> a macro definition.
>
> ===begin===
> #!/bin/sh -e
> # Usage:
> # ./ldst-phys.spatch.sh > ldst-phys.spatch
> # spatch -sp_file ldst-phys.spatch -dir . | sed -e '/^+/s/\t/ /g' >
> out.patch
> # patch -p1 < out.patch
>
> for FN in ub uw_le uw_be l_le l_be q_le q_be uw l q; do
> cat <<EOF
> @ cpu_matches_ld_${FN} @
> expression E1,E2;
> identifier as;
> @@
>
> ld${FN}_phys(E1->as,E2)
>
> @ other_matches_ld_${FN} depends on !cpu_matches_ld_${FN} @
> expression E1,E2;
> @@
>
> -ld${FN}_phys(E1,E2)
> +address_space_ld${FN}(E1,E2, MEMTXATTRS_UNSPECIFIED, NULL)
>
> EOF
>
> done
>
> for FN in b w_le w_be l_le l_be q_le q_be w l q; do
> cat <<EOF
> @ cpu_matches_st_${FN} @
> expression E1,E2,E3;
> identifier as;
> @@
>
> st${FN}_phys(E1->as,E2,E3)
>
> @ other_matches_st_${FN} depends on !cpu_matches_st_${FN} @
> expression E1,E2,E3;
> @@
>
> -st${FN}_phys(E1,E2,E3)
> +address_space_st${FN}(E1,E2,E3, MEMTXATTRS_UNSPECIFIED, NULL)
>
> EOF
>
> done
> ===endit===
>
> Signed-off-by: Peter Maydell <address@hidden>
> Reviewed-by: Edgar E. Iglesias <address@hidden>
Reviewed-by: Alex Bennée <address@hidden>
--
Alex Bennée
- Re: [Qemu-devel] [PATCH v2 11/14] target-arm: Use correct memory attributes for page table walks, (continued)
- [Qemu-devel] [PATCH v2 08/14] exec.c: Capture the memory attributes for a watchpoint hit, Peter Maydell, 2015/04/13
- [Qemu-devel] [PATCH v2 09/14] Switch non-CPU callers from ld/st*_phys to address_space_ld/st*, Peter Maydell, 2015/04/13
- Re: [Qemu-devel] [PATCH v2 09/14] Switch non-CPU callers from ld/st*_phys to address_space_ld/st*,
Alex Bennée <=
- [Qemu-devel] [PATCH v2 06/14] exec.c: Make address_space_rw take transaction attributes, Peter Maydell, 2015/04/13
- [Qemu-devel] [PATCH v2 13/14] target-arm: Use attribute info to handle user-only watchpoints, Peter Maydell, 2015/04/13
- [Qemu-devel] [PATCH v2 12/14] target-arm: Add user-mode transaction attribute, Peter Maydell, 2015/04/13
- [Qemu-devel] [PATCH v2 01/14] memory: Define API for MemoryRegionOps to take attrs and return status, Peter Maydell, 2015/04/13