[PATCH] D68514: [PATCH 30/38] [noalias] Introduce ConnectNoAliasDecl pass

Jeroen Dobbelaere via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Oct 4 15:11:36 PDT 2019


jeroen.dobbelaere created this revision.
jeroen.dobbelaere added reviewers: hfinkel, jdoerfert.
Herald added subscribers: llvm-commits, hiraditya, mgorny, mehdi_amini.
Herald added a project: LLVM.

This is part of the series started by D68484 <https://reviews.llvm.org/D68484>.

This pass connects llvm.noalias.decl to llvm.noalias, llvm.side.noalias
and llvm.noalias.copy.guard intrinsics when those are associated with the
unknown function scope and depend on the same alloca object. The connection
allows a refinement of the noalias information for those intrinsics, resulting
in better code.

Note: this is a stable point and tests should run fine with the patches applied up to this point.


https://reviews.llvm.org/D68514

Files:
  llvm/include/llvm/InitializePasses.h
  llvm/include/llvm/Transforms/Scalar.h
  llvm/include/llvm/Transforms/Scalar/ConnectNoAliasDecl.h
  llvm/include/llvm/Transforms/Utils/Cloning.h
  llvm/lib/Passes/PassBuilder.cpp
  llvm/lib/Passes/PassRegistry.def
  llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
  llvm/lib/Transforms/Scalar/CMakeLists.txt
  llvm/lib/Transforms/Scalar/ConnectNoAliasDecl.cpp
  llvm/lib/Transforms/Scalar/Scalar.cpp
  llvm/test/Other/opt-O2-pipeline.ll
  llvm/test/Other/opt-O3-pipeline.ll
  llvm/test/Other/opt-Os-pipeline.ll
  llvm/test/Transforms/ConnectNoAliasDecl/basictest.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D68514.223317.patch
Type: text/x-patch
Size: 26288 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20191004/b6282849/attachment-0001.bin>


More information about the llvm-commits mailing list