https://gcc.gnu.org/bugzilla/show_bug.cgi?id=118280
Gopi Kumar Bulusu <gopi at sankhya dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |gopi at sankhya dot com --- Comment #25 from Gopi Kumar Bulusu <gopi at sankhya dot com> --- Created attachment 61903 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=61903&action=edit Revised patch for the issue Atomic support enhanced to fix existing atomic_compare_and_swapsi pattern to handle side effects; new patterns atomic_fetch_op and atomic_test_and_set added. As MicroBlaze has no QImode test/set instruction, use shift magic to implement atomic_test_and_set. This fixes PR118280. With this patch g++ compiler can be used to build programs. In particular - this libstdc++ test case (which failed build/execution without the patch) builds and runs correctly after the patch PASS: 29_atomics/atomic_flag/clear/1.cc -std=gnu++17 execution test