]> granicus.if.org Git - clang/commit
Call inliner improvements:
authorZhongxing Xu <xuzhongxing@gmail.com>
Thu, 25 Feb 2010 06:46:30 +0000 (06:46 +0000)
committerZhongxing Xu <xuzhongxing@gmail.com>
Thu, 25 Feb 2010 06:46:30 +0000 (06:46 +0000)
commit833e50e6a2c246dbc4b3c17b7c9d657c5b5d333e
treef7875c5697bd227e57c7390de7ca373aeee6e742
parentdf61b580cea757cc72723ae95c1d5da603129f2c
Call inliner improvements:

This patch implements the CallEnter/CallExit idea of Ted.

Add two interfaces to GRSubEngine: ProcessCallEnter, ProcessCallExit.

The CallEnter program point uses caller's location context. The
CallExit program point uses callee's location context.

CallEnter is built by GRStmtNodeBuilder. CallExit is built by
GREndPathNodeBuilder.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@97122 91177308-0d34-0410-b5e6-96231b3b80d8
include/clang/Analysis/ProgramPoint.h
include/clang/Checker/PathSensitive/Checker.h
include/clang/Checker/PathSensitive/GRCoreEngine.h
include/clang/Checker/PathSensitive/GRExprEngine.h
include/clang/Checker/PathSensitive/GRSubEngine.h
lib/Checker/CallInliner.cpp
lib/Checker/GRCoreEngine.cpp
lib/Checker/GRExprEngine.cpp