[PATCH] D53184: [LangRef] Clarify semantics of volatile operations.
JF Bastien via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 28 11:35:06 PST 2019
jfb added inline comments.
================
Comment at: llvm/trunk/docs/LangRef.rst:2196
+may not modify any other memory accessible by the module being compiled.
+A volatile operation may not call any code in the current module.
+
----------------
Sorry for missing the initial discussion. This disallows using `mmap` to map the same physical memory into two different virtual addresses in the same process. In C++ `volatile` loads and stores exist to denote "external modifications", where "external" is w.r.t. the abstract machine. It seems like a misstep to say that "A volatile operation may not modify any other memory accessible by the module being compiled."
Repository:
rL LLVM
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D53184/new/
https://reviews.llvm.org/D53184
More information about the llvm-commits
mailing list