summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* [index] Fix assertion hit when handling a declaration of C++'s 'operator ↵Argyrios Kyrtzidis2016-11-023-13/+14
| | | | | | | | | | | new' function. Part of this is to allow creating a USR for the canonical decl of that which is implicit and does not have a source location. rdar://28978992 llvm-svn: 285868
* [p0012] Implement ABI support for throwing a noexcept function pointer andRichard Smith2016-11-025-1/+208
| | | | | | | | | | | | | | | | catching as non-noexcept This implements the following proposal from cxx-abi-dev: http://sourcerytools.com/pipermail/cxx-abi-dev/2016-October/002988.html ... which is necessary for complete support of http://wg21.link/p0012, specifically throwing noexcept function and member function pointers and catching them as non-noexcept pointers. Differential Review: https://reviews.llvm.org/D26178 llvm-svn: 285867
* Revert "[InstCombine] allow splat vector folds in adjustMinMax()"Greg Bedwell2016-11-022-42/+62
| | | | | | | | | | | | | | | | | This reverts commit r285732. This change introduced a new assertion failure in the following testcase at -O2: typedef short __v8hi __attribute__((__vector_size__(16))); __v8hi foo(__v8hi &V1, __v8hi &V2, unsigned mask) { __v8hi Result = V1; if (mask & 0x80) Result[0] = V2[0]; return Result; } llvm-svn: 285866
* [cmake] Build gtest from LLVM when building standaloneMichal Gorny2016-11-021-0/+8
| | | | | | | | | | | Include the gtest utility directory from LLVM sources when performing a stand-alone build of LLDB. This is necessary to have a correct gtest library to link tests against, as the one used by LLVM is not installed (and not supposed to be). This is the same approach as used in clang. Differential Revision: https://reviews.llvm.org/D26245 llvm-svn: 285865
* [Polly CodeGen] Break critical edge from RTC to original loop.Eli Friedman2016-11-0211-66/+103
| | | | | | | | | | | | | | | This makes polly generate a CFG which is closer to what we want in LLVM IR, with a loop preheader for the original loop. This is just a cleanup, but it exposes some fragile assumptions. I'm not completely happy with the changes related to expandCodeFor; RTCBB->getTerminator() is basically a random insertion point which happens to work due to the way we generate runtime checks. I'm not sure what the right answer looks like, though. Differential Revision: https://reviews.llvm.org/D26053 llvm-svn: 285864
* Simplify some typedefs. NFC.Rafael Espindola2016-11-022-16/+15
| | | | llvm-svn: 285863
* Emit S_COMPILE3 record once per TU rather than once per functionAdrian McCarthy2016-11-028-232/+87
| | | | | | This has some ripple effects in several tests. llvm-svn: 285862
* [clang-tidy] Suppress notes for warnings that were ignoredMalcolm Parsons2016-11-024-3/+25
| | | | | | | | Fixes PR30565. Patch by Nikita Kakuev llvm-svn: 285861
* Add the rest of the additional error checks for invalid Mach-O files whenKevin Enderby2016-11-0218-28/+157
| | | | | | | | | | the offsets and sizes of an element of the Mach-O file overlaps with another element in the Mach-O file. Some other tests for malformed Mach-O files now run into these checks so their tests were also adjusted. llvm-svn: 285860
* [RuntimeDyld] Move an X86 only test to the correct directory.Davide Italiano2016-11-021-0/+0
| | | | | | This is an attempt to placate the bots after r285841. llvm-svn: 285859
* Fix typo which broke debugging on older OSX systems after r285172.Dawn Perchik2016-11-021-1/+1
| | | | | | | | Reviewed by: jasonmolenda Subscribers: lldb-commits Differential Revision: http://reviews.llvm.org/D26260 llvm-svn: 285858
* DCE math library calls with a constant operand.Eli Friedman2016-11-024-0/+249
| | | | | | | | | | | On platforms which use -fmath-errno, math libcalls without any uses require some extra checks to figure out if they are actually dead. Fixes https://llvm.org/bugs/show_bug.cgi?id=30464 . Differential Revision: https://reviews.llvm.org/D25970 llvm-svn: 285857
* Don't require nullability on template parameters in typedefs.Jordan Rose2016-11-022-1/+19
| | | | | | | | | | | | | | | | | | | Previously the following code would warn on the use of "T": template <typename T> struct X { typedef T *type; }; ...because nullability is /allowed/ on template parameters (because they could be pointers). (Actually putting nullability on this use of 'T' will of course break if the argument is a non-pointer type.) This fix doesn't handle the case where a template parameter is used /outside/ of a typedef. That seems trickier, especially in parameter position. llvm-svn: 285856
* Fix Clang-tidy readability-redundant-string-cstr warningsMalcolm Parsons2016-11-0276-181/+163
| | | | | | | | | | Reviewers: zturner, labath Subscribers: tberghammer, danalbert, lldb-commits Differential Revision: https://reviews.llvm.org/D26233 llvm-svn: 285855
* Fix Windows buildbot.Rui Ueyama2016-11-021-3/+3
| | | | llvm-svn: 285854
* [llvm-cov] Turn line numbers in html reports into clickable linksVedant Kumar2016-11-023-58/+60
| | | | llvm-svn: 285853
* [analyzer] StdLibraryFunctions: provide platform-specific function summaries.Artem Dergachev2016-11-022-58/+173
| | | | | | | | | | Because standard functions can be defined differently on different platforms, this commit introduces a method for constructing summaries with multiple variants, whichever matches better. It is also useful for supporting overloads. Differential Revision: https://reviews.llvm.org/D25940 llvm-svn: 285852
* Convert Out::InterpSection to In::InterpSection.Rui Ueyama2016-11-025-40/+37
| | | | | | Differential Revision: https://reviews.llvm.org/D26225 llvm-svn: 285851
* Reduce number of classes by merging DIHelper with ObjectFile.Rui Ueyama2016-11-023-57/+31
| | | | | | | | | | DIHelper is a class having only one member, and ObjectFile has a unique pointer to a DIHelper. So we can directly have ObjectFile have the member. Differential Revision: https://reviews.llvm.org/D26223 llvm-svn: 285850
* regcall: Implement regcall Calling Conv in clangErich Keane2016-11-0224-37/+441
| | | | | | | | | | This patch implements the register call calling convention, which ensures as many values as possible are passed in registers. CodeGen changes were committed in https://reviews.llvm.org/rL284108. Differential Revision: https://reviews.llvm.org/D25204 llvm-svn: 285849
* [Documentation] Fix Clang-tidy misc-use-after-move and cert-msc50-cpp style ↵Eugene Zelenko2016-11-022-4/+9
| | | | | | and misspelling. llvm-svn: 285848
* Remove KQueue.cppPavel Labath2016-11-024-136/+0
| | | | | | | | | | | | | Summary: This class is unused. Reviewers: clayborg Subscribers: mgorny, modocache, lldb-commits Differential Revision: https://reviews.llvm.org/D26237 llvm-svn: 285847
* [Hexagon] Remove registers coalesced in expand-condsets from live intervalsKrzysztof Parzyszek2016-11-022-0/+52
| | | | llvm-svn: 285846
* Add support for old versions of MacOS to libunwind. Fixes PR22203. Thanks to ↵Marshall Clow2016-11-021-4/+18
| | | | | | Jeremy for the bug report and the patch. llvm-svn: 285845
* [AMDGPU][mc] Improve test of special asm symbols.Artem Tamazov2016-11-021-31/+27
| | | | | | | | Test simplified. Coverage extended. Differential Revision: https://reviews.llvm.org/D26198 llvm-svn: 285844
* Fix crash in PseudoTerminal on Windows.Zachary Turner2016-11-021-6/+9
| | | | | | | Patch by Rudy Pons Differential Revision: https://reviews.llvm.org/D25681 llvm-svn: 285843
* [clang-tidy] Extend misc-use-after-move to support unique_ptr and shared_ptr.Martin Bohme2016-11-023-26/+153
| | | | | | | | | | | | | | Summary: As a unique_ptr or shared_ptr that has been moved from is guaranteed to be null, we only warn if the pointer is dereferenced. Reviewers: hokein, alexfh, aaron.ballman Subscribers: Prazek, cfe-commits Differential Revision: https://reviews.llvm.org/D26041 llvm-svn: 285842
* [lli/COFF] Set the correct alignment for common symbolsDavide Italiano2016-11-023-0/+18
| | | | | | | | | | Otherwise we set it always to zero, which is not correct, and we assert inside alignTo (Assertion failed: Align != 0u && "Align can't be 0."). Differential Revision: https://reviews.llvm.org/D26173 llvm-svn: 285841
* AMDGPU: Cleanup some xfailed testsMatt Arsenault2016-11-023-52/+10
| | | | | | Some of these are already fixed or tested somewhere else. llvm-svn: 285840
* [CMake] Support LLDB_TEST_CLANG in check-lldb target(s)Chris Bieneman2016-11-021-0/+4
| | | | | | This just hooks up the in-tree compiler to be optionally used when running the test suite. llvm-svn: 285839
* Find clang resource directory via *nix-style lookupChris Bieneman2016-11-023-21/+40
| | | | | | | | | | | | | | | | | Summary: This patch allows the Darwin build to fall back to to Posix-style lookups for the clang resource directory if the debugger library isn't inside a framework. The patch also includes a bit of refactoring and cleanup around the *nix resolution of the binary and lib directories to reuse the code instead of duplicating it. With this patch Darwin builds that don't build a framework only have 3 failing tests on my system (TestExec.py). Reviewers: zturner, labath, spyffe, tfiala Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D26170 llvm-svn: 285838
* Fix build due to missing definition.Zachary Turner2016-11-021-1/+1
| | | | llvm-svn: 285837
* Add CodeViewRecordIO for reading and writing.Zachary Turner2016-11-0218-1152/+1190
| | | | | | | | | | | | | | | Using a pattern similar to that of YamlIO, this allows us to have a single codepath for translating codeview records to and from serialized byte streams. The current patch only hooks this up to the reading of CodeView type records. A subsequent patch will hook it up for writing of CodeView type records, and then a third patch will hook up the reading and writing of CodeView symbols. Differential Revision: https://reviews.llvm.org/D26040 llvm-svn: 285836
* AMDGPU: Allow additional implicit operands on MOVRELS instructionsNicolai Haehnle2016-11-022-1/+35
| | | | | | | | | | | | | | | | | | | Summary: The post-RA scheduler occasionally uses additional implicit operands when the vector implicit operand as a whole is killed, but some subregisters are still live because they are directly referenced later. Unfortunately, this seems incredibly subtle to reproduce. Fixes piglit spec/glsl-110/execution/variable-indexing/vs-temp-array-mat2-index-wr.shader_test and others. Reviewers: arsenm, tstellarAMD Subscribers: kzhuravl, wdng, yaxunl, tony-tye, llvm-commits Differential Revision: https://reviews.llvm.org/D25656 llvm-svn: 285835
* Fix some warnings compiling with clang-cl on Windows.Zachary Turner2016-11-022-4/+3
| | | | llvm-svn: 285834
* Change task stealing to always get task from head of victim's deque.Andrey Churbanov2016-11-021-13/+8
| | | | | | Differential Revision: https://reviews.llvm.org/D26187 llvm-svn: 285833
* Fix Clang-tidy readability-redundant-string-cstr warningsMalcolm Parsons2016-11-0213-23/+22
| | | | | | | | | | Reviewers: beanz, lattner, jlebar Subscribers: jholewinski, llvm-commits, mehdi_amini Differential Revision: https://reviews.llvm.org/D26235 llvm-svn: 285832
* Add conditions for PPC to libunwind. Fixes PR22200. Thanks to Jeremy for the ↵Marshall Clow2016-11-021-1/+2
| | | | | | bug report and the patch. llvm-svn: 285831
* [ARM][MC] Cleanup ARM Target Assembly ParserNirav Dave2016-11-024-542/+536
| | | | | | | | | | | | | | Summary: Correctly parse end-of-statement tokens and handle preprocessor end-of-line comments in ARM assembly processor. Reviewers: rnk, majnemer Subscribers: aemerson, rengolin, llvm-commits Differential Revision: https://reviews.llvm.org/D26152 llvm-svn: 285830
* Improve and cleanup comments in DwarfExpression.hAdrian Prantl2016-11-021-15/+14
| | | | llvm-svn: 285829
* BranchRelaxation: Fix computing indirect branch block sizeMatt Arsenault2016-11-022-17/+71
| | | | llvm-svn: 285828
* Simplify control flow in the the DWARF expression compilerAdrian Prantl2016-11-025-69/+107
| | | | | | by refactoring common code into a DwarfExpressionCursor wrapper. llvm-svn: 285827
* Emit DW_OP_piece also if the previous value was a constant.Adrian Prantl2016-11-023-6/+126
| | | | | | This fixes a bug in the DWARF backend. llvm-svn: 285826
* Simplify the test case from r285289.Alex Lorenz2016-11-021-20/+13
| | | | | | | | | This commit simplifies and clarifies the test code that was added in r285289. Suggested by David Blaikie. llvm-svn: 285825
* [ELF] - Allow "-Ttext xxx", "-Tbss xxx", "-Tdata bss" commandline.George Rimar2016-11-022-6/+13
| | | | | | | So patch just defines an alias for -Txxx=YYY forms, this is consistent with ld and should fix PR30814. llvm-svn: 285824
* Add a note that points to the linkage specifier for the C++ linkage errorsAlex Lorenz2016-11-029-11/+35
| | | | | | | | | | | | This commit improves the "must have C++ linkage" error diagnostics that are emitted for C++ declarations like templates and literal operators by adding an additional note that points to the appropriate extern "C" linkage specifier. rdar://19021120 Differential Revision: https://reviews.llvm.org/D26189 llvm-svn: 285823
* Use !operator to test if APInt is zero/non-zero. NFCI.Simon Pilgrim2016-11-021-3/+3
| | | | | | Avoids APInt construction and slower comparisons. llvm-svn: 285822
* [asan] Add more dynamic CRT mode testsReid Kleckner2016-11-0214-47/+78
| | | | | | | | | | | | Only tests using %clang_cl_asan were using the dynamic CRT before this. The unit tests and lit tests using %clangxx_asan were using the static CRT. Many cross-platform tests fail with the dynamic CRT, so I had to add win32-(static|dynamic)-asan lit features. Also deletes some redundant tests in TestCases/Windows that started failing with this switch. llvm-svn: 285821
* [asan] Use the dynamic ASan runtime if -shared-libasan is passedReid Kleckner2016-11-021-1/+2
| | | | | | | | | | -shared-libasan is likely to be used as a link flag if the user is using the GCC-style clang driver. This logic is already tested in clang-cl tests, and the new flag to exercise it will be covered by asan tests. llvm-svn: 285820
* Simplify typedefs. NFC.Rafael Espindola2016-11-021-15/+14
| | | | llvm-svn: 285819
OpenPOWER on IntegriCloud