summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* DataFlowSanitizer; LLVM changes.Peter Collingbourne2013-08-0710-0/+1276
| | | | | | | | | | | | | DataFlowSanitizer is a generalised dynamic data flow analysis. Unlike other Sanitizer tools, this tool is not designed to detect a specific class of bugs on its own. Instead, it provides a generic dynamic data flow analysis framework to be used by clients to help detect application-specific issues within their own code. Differential Revision: http://llvm-reviews.chandlerc.com/D965 llvm-svn: 187923
* Fix doxygen function name mismatch.Hans Wennborg2013-08-071-1/+2
| | | | llvm-svn: 187922
* New settings: target.use-hex-immediates and target.hex-immediates-styleDaniel Malea2013-08-077-13/+115
| | | | | | | | | | - Immediates can be shown as hex (either Intel or MASM style) - See TestSettings.py for usage examples - Verified to cause no regressions on Linux x86_64 (Ubuntu 12.10) Patch by Richard Mitton! llvm-svn: 187921
* [lit] Report the traceback when config import fails.Daniel Dunbar2013-08-071-0/+5
| | | | llvm-svn: 187920
* [lit] Avoid comparisons with None.Daniel Dunbar2013-08-071-1/+3
| | | | llvm-svn: 187919
* [lit] Use list comprehensions instead of map().Daniel Dunbar2013-08-073-3/+4
| | | | llvm-svn: 187918
* [lit] Avoid deprecated dict.has_key() method.Daniel Dunbar2013-08-071-2/+2
| | | | llvm-svn: 187917
* PR9992: Serialize and deserialize the token sequence for a function template inRichard Smith2013-08-0719-83/+179
| | | | | | -fdelayed-template-parsing mode. Patch by Will Wilson! llvm-svn: 187916
* N3644 support for <unordered_set> and <unordered_map>Marshall Clow2013-08-075-0/+62
| | | | llvm-svn: 187915
* [PCH] Fix a PCH serialization crash, with invalid code related to forward ↵Argyrios Kyrtzidis2013-08-075-6/+36
| | | | | | | | | | | | | | | | enum references. The problem was that an enum without closing semicolon could be associated as a forward enum in an erroneous declaration, leading to the identifier being associated with the enum decl but without a declaration actually referencing it. This resulted in not having it serialized before serializing the identifier that is associated with. Also prevent the ASTUnit from querying the serialized DeclID for an invalid top-level decl; it may not have been serialized. rdar://14539667 llvm-svn: 187914
* Using the integrated assembler we'd fail to change section to theEric Christopher2013-08-072-2/+36
| | | | | | | | | .tbss section for zerofill thread locals. Make sure we do this before emitting the zerofills. Fixes PR15972. llvm-svn: 187913
* Fix a FIXME, on darwin all virtual sections have a zerofill type.Eric Christopher2013-08-071-1/+2
| | | | llvm-svn: 187912
* N3644 support for vector<bool>Marshall Clow2013-08-071-1/+5
| | | | llvm-svn: 187911
* N3644 support for vector<bool>Marshall Clow2013-08-071-0/+12
| | | | llvm-svn: 187910
* N3644 support for <string> and <vector>Marshall Clow2013-08-073-0/+89
| | | | llvm-svn: 187909
* Correct logic bug in find optimization for vector<bool>. This fixes ↵Howard Hinnant2013-08-072-0/+42
| | | | | | http://llvm.org/bugs/show_bug.cgi?id=16816 llvm-svn: 187908
* On Windows, autolink advapi32 from Path.inc for CryptAcquireContextWReid Kleckner2013-08-071-0/+4
| | | | | | | | | | | This allows llvm-tblgen to link successfully when compiling with clang. Both MSBuild and CMake will automatically add advapi32 as part of a set of other dlls comprising the win32 API to the link line, but CMake doesn't do that when compiling with clang. Until someone adds that info to cmake upstream, this seems like a reasonable work around. llvm-svn: 187907
* War on tabsHoward Hinnant2013-08-0719-152/+152
| | | | llvm-svn: 187906
* Rename time.duration.literals step 3Howard Hinnant2013-08-071-0/+59
| | | | llvm-svn: 187905
* Rename time.duration.literals step 2Howard Hinnant2013-08-071-59/+0
| | | | llvm-svn: 187904
* Rename time.duration.literals step 1Howard Hinnant2013-08-072-59/+59
| | | | llvm-svn: 187903
* Add the common begin/end naming convention to the coding standard.Rafael Espindola2013-08-071-1/+3
| | | | llvm-svn: 187902
* Fixes a couple of bugs with the Allman brace breaking.Manuel Klimek2013-08-073-0/+36
| | | | | | | | | | | In particular, left braces after an enum declaration now occur on their own line. Further, when short ifs/whiles are allowed these no longer cause the left brace to be on the same line as the if/while when a brace is included. Patch by Thomas Gibson-Robinson. llvm-svn: 187901
* clean up about 22 warnings messagesMichael Sartain2013-08-074-19/+19
| | | | llvm-svn: 187900
* Move assert above first use of variable that we'd be asserting on.Eric Christopher2013-08-071-2/+2
| | | | llvm-svn: 187899
* Fixed incorrect header guard/nested header mechanism.John Thompson2013-08-073-5/+9
| | | | llvm-svn: 187898
* Correctly allign arrays on 32 bit systems.Rafael Espindola2013-08-072-9/+11
| | | | | | | | | | | Before this patch we would align long long int big[1024]; to 4 bytes on 32 bit systems. The problem is that we were only looking at the element type when getLargeArrayMinWidth returned non zero. llvm-svn: 187897
* lit/LitConfig.py: Fixup for msys bash.NAKAMURA Takumi2013-08-071-1/+1
| | | | llvm-svn: 187896
* Confusing comment typo.Andrew Trick2013-08-071-1/+1
| | | | llvm-svn: 187895
* Patch to fix doxygen trailing comments for ObjectiveC methods.Fariborz Jahanian2013-08-072-1/+6
| | | | | | // rdar://14258334 llvm-svn: 187893
* clang-format: Fix corner case in OpenMP pragma formatting.Daniel Jasper2013-08-072-1/+7
| | | | | | | | | Before: #pragma omp reduction( | : var) After: #pragma omp reduction(| : var) llvm-svn: 187892
* Eliminate CXXConstructorDecl::IsImplicitlyDefined.Jordan Rose2013-08-076-67/+7
| | | | | | | | | | | | This field is just IsDefaulted && !IsDeleted; in all places it's used, a simple check for isDefaulted() is superior anyway, and we were forgetting to set it in a few cases. Also eliminate CXXDestructorDecl::IsImplicitlyDefined, for the same reasons. No intended functionality change. llvm-svn: 187891
* Re-enable check previously disabled due to llvm.org/pr16603Daniel Malea2013-08-071-4/+3
| | | | llvm-svn: 187890
* [TSan] Fix free_race.c by removing `not` from the test invocation that ↵Alexander Potapenko2013-08-071-3/+2
| | | | | | doesn't fail. llvm-svn: 187889
* Indicate success for simple options when clang called with -cc1.Rafael Espindola2013-08-072-3/+7
| | | | | | Patch by David Wiberg. llvm-svn: 187888
* Lit: Fixup in r187886.NAKAMURA Takumi2013-08-071-1/+1
| | | | llvm-svn: 187887
* Lit: Resurrect --no-execute dropped in r187852.NAKAMURA Takumi2013-08-075-1/+14
| | | | | | For now, builders in bb.pgr.jp are using it. llvm-svn: 187886
* [TSan] Let the users suppress use-after-free errors using the "race:" ↵Alexander Potapenko2013-08-073-10/+18
| | | | | | | | | | | | | | | suppressions. If there's a race between a memory access and a free() call in the client program, it can be reported as a use-after-free (if the access occurs after the free()) or an ordinary race (if free() occurs after the access). We've decided to use a single "race:" prefix for both cases instead of introducing a "use-after-free:" one, because in many cases this allows us to keep a single suppression for both the use-after-free and free-after-use. This may be misleading if the use-after-free occurs in a non-racy way (e.g. in a single-threaded program). But normally such bugs shall not be suppressed. llvm-svn: 187885
* AVX-512 set: Added BROADCAST instructionsElena Demikhovsky2013-08-075-7/+183
| | | | | | with lowering logic and a test. llvm-svn: 187884
* [SystemZ] Optimize floating-point comparisons with zeroRichard Sandiford2013-08-077-74/+435
| | | | | | | | | This follows the same lines as the integer code. In the end it seemed easier to have a second 4-bit mask in TSFlags to specify the compare-like CC values. That eats one more TSFlags bit than adding a CCHasUnordered would have done, but it feels more concise. llvm-svn: 187883
* [SystemZ] Add floating-point load-and-test instructionsRichard Sandiford2013-08-079-0/+139
| | | | | | These instructions can also be used as comparisons with zero. llvm-svn: 187882
* ASan: fix one more test case for pipefailAlexey Samsonov2013-08-071-1/+1
| | | | llvm-svn: 187881
* JumpThreading: Turn a select instruction into branching if it allows to ↵Benjamin Kramer2013-08-072-0/+146
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | thread one half of the select. This is a common pattern coming out of simplifycfg generating gross code. a: ; preds = %entry %sel = select i1 %cmp1, double %add, double 0.000000e+00 br label %b b: %cond5 = phi double [ %sel, %a ], [ %sub, %entry ] %cmp6 = fcmp oeq double %cond5, 0.000000e+00 br i1 %cmp6, label %if.then, label %if.end becomes a: br i1 %cmp1, label %b, label %if.then b: %cond5 = phi double [ %sub, %entry ], [ %add, %a ] %cmp6 = fcmp oeq double %cond5, 0.000000e+00 br i1 %cmp6, label %if.then, label %if.end Skipping block b completely if possible. llvm-svn: 187880
* Commit a no-op change to StringRef to (hopefully) trigger build bots.Chandler Carruth2013-08-071-1/+1
| | | | | | | | | | r187874 seems to have been missed by the build bot infrastructure, and the subsequent commits to compiler-rt don't seem to be queuing up new build requsets. Hopefully this will. As it happens, having the space here is the more common formatting. =] llvm-svn: 187879
* Distinguish 32-bit ASan from 64-bit ASan in lit configsAlexey Samsonov2013-08-071-1/+1
| | | | llvm-svn: 187878
* Enable pipefail for ASan testsAlexey Samsonov2013-08-0747-119/+117
| | | | llvm-svn: 187877
* [sanitizer] Intercept sched_getaffinity.Evgeniy Stepanov2013-08-075-1/+26
| | | | | | Re-applying with a more reliable test case. llvm-svn: 187876
* Enable pipefail for TSan testsAlexey Samsonov2013-08-0765-66/+64
| | | | llvm-svn: 187875
* Add support for linking against a curses library when available andChandler Carruth2013-08-079-11/+432
| | | | | | | | | | | | | | | | | | | | | | | | | | | using it to detect whether or not a terminal supports colors. This replaces a particularly egregious hack that merely compared the TERM environment variable to "dumb". That doesn't really translate to a reasonable experience for users that have actually ensured their terminal's capabilities are accurately reflected. This makes testing a terminal for color support somewhat more expensive, but it is called very rarely anyways. The important fast path when the output is being piped somewhere is already in place. The global lock may seem excessive, but the spec for calling into curses is *terrible*. The whole library is terrible, and I spent quite a bit of time looking for a better way of doing this before convincing myself that this was the fundamentally correct way to behave. The damage of the curses library is very narrowly confined, and we continue to use raw escape codes for actually manipulating the colors which is a much sane system than directly using curses here (IMO). If this causes trouble for folks, please let me know. I've tested it on Linux and will watch the bots carefully. I've also worked to account for the variances of curses interfaces that I could finde documentation for, but that may not have been sufficient. llvm-svn: 187874
* Enable pipefail for LSan testsAlexey Samsonov2013-08-0719-20/+19
| | | | llvm-svn: 187873
OpenPOWER on IntegriCloud