| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 74253
|
| |
|
|
|
|
|
|
| |
- They can be overriden on the command line as well.
Add -teelogs option, which will also print the various logs on stdout.
llvm-svn: 74252
|
| |
|
|
|
|
| |
and llvm.dbg.global_variables.
llvm-svn: 74251
|
| |
|
|
| |
llvm-svn: 74250
|
| |
|
|
| |
llvm-svn: 74249
|
| |
|
|
| |
llvm-svn: 74248
|
| |
|
|
| |
llvm-svn: 74247
|
| |
|
|
| |
llvm-svn: 74246
|
| |
|
|
| |
llvm-svn: 74245
|
| |
|
|
| |
llvm-svn: 74244
|
| |
|
|
| |
llvm-svn: 74243
|
| |
|
|
|
|
|
| |
an invoke instruction, since the value isn't really live across that
edge.
llvm-svn: 74242
|
| |
|
|
| |
llvm-svn: 74241
|
| |
|
|
| |
llvm-svn: 74240
|
| |
|
|
| |
llvm-svn: 74239
|
| |
|
|
| |
llvm-svn: 74238
|
| |
|
|
| |
llvm-svn: 74237
|
| |
|
|
| |
llvm-svn: 74236
|
| |
|
|
| |
llvm-svn: 74235
|
| |
|
|
| |
llvm-svn: 74234
|
| |
|
|
| |
llvm-svn: 74233
|
| |
|
|
|
|
|
|
|
| |
For a FunctionDecl that has been instantiated due to template argument
deduction, we now store the primary template from which it was
instantiated and the deduced template arguments. From this
information, we can instantiate the body of the function template.
llvm-svn: 74232
|
| |
|
|
| |
llvm-svn: 74231
|
| |
|
|
| |
llvm-svn: 74230
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
GRTransferFuncs had the conflated role of both constructing SVals (symbolic
expressions) as well as handling checker-specific logic. Now SValuator has the
role of constructing SVals from expressions and GRTransferFuncs just handles
checker-specific logic. The motivation is by separating these two concepts we
will be able to much more easily create richer constraint-generating logic
without coupling it to the main checker transfer function logic.
We now have one implementation of SValuator: SimpleSValuator.
SimpleSValuator is essentially the SVal-related logic that was in GRSimpleVals
(which is removed in this patch). This includes the logic for EvalBinOp,
EvalCast, etc. Because SValuator has a narrower role than the old
GRTransferFuncs, the interfaces are much simpler, and so is the implementation
of SimpleSValuator compared to GRSimpleVals. I also did a line-by-line review of
SVal-related logic in GRSimpleVals and cleaned it up while moving it over to
SimpleSValuator.
As a consequence of removing GRSimpleVals, there is no longer a
'-checker-simple' option. The '-checker-cfref' did everything that option did
but also ran the retain/release checker. Of course a user may not always wish to
run the retain/release checker, nor do we wish core analysis logic buried in the
checker-specific logic. The next step is to refactor the logic in CFRefCount.cpp
to separate out these pieces into the core analysis engine.
llvm-svn: 74229
|
| |
|
|
|
|
| |
bit def is not used.
llvm-svn: 74228
|
| |
|
|
| |
llvm-svn: 74227
|
| |
|
|
| |
llvm-svn: 74226
|
| |
|
|
| |
llvm-svn: 74225
|
| |
|
|
| |
llvm-svn: 74224
|
| |
|
|
| |
llvm-svn: 74223
|
| |
|
|
|
|
| |
ThreadLocal.
llvm-svn: 74222
|
| |
|
|
| |
llvm-svn: 74221
|
| |
|
|
| |
llvm-svn: 74220
|
| |
|
|
| |
llvm-svn: 74219
|
| |
|
|
| |
llvm-svn: 74218
|
| |
|
|
| |
llvm-svn: 74217
|
| |
|
|
| |
llvm-svn: 74216
|
| |
|
|
| |
llvm-svn: 74215
|
| |
|
|
| |
llvm-svn: 74214
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
templates.
For example, this now type-checks (but does not instantiate the body
of deref<int>):
template<typename T> T& deref(T* t) { return *t; }
void test(int *ip) {
int &ir = deref(ip);
}
Specific changes/additions:
* Template argument deduction from a call to a function template.
* Instantiation of a function template specializations (just the
declarations) from the template arguments deduced from a call.
* FunctionTemplateDecls are stored directly in declaration contexts
and found via name lookup (all forms), rather than finding the
FunctionDecl and then realizing it is a template. This is
responsible for most of the churn, since some of the core
declaration matching and lookup code assumes that all functions are
FunctionDecls.
llvm-svn: 74213
|
| |
|
|
| |
llvm-svn: 74212
|
| |
|
|
| |
llvm-svn: 74211
|
| |
|
|
| |
llvm-svn: 74210
|
| |
|
|
|
|
| |
Windows people, please double-check/patch this.
llvm-svn: 74209
|
| |
|
|
| |
llvm-svn: 74208
|
| |
|
|
| |
llvm-svn: 74207
|
| |
|
|
| |
llvm-svn: 74206
|
| |
|
|
| |
llvm-svn: 74205
|
| |
|
|
| |
llvm-svn: 74204
|