qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v3 13/34] tcg: Add atomic helpers


From: Richard Henderson
Subject: Re: [Qemu-devel] [PATCH v3 13/34] tcg: Add atomic helpers
Date: Mon, 12 Sep 2016 09:13:10 -0700
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0

On 09/12/2016 12:59 AM, Leon Alrae wrote:
On Fri, Sep 09, 2016 at 09:26:29AM -0700, Richard Henderson wrote:
On 09/09/2016 07:46 AM, Leon Alrae wrote:
Wouldn't it be useful if tcg.h provided also aliases for _le/_be atomic
helpers (equivalent to helper_ret_X_mmu) so that in target-* code we wouldn't
need to care about the endianness (specifically I'm thinking about SC in MIPS
where I need to select between helper_atomic_cmpxchgl_le_mmu() and
helper_atomic_cmpxchgl_be_mmu()).

Perhaps.  I would have hoped that you could do the SC inline now
though, and tcg_gen_atomic_cmpxchg() will do the selection for you.

On every SC we need to do the virtual -> physical address translation as we
have to compare the physical address against that of the preceeding LL.
This operation seems too complex to be inlined :(

What happens if you do virtual address comparisons, like everyone else? It might not be strictly correct, but in practice I bet its no worse than using cmpxchg in the first place.


r~



reply via email to

[Prev in Thread] Current Thread [Next in Thread]