- Dec 08, 2014
-
-
Peter Collingbourne authored
llvm-svn: 223691
-
Samuel Benzaquen authored
Summary: Store the result matcher after the first call and reuse it later on. Recreating the matchers just to use them once incurs in a lot of unnecessary temporary memory allocations. This change speeds up our clang-tidy benchmarks by ~2%. Reviewers: klimek Subscribers: klimek, cfe-commits Differential Revision: http://reviews.llvm.org/D6564 llvm-svn: 223690
-
Peter Collingbourne authored
llvm-svn: 223689
-
Daniel Jasper authored
Before: @Mock DataLoader loooooooooooooooooooooooader = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; After: @Mock DataLoader loooooooooooooooooooooooader = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa; llvm-svn: 223688
-
Zachary Turner authored
Differential Revision: http://reviews.llvm.org/D6567 llvm-svn: 223687
-
Matt Arsenault authored
There's nothing else to bother trying to shrink these. llvm-svn: 223686
-
Daniel Jasper authored
llvm-svn: 223685
-
David Majnemer authored
A zero sized array is zero sized and might share its address with another global. llvm-svn: 223684
-
Justin Bogner authored
The logic for lowering profiling counters has been moved to an LLVM pass. Emit the intrinsics rather than duplicating the whole pass in clang. llvm-svn: 223683
-
Eric Christopher authored
llvm-svn: 223682
-
Rafael Espindola authored
We were already lazily linking functions, but all GlobalValues can be treated uniformly for this. The test updates are to ensure that a given GlobalValue is still linked in. This fixes pr21494. llvm-svn: 223681
-
Colin LeMahieu authored
llvm-svn: 223680
-
David Majnemer authored
This reverts r223624 with a small tweak, hopefully this will make stage3 equivalent. llvm-svn: 223679
-
Eric Christopher authored
Thanks to Rafael Espindola for testing assistance. llvm-svn: 223678
-
Eric Christopher authored
dependencies for the KS tutorials llvm-svn: 223677
-
Bruno Cardoso Lopes authored
Fix a compact unwind encoding logic bug which would try to encode more callee saved registers than it should, leading to early bail out in the encoding logic and abusive use of DWARF frame mode unnecessarily. Also remove no-compact-unwind.ll which was testing the wrong thing based on this bug and move it to valid 'compact unwind' tests. Added other few more tests too. llvm-svn: 223676
-
Eric Christopher authored
make all doesn't build the examples and it was uniquified since last build. llvm-svn: 223675
-
Hafiz Abid Qadeer authored
There was an error in ORing mask which is used for getting a list of variables. Previously, these constants were unnamed, and possible it become the reason of this bug. Also added test case for -stack-list-local and -stack-list_arguments. Patch from Ilia K <ki.stfu@gmail.com>. llvm-svn: 223674
-
Rafael Espindola authored
llvm-svn: 223673
-
Justin Bogner authored
Introduce the ``llvm.instrprof_increment`` intrinsic and the ``-instrprof`` pass. These provide the infrastructure for writing counters for profiling, as in clang's ``-fprofile-instr-generate``. The implementation of the instrprof pass is ported directly out of the CodeGenPGO classes in clang, and with the followup in clang that rips that code out to use these new intrinsics this ends up being NFC. Doing the instrumentation this way opens some doors in terms of improving the counter performance. For example, this will make it simple to experiment with alternate lowering strategies, and allows us to try handling profiling specially in some optimizations if we want to. Finally, this drastically simplifies the frontend and puts all of the lowering logic in one place. llvm-svn: 223672
-
Eric Christopher authored
a description of how to add debug information using DWARF and DIBuilder to the language. Thanks to David Blaikie for his assistance with this tutorial. llvm-svn: 223671
-
Eric Christopher authored
llvm-svn: 223670
-
Tim Northover authored
llvm-svn: 223669
-
Andrea Di Biagio authored
Teach ISel how to match a TZCNT/LZCNT from a conditional move if the condition code is X86_COND_NE. Existing tablegen patterns only allowed to match TZCNT/LZCNT from a X86cond with condition code equal to X86_COND_E. To avoid introducing extra rules, I added an 'ImmLeaf' definition that checks if the condition code is COND_E or COND_NE. llvm-svn: 223668
-
Colin LeMahieu authored
llvm-svn: 223667
-
Rafael Espindola authored
Since the main file was empty, we can just copy the content of the Input file into it. llvm-svn: 223666
-
Rafael Espindola authored
This is just testing the largest merge mode for comdats. No need to use hard to read names and fancy types. llvm-svn: 223665
-
Colin LeMahieu authored
llvm-svn: 223664
-
Rafael Espindola authored
llvm-svn: 223663
-
Daniel Sanders authored
Reviewers: vmedic Reviewed By: vmedic Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D6213 llvm-svn: 223662
-
Sergey Dmitrouk authored
It might be implicitly included by <pthread.h> (and that's why it worked so far), but it's not guaranteed (for example, this is not the case with newlib). llvm-svn: 223661
-
Andrea Di Biagio authored
Before this patch, the backend sub-optimally expanded the non-constant shift count of a v8i16 shift into a sequence of two 'movd' plus 'movzwl'. With this patch the backend checks if the target features sse4.1. If so, then it lets the shuffle legalizer deal with the expansion of the shift amount. Example: ;; define <8 x i16> @test(<8 x i16> %A, <8 x i16> %B) { %shamt = shufflevector <8 x i16> %B, <8 x i16> undef, <8 x i32> zeroinitializer %shl = shl <8 x i16> %A, %shamt ret <8 x i16> %shl } ;; Before (with -mattr=+avx): vmovd %xmm1, %eax movzwl %ax, %eax vmovd %eax, %xmm1 vpsllw %xmm1, %xmm0, %xmm0 retq Now: vpxor %xmm2, %xmm2, %xmm2 vpblendw $1, %xmm1, %xmm2, %xmm1 vpsllw %xmm1, %xmm0, %xmm0 retq llvm-svn: 223660
-
Rafael Espindola authored
llvm-svn: 223659
-
Rafael Espindola authored
llvm-svn: 223658
-
Rafael Espindola authored
llvm-svn: 223657
-
Rafael Espindola authored
It would crash when the function was lazy linked. llvm-svn: 223656
-
NAKAMURA Takumi authored
Introduce install_symlink.cmake from clang/tools/driver/clang_symlink.cmake. FIXME: Would it be generalized? llvm-svn: 223655
-
Rafael Espindola authored
* Use a range loop. * Move simple continue checks earlier. * clang-format. llvm-svn: 223654
-
Rafael Espindola authored
Just less code duplication. llvm-svn: 223653
-
Daniel Jasper authored
Before: auto next_pair = [](A * a) -> pair<A*, A*>{}; After: auto next_pair = [](A* a) -> pair<A*, A*>{}; llvm-svn: 223652
-