Skip to content

Commit 35c65de

Browse files
committed
target/s390x: Use MO_128 for 16 byte atomics
Reviewed-by: David Hildenbrand <[email protected]> Reviewed-by: Philippe Mathieu-Daudé <[email protected]> Signed-off-by: Richard Henderson <[email protected]>
1 parent 68e33d8 commit 35c65de

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

target/s390x/tcg/mem_helper.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1811,7 +1811,7 @@ void HELPER(cdsg_parallel)(CPUS390XState *env, uint64_t addr,
18111811
assert(HAVE_CMPXCHG128);
18121812

18131813
mem_idx = cpu_mmu_index(env, false);
1814-
oi = make_memop_idx(MO_TEQ | MO_ALIGN_16, mem_idx);
1814+
oi = make_memop_idx(MO_TE | MO_128 | MO_ALIGN, mem_idx);
18151815
oldv = cpu_atomic_cmpxchgo_be_mmu(env, addr, cmpv, newv, oi, ra);
18161816
fail = !int128_eq(oldv, cmpv);
18171817

@@ -1940,7 +1940,7 @@ static uint32_t do_csst(CPUS390XState *env, uint32_t r3, uint64_t a1,
19401940
cpu_stq_data_ra(env, a1 + 0, int128_gethi(nv), ra);
19411941
cpu_stq_data_ra(env, a1 + 8, int128_getlo(nv), ra);
19421942
} else if (HAVE_CMPXCHG128) {
1943-
MemOpIdx oi = make_memop_idx(MO_TEQ | MO_ALIGN_16, mem_idx);
1943+
MemOpIdx oi = make_memop_idx(MO_TE | MO_128 | MO_ALIGN, mem_idx);
19441944
ov = cpu_atomic_cmpxchgo_be_mmu(env, a1, cv, nv, oi, ra);
19451945
cc = !int128_eq(ov, cv);
19461946
} else {

0 commit comments

Comments
 (0)