aboutsummaryrefslogtreecommitdiff
path: root/clang/unittests/Frontend/CompilerInvocationTest.cpp
diff options
context:
space:
mode:
authorYevgeny Rouban <yrouban@azul.com>2021-04-06 11:55:18 +0700
committerYevgeny Rouban <yrouban@azul.com>2021-04-06 12:35:49 +0700
commit39e3e3aa51d628722637c1bfa507f9ec2c532120 (patch)
tree6395a6a6e1f8163aa2e215eb34a1bdf32867abfb /clang/unittests/Frontend/CompilerInvocationTest.cpp
parent22411d80723860cd050eab072bb10abd7a2ae526 (diff)
downloadllvm-39e3e3aa51d628722637c1bfa507f9ec2c532120.zip
llvm-39e3e3aa51d628722637c1bfa507f9ec2c532120.tar.gz
llvm-39e3e3aa51d628722637c1bfa507f9ec2c532120.tar.bz2
[NewPM] Redesign of PreserveCFG Checker
The reason for the NewPM redesign is described in the commit cba3e783389a: [NewPM] Disable PreservedCFGChecker ... The checker introduces an internal custom CFG analysis that tracks current up-to date CFG snapshot. The analysis is invalidated along any other CFG related analysis (the key is CFGAnalyses). If the CFG analysis is not invalidated at a functional pass exit then the checker asserts that the CFG snapshot taken from this analysis is equals to a snapshot of the current CFG. Along the way: - the function CFG::printDiff() is simplified by removing function name calculation. The name is printed by the caller; - fixed CFG invalidated condition (see CFG::invalidate()); - StandardInstrumentations::registerCallbacks() gets additional optional parameter of type FunctionAnalysisManager*, which is needed by the checker to get the custom CFG analysis; - several PM related tests updated to explicitly set -verify-cfg-preserved=1 as they need. This patch is safe to land as the CFGChecker is left switched off (the options -verify-cfg-preserved is false by default). It will be switched on by a separate patch to minimize possible reverts. Reviewed By: skatkov, kuhar Differential Revision: https://reviews.llvm.org/D91327
Diffstat (limited to 'clang/unittests/Frontend/CompilerInvocationTest.cpp')
0 files changed, 0 insertions, 0 deletions