It's a page to find out is it a bug in GCC or not. The question is this a bug or some expected behaviour?
TL;DR GCC do extra unnecessary copy(with memcpy call) if
asm volatile("" : "+m,r"(value) : : "memory");
is used and value is a large object. It's important for NotNotOptimize() function in
Google Benchmark (see the bug)