]> granicus.if.org Git - clang/commit
[StaticAnalyzer] LoopUnrolling: Track a LoopStack in order to completely unroll speci...
authorPeter Szecsi <szepet95@gmail.com>
Mon, 21 Aug 2017 16:32:57 +0000 (16:32 +0000)
committerPeter Szecsi <szepet95@gmail.com>
Mon, 21 Aug 2017 16:32:57 +0000 (16:32 +0000)
commitaae6854ddbaf79d897b5dc39897e916e256bdd75
tree742ccced944461361db79db3cf85b2f83351479a
parent4bd8b99c54fb6bf45036447e89e4190f0a4ba6e1
[StaticAnalyzer] LoopUnrolling: Track a LoopStack in order to completely unroll specific loops

The LoopExit CFG information provides the opportunity to not mark the loops but
having a stack which tracks if a loop is unrolled or not. So in case of
simulating a loop we just add it and the information if it meets the
requirements to be unrolled to the top of the stack.

Differential Revision: https://reviews.llvm.org/D35684

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@311346 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/StaticAnalyzer/Core/PathSensitive/LoopUnrolling.h
lib/StaticAnalyzer/Core/ExprEngine.cpp
lib/StaticAnalyzer/Core/LoopUnrolling.cpp
test/Analysis/loop-unrolling.cpp