summaryrefslogtreecommitdiffstats
path: root/llvm/docs/SourceLevelDebugging.html
diff options
context:
space:
mode:
authorAnna Zaks <ganna@apple.com>2011-11-08 19:56:35 +0000
committerAnna Zaks <ganna@apple.com>2011-11-08 19:56:35 +0000
commit0d58033bdb5e493d2bddb24c2d797d79e900f22a (patch)
treee76936aa958e667d5a3ed57dbd077076216635c2 /llvm/docs/SourceLevelDebugging.html
parent767d356f878ef7b1f0b9edbcee48561f42b7a36f (diff)
downloadbcm5719-llvm-0d58033bdb5e493d2bddb24c2d797d79e900f22a.tar.gz
bcm5719-llvm-0d58033bdb5e493d2bddb24c2d797d79e900f22a.zip
[analyzer] Remove redundant check from DivZeroChecker
Analysis by Ted: " if (stateZero && !stateNotZero) { is checking to see if: (A) "it is possible for the value to be zero" (stateZero) AND (B) "it is not possible for the value to be non-zero" (!stateNotZero) That said, the only way for both B to be true AND A to be false is if the path is completely infeasible by the time we reach the divide-by-zero check. For the most part (all cases?), such cases should automatically get pruned out at branches (i.e., an infeasible path gets dropped), which is the case in our tests. So the question is whether or not such an infeasible path might not get dropped earlier? I can't envision any right now. Indeed, the rest of the checker assumes that if the bug condition didn't fire then 'stateNotZero' is non-NULL: C.addTransition(stateNotZero); " llvm-svn: 144114
Diffstat (limited to 'llvm/docs/SourceLevelDebugging.html')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud