db: introduce db_ignore_states()
commitceea60ce7d04c4e09a5ff3e992974beeaab0eb72
authorDan Carpenter <dan.carpenter@oracle.com>
Mon, 14 May 2018 11:02:58 +0000 (14 14:02 +0300)
committerDan Carpenter <dan.carpenter@oracle.com>
Mon, 14 May 2018 11:02:58 +0000 (14 14:02 +0300)
treed3ab13feaa700c035e608b706424a0acd4078fa1
parente3d244e0077444da72f926298bb8c843498a3bf8
db: introduce db_ignore_states()

The story is at that the end of the function we look at how many states we
have and determine how to record that in the database.  So say we have
over 10k states then we decide that's too much, throw everything out.  If
we have under 5000 then we split the return into NULL/non-NULL or whatever.
If we have even fewer states, we might divide the returns up even more
which provides more detailed information about the return implications.

But the problem is that many states aren't recorded in the database so we
don't really care about them.  The number of states only roughly
corresponds to the number of entries in the database.  Link states aren't
recorded but there are tons of them.  This gives us a way to ignore those
states.

Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
check_assigned_expr.c
smatch.h
smatch_db.c