• P
    Switch non-CPU callers from ld/st*_phys to address_space_ld/st* · 42874d3a
    Peter Maydell 提交于
    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: NPeter Maydell <peter.maydell@linaro.org>
    Reviewed-by: NEdgar E. Iglesias <edgar.iglesias@xilinx.com>
    Reviewed-by: NAlex Bennée <alex.bennee@linaro.org>
    42874d3a
dp264.c 5.6 KB