[PATCH] D47893: Add a PhiValuesAnalysis pass to calculate the underlying values of phis

John Brawn via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jun 7 10:54:27 PDT 2018


john.brawn created this revision.
john.brawn added reviewers: mkazantsev, wmi, reames, dberlin, efriedma, sebpop.
Herald added a subscriber: mgorny.

This pass is being added in order to make the information available to BasicAA, which can't do caching of this information itself, but possibly this information may be useful for other passes.

The general approach is to do something like AssumptionCache, where we use value handles to cope with changes to the function so that everything behaves correctly when a pass that uses PhiValueAnalysis modifies the function. However we do things differently in that we only process phis as they are needed, instead of doing the whole function in one go, as that means we can also cope with phis being added to the function.


Repository:
  rL LLVM

https://reviews.llvm.org/D47893

Files:
  include/llvm/Analysis/PhiValues.h
  include/llvm/InitializePasses.h
  lib/Analysis/CMakeLists.txt
  lib/Analysis/PhiValues.cpp
  lib/Passes/PassBuilder.cpp
  lib/Passes/PassRegistry.def
  test/Analysis/PhiValues/basic.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D47893.150360.patch
Type: text/x-patch
Size: 20617 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180607/fd9fbfe1/attachment.bin>


More information about the llvm-commits mailing list