diff options
author | Max Kazantsev <max.kazantsev@azul.com> | 2018-08-15 06:21:02 +0000 |
---|---|---|
committer | Max Kazantsev <max.kazantsev@azul.com> | 2018-08-15 06:21:02 +0000 |
commit | 5a10d127b959133dc17e7ab1a0b4a25ab16f8668 (patch) | |
tree | e5139f256e859d0040210d6fdc02ca3cdd2729d8 /llvm/cmake/modules/AddLLVM.cmake | |
parent | 530b8d1c3d6a316b1e7c33471a38bc4d7dfb56dd (diff) | |
download | bcm5719-llvm-5a10d127b959133dc17e7ab1a0b4a25ab16f8668.tar.gz bcm5719-llvm-5a10d127b959133dc17e7ab1a0b4a25ab16f8668.zip |
[AliasSetTracker] Do not treat experimental_guard intrinsic as memory writing instruction
The `experimental_guard` intrinsic has memory write semantics to model the thread-exiting
logic, but does not do any actual writes to memory. Currently, `AliasSetTracker` treats it as a
normal memory write. As result, a loop-invariant load cannot be hoisted out of loop because
the guard may possibly alias with it.
This patch makes `AliasSetTracker` so that it doesn't treat guards as memory writes.
Differential Revision: https://reviews.llvm.org/D50497
Reviewed By: reames
llvm-svn: 339753
Diffstat (limited to 'llvm/cmake/modules/AddLLVM.cmake')
0 files changed, 0 insertions, 0 deletions