Commit Graph

92420 Commits

Author SHA1 Message Date
Chris Lattner 510a81a89b fix incorrect link!
llvm-svn: 115124
2010-09-30 01:12:09 +00:00
Tom Care ea7c48ccf7 Updated scan-build:
- Idempotent operations are on by default, to match --analyze in the driver.
- Integrated stats calculation based on parsing warnings emitted with the -analyzer-stats flag. The new -stats flag enables this.
- New -maxloop flag to pass down a maxloop value to the analyzer.

llvm-svn: 115123
2010-09-30 01:12:05 +00:00
Jan Wen Voung c768287968 Test commit - Deleted some whitespace at the end of a line.
llvm-svn: 115122
2010-09-30 01:09:20 +00:00
Evan Cheng 2fb20b1d37 ARM instruction itinerary fixes:
1. Cortex-a9 8-bit and 16-bit loads / stores AGU cycles are 1 cycle longer than 32-bit ones.
2. Cortex-a9 is out-of-order so model all read cycles as cycle 1.
3. Lots of other random fixes for A8 and A9.

llvm-svn: 115121
2010-09-30 01:08:25 +00:00
Ted Kremenek b0e7d77729 Include changes to VisitCXXMemberCallExpr (call visitor functions).
llvm-svn: 115120
2010-09-30 01:06:29 +00:00
Ted Kremenek e18dd0a84e Change CheckerVisitor so that [Pre,Post]VisitCallExpr only handles CallExprs for simple C functions, not
all CallExprs (including CXXMemberCallExpr, etc.).  Now the generic handler for all CallExprs is [Pre,Post]VisitGenericCallExpr.

Also add [Pre,Post]Visit hooks for CXXMemberCallExpr.

Change GRExprEngine::VisitCXXMemberCallExpr() to do pre/post checker visits of the call.

llvm-svn: 115119
2010-09-30 01:06:26 +00:00
Sebastian Redl 99219f16b9 Make the FileID import map key on FileID.
llvm-svn: 115118
2010-09-30 01:03:06 +00:00
Sebastian Redl 517523014d In MeasureTokenLength, the FileLoc supplied to the lexer must point to the start of the buffer, or we risk overflow.
llvm-svn: 115117
2010-09-30 01:03:03 +00:00
Benjamin Kramer 2b76c66fd6 Add constant folding for strspn and strcspn to SimplifyLibCalls.
llvm-svn: 115116
2010-09-30 00:58:35 +00:00
Jim Ingham 6c68fb4549 Add "-o" option to "expression" which prints the object description if available.
llvm-svn: 115115
2010-09-30 00:54:27 +00:00
Francois Pichet 083f368be1 Revert r114320(move file = copy + delete on Win32). r115040 is a better solution for the Win32 ACCESS_DENIED lit error.
llvm-svn: 115114
2010-09-30 00:44:58 +00:00
Ted Kremenek 3d6c0c0091 Tweak nil receiver checker to not warning about 64-bit return values.
Fixes: <rdar://problem/7513117>
llvm-svn: 115113
2010-09-30 00:37:10 +00:00
Chris Lattner 3458ab6001 add a bunch of entries for external projects.
llvm-svn: 115112
2010-09-30 00:34:43 +00:00
Benjamin Kramer 38d22f69fc Add strpbrk folding to SimplifyLibCalls.
llvm-svn: 115111
2010-09-29 23:52:12 +00:00
Tom Care 2f0419e1f8 AnalyzerStatsChecker improvements:
- Use BlockEntrance rather than BlockEdge to bring in line with UnreachableCodeChecker. Fixes an issue where unreached blocks would still be counted as reachable.
- Added warnings for all BlockAborted locations. This allows us to see where the analyzer stopped analyzing.

llvm-svn: 115110
2010-09-29 23:48:34 +00:00
Tom Care a5f13c866c Modified the ccc-analyzer script to print the compiler command when log level verbosity is enabled. This is handy for debugging.
llvm-svn: 115109
2010-09-29 23:48:31 +00:00
Tom Care 472205be35 Change -analyzer-max-nodes to allow 0 as a parameter. This allows the analyzer to completely analyze a worklist regardless of time taken.
llvm-svn: 115108
2010-09-29 23:48:13 +00:00
Nick Lewycky 83e471180c Silence compiler warning.
llvm-svn: 115107
2010-09-29 23:32:20 +00:00
Owen Anderson 74c06b202f Revert r115099 (adding early jump threading). It's not clear if the benefits are worth the compile time cost.
llvm-svn: 115106
2010-09-29 23:31:09 +00:00
Eric Christopher 7939806ecc Refactor arm fast isel libcall handling so that pieces can be used
for generic call handling.

llvm-svn: 115105
2010-09-29 23:11:09 +00:00
Devang Patel 7c086227e6 Attach aritifical attribute with implicit parameters.
Radar 8493141.

llvm-svn: 115104
2010-09-29 23:09:21 +00:00
Devang Patel a3dc31d8ee ImplicitParamDecl is always implicit.
llvm-svn: 115103
2010-09-29 23:08:00 +00:00
Devang Patel bea08d1c85 Let FE mark a variable as artificial variable.
llvm-svn: 115102
2010-09-29 23:07:21 +00:00
Eric Christopher 0574cc556a Noticed by inspection when looking for other cmov bits.
llvm-svn: 115100
2010-09-29 23:00:29 +00:00
Owen Anderson 6d33f59952 Early CFG simplification can fold conditionals down to selects, which is often a good thing, but it can also
hide jump threading opportunities by turning control flow into data flow.  Run an early JumpThreading pass
(adds approximately an additional 1% to optimization time on SPEC), allowing it to get a shot at these cases
first.  Fixes <rdar://problem/8447345>.

llvm-svn: 115099
2010-09-29 22:57:02 +00:00
Evan Cheng 4a010fd1ea Model Cortex-a9 load to SUB, RSB, ADD, ADC, SBC, RSC, CMN, MVN, or CMP
pipeline forwarding path.

llvm-svn: 115098
2010-09-29 22:42:35 +00:00
Benjamin Kramer 2016f0eaac Silence msvc warnings.
llvm-svn: 115097
2010-09-29 22:38:50 +00:00
Jim Grosbach a5497345ad trailing whitespace
llvm-svn: 115096
2010-09-29 22:32:50 +00:00
Benjamin Kramer 8e861d7eee Simplify the loop in StrChrOptimizer. FileCheckize test.
llvm-svn: 115095
2010-09-29 22:29:12 +00:00
Eric Christopher b024be3162 Add a convenience variable so I'm not chasing all over looking for
a context.

llvm-svn: 115094
2010-09-29 22:24:45 +00:00
Johnny Chen eb1db1c547 Verify that we have a valid breakpoint ID before proceeding with retrieving its
number of locations.  This fixed a crasher.

llvm-svn: 115092
2010-09-29 21:57:51 +00:00
Benjamin Kramer 824645abc9 Teach SimplifyLibCalls how to optimize strrchr.
llvm-svn: 115091
2010-09-29 21:50:51 +00:00
Devang Patel 330b65e350 Emit method access specifier.
Radar 8490416.

llvm-svn: 115090
2010-09-29 21:46:16 +00:00
Devang Patel cb03b14089 Add support to let FE encode method access specifier.
llvm-svn: 115089
2010-09-29 21:44:16 +00:00
Ted Kremenek 2e0c7cc8c3 Update docs to include proper location of clang binary.
llvm-svn: 115088
2010-09-29 21:41:56 +00:00
Howard Hinnant 88efc1c7a5 Contemplating this <atomic> reorganization...
llvm-svn: 115087
2010-09-29 21:20:03 +00:00
Douglas Gregor 4ed49f375d When performing template argument deduction of a function template
against a function type, be sure to check the type of the resulting
function template specialization against the desired function type
after substituting the deduced/defaulted template arguments. Fixes PR8196.

llvm-svn: 115086
2010-09-29 21:14:36 +00:00
Devang Patel db2732ac42 Update to reflect DIFactory::CreateSubprogram() interface change from r115084.
llvm-svn: 115085
2010-09-29 21:05:52 +00:00
Devang Patel 95ae73c394 Generalize DISubprogram element to encode various flags instead of just one boolean for isArtificial.
This is a backword compatible change.

llvm-svn: 115084
2010-09-29 21:04:46 +00:00
Owen Anderson 0cd522428c UnreachableBlockElim could incorrectly return false when it had not modified the CFG, but HAD modified some PHI nodes. Fixes PR8174.
llvm-svn: 115083
2010-09-29 20:57:19 +00:00
Owen Anderson 99c985c37d Fix PR8247: JumpThreading can cause a block to become unreachable while still having predecessor, if it is part of a self-loop.
Because of this, we cannot use the Simplify* APIs, as they can assert-fail on unreachable code.  Since it's not easy to determine
if a given threading will cause a block to become unreachable, simply defer simplifying simplification to later InstCombine and/or
DCE passes.

llvm-svn: 115082
2010-09-29 20:34:41 +00:00
Howard Hinnant 77f965b75a updated per weekly tests
llvm-svn: 115081
2010-09-29 20:15:25 +00:00
Duncan Sands e9da6db67f Convert a bunch of uses of 'bytecode' into 'bitcode'. This
is not everything, but the remaining cases are less trivial.

llvm-svn: 115080
2010-09-29 20:09:55 +00:00
Devang Patel 984cdeef37 Remove dead code.
llvm-svn: 115079
2010-09-29 20:05:01 +00:00
Caroline Tice 9068d794fd Fix breakpoint id range testing to disallow ranges that specify breakpoint locations from
crossing major breakpoint boundaries (must be within a single breakpoint if specifying locations).

Add .* as a means of specifying all the breakpoint locations under a major breakpoint, e.g. "3.*"
means "all the breakpoint locations of breakpoint 3".

Fix error message to make more sense, if user attempts to specify a breakpoint command when there
isn't a target yet.

llvm-svn: 115077
2010-09-29 19:42:33 +00:00
Benjamin Kramer 923a8cf356 Remove PointerTracking from cmakelists …
llvm-svn: 115076
2010-09-29 19:39:50 +00:00
Johnny Chen d8ed43cde0 Simple refactoring.
llvm-svn: 115075
2010-09-29 19:36:25 +00:00
Daniel Dunbar 8211d31055 GetSourceVersion: Strip off svninfo extra markers, which aren't really part of the version.
llvm-svn: 115074
2010-09-29 19:30:17 +00:00
Johnny Chen b19cd0fff4 Wrapped the regexp grokking of data type within a try:expect: instead of letting
the Python runtime take over in case there isn't a match.

llvm-svn: 115073
2010-09-29 19:29:42 +00:00
Benjamin Kramer 0aea752f6d Remove PointerTracking tests.
llvm-svn: 115072
2010-09-29 19:20:35 +00:00