- Jun 28, 2018
-
-
Benjamin Kramer authored
This reverts commits r335794 and r335797. Breaks ThinLTO+FDO selfhost. llvm-svn: 335851
-
Sjoerd Meijer authored
Armv6 introduced instructions to perform 32-bit SIMD operations. The purpose of this pass is to do some straightforward IR pattern matching to create ACLE DSP intrinsics, which map on these 32-bit SIMD operations. Currently, only the SMLAD instruction gets recognised. This instruction performs two multiplications with 16-bit operands, and stores the result in an accumulator. We will follow this up with patches to recognise SMLAD in more cases, and also to generate other DSP instructions (like e.g. SADD16). Patch by: Sam Parker and Sjoerd Meijer Differential Revision: https://reviews.llvm.org/D48128 llvm-svn: 335850
-
George Rimar authored
It is https://github.com/llvm-mirror/lld/blob/master/ELF/EhFrame.cpp#L144, and we had no test case to cover it. llvm-svn: 335849
-
Filipe Cabecinhas authored
llvm-svn: 335848
-
George Rimar authored
It's https://github.com/llvm-mirror/lld/blob/master/ELF/EhFrame.cpp#L147 line, which was untested before this patch. llvm-svn: 335847
-
Alexander Kornienko authored
llvm-svn: 335846
-
Alexander Kornienko authored
llvm-svn: 335845
-
Pavel Labath authored
This reverts commit r335839, because it breaks the MSVC build. llvm-svn: 335844
-
Aaron Ballman authored
The :option: syntax was generating Sphinx build warnings; switched to double backticks to silence the warning; NFC. llvm-svn: 335843
-
Aaron Ballman authored
Correct the code highlighting marker to be Objective-C rather than C++ which fixes a Sphinx build warning; NFC. llvm-svn: 335842
-
Aaron Ballman authored
llvm-svn: 335841
-
George Rimar authored
This test case adds test for the line that was uncovered previously: https://github.com/llvm-mirror/lld/blob/master/ELF/EhFrame.cpp#L175 it errors out, but we now can test that we have expected flow, which is different for CIE of version 1 and CIE of version 3. llvm-svn: 335840
-
Pavel Labath authored
Summary: This allows the implicit ArrayRef conversions to kick in when e.g. comparing ArrayRef to a SmallVector. Reviewers: zturner, dblaikie Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D48632 llvm-svn: 335839
-
George Rimar authored
It was https://github.com/llvm-mirror/lld/blob/master/ELF/EhFrame.cpp#L195 and we did not cover it with test. Patch fixes it. llvm-svn: 335838
-
Andrea Di Biagio authored
Rather than calling std::find in a loop, just sort the vector and remove duplicate entries at the end of the function. Also, move the debug print at the end of the function, and query the MCRegisterInfo to print register names rather than physreg IDs. No functional change intended. llvm-svn: 335837
-
Ilya Biryukov authored
By recomputing CompilerInvocation instead of copying it. The problem was caused by the fact that copies of CompilerInvocation store references to the shared state (DiagnosticOptions) when copied, causing data races when two different copies are destroyed from different threads. llvm-svn: 335836
-
Adam Balogh authored
Add handling of the begin() funcion of containers to the iterator checkers, together with the pre- and postfix ++ and -- operators of the iterators. This makes possible the checking of iterators dereferenced ahead of the begin of the container. Differential Revision: https://reviews.llvm.org/D32642 llvm-svn: 335835
-
Jonas Devlieghere authored
Follow-up commit for r335757 to address some inconsistencies. llvm-svn: 335834
-
George Rimar authored
It is the following line: https://github.com/llvm-mirror/lld/blob/master/ELF/EhFrame.cpp#L120 We did not cover it yet. llvm-svn: 335833
-
Jesper Antonsson authored
Summary: Just a silly one-character correction. Subscribers: llvm-commits Differential Revision: https://reviews.llvm.org/D48709 llvm-svn: 335832
-
Hans Wennborg authored
llvm-svn: 335831
-
Matt Arsenault authored
We have too many mechanisms for tracking the various offsets used for kernel arguments, so remove one. There's still a lot of confusion with these because there are two different "implicit" argument areas located at the beginning and end of the kernarg segment. Additionally, the offset was determined based on the memory size of the split element types. This would break in a future commit where v3i32 is decomposed into separate i32 pieces. llvm-svn: 335830
-
Matt Arsenault authored
In principle nothing should stop these from working, but work is necessary to create an ABI for dealing with the stack related registers. llvm-svn: 335829
-
Matt Arsenault authored
Not sure how this wasn't noticed before. llvm-svn: 335828
-
Matt Arsenault authored
Just fix the crash for now by not doing the optimization since figuring out how to properly convert the bits for an arbitrary struct is a pain. Also fix a crash when there is only an empty struct argument. llvm-svn: 335827
-
George Rimar authored
llvm-svn: 335826
-
George Rimar authored
It was uncovered by our test cases. llvm-svn: 335824
-
Benjamin Kramer authored
These are all benign races and only visible in !NDEBUG. tsan complains about it, but a simple atomic bool is sufficient to make it happy. llvm-svn: 335823
-
Pavel Labath authored
Summary: This patch fixes a problem with retrieving a function symbol by an address in a nested block. In the current implementation of ResolveSymbolContext function it retrieves a symbol with PDB_SymType::None and then checks if found symbol's tag equals to PDB_SymType::Function. So, if nested block's symbol was found, ResolveSymbolContext does not resolve a function. Reviewers: asmith, labath, zturner Reviewed By: asmith, labath Differential Revision: https://reviews.llvm.org/D47939 Patch by Aleksandr Urakov <aleksandr.urakov@jetbrains.com> llvm-svn: 335822
-
Simon Pilgrim authored
We could get away with it for constant folded cases, but not for rL335719. Thanks to Krzysztof Parzyszek for noticing. llvm-svn: 335821
-
Florian Hahn authored
SCCP does not change the CFG, so we can mark it as preserved. Reviewers: dberlin, efriedma, davide Reviewed By: davide Differential Revision: https://reviews.llvm.org/D47149 llvm-svn: 335820
-
George Rimar authored
It was uncovered by our test cases. llvm-svn: 335819
-
George Rimar authored
We has precompiled object with unsupported FDE version (=2). It is possible to use llvm-mc instead for this test. Patch do this change. llvm-svn: 335818
-
Simon Pilgrim authored
Noticed in D45806 review. llvm-svn: 335817
-
Max Kazantsev authored
If a trunc has a user in a block which is not reachable from entry, we can safely perform trunc elimination as if this user didn't exist. llvm-svn: 335816
-
Clement Courbet authored
Summary: This enables the X86-specific X86FloatingPointStackifierPass, and allow llvm-exegesis to generate and measure X87 latency/uops for some FP ops. Reviewers: gchatelet Subscribers: tschuett, llvm-commits Differential Revision: https://reviews.llvm.org/D48592 llvm-svn: 335815
-
Adam Balogh authored
If range [m .. n] is stored for symbolic expression A - B, then we can deduce the range for B - A which is [-n .. -m]. This is only true for signed types, unless the range is [0 .. 0]. Differential Revision: https://reviews.llvm.org/D35110 llvm-svn: 335814
-
Tobias Grosser authored
Suggested-by: Michael Kruse llvm-svn: 335813
-
Petr Hosek authored
Previously we were using default logic when building Linux runtimes in Fuchsia toolchain, but that leads to various issues due to how the CMake logic in compiler-rt for determining the platform support is implemented. With this change, we will use explicit target for every provided Linux sysroot. Differential Revision: https://reviews.llvm.org/D48563 llvm-svn: 335812
-
Petar Jovanovic authored
Remove unused ByteStreamer argument from function emitDebugLocValue. Patch by Nikola Prica. Differential Revision: https://reviews.llvm.org/D48590 llvm-svn: 335811
-