search for: visitatomicrmwinst

Displaying 1 result from an estimated 1 matches for "visitatomicrmwinst".

2020 Feb 10
3
atomic ops are optimized with incorrect semantics .
Hi All, With the "https://gcc.godbolt.org/z/yBYTrd" case . the atomic is converted to non atomic ops for x86 like from xchg dword ptr [100], eax to mov dword ptr [100], 1 the pass is responsible for this tranformation was instCombine i.e InstCombiner::visitAtomicRMWInst which converts the IR like %0 = atomicrmw xchg i32* inttoptr (i64 100 to i32*), i32 1 monotonic to store atomic i32 1, i32* inttoptr (i64 100 to i32*) monotonic, align 4 which is valid for relax(monotonic) and release ordering as per the code out there. we think that,its the inst lowering issu...