]> granicus.if.org Git - clang/commit
[analyzer] Cache whether a function is generally inlineable.
authorJordan Rose <jordan_rose@apple.com>
Tue, 2 Apr 2013 00:26:29 +0000 (00:26 +0000)
committerJordan Rose <jordan_rose@apple.com>
Tue, 2 Apr 2013 00:26:29 +0000 (00:26 +0000)
commitc9092bb5eb67d859122abb69a0ef61e9249500cd
treef6475550da4d4f1dea9755cf80896cc83dd57307
parent992acb2269171b6ef68694d71a36f6b7408d8e82
[analyzer] Cache whether a function is generally inlineable.

Certain properties of a function can determine ahead of time whether or not
the function is inlineable, such as its kind, its signature, or its
location. We can cache this value in the FunctionSummaries map to avoid
rechecking these static properties for every call.

Note that the analyzer may still decide not to inline a specific call to
a function because of the particular dynamic properties of the call along
the current path.

No intended functionality change.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@178515 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp