On Wed, 10 May 2023 13:00:46 +0200 David Brown via Gcc <gcc@gcc.gnu.org> wrote:
> or that function calls always act as a > memory barrier. Hi David, [off list] Could you tell me more about that, and where I could read about it? I've only been using C since 1985, so just a beginner, I guess. ;-) As a matter of C semantics, I can't see how a function call could be anything but a memory barrier. The arguments have to be resolved before the function is called, else there's no value to provide. And the function has to determine its return value prior to returning. I can imagine in the face of multithreading that things become murky, but that's the nature of multithreading as commonly implemented. It's outside C semantics. I'm genuinely curious what it is your referring to, in case my understanding is out of date. --jkl