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 :(