On 06/27/2014 10:04 AM, Uros Bizjak wrote: > This happened due to the way stores to QImode and HImode locations are > implemented on non-BWX targets. The sequence reads full word, does its > magic to the part and stores the full word with changed part back to > the memory. However - the scheduler mixed two sequences, violating the > atomicity of RMW sequence.
Except that addresses with AND in them (ldq_u, stq_u) are already supposed to be memory barriers. So you shouldn't need to add such to them again. I think something else has gone wrong somewhere. r~