https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98737
Richard Biener <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Last reconfirmed| |2021-01-19 Keywords| |missed-optimization Ever confirmed|0 |1 Target|x86 |x86_64-*-* i?86-*-* --- Comment #1 from Richard Biener <rguenth at gcc dot gnu.org> --- Confirmed. Probably difficult to achieve since the atomics map to parallel/UNSPEC: (insn 7 6 8 (parallel [ (set (reg:DI 83 [ _2 ]) (unspec_volatile:DI [ (mem/v:DI (symbol_ref:DI ("a") [flags 0x2] <var_decl 0x7ffff7ff5b40 a>) [-1 S8 A64]) (const_int 3 [0x3]) ] UNSPECV_XCHG)) (set (mem/v:DI (symbol_ref:DI ("a") [flags 0x2] <var_decl 0x7ffff7ff5b40 a>) [-1 S8 A64]) (plus:DI (mem/v:DI (symbol_ref:DI ("a") [flags 0x2] <var_decl 0x7ffff7ff5b40 a>) [-1 S8 A64]) (reg:DI 86))) (clobber (reg:CC 17 flags)) ]) "t.c":5:10 -1 (nil))