| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 107871
|
| |
|
|
| |
llvm-svn: 107870
|
| |
|
|
|
|
|
|
|
|
|
| |
list in a diagnostic group so it can be turned on and off. A terrifying amount
of code, including large chunks of open source code, still do this so it's
important to be able to suppress it when necessary.
Doug, is this a reasonable compromise? I'd lean toward making it a normal
extension, but I don't feel strongly as long as we can turn the warnings off.
llvm-svn: 107865
|
| |
|
|
|
|
|
|
| |
unknown attributes that we discard. Add a diagnostic group for unknown
attribute warnings to allow turning these off when we don't care. Also
consolidates the tests for this case.
llvm-svn: 107864
|
| |
|
|
| |
llvm-svn: 107863
|
| |
|
|
|
|
| |
as well.
llvm-svn: 107858
|
| |
|
|
|
|
| |
suppressing copies of objects with trivial copy constructors.
llvm-svn: 107857
|
| |
|
|
| |
llvm-svn: 107845
|
| |
|
|
|
|
|
|
|
|
|
| |
was not producing a memcpy with the right address
spaces because of two places in it doing casts of
the arguments to i8, one of which that didn't
preserve the address space.
There is also an optimizer bug here.
llvm-svn: 107842
|
| |
|
|
| |
llvm-svn: 107841
|
| |
|
|
| |
llvm-svn: 107838
|
| |
|
|
|
|
| |
breaking bootstrap on Linux.
llvm-svn: 107837
|
| |
|
|
| |
llvm-svn: 107836
|
| |
|
|
|
|
| |
is still in flux and unclear, and our interim workaround was broken. Fixes PR7467.
llvm-svn: 107835
|
| |
|
|
|
|
|
|
| |
typedefs won't have the same canonical declaration (since they are
distinct), so we need to check for this case specifically. Fixes
<rdar://problem/8018262>.
llvm-svn: 107833
|
| |
|
|
|
|
| |
newly-narrowed scope. No functionality change.
llvm-svn: 107828
|
| |
|
|
|
|
|
|
|
| |
CXXConstructExpr/CXXTemporaryObjectExpr/CXXNewExpr as
appropriate. Fixes PR7556, and provides a slide codegen improvement
when copy-initializing a POD class type from a value-initialized
temporary. Previously, we weren't eliding the copy.
llvm-svn: 107827
|
| |
|
|
| |
llvm-svn: 107824
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
VisitFooTypeLoc() calls VisitFooType(); now, TraverseFooTypeLoc()
calls WalkUpFromFooType(). This allows clients that override
WalkUpFromFooType() to continue to work. It also preserves the
property that Visit*() in the base visitor class is a no-op (s.t. a
subclass doesn't have to call Base::Visit*() when overriding
Visit*()).
Also fixes some typos in comments.
Also added a missing getDerived() inside
TraverseQualifiedTypeLoc(). The call is needed in case a subclass
overrides TraverseTypeLoc().
Reviewed by nlewycky and csilvers.
llvm-svn: 107816
|
| |
|
|
|
|
| |
BumpPtrAllocator
llvm-svn: 107790
|
| |
|
|
|
|
| |
from PR7583
llvm-svn: 107788
|
| |
|
|
| |
llvm-svn: 107784
|
| |
|
|
|
|
|
|
| |
in recursive loading and the
declarations are fully initialized.
llvm-svn: 107783
|
| |
|
|
| |
llvm-svn: 107773
|
| |
|
|
| |
llvm-svn: 107772
|
| |
|
|
|
|
|
|
| |
This has 2 (slight) advantages:
-Make explicit at getBody()'s callsite that we expect/handle only CompoundStmt and not CXXTryStmt.
-Better tracking of Decl::getBody()'s callsites.
llvm-svn: 107771
|
| |
|
|
| |
llvm-svn: 107770
|
| |
|
|
| |
llvm-svn: 107769
|
| |
|
|
|
|
|
|
| |
of getBody() when we are just checking the existence of a body, to avoid de-serialization of the body from PCH.
Makes de-serialization of the function body even more "lazier".
llvm-svn: 107768
|
| |
|
|
|
|
| |
the buffer arguments and have a special-case for when the buffer arguments are known to be the same address, or when the size is zero.
llvm-svn: 107761
|
| |
|
|
| |
llvm-svn: 107760
|
| |
|
|
|
|
| |
arguments...which are allowed if the access length is 0!
llvm-svn: 107759
|
| |
|
|
|
|
| |
rethrow. Fixes rdar://problem/7696603
llvm-svn: 107757
|
| |
|
|
|
|
|
|
| |
people seem to write when they want a deterministic trap.
Suggest instead that they use a volatile pointer or
__builtin_trap.
llvm-svn: 107756
|
| |
|
|
|
|
| |
Fixes rdar://problem/8154689
llvm-svn: 107755
|
| |
|
|
|
|
|
|
|
|
|
| |
VisitTypeLoc twice for qualified types, once for the qualified form
and once for the unqualified (though they looked the same by the time
we got to visittypeloc). Now only visit once, which matches previous
behavior.
Reviewed by nlewycky
llvm-svn: 107754
|
| |
|
|
|
|
| |
IdempotentOperationChecker::PreVisitBinaryOperator.
llvm-svn: 107748
|
| |
|
|
|
|
|
| |
making the other switch case unreachable, or sinking the 'continue' into it
doesn't silence this.
llvm-svn: 107745
|
| |
|
|
|
|
| |
consider them for warnings.
llvm-svn: 107741
|
| |
|
|
|
|
|
|
|
|
|
|
| |
emit metadata associating allocas and global values with a Decl*. This feature
is controlled by an option that (intentionally) cannot be enabled on the command
line.
To use this feature, simply set
CodeGenOptions.EmitDeclMetadata = true;
and then interpret the completely underspecified metadata. :)
llvm-svn: 107739
|
| |
|
|
|
|
|
|
| |
SubRegions. Fixes assertion failure
reported in PR 7572.
llvm-svn: 107738
|
| |
|
|
|
|
|
|
| |
of the same type. I think this was just an oversight before.
Reviewed by chandlerc. Submitted as an "obvious" fix.
llvm-svn: 107737
|
| |
|
|
| |
llvm-svn: 107735
|
| |
|
|
|
|
| |
StaticGlobalSpaceRegion.
llvm-svn: 107731
|
| |
|
|
| |
llvm-svn: 107728
|
| |
|
|
|
|
| |
null-terminated strings and memory blocks. Currently only checks memcpy(), memmove(), and bcopy(), but this is intended to be expanded soon.
llvm-svn: 107722
|
| |
|
|
| |
llvm-svn: 107709
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(-analyzer-idempotent-operation). Finds idempotent and/or tautological operations in a path sensitive context, flagging operations that have no effect or a predictable effect.
Example:
{
int a = 1;
int b = 5;
int c = b / a; // a is 1 on all paths
}
- New IdempotentOperationChecker class
- Moved recursive Stmt functions in r107675 to IdempotentOperationChecker
- Minor refactoring of SVal to allow checking for any integer
- Added command line option for check
- Added basic test cases
llvm-svn: 107706
|
| |
|
|
|
|
| |
AST during the instantiation. Fixes PR7417!
llvm-svn: 107690
|
| |
|
|
|
|
| |
into IRBuilder.
llvm-svn: 107687
|