On 12/21/19 3:38 AM, Alex Bennée wrote: > > Richard Henderson <richard.hender...@linaro.org> writes: > >> It is easy for the atomic helpers to use trace_mem_build_info >> directly, without resorting to symbol pasting. For this usage, >> we cannot use trace_mem_get_info, because the MemOp does not >> support 16-byte accesses. >> >> Signed-off-by: Richard Henderson <richard.hender...@linaro.org> >> --- >> accel/tcg/atomic_template.h | 67 +++++++++++++------------------------ >> trace/mem-internal.h | 17 ---------- >> 2 files changed, 24 insertions(+), 60 deletions(-) >> >> diff --git a/accel/tcg/atomic_template.h b/accel/tcg/atomic_template.h >> index 837676231f..26969487d6 100644 >> --- a/accel/tcg/atomic_template.h >> +++ b/accel/tcg/atomic_template.h >> @@ -64,13 +64,10 @@ >> the ATOMIC_NAME macro, and redefined below. */ >> #if DATA_SIZE == 1 >> # define END >> -# define MEND _be /* either le or be would be fine */ >> #elif defined(HOST_WORDS_BIGENDIAN) >> # define END _be >> -# define MEND _be >> #else >> # define END _le >> -# define MEND _le >> #endif >> >> ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, target_ulong addr, >> @@ -79,8 +76,8 @@ ABI_TYPE ATOMIC_NAME(cmpxchg)(CPUArchState *env, >> target_ulong addr, >> ATOMIC_MMU_DECLS; >> DATA_TYPE *haddr = ATOMIC_MMU_LOOKUP; >> DATA_TYPE ret; >> - uint16_t info = glue(trace_mem_build_info_no_se, MEND)(SHIFT, false, >> - ATOMIC_MMU_IDX); >> + uint16_t info = trace_mem_build_info(SHIFT, false, 0, false, > > What is MEND meant to be? Shouldn't we use the appropriate MO_TE instead > of 0 for these helpers?
See the first hunk, where MEND is removed. It's based on HOST_WORDS_BIGENDIAN, so no we don't use MO_TE. r~