[PATCH] D12357: [PM] Add full support for alias analyses to the new pass manager, and port aa-eval to the new pass manager to test this support.

Chandler Carruth via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 26 01:56:40 PDT 2015


chandlerc created this revision.
chandlerc added a subscriber: llvm-commits.
chandlerc added a dependency: D12080: [PM/AA] Rebuild LLVM's alias analysis infrastructure in a way compatible with the new pass manager, and no longer relying on analysis groups..
Herald added a subscriber: sanjoy.

This rigs up command line parsing of custom AA chains, the per-analysis
commandline parsing, and other infrastructure for the new pass manager.
It also port the AliasAnalysisEvaluator over to the new pass manager,
rigs it up, and uses the combination to run several alias analysis tests
in both legacy and new pass managers.

It also fixes some of the infrastructure in the AA layer for the new
pass manager now that we can effectively test the entire setup, and
I was able to uncover the underlying problems.

With this, the new pass manager support for AA should be sufficient to
port passes requiring AA, and should be functionally complete outside of
testing some of the finer points such as pre-requiring a non-function
analysis.

Depends on D12080.

http://reviews.llvm.org/D12357

Files:
  include/llvm/Analysis/AliasAnalysis.h
  include/llvm/Analysis/AliasAnalysisEvaluator.h
  include/llvm/Analysis/CFLAliasAnalysis.h
  include/llvm/Analysis/GlobalsModRef.h
  include/llvm/Analysis/Passes.h
  include/llvm/InitializePasses.h
  include/llvm/LinkAllPasses.h
  include/llvm/Passes/PassBuilder.h
  lib/Analysis/AliasAnalysis.cpp
  lib/Analysis/AliasAnalysisEvaluator.cpp
  lib/Analysis/Analysis.cpp
  lib/Analysis/CFLAliasAnalysis.cpp
  lib/Analysis/GlobalsModRef.cpp
  lib/Passes/PassBuilder.cpp
  lib/Passes/PassRegistry.def
  test/Analysis/BasicAA/phi-aa.ll
  test/Analysis/CFLAliasAnalysis/basic-interproc.ll
  test/Analysis/ScopedNoAliasAA/basic.ll
  test/Analysis/TypeBasedAliasAnalysis/placement-tbaa.ll
  tools/opt/NewPMDriver.cpp
  unittests/Analysis/MixedTBAATest.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D12357.33188.patch
Type: text/x-patch
Size: 33272 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150826/008bf61a/attachment.bin>


More information about the llvm-commits mailing list