Jim Grosbach
46be301c4c
Tidy up. Hard tabs.
...
llvm-svn: 145878
2011-12-06 00:13:09 +00:00
Jim Grosbach
02a75cebfe
Tidy up. Hard tabs.
...
llvm-svn: 145877
2011-12-06 00:12:12 +00:00
Nick Lewycky
cff88d3e06
All these arguments are default anyways.
...
llvm-svn: 145876
2011-12-06 00:11:58 +00:00
Jim Grosbach
0c31f1c6ae
Tidy up. 80 columns.
...
llvm-svn: 145875
2011-12-06 00:11:13 +00:00
Eli Friedman
7c6515a653
Make sure we perform lvalue-to-rvalue conversions for enum initializers. PR11484.
...
llvm-svn: 145874
2011-12-06 00:10:34 +00:00
Jim Grosbach
18e2fe47fa
Switch MCAssembler to method names starting w/ lower-case.
...
per http://llvm.org/docs/CodingStandards.html#ll_naming
llvm-svn: 145873
2011-12-06 00:03:48 +00:00
Fariborz Jahanian
56f326e7f2
objc: put out more coherent warning when method definition
...
attributes don't match its declaration. // rdar://10529259.
llvm-svn: 145872
2011-12-06 00:02:41 +00:00
Jim Grosbach
34a7c6dfd7
Simple branch relaxation for Thumb2 Bcc instructions.
...
Not right yet, as the rules for when to relax in the MCAssembler aren't
(yet) correct for ARM. This is a step in the proper direction, though.
llvm-svn: 145871
2011-12-05 23:45:46 +00:00
Jim Grosbach
78309c47c7
Tidy up.
...
llvm-svn: 145870
2011-12-05 23:20:14 +00:00
Nick Lewycky
897a57ecda
Silence tsan false-positives (tsan can't track things which are only safe due to
...
memory fences) in statistics registration, which works the same way that
ManagedStatic registration does.
llvm-svn: 145869
2011-12-05 23:07:05 +00:00
Joerg Sonnenberger
db66ed0e4c
Add -mstack-alignment=X and fix -mstackrealign handling now that the
...
backend options are gone.
llvm-svn: 145868
2011-12-05 23:05:23 +00:00
Fariborz Jahanian
7b1866930e
More refactoring of objc rewriter.
...
llvm-svn: 145867
2011-12-05 22:59:54 +00:00
Chad Rosier
3277557741
Update comment.
...
llvm-svn: 145866
2011-12-05 22:53:09 +00:00
Chad Rosier
19446a07a7
Make the MemCpyOptimizer a bit more aggressive. I can't think of a scenerio
...
where this would be bad as the backend shouldn't have a problem inlining small
memcpys.
rdar://10510150
llvm-svn: 145865
2011-12-05 22:37:00 +00:00
Douglas Gregor
734410916a
Parse inferred submodules in module maps, track their contents in
...
Module, and (de-)serialize this information. Semantics of inferred
submodules to follow.
llvm-svn: 145864
2011-12-05 22:27:44 +00:00
Jim Grosbach
b8c719ccc6
Tweak ADDrr fix. Bad check for explicit .w
...
llvm-svn: 145863
2011-12-05 22:27:04 +00:00
Eli Friedman
6d694a38fd
Make EmitAggregateCopy take an alignment argument. Make EmitFinalDestCopy pass in the correct alignment when known.
...
The test includes a FIXME for a related case involving calls; it's a bit more complicated to fix because the RValue class doesn't keep track of alignment.
<rdar://problem/10463337>
llvm-svn: 145862
2011-12-05 22:23:28 +00:00
Jim Grosbach
8b5e92577b
Update tests for r145860. Add a few new ones.
...
llvm-svn: 145861
2011-12-05 22:21:28 +00:00
Jim Grosbach
e489babf9b
Thumb2 prefer ADD register encoding T2 to T3 when possible.
...
rdar://10529664
llvm-svn: 145860
2011-12-05 22:16:39 +00:00
Argyrios Kyrtzidis
1a10f29b2f
[libclang] When indexing a field in a C++ class, return an entity
...
of kind CXIdxEntity_CXXInstanceVariable. rdar://10522503.
llvm-svn: 145859
2011-12-05 22:05:28 +00:00
Anna Zaks
02a1fc1da6
[analyzer] Rely on LLVM Dominators in Clang dominator computation.
...
(Previously, Clang used it's implementation of dominators.)
The patch is contributed by Guoping Long!
llvm-svn: 145858
2011-12-05 21:33:11 +00:00
Anna Zaks
5c10794254
[analyzer] Mark ConstraintManager::canReasonAbout as protected.
...
llvm-svn: 145857
2011-12-05 21:33:06 +00:00
Anna Zaks
2d2999821b
[analyzer] Simplify the condition.
...
This is a fixup for r145832.
The extra clauses do not matter after we remove the dependency on canReasonAbout(InitVal) in r145832.
llvm-svn: 145856
2011-12-05 21:33:01 +00:00
Anna Zaks
d624f60a89
[analyzer] Simplify the expected-warning statement.
...
llvm-svn: 145855
2011-12-05 21:32:58 +00:00
Bill Wendling
b437ab8561
Move 'returns_twice' definition into alphabetical place.
...
llvm-svn: 145854
2011-12-05 21:27:54 +00:00
Akira Hatanaka
20cee2eba1
Add definitions of 64-bit extract and insert instrucions and make
...
PerformANDCombine and PerformOrCombine aware of them. Test cases are included
too.
llvm-svn: 145853
2011-12-05 21:26:34 +00:00
Akira Hatanaka
9b8ac674bc
Split ExtIns into two base classes and have instructions EXT and INS derive from
...
them.
llvm-svn: 145852
2011-12-05 21:14:28 +00:00
Jim Grosbach
ec9ba98299
Thumb2 prefer encoding T3 to T4 for ADD/SUB immediate instructions.
...
rdar://10529348
llvm-svn: 145851
2011-12-05 21:06:26 +00:00
Akira Hatanaka
34e3df76f9
Have LowerJumpTable support Mips64. Modify 2010-07-20-Switch.ll to test N64 and
...
O32 with relocation-model=pic too.
llvm-svn: 145850
2011-12-05 21:03:03 +00:00
Lang Hames
df5c121f8e
Add a warning for implicit conversion from function literals (and static
...
methods) to bool. E.g.
void foo() {}
if (f) { ... // <- Warns here.
}
Only applies to non-weak functions, and does not apply if the function address
is taken explicitly with the addr-of operator.
llvm-svn: 145849
2011-12-05 20:49:50 +00:00
Kostya Serebryany
ab7940f6e1
[asan]: test a pure C file with -faddress-sanitizer; lint fixes
...
llvm-svn: 145848
2011-12-05 20:44:30 +00:00
Jim Grosbach
fdf9e1587a
ARM assembly parsing for the rest of the VMUL data type aliases.
...
Finish up rdar://10522016.
llvm-svn: 145846
2011-12-05 20:29:59 +00:00
Lang Hames
d42bb47782
Make isWeakDecl available as a method on ValueDecl.
...
llvm-svn: 145845
2011-12-05 20:16:26 +00:00
Jim Grosbach
9e90c5cde3
Fix previous commit. Oops.
...
llvm-svn: 145844
2011-12-05 20:12:26 +00:00
Jim Grosbach
2b37e4fc80
Tidy up. No functional change.
...
llvm-svn: 145843
2011-12-05 20:09:44 +00:00
Jim Grosbach
0a978ef715
ARM assmebler parsing for two-operand VMUL instructions.
...
Combined destination and first source operand for f32 variant of the VMUL
(by scalar) instruction.
rdar://10522016
llvm-svn: 145842
2011-12-05 19:55:46 +00:00
Fariborz Jahanian
8efef60f69
More objc rewriter refactoring.
...
llvm-svn: 145841
2011-12-05 19:50:04 +00:00
Jim Ingham
ac01260545
Sanity check the inputs to SBCommandInterpreter::HandleCompletion
...
llvm-svn: 145840
2011-12-05 19:24:15 +00:00
Kostya Serebryany
0e069e2aa9
[asan] add the test for bug 11468
...
llvm-svn: 145839
2011-12-05 19:20:57 +00:00
Kostya Serebryany
49a182fa12
[asan] always collect malloc statstics (removed FLAG_stats)
...
llvm-svn: 145838
2011-12-05 19:17:53 +00:00
Anna Zaks
e9504a267e
Change the Dominators recalculate() function to only rely on GraphTraits
...
This is a patch by Guoping Long!
As part of utilizing LLVM Dominator computation in Clang, made two changes to LLVM dominators tree implementation:
- (1) Change the recalculate() template function to only rely on GraphTraits.
- (2) Add a size() method to GraphTraits template class to query the number of nodes in the graph.
llvm-svn: 145837
2011-12-05 19:17:04 +00:00
Anna Zaks
004695b56e
[analyzer] Add a missing taint tester warning.
...
llvm-svn: 145834
2011-12-05 18:58:33 +00:00
Anna Zaks
d066f79c80
[analyzer] Unify SymbolVal and SymExprVal under a single SymbolVal
...
class.
We are going into the direction of handling SymbolData and other SymExpr
uniformly, so it makes less sense to keep two different SVal classes.
For example, the checkers would have to take an extra step to reason
about each type separately.
The classes have the same members, we were just using the SVal kind
field for easy differentiation in 3 switch statements. The switch
statements look more ugly now, but we can make the code more readable in
other ways, for example, moving some code into separate functions.
llvm-svn: 145833
2011-12-05 18:58:30 +00:00
Anna Zaks
a636fbe73f
[analyzer] Remove all uses of ConstraintManager::canResonAbout() from
...
ExprEngine.
Teach SimpleConstraintManager::assumeSymRel() to propagate constraints
to symbolic expressions.
+ One extra warning (real bug) is now generated due to enhanced
assumeSymRel().
llvm-svn: 145832
2011-12-05 18:58:25 +00:00
Anna Zaks
51090d5f7f
[analyzer] First step toward removing
...
ConstraintManager::canReasonAbout() from the ExprEngine.
ExprEngine should not care if the constraint solver can reason about
something or not. The solver should be able to handle all the SymExprs.
To do this, the solver should be able to keep track of not only the
SymbolData but of all SymExprs. This is why we change SymbolRef to be an
alias of SymExpr*. When encountering an expression it cannot simplify,
the solver should just add the constraints to it.
llvm-svn: 145831
2011-12-05 18:58:19 +00:00
Anna Zaks
820e87e928
[analyzer] Minor improvements on RangeConstraint pretty-printing.
...
llvm-svn: 145830
2011-12-05 18:58:14 +00:00
Anna Zaks
223516523e
[analyzer] Change RetainCountChecker to use symbol dump method instead
...
of relying on SymbolID.
This way any expression can be printed (not only SymbolData).
llvm-svn: 145829
2011-12-05 18:58:11 +00:00
Anna Zaks
f784d08d25
[analyzer] Add ability to do a simple ProgramState dump() without
...
requiring CFG.
Adding more ugly code; the evnvironment printing should be moved to
envirnment at some point.
llvm-svn: 145828
2011-12-05 18:58:08 +00:00
Anna Zaks
1c215d0a11
[analyzer] Add a debug checker to test for tainted data.
...
llvm-svn: 145827
2011-12-05 18:58:01 +00:00
Kostya Serebryany
92ebcadfe4
[asan] cleanup memset/memmove/memcpy interceptors and enable them on Mac. Patch by samsonov@google.com
...
llvm-svn: 145826
2011-12-05 18:56:29 +00:00