[cfe-commits] r160991 - in /cfe/trunk: include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h lib/StaticAnalyzer/Core/CallEvent.cpp lib/StaticAnalyzer/Core/ProgramState.cpp lib/StaticAnalyzer/Core/Store.cpp test/Analysis/inlining/InlineObjCInstanceMethod.h test/Analysis/inlining/InlineObjCInstanceMethod.m
jahanian
fjahanian at apple.com
Mon Jul 30 14:15:15 PDT 2012
On Jul 30, 2012, at 1:31 PM, Anna Zaks wrote:
> Author: zaks
> Date: Mon Jul 30 15:31:29 2012
> New Revision: 160991
>
> URL: http://llvm.org/viewvc/llvm-project?rev=160991&view=rev
> Log:
> [analyzer] Very simple ObjC instance method inlining
>
> - Retrieves the type of the object/receiver from the state.
> - Binds self during stack setup.
> - Only explores the path on which the method is inlined (no
> bifurcation to explore the path on which the method is not inlined).
>
> Added:
> cfe/trunk/test/Analysis/inlining/InlineObjCInstanceMethod.h
> cfe/trunk/test/Analysis/inlining/InlineObjCInstanceMethod.m
> Modified:
> cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
> cfe/trunk/include/clang/StaticAnalyzer/Core/PathSensitive/ProgramState.h
> cfe/trunk/lib/StaticAnalyzer/Core/CallEvent.cpp
> cfe/trunk/lib/StaticAnalyzer/Core/ProgramState.cpp
> cfe/trunk/lib/StaticAnalyzer/Core/Store.cpp
>
>
> - // Method = LookupPrivateInstanceMethod(Sel, ClassDecl);
> +const Decl *ObjCMethodCall::getRuntimeDefinition() const {
> + const ObjCMessageExpr *E = getOriginExpr();
> + Selector Sel = E->getSelector();
> + assert(E);
assert goes before its first use.
- fariborz
More information about the cfe-commits
mailing list