| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
|
|
| |
NFC
llvm-svn: 244659
|
| |
|
|
|
|
|
|
|
|
| |
problematic dependency
Seems we had some internal uses that include ClangTidyTest.h and weren't
ready for a gtest dependency. Reverting to give Manuel some time to look
into it.
llvm-svn: 244658
|
| |
|
|
|
|
| |
single/double multiplies
llvm-svn: 244657
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: This patch adds check for dead blocks and skip them for processSwitchInst(). This will help reduce compilation time.
Reviewers: reames, hans
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11953
llvm-svn: 244656
|
| |
|
|
|
|
|
|
|
|
| |
Summary: Implementation is the same as in AArch64.
Subscribers: aemerson, jfb, llvm-commits, sunfish
Differential Revision: http://reviews.llvm.org/D11956
llvm-svn: 244655
|
| |
|
|
| |
llvm-svn: 244653
|
| |
|
|
|
|
| |
Also, add a test for optsize because this was not part of any existing regression test.
llvm-svn: 244651
|
| |
|
|
|
|
|
|
| |
This non-conforming extension was introduced to make it possible for us
to correctly compile <atomic> in VS 2013 and 2015. Let's limit its
impact to system headers to encourage portable code.
llvm-svn: 244650
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
For example:
s6 = s0*s5;
s2 = s6*s6 + s6;
...
s4 = s6*s3;
We notice that it is possible for s2 is folded to fma (s0, s5, fmul (s6 s6)).
This only happens when Aggressive is true, otherwise hasOneUse() check
already prevents from folding the multiplication with more uses.
Test Plan: test/CodeGen/NVPTX/fma-assoc.ll
Patch by Xuetian Weng
Reviewers: hfinkel, apazos, jingyue, ohsallen, arsenm
Subscribers: arsenm, jholewinski, llvm-commits
Differential Revision: http://reviews.llvm.org/D11855
llvm-svn: 244649
|
| |
|
|
|
|
|
|
|
|
| |
This reverts commit r244633.
We aren't going to be able to use it because the compiler-rt build can
be built standalone without an LLVM source dir *or* an installed copy of
LLVM.
llvm-svn: 244648
|
| |
|
|
|
|
|
| |
compiler-rt can apparently be built without an installed copy of LLVM,
so we can't call its cmake code.
llvm-svn: 244647
|
| |
|
|
|
|
|
| |
Account for the case when uptr is 32-bit instead of trying to fix this case
using the little endian path.
llvm-svn: 244646
|
| |
|
|
|
|
| |
Linux must pick it up transitively.
llvm-svn: 244645
|
| |
|
|
|
|
|
|
| |
Reviewers: lhames, aaron.ballman
Differential Revision: http://reviews.llvm.org/D11779
llvm-svn: 244644
|
| |
|
|
|
|
|
| |
This re-applies r244516 (effectively reverting r244516) without losing
the check that caused failures for VS.
llvm-svn: 244643
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: LowerSwitch crashed with the attached test case after deleting the default block. This happened because the current implementation of deleting dead blocks is wrong. After the default block being deleted, it contains no instruction or terminator, and it should no be traversed anymore. However, since the iterator is advanced before processSwitchInst() function is executed, the block advanced to could be deleted inside processSwitchInst(). The deleted block would then be visited next and crash dyn_cast<SwitchInst>(Cur->getTerminator()) because Cur->getTerminator() returns a nullptr. This patch fixes this problem by recording dead default blocks into a list, and delete them after all processSwitchInst() has been done. It still possible to visit dead default blocks and waste time process them. But it is a compile time issue, and I plan to have another patch to add support to skip dead blocks.
Reviewers: kariddi, resistor, hans, reames
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11852
llvm-svn: 244642
|
| |
|
|
| |
llvm-svn: 244641
|
| |
|
|
| |
llvm-svn: 244640
|
| |
|
|
| |
llvm-svn: 244639
|
| |
|
|
|
|
|
| |
The test passed for me locally because I had a stale copy of
lld-link2.exe.
llvm-svn: 244638
|
| |
|
|
|
|
| |
by allocating a small size (will go through malloc) and then large size.
llvm-svn: 244637
|
| |
|
|
| |
llvm-svn: 244636
|
| |
|
|
|
|
| |
Linux for me
llvm-svn: 244635
|
| |
|
|
|
|
| |
As requested in post-commit review of r244549.
llvm-svn: 244634
|
| |
|
|
|
|
|
| |
I plan to use this from compiler-rt, but it's useful for any LLVM
project that depends on more than just LLVM.
llvm-svn: 244633
|
| |
|
|
|
|
| |
With this clang notices that switches are fully covered.
llvm-svn: 244632
|
| |
|
|
| |
llvm-svn: 244631
|
| |
|
|
|
|
| |
The minsize test will be fixed in the next commit.
llvm-svn: 244630
|
| |
|
|
|
|
| |
llvm-symbolizer isn't symbolizing it for some reason. I'll investigate.
llvm-svn: 244629
|
| |
|
|
| |
llvm-svn: 244628
|
| |
|
|
| |
llvm-svn: 244627
|
| |
|
|
| |
llvm-svn: 244626
|
| |
|
|
| |
llvm-svn: 244625
|
| |
|
|
| |
llvm-svn: 244624
|
| |
|
|
| |
llvm-svn: 244623
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
For LTO we need to enable this pass in the LTO pipeline,
as it is skipped during the "-flto -c" compile step (when PrepareForLTO is
set).
Reviewers: rnk
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11919
llvm-svn: 244622
|
| |
|
|
|
|
|
|
|
|
| |
iterator_range."
This reverts commit r244620.
MSVC doesn't like it :-(
llvm-svn: 244621
|
| |
|
|
| |
llvm-svn: 244620
|
| |
|
|
| |
llvm-svn: 244619
|
| |
|
|
| |
llvm-svn: 244618
|
| |
|
|
| |
llvm-svn: 244617
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
llvm-symbolizer understands both PDBs and DWARF, so it's a better bet if
it's available. It prints out the function parameter types and column
numbers, so I needed to churn the expected test output a bit.
This makes most of the llvm-symbolizer subprocessing code
target-independent. Pipes on all platforms use fd_t, and we can use the
portable ReadFromFile / WriteToFile wrappers in symbolizer_sanitizer.cc.
Only the pipe creation and process spawning is Windows-specific.
Please check that the libcdep layering is still correct. I don't know
how to reproduce the build configuration that relies on that.
Reviewers: samsonov
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11791
llvm-svn: 244616
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Other objects can never reference the MergedGlobals symbol so external linkage
is never needed. Using private instead of internal linkage means the object is
more similar to what it looks like when global merging is not enabled, with
the only difference being that the merged variables are addressed indirectly
relative to the start of the section they are in.
Also add aliases for merged variables with internal linkage, as this also makes
the object be more like what it is when they are not merged.
Differential Revision: http://reviews.llvm.org/D11942
llvm-svn: 244615
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
I incorrectly wrote CHECK-NEXT with followin with ':', the check was
ignored by FileCheck.
The non-inbound GEP is folded here because the DataLayout is no longer
optional, the fold was originally guarded with a comment that said:
We need TD information to know the pointer size unless this is inbounds.
Now we always have "TD information" and perform the fold.
Thanks Jonathan Roelofs for noticing.
From: Mehdi Amini <mehdi.amini@apple.com>
llvm-svn: 244613
|
| |
|
|
| |
llvm-svn: 244612
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Check the contents of BBtoRegion during analysis verification. It only takes place if -verify-region-info is passed or LLVM is compiled with XDEBUG.
RegionBase<Tr>::verifyRegion() also checks the RegionInfoBase<Tr>::VerifyRegionInfo flag, which is redundant, but verifyRegion() is public API and might be invoked from other sites. In order to avoid behavioral change, this check is not removed. In any case, no region will be verified unless VerifyRegionInfo is set.
Reviewers: grosser
Subscribers: llvm-commits
Differential Revision: http://reviews.llvm.org/D11872
llvm-svn: 244611
|
| |
|
|
| |
llvm-svn: 244610
|
| |
|
|
| |
llvm-svn: 244609
|
| |
|
|
|
|
|
|
|
|
| |
In order to have a valid region analysis, we assign all newly created blocks to the parent of the scop's region. This is correct for any pre-existing regions (including the scop's region and its parent), but does not discover any region inside the generated code. For Polly this is not necessary because we do not want to re-run Polly on its own generated code anyway.
Reviewers: grosser
Part of Differential Revision: http://reviews.llvm.org/D11867
llvm-svn: 244608
|
| |
|
|
| |
llvm-svn: 244607
|