[PATCH] D29064: [MemorySSA] Add invariant.group handling

Piotr Padlewski via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jan 23 18:03:50 PST 2017


Prazek created this revision.

Now loads with invariant group will have the same
MemoryUse as dominating store/load with the same
invariant.group and pointer operand.

The algorithm is O(#invariant.group loads/stores in function),
which is much better compared to O(n^2) in MemDep.

NewGVN now handles some devirtualization cases, but
unfortunatelly not all of them.


https://reviews.llvm.org/D29064

Files:
  include/llvm/Transforms/Utils/MemorySSA.h
  lib/Transforms/Utils/MemorySSA.cpp
  test/Transforms/Util/MemorySSA/invariant-groups.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D29064.85508.patch
Type: text/x-patch
Size: 17925 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170124/c1d5e5d3/attachment.bin>


More information about the llvm-commits mailing list