- Mar 16, 2013
-
-
Anna Zaks authored
llvm-svn: 177207
-
Anna Zaks authored
Fixes a FIXME, improves dead symbol collection, suppresses a false positive, which resulted from reusing the same symbol twice for simulation of 2 calls to the same function. Fixing this lead to 2 possible false negatives in CString checker. Since the checker is still alpha and the solution will not require revert of this commit, move the tests to a FIXME section. llvm-svn: 177206
-
Anna Zaks authored
llvm-svn: 177205
-
Anna Zaks authored
llvm-svn: 177204
-
Enrico Granata authored
Performance improvements to the IsObjCNil () - we only try to resolve the value if the variable under consideration truly is an “Objective-C thing” This also changes the ClangASTContext to make sure that id is correctly marked as being such an ObjC thing llvm-svn: 177203
-
rdar://problem/13100435Han Ming Ong authored
Don't discount regions that vmmap is not discounting. llvm-svn: 177202
-
Ted Kremenek authored
Fix buffer underrun (invalid read) triggered during diagnostic rendering. The test would overflow when computing '0 - 1'. I don't have a good testcase for this that does not depend on system headers. It did not trigger with preprocessed output, and I had trouble reducing the example. Fixes <rdar://problem/13324594>. Thanks to Michael Greiner for reporting this issue. llvm-svn: 177201
-
Jim Ingham authored
in the -a address expression lookup in "image list" so that it actually works. llvm-svn: 177200
-
- Mar 15, 2013
-
-
Jakob Stoklund Olesen authored
Don't require instructions to inherit Sched<...>. Sometimes it is more convenient to say: let SchedRW = ... in { ... } Which is now possible. llvm-svn: 177199
-
Matt Kopec authored
llvm-svn: 177198
-
Argyrios Kyrtzidis authored
These will be available in the current translation unit anyway, for modules they only waste space and deserialization time. llvm-svn: 177197
-
Jim Ingham authored
llvm-svn: 177196
-
Jim Ingham authored
resolved command, which it should not do. It should adopt whatever context the regular expression command was called with. This was causing regular expression commands run inside breakpoint commands to adopt the currently selected context, not the one coming from the breakpoint that we hit. <rdar://problem/13411771> llvm-svn: 177195
-
rdar://problem/13426257Douglas Gregor authored
When we're building a precompiled header or module against an SDK on Darwin, there will be a file SDKSettings.plist in the sysroot. Since stat()'ing every system header on which a module or PCH file depends is performance suicide, we instead stat() just SDKSettings.plist. This hack works well on Darwin; it's unclear how we want to handle this on other platforms. If there is a canonical file, we should use it; if not, we either have to take the performance hit of stat()'ing system headers repeatedly or roll the dice by not checking anything. llvm-svn: 177194
-
Ted Kremenek authored
llvm-svn: 177193
-
Matt Kopec authored
Patch by Ashok Thirumurthi. llvm-svn: 177192
-
Ted Kremenek authored
This is QoI. Fixes <rdar://problem/13076064>. llvm-svn: 177190
-
Jordan Rose authored
The previous generatePathDiagnostic() was intended to be tail-recursive, restarting and trying again if a report was marked invalid. However: (1) this leaked all the cloned visitors, which weren't being deleted, and (2) this wasn't actually tail-recursive because some local variables had non-trivial destructors. This was causing us to overflow the stack on inputs with large numbers of reports in the same equivalence class, such as sqlite3.c. Being iterative at least prevents us from blowing out the stack, but doesn't solve the performance issue: suppressing thousands (yes, thousands) of paths in the same equivalence class is expensive. I'm looking into that now. <rdar://problem/13423498> llvm-svn: 177189
-
Jordan Rose authored
We discovered that sqlite3.c currently has 2600 reports in a single equivalence class; it would be good to know if this is a recent development or what. (For the curious, the different reports in an equivalence class represent the same bug found along different paths. When we're suppressing false positives, we need to go through /every/ path to make sure there isn't a valid path to a bug. This is a flaw in our after-the-fact suppression, made worse by the fact that that function isn't particularly optimized.) llvm-svn: 177188
-
Jordan Rose authored
For debugging use only; no functionality change. llvm-svn: 177187
-
Jordan Rose authored
Silences a few false positives in LLVM. llvm-svn: 177186
-
Jordan Rose authored
No functionality change. llvm-svn: 177185
-
David Blaikie authored
This cleans up the Clang -Werror build that was broken by r177180. llvm-svn: 177184
-
Daniel Dunbar authored
- This fast path is almost 100% effective on real code, and lets us avoid multiple allocations of 128-bit APSInt objects in the common case. - As with any overflow-check-skipping-code, I'd appreciate someone double checking my logic. llvm-svn: 177183
-
David Blaikie authored
These are a burden to maintain & use hand crafted IR to test particular DWARF generation cases in LLVM. If someone thinks there's high value coverage here they can rephrase these as IR+dwarfdump tests in the LLVM regression suite so they'll be portable/easily executed by all developers. llvm-svn: 177182
-
Fariborz Jahanian authored
operations. // rdar://13423975 llvm-svn: 177181
-
Richard Trieu authored
difference is stored inside a DiffNode. This should not change any diagnostic messages. llvm-svn: 177180
-
Edwin Vane authored
The outer-most explicit cast is now left alone by the Use-Nullptr transform to maintain the type of the expression and avoid introducing ambiguities. Fixes PR15395. Author: Ariel J Bernal <ariel.j.bernal@intel.com> llvm-svn: 177179
-
Daniel Dunbar authored
- The previous implementation always constructed the StringMap entry, even if the key was present in the set. llvm-svn: 177178
-
Edwin Vane authored
Information messages sent to stdout by ClangTool now only happen when the -debug flag is set. Error messages that used to go to stdout now go to stderr. Author: Ariel J Bernal <ariel.j.bernal@intel.com> llvm-svn: 177177
-
Matt Kopec authored
Rollback r177173. Some OSs may not have ptrace extensions which lldb expects when building. This needs to be accounted for. llvm-svn: 177176
-
Michael J. Spencer authored
llvm-svn: 177175
-
Matt Kopec authored
-adds icc to the lit of compilers to run the tests -adds icc test decorators -skip TestAnonymous.py for icc Patch by Ashok Thirumurthi. llvm-svn: 177174
-
Matt Kopec authored
Patch by Ashok Thirumurthi. llvm-svn: 177173
-
Enrico Granata authored
llvm-svn: 177172
-
Enrico Granata authored
Temporarily disabled non-code-running summaries for CF*Dictionary and NSCountedSet llvm-svn: 177171
-
Arnold Schwaighofer authored
I was too pessimistic in r177105. Vector selects that fit into a legal register type lower just fine. I was mislead by the code fragment that I was using. The stores/loads that I saw in those cases came from lowering the conditional off an address. Changing the code fragment to: %T0_3 = type <8 x i18> %T1_3 = type <8 x i1> define void @func_blend3(%T0_3* %loadaddr, %T0_3* %loadaddr2, %T1_3* %blend, %T0_3* %storeaddr) { %v0 = load %T0_3* %loadaddr %v1 = load %T0_3* %loadaddr2 ==> FROM: ;%c = load %T1_3* %blend ==> TO: %c = icmp slt %T0_3 %v0, %v1 ==> USE: %r = select %T1_3 %c, %T0_3 %v0, %T0_3 %v1 store %T0_3 %r, %T0_3* %storeaddr ret void } revealed this mistake. radar://13403975 llvm-svn: 177170
-
Silviu Baranga authored
Adding an A15 specific optimization pass for interactions between S/D/Q registers. The pass handles all the required transformations pre-regalloc. llvm-svn: 177169
-
Edwin Vane authored
The Use-Nullptr transform was replacing nullptr_t-typed expressions because in the AST such expressions have an implicit NullToPointer cast around them. Now the transform ignores these expressions. Fixes PR15414. llvm-svn: 177168
-
Benjamin Kramer authored
Fixes PR15520. llvm-svn: 177167
-