[LLVMdev] A question w.r.t fence instruction vs. noalias pointer
Eli Friedman
eli.friedman at gmail.com
Thu Jun 13 11:18:13 PDT 2013
On Thu, Jun 13, 2013 at 10:52 AM, Guo, Xiaoyi <Xiaoyi.Guo at amd.com> wrote:
> I mean something like a target-specific fence machine instruction which
> forces ordering of all loads/stores. I want to clarify the meaning of
> “noalias” in this case. Is the fence machine instruction considered
> “touching” all memory and thus breaks the “noalias” contract?
>
A fence doesn't modify memory in the sense LLVM cares about. It's a no-op
in a single-threaded environment, and in a multi-threaded environment it's
just a way to express ordering on memory modifications made by other
threads.
-Eli
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130613/42b9dd40/attachment.html>
More information about the llvm-dev
mailing list