| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
| |
We are trying to prove that one group of operands is a subset of
another. We did this by populating two Sets and determining that every
element within one was inside the other.
However, this is unnecessary. We can simply construct a single set and
test if each operand is within it.
llvm-svn: 278641
|
| |
|
|
|
|
|
|
| |
tuple-like decomposition declaration. This significantly simplifies the
semantics of BindingDecls for AST consumers (they can now always be evalated
at the point of use).
llvm-svn: 278640
|
| |
|
|
| |
llvm-svn: 278639
|
| |
|
|
|
|
|
|
|
|
| |
Although libc++ only requires C++11 to build, there are other
reasons to turn on a newer dialect in the build. For example
IDE's may not highlight any C++14/C++17 in the headers when
configured for C++11. This patch add's a private option for
changing this.
llvm-svn: 278638
|
| |
|
|
| |
llvm-svn: 278637
|
| |
|
|
| |
llvm-svn: 278636
|
| |
|
|
| |
llvm-svn: 278635
|
| |
|
|
| |
llvm-svn: 278634
|
| |
|
|
| |
llvm-svn: 278633
|
| |
|
|
| |
llvm-svn: 278632
|
| |
|
|
| |
llvm-svn: 278631
|
| |
|
|
| |
llvm-svn: 278630
|
| |
|
|
| |
llvm-svn: 278629
|
| |
|
|
|
|
| |
folding tables.
llvm-svn: 278628
|
| |
|
|
| |
llvm-svn: 278627
|
| |
|
|
|
|
|
|
| |
be zero extended according to SPEC.
Differential Revision: http://reviews.llvm.org/D23489
llvm-svn: 278626
|
| |
|
|
|
|
|
| |
It was being set to the fp reg set's byte order due to an apparent
copy-and-pasteo.
llvm-svn: 278625
|
| |
|
|
| |
llvm-svn: 278624
|
| |
|
|
|
|
|
|
|
| |
1. Use shuffle to insert element i1 into vector. The previous implementation was incorrect ( dest_bit OR src_bit , it doesn't clear the bit if src_bit=0 )
2. Improve shuffle i1 vector, use CVT2MASK if supported instead TRUNCATE.
Differential Revision: http://reviews.llvm.org/D23347
llvm-svn: 278623
|
| |
|
|
|
|
| |
This was fixed differently by Teresa and this should no longer be needed.
llvm-svn: 278622
|
| |
|
|
|
|
|
|
|
| |
This reverts commit r278287.
This commit broke the clang-cmake-thumbv7-a15-full-sh bot.
See https://llvm.org/bugs/show_bug.cgi?id=28949
llvm-svn: 278621
|
| |
|
|
|
|
|
|
|
| |
This reverts commit r278288.
r278287 broke the clang-cmake-thumbv7-a15-full-sh bot.
Revert this so we can get to r278287.
llvm-svn: 278620
|
| |
|
|
| |
llvm-svn: 278619
|
| |
|
|
| |
llvm-svn: 278618
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
IRCE has the ability to further version pre-loops and post-loops that it
created, but this isn't useful at all. This change teaches IRCE to
leave behind some metadata in the loops it creates (by cloning the main
loop) so that these new loops are not re-processed by IRCE.
Today this bug is hidden by another bug -- IRCE does not update LoopInfo
properly so the loop pass manager does not re-invoke IRCE on the loops
it split out. However, once the latter is fixed the bug addressed in
this change causes IRCE to infinite-loop in some cases (e.g. it splits
out a pre-loop, a pre-pre-loop from that, a pre-pre-pre-loop from that
and so on).
llvm-svn: 278617
|
| |
|
|
|
|
|
| |
NFC meaning IRCE should not _do_ anything different, but
-debug-only=irce will be a little friendlier.
llvm-svn: 278616
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The auto-upgrade path could be called before the VST (global
names) was fully parsed, and thus intrinsic names were not
available and the autoupgrade logic could not operate.
Fix link failures with ThinLTO.
This is a recommit of r278610 with a different fix.
llvm-svn: 278615
|
| |
|
|
|
|
|
|
|
|
|
| |
LowerTargetConstantPool is not properly setting the TargetFlag to indicate
desired relocation. Coding error, the offset parameter was omitted, so the
TargetFlag was used as the offset, and the TargetFlag defaulted to zero.
This only affects -fpic compilation, and only those items created in a
Constant Pool, for example a vector of constants. Halide ran into this issue.
llvm-svn: 278614
|
| |
|
|
|
|
| |
This reverts commit r278610. Tests are broken
llvm-svn: 278613
|
| |
|
|
|
|
|
|
| |
The (negative) test case is supposed to check that IRCE does not muck
with range checks it cannot handle, not that it does the right thing in
the absence of profiling information.
llvm-svn: 278612
|
| |
|
|
|
|
|
|
| |
Loops containing `indirectbr` may not be in simplified form, even after
running LoopSimplify. Reject then gracefully, instead of tripping an
assert.
llvm-svn: 278611
|
| |
|
|
|
|
|
|
|
|
| |
The auto-upgrade path could be called before the VST (global
names) was fully parsed, and thus intrinsic names were not
available and the autoupgrade logic could not operate.
Fix link failures with ThinLTO.
llvm-svn: 278610
|
| |
|
|
|
|
| |
This reverts commit 32fc6488e48eafc0ca1bac1bd9cbf0008224d530.
llvm-svn: 278609
|
| |
|
|
|
|
| |
This reverts commit r276447.
llvm-svn: 278608
|
| |
|
|
| |
llvm-svn: 278607
|
| |
|
|
| |
llvm-svn: 278606
|
| |
|
|
|
|
| |
Recommit 278600 with some fixes to make the test more robust.
llvm-svn: 278604
|
| |
|
|
|
|
|
|
|
| |
R-value"
This reverts commit r278600. The unittest does not pass on MSVC, there is
an extra move. Investigating how to make it more robust.
llvm-svn: 278603
|
| |
|
|
|
|
|
|
| |
allocated to NumEntries.
std::numeric_limits<int>::max() may be something else than 1<<31.
llvm-svn: 278602
|
| |
|
|
|
|
| |
as well now
llvm-svn: 278601
|
| |
|
|
| |
llvm-svn: 278600
|
| |
|
|
|
|
|
| |
Tests are slightly modified versions of those written by
Sunita Marathe in D23391.
llvm-svn: 278599
|
| |
|
|
| |
llvm-svn: 278598
|
| |
|
|
|
|
|
|
| |
X86InstrInfo::findCommutedOpIndices. Most callers don't check if the instruction is commutable before calling.
This saves us the trouble of ending up in the default of the switch and having to determine if this is an FMA or not.
llvm-svn: 278597
|
| |
|
|
| |
llvm-svn: 278596
|
| |
|
|
| |
llvm-svn: 278595
|
| |
|
|
|
|
| |
(scalar_to_vector))) as the (vzmovl VR256) pattern has higher priority. NFC
llvm-svn: 278594
|
| |
|
|
|
|
| |
patterns over more complex ones that produce better code.
llvm-svn: 278593
|
| |
|
|
|
|
|
|
| |
64-bit and 32-bit elements.
Fixes PR28961.
llvm-svn: 278592
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Refactor the existing support into a LoopDataPrefetch implementation
class and a LoopDataPrefetchLegacyPass class that invokes it.
Add a new LoopDataPrefetchPass for the new pass manager that utilizes
the LoopDataPrefetch implementation class.
Reviewers: mehdi_amini
Subscribers: sanjoy, mzolotukhin, nemanjai, llvm-commits
Differential Revision: https://reviews.llvm.org/D23483
llvm-svn: 278591
|