| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The implementation of [depr.c.headers] in D12747 introduced the necessary
C headers into libc++. This patch adds one more missing headers: limits.h
We spotted this due to a failing C++03 test [limits_h.pass.cpp] in our libc++
configuration; when the limits.h header is included from a C++ program, it now
bypassed the __config header and went directly into the underlying C library's
limits.h header, which is problematic for us because we use __config header to
configure the underlying C library's behaviour when used from a C++ context.
Reviewers: mclow.lists, rsmith
Differential revision: https://reviews.llvm.org/D25361
llvm-svn: 283726
|
| |
|
|
| |
llvm-svn: 283725
|
| |
|
|
| |
llvm-svn: 283724
|
| |
|
|
| |
llvm-svn: 283723
|
| |
|
|
|
|
| |
allocation.
llvm-svn: 283722
|
| |
|
|
| |
llvm-svn: 283721
|
| |
|
|
|
|
| |
128-bit load as input.
llvm-svn: 283720
|
| |
|
|
|
|
| |
from the sse41 and avx2 test cases. Code will be improved in future commits.
llvm-svn: 283719
|
| |
|
|
|
|
| |
avx2-pmovxrm.ll. Also disable peephole so we really test pattern matching.
llvm-svn: 283718
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit in the name of:Coby Tayree
1.'v' constraint for (x86) non-avx arch imitates the already implemented 'x' constraint, i.e. allows XMM{0-15} & YMM{0-15} depending on the apparent arch & mode (32/64).
2.for the avx512 arch it allows [X,Y,Z]MM{0-31} (mode dependent)
This patch applies the needed changes to clang
clang patch: https://reviews.llvm.org/D25004
Differential Revision: D25005
llvm-svn: 283717
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit in the name of: Coby Tayree
1.'v' constraint for (x86) non-avx arch imitates the already implemented 'x' constraint, i.e. allows XMM{0-15} & YMM{0-15} depending on the apparent arch & mode (32/64).
2.for the avx512 arch it allows [X,Y,Z]MM{0-31} (mode dependent)
This patch applies the needed changes to clang
LLVM patch: https://reviews.llvm.org/D25005
Differential Revision: D25004
llvm-svn: 283716
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
__builtin_addressof was added to the GCC trunk in the past week. This patch
teaches libc++ about it so it can correctly provide constexpr addressof.
Unfortunately this patch will break users of earlier GCC 7 builds, since
we expect __builtin_addressof but one won't be provided. One option would be
to only use __builtin_addressof for GCC 7.1 and above, but that means
waiting for another release.
Instead I've specifically chosen to break older GCC 7 versions. Since GCC 7
has yet to be released, and the 7.0 release is a development release, I
believe that anybody currently using GCC 7.0 will have no issue upgrading.
llvm-svn: 283715
|
| |
|
|
| |
llvm-svn: 283714
|
| |
|
|
| |
llvm-svn: 283712
|
| |
|
|
|
|
|
| |
This also changes the order of the statements in CMakeLists.txt to be
alphabetical.
llvm-svn: 283711
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Using Python linter flake8 on the utils/lit reveals several linter
warnings designated "F401: Unused import". Fix or silence these
warnings.
Some of these unused imports are legitimate, while some are part of lit's API.
For example, users of lit expect to be able to access `lit.formats.ShTest` in
their `lit.cfg`, despite the module hierarchy for that symbol actually being
`lit.formats.shtest.ShTest`. To silence linter errors for these lines,
include a "noqa" directive.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: mehdi_amini, llvm-commits
Differential Revision: https://reviews.llvm.org/D25407
llvm-svn: 283710
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
`TestingProgressDisplay` initializes its `current` attribute to `None`, but
never reads or writes the value again. Remove it.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: llvm-commits, mehdi_amini
Differential Revision: https://reviews.llvm.org/D25415
llvm-svn: 283709
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
`ArgumentError` is not defined by the Python standard library.
Executing this line of code would throw a exception, but not the
intended one. It would throw a `NameError` exception, since `ArgumentError`
is undefined.
Use `ValueError` instead, which is defined by the Python standard
library.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: llvm-commits, mehdi_amini
Differential Revision: https://reviews.llvm.org/D25410
llvm-svn: 283708
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Semicolons aren't necessary as statement terminators in Python, and
each of these uses are superfluous as they appear at the end of a line.
The convention is to not use semicolons where not needed, so remove them.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: llvm-commits, mehdi_amini
Differential Revision: https://reviews.llvm.org/D25409
llvm-svn: 283707
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: `prefix` is written to but never read.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: llvm-commits, mehdi_amini
Differential Revision: https://reviews.llvm.org/D25408
llvm-svn: 283706
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The minimum version of Python required to run LLVM's test suite is 2.7.
Remove a workaround for older Python versions.
Reviewers: echristo, delcypher, beanz, ddunbar
Subscribers: llvm-commits, mehdi_amini
Differential Revision: https://reviews.llvm.org/D25400
llvm-svn: 283705
|
| |
|
|
|
|
| |
from SSE file. Also add a minimal set for 512-bit.
llvm-svn: 283704
|
| |
|
|
| |
llvm-svn: 283703
|
| |
|
|
|
|
|
|
| |
This avoids "static initialization order fiasco"
Differential Revision: https://reviews.llvm.org/D25412
llvm-svn: 283702
|
| |
|
|
| |
llvm-svn: 283701
|
| |
|
|
| |
llvm-svn: 283700
|
| |
|
|
| |
llvm-svn: 283699
|
| |
|
|
|
|
| |
dependancies
llvm-svn: 283698
|
| |
|
|
|
|
| |
Patch by Will Dietz!
llvm-svn: 283697
|
| |
|
|
|
|
|
|
| |
generated code
Thanks to RKSimon for the suggestion.
llvm-svn: 283696
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
- Added 64-bit target testing.
- Added 64-bit operand test cases.
- Added cases that demonstrate pr30644
Reviewers: RKSimon, craig.topper, igorb
Differential Revision: https://reviews.llvm.org/D25401
llvm-svn: 283695
|
| |
|
|
|
|
|
|
|
|
| |
Masked-expand-load node represents load operation that loads a variable amount of elements from memory according to amount of "true" bits in the mask and expands the loaded elements according to their position in the mask vector.
Right now, the node is used in intrinsics for VEXPAND* instructions.
The work is done towards implementation of masked.expandload and masked.compressstore intrinsics.
Differential Revision: https://reviews.llvm.org/D25322
llvm-svn: 283694
|
| |
|
|
|
|
| |
This fixes 'make check-polly'
llvm-svn: 283693
|
| |
|
|
| |
llvm-svn: 283692
|
| |
|
|
| |
llvm-svn: 283691
|
| |
|
|
| |
llvm-svn: 283690
|
| |
|
|
| |
llvm-svn: 283689
|
| |
|
|
| |
llvm-svn: 283688
|
| |
|
|
| |
llvm-svn: 283687
|
| |
|
|
| |
llvm-svn: 283686
|
| |
|
|
|
|
|
|
|
|
| |
We have a loop-rerolling optimization which can be enabled by using
-freroll-loops. While sometimes loops are hand-unrolled for performance
reasons, when optimizing for size, we should always undo this manual
optimization to produce smaller code (our optimizer's unroller will still
unroll the rerolled loops if it thinks that is a good idea).
llvm-svn: 283685
|
| |
|
|
|
|
|
|
|
|
|
| |
r283659 changed the argument to gen_link_script.py from SCRIPT_ABI_LIBNAME to
LIBCXX_LIBRARIES_PUBLIC, assuming that all of the items in the
LIBCXX_LIBRARIES_PUBLIC list were library names. This is not right, however,
for in-tree libcxxabi builds, we might have the target name in this list. There
was special logic to fixup SCRIPT_ABI_LIBNAME for this situation; change it to
apply a similar fixup for LIBCXX_LIBRARIES_PUBLIC.
llvm-svn: 283684
|
| |
|
|
|
|
|
|
|
| |
dir.
This is obviously wrong -- if we do this, then all compiles will pick up
these wrappers, which is not what we want.
llvm-svn: 283683
|
| |
|
|
|
|
| |
created by the current process
llvm-svn: 283682
|
| |
|
|
|
|
| |
(I don't have Gold available, so this is speculative)
llvm-svn: 283681
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We do this by wrapping <complex> and <algorithm>.
Tests are in the test-suite.
Reviewers: tra
Subscribers: jhen, beanz, cfe-commits, mgorny
Differential Revision: https://reviews.llvm.org/D24979
llvm-svn: 283680
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: This matches the idiom we use for our other CUDA wrapper headers.
Reviewers: tra
Subscribers: beanz, mgorny, cfe-commits
Differential Revision: https://reviews.llvm.org/D24978
llvm-svn: 283679
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
our standard library.
Summary:
Currently we declare our inline __device__ math functions in namespace
std. But libstdc++ and libc++ declare these functions in an inline
namespace inside namespace std. We need to match this because, in a
later patch, we want to get e.g. <complex> to use our device overloads,
and it only will if those overloads are in the right inline namespace.
Reviewers: tra
Subscribers: cfe-commits, jhen
Differential Revision: https://reviews.llvm.org/D24977
llvm-svn: 283678
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
These cause us to consider all functions in-between to be __host__
__device__.
You can nest these pragmas; you just can't have more 'end's than
'begin's.
Reviewers: rsmith
Subscribers: tra, jhen, cfe-commits
Differential Revision: https://reviews.llvm.org/D24975
llvm-svn: 283677
|
| |
|
|
| |
llvm-svn: 283676
|