- Oct 19, 2017
-
-
Martin Storsjö authored
This should fix the build after SVN r316178, which worked fine on GCC 5.4, but failed on clang with errors like these: MinGW.h:26:3: error: too few template arguments for class template 'StringSet' StringSet<> ExcludeSymbols; ^ lld/Common/LLVM.h:28:30: note: template is declared here template<typename T> class StringSet; Don't forward declare and add the using directive in the main lld/Common/LLVM.h header, but just qualify the class name in MinGW.h instead. llvm-svn: 316180
-
Guozhi Wei authored
In function GetIntrinsic, not all types are covered. Types double and long long are missed, type long is wrongly treated same as int, it should be same as long long. These problems cause compiler crashes when compiling code in PR31161. This patch fixed the problem. Differential Revision: https://reviews.llvm.org/D38820 llvm-svn: 316179
-
Martin Storsjö authored
Differential Revision: https://reviews.llvm.org/D39067 llvm-svn: 316178
-
Benjamin Kramer authored
llvm-svn: 316177
-
Simon Pilgrim authored
Don't just test on 32-bit llvm-svn: 316176
-
Graham Yiu authored
The cost of splitting a large vector instruction is not being taken into account by the getUserCost function. This was leading to some loops being over unrolled. The cost of a vector instruction is now being multiplied by the cost of the type legalization. This will return a more accurate cost. Committing on behalf on Brad Nemanich (brad.nemanich@ibm.com) Differential Revision: https://reviews.llvm.org/D38961 llvm-svn: 316174
-
Pavel Labath authored
Summary: We had a bug where if we had forked (in the ProcessLauncherPosixFork) while another thread was writing a log message, we would deadlock. This happened because the fork child inherited the locked log rwmutex, which would never get unlocked. This meant the child got stuck trying to disable all log channels. The bug existed for a while but only started being apparent after D37930, which started using ThreadLauncher (which uses logging) instead of std::thread (which does not) for launching TaskPool threads. The fix is to use pthread_atfork to make sure noone is writing a log message while we are forking. Reviewers: zturner, eugene, clayborg Subscribers: lldb-commits Differential Revision: https://reviews.llvm.org/D38938 llvm-svn: 316173
-
Marshall Clow authored
Fix UB - signed integer overflow in regex. Thanks to Tim Shen for the patch. Reviewed as https://reviews.llvm.org/D39066 llvm-svn: 316172
-
Konstantin Zhuravlyov authored
llvm-svn: 316171
-
Krzysztof Parzyszek authored
llvm-svn: 316170
-
Saleem Abdulrasool authored
Modify static_casts to not be tautological in some COFF i386 relocations. Patch by Alex Langford! llvm-svn: 316169
-
Alex Bradbury authored
This is necessary to avoid an assertion in the included test case and similar assembler inputs. llvm-svn: 316168
-
Alex Bradbury authored
llvm-svn: 316167
-
Erich Keane authored
As reported here https://bugs.llvm.org/show_bug.cgi?id=34988 [[nodiscard]] warnings were not being suppressed for volatile-ref return values. Differential Revision: https://reviews.llvm.org/D39075 llvm-svn: 316166
-
Yaxun Liu authored
llvm-svn: 316165
-
Nikolai Bozhenov authored
llvm-svn: 316164
-
George Rimar authored
llvm-svn: 316163
-
Simon Pilgrim authored
x86 has its own copy of integer absolute pattern matching to combine directly to a SUB+CMOV. This patch removes the x86 combine and adds custom lowering support for ISD::ABS instead, allowing us to use the DAGCombiner version. Additional test cases are already covered by iabs.ll (rL315706 and rL315711). Differential Revision: https://reviews.llvm.org/D38895 llvm-svn: 316162
-
Simon Pilgrim authored
llvm-svn: 316161
-
Simon Pilgrim authored
Before landing D38895 llvm-svn: 316160
-
Alex Bradbury authored
While parameterising by XLen, also take the opportunity to clean up the formatting of the RISCV .td files. This commit unifies the in-tree code with my patchset at <https://github.com/lowrisc/riscv-llvm>. llvm-svn: 316159
-
Max Kazantsev authored
llvm-svn: 316158
-
Gabor Horvath authored
Patch by: Adam Balogh! Differential Revision: https://reviews.llvm.org/D39048 llvm-svn: 316157
-
Serguei Katkov authored
The method IEEEFloat::convertFromStringSpecials() does not recognize the "+Inf" and "-Inf" strings but these strings are printed for the double Infinities by the IEEEFloat::toString(). This patch adds the "+Inf" and "-Inf" strings to the list of recognized patterns in IEEEFloat::convertFromStringSpecials(). Reviewers: sberg, bogner, majnemer, timshen, rnk, skatkov, gottesmm, bkramer, scanon Reviewed By: skatkov Subscribers: apilipenko, reames, llvm-commits Differential Revision: https://reviews.llvm.org/D38030 llvm-svn: 316156
-
Diana Picus authored
llvm-svn: 316155
-
Diana Picus authored
These test cases don't really add anything that isn't covered by other tests as well, so we can safely remove them. llvm-svn: 316154
-
Vassil Vassilev authored
It fails on some bots and now we know how to reproduce it. llvm-svn: 316153
-
Haojian Wu authored
* Add missing override keyword. * avoid unnecessary copy of std::string. llvm-svn: 316152
-
Sam McCall authored
llvm-svn: 316151
-
Vassil Vassilev authored
Original commit message: "[cmake] Use find_package to discover zlib This allows us to use standard cmake utilities to point to non-system zlib locations. Patch by Oksana Shadura and me (D39002)." The new patch brings back the old behavior in the cases where find_package cannot find zlib. llvm-svn: 316150
-
Martin Storsjö authored
These typos appeared in SVN r309226 and r309327. llvm-svn: 316149
-
Martin Storsjö authored
This more or less matches what GNU ld does. Differential Revision: https://reviews.llvm.org/D38937 llvm-svn: 316148
-
Vedant Kumar authored
llvm-svn: 316147
-
Max Kazantsev authored
llvm-svn: 316146
-
whitequark authored
MergeFunctions uses (through FunctionComparator) a map of GlobalValues to identifiers because it needs to compare functions and globals do not have an inherent total order. Thus, FunctionComparator (through GlobalNumberState) has a ValueMap<GlobalValue *>. r315852 added a RAUW on globals that may have been previously encountered by the FunctionComparator, which would replace a GlobalValue * key with a ConstantExpr *, which is illegal. This commit adjusts that code path to remove the function being replaced from the ValueMap as well. llvm-svn: 316145
-
Rafael Espindola authored
llvm-svn: 316144
-
Rafael Espindola authored
We were reading past the end of the buffer. llvm-svn: 316143
-
Chris Bieneman authored
LLVM checks if it is performing an in-source build and then stop the build. However, this check is also triggered if LLVM is being build as part of a parent project, which prevents the parent project itself from using in-source builds. For example, CMake allows a parent project to specify the output of its subproject: add_subdirectory(llvm llvm_build) This tells CMake to conduct an out-tree build of LLVM, which without this patch will still fails because what is being tested is the parent project, not LLVM. This is fixed by using the "CURRENT" variable, which is only concerned by the CMakeLists that is actually bein processed at the moment. Tests: Ran `make check-llvm`. Patch by Henrique Jung <henriquenj_AT_gmail_DOT_com> llvm-svn: 316142
-
Vedant Kumar authored
LineCoverageIterator makes it easy for clients of coverage data to determine line execution counts for a file or function. The coverage iteration logic is tricky enough that it really pays not to have multiple copies of it. Hopefully having just one implementation in LLVM will make the iteration logic easier to test, reuse, and update. This commit is NFC but I've added a unit test to go along with it just because it's easy to do now. llvm-svn: 316141
-
Vedant Kumar authored
This is a simple code cleanup. It will facilitate moving LineCoverageIterator to libCoverage. llvm-svn: 316140
-