[PATCH] D156055: [NewGVN][PHIOFOPS] Relax conditions when checking safety of memory accesses

Manuel Brito via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Jul 23 07:39:35 PDT 2023


ManuelJBrito created this revision.
ManuelJBrito added reviewers: nlopes, asbirlea, kmitropoulou.
Herald added a subscriber: hiraditya.
Herald added a project: All.
ManuelJBrito requested review of this revision.
Herald added a project: LLVM.
Herald added a subscriber: llvm-commits.

Currently, we consider any instruction that might read from memory to be unsafe for phi-of-ops. 
This patch refines that by walking the memDef/memPhis until we either hit a block that strictly dominates the phi block (safe) or we hit a clobbering memPhi in the same block has the phi block(unsafe). This is analogous to how "regular " SSA values are handled.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D156055

Files:
  llvm/lib/Transforms/Scalar/NewGVN.cpp
  llvm/test/Transforms/NewGVN/phi-of-ops-loads.ll
  llvm/test/Transforms/NewGVN/storeoverstore.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D156055.543281.patch
Type: text/x-patch
Size: 9591 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20230723/410f1c01/attachment.bin>


More information about the llvm-commits mailing list