| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
overrides this ABI.
Fixed the ordering to check first for X86 interrupt handler then for MCU target.
Differential Revision: http://reviews.llvm.org/D17801
llvm-svn: 262628
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
That's not the case for VPERMV/VPERMV3, which cover all possible
combinations (the C intrinsics use a different order; the AVX vs
AVX512 intrinsics are different still).
Since:
r246981 AVX-512: Lowering for 512-bit vector shuffles.
VPERMV is recognized in getTargetShuffleMask.
This breaks assumptions in most callers, as they expect
the non-mask operands to start at index 0.
VPERMV has the mask as operand #0; VPERMV3 has it in the middle.
Instead of the faulty assumption, have getTargetShuffleMask return
its operands as well.
One alternative we considered was to change the operand order of
VPERMV, but we agreed to stick to the instruction order, as there
are more AVX512 weirdness to cover (vpermt2/vpermi2 in particular).
Differential Revision: http://reviews.llvm.org/D17041
llvm-svn: 262627
|
|
|
|
|
|
|
| |
This makes fatal return T when there is no error. This avoids the need
for quite a few temporaries.
llvm-svn: 262626
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch implements the launching of a target region in the presence of a nested teams region, i.e calls tgt_target_teams with the required arguments gathered from the enclosed teams directive.
The actual codegen of the region enclosed by the teams construct will be contributed in a separate patch.
Reviewers: hfinkel, arpith-jacob, kkwli0, carlo.bertolli, ABataev
Subscribers: cfe-commits, caomhin, fraggamuffin
Differential Revision: http://reviews.llvm.org/D17019
llvm-svn: 262625
|
|
|
|
|
|
|
|
| |
The vectorization of first-order recurrences (r261346) caused PR26734. When
detecting these recurrences, we need to ensure that the previous value is
actually defined inside the loop. This patch includes the fix and test case.
llvm-svn: 262624
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is one of the cases shown in:
https://llvm.org/bugs/show_bug.cgi?id=26819
Shift and negate is what InstCombine prefers to produce (and I tried to make it do more of that
in http://reviews.llvm.org/rL262424 ), so we should recognize that pattern as something that might
come from autovectorization even if it's unlikely to be produced from C NEON intrinsics.
The patch is based on the x86 equivalent:
http://reviews.llvm.org/rL262036
Differential Revision: http://reviews.llvm.org/D17834
llvm-svn: 262623
|
|
|
|
|
|
|
| |
Even after the last fixup, there still seems to be one failure left. Revert until I figure out
what is going on.
llvm-svn: 262622
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17844
llvm-svn: 262621
|
|
|
|
|
|
|
|
|
|
| |
This test failed in some ARM bots after a divmod change because it was
running on a native llc, instead of targeted one. This makes sure the test
is target-specific (as intended), and also copies to ARM and AArch64
directories. If it is also supposed to work on other architectures, I'll
leave as an exercise to the respective maintainers.
llvm-svn: 262620
|
|
|
|
| |
llvm-svn: 262619
|
|
|
|
| |
llvm-svn: 262618
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17826
llvm-svn: 262617
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Applying the following restrictions for block types in OpenCL (v2.0 s6.12.5):
- __block storage class is disallowed
- every block declaration must be const qualified and initialized
- a block can't be used as a return type of a function
- a blocks can't be used to declare a structure or union field
- extern speficier is disallowed
Corrected image and sampler types diagnostics with struct and unions.
Review: http://reviews.llvm.org/D16928
llvm-svn: 262616
|
|
|
|
|
|
| |
compilation fails.
llvm-svn: 262615
|
|
|
|
| |
llvm-svn: 262613
|
|
|
|
|
|
|
|
|
| |
This should fix PR19422.
Thanks to Jeremy Huddleston Sequoia for reporting this.
Thanks to Roman Gareev for his investigation and the reduced test case.
llvm-svn: 262612
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17814
llvm-svn: 262611
|
|
|
|
| |
llvm-svn: 262610
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17814
llvm-svn: 262609
|
|
|
|
| |
llvm-svn: 262608
|
|
|
|
| |
llvm-svn: 262607
|
|
|
|
|
|
| |
CLANG_TOOL_EXTRA_BUILD.
llvm-svn: 262606
|
|
|
|
| |
llvm-svn: 262605
|
|
|
|
| |
llvm-svn: 262604
|
|
|
|
|
|
| |
Doxygen 1.8.11 doesn't seem to like files with ".intro" extension by default.
llvm-svn: 262603
|
|
|
|
| |
llvm-svn: 262602
|
|
|
|
| |
llvm-svn: 262601
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Adds the 'avr_intrcc' and 'avr_signalcc' IR calling convention tokens to the parser.
Reviewers: arsenm
Subscribers: dylanmckay, llvm-commits
Differential Revision: http://reviews.llvm.org/D16348
llvm-svn: 262600
|
|
|
|
|
|
|
|
| |
Generalise the existing SIGN_EXTEND to SIGN_EXTEND_VECTOR_INREG combine to support zero extension as well and get rid of a lot of unnecessary ANY_EXTEND + mask patterns.
Differential Revision: http://reviews.llvm.org/D17691
llvm-svn: 262599
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17812
llvm-svn: 262598
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
this enables download of remote log files for llgs and debugserver tests (previously we were just
passing the host file name which obviously did not work). Note this also changes the debugserver
logging to work only when logging has been requested on the command line, whereas previously it
would log unconditionally. I can change it back if anyone is relying on this, but I thought I'd
make this consistent.
Reviewers: tfiala
Subscribers: lldb-commits
Differential Revision: http://reviews.llvm.org/D17798
llvm-svn: 262597
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a sad workaround for the lack of plugin support in libclang. Depends
on D17807, a tools-extra change that also contains the test case.
This is designed to be easy to remove again if libclang ever grows proper
plugin support.
Differential Revision: http://reviews.llvm.org/D17808
llvm-svn: 262596
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This doesn't really do much at the moment. You can load it via libclang
and set the -checks via an extra command line argument as illustrated in
the test case. Support for other options (including headers check) is
currently missing. Also when using this with libclang some checks may
not work with the precompiled preamble in place.
This can be used to easily show clang-tidy warnings in an editor
integration as all that's needed is adding command line flags that are
passed into libclang. Warnings and FixIts are exposed via the existing
CXDiagnostic machinery.
Differential Revision: http://reviews.llvm.org/D17807
llvm-svn: 262595
|
|
|
|
|
|
| |
This reverts commit r262507, which broke some ARM buildbots.
llvm-svn: 262594
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17754
llvm-svn: 262593
|
|
|
|
|
|
| |
Differential Revision: http://reviews.llvm.org/D17753
llvm-svn: 262592
|
|
|
|
|
|
| |
granularities.
llvm-svn: 262591
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
relocatable output.
There was a known limitation for -r option:
relocations against local symbols were not supported.
For example rel[a].eh_frame sections contained relocations against sections
and that was not supported for -r before. Patch fixes that.
Differential review: http://reviews.llvm.org/D17813
llvm-svn: 262590
|
|
|
|
| |
llvm-svn: 262589
|
|
|
|
|
|
|
| |
For an unknown reason modindex is not be built correctly by sphinx. Take it
out of the index until we can build it correctly.
llvm-svn: 262588
|
|
|
|
|
|
|
| |
I've tried to keep the infrastructure behind parameter ABI
treatments fairly general.
llvm-svn: 262587
|
|
|
|
|
|
| |
RCRAII class was a bit tricky. This patch removes that.
llvm-svn: 262586
|
|
|
|
|
|
|
| |
This was always calling the generic version, so the target
custom implementation was never called.
llvm-svn: 262585
|
|
|
|
|
|
| |
protocols.
llvm-svn: 262584
|
|
|
|
| |
llvm-svn: 262583
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add parsing, sema analysis and serialization/deserialization for 'declare reduction' construct.
User-defined reductions are defined as
#pragma omp declare reduction( reduction-identifier : typename-list : combiner ) [initializer ( initializer-expr )]
These custom reductions may be used in 'reduction' clauses of OpenMP constructs. The combiner specifies how partial results can be combined into a single value. The
combiner can use the special variable identifiers omp_in and omp_out that are of the type of the variables being reduced with this reduction-identifier. Each of them will
denote one of the values to be combined before executing the combiner. It is assumed that the special omp_out identifier will refer to the storage that holds the resulting
combined value after executing the combiner.
As the initializer-expr value of a user-defined reduction is not known a priori the initializer-clause can be used to specify one. Then the contents of the initializer-clause
will be used as the initializer for private copies of reduction list items where the omp_priv identifier will refer to the storage to be initialized. The special identifier
omp_orig can also appear in the initializer-clause and it will refer to the storage of the original variable to be reduced.
Differential Revision: http://reviews.llvm.org/D11182
llvm-svn: 262582
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: samsonov
Subscribers: jaydeep, sagar, llvm-commits
Differential Revision: http://reviews.llvm.org/D17797
llvm-svn: 262581
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Removing MMOs is not our prefer behavior any more.
Reviewers: mcrosier, reames
Differential Revision: http://reviews.llvm.org/D17668
llvm-svn: 262580
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch by: Konstantin Zhuravlyov
Summary: Tools, such as debugger, need to pause execution based on user input (i.e. breakpoint). In order to do this, two S_NOP instructions are inserted for each high level source statement: one before first isa instruction of high level source statement, and one after last isa instruction of high level source statement. Further, debugger may replace S_NOP instructions with S_TRAP instructions based on user input.
Reviewers: tstellarAMD, arsenm
Subscribers: echristo, dblaikie, arsenm, llvm-commits
Differential Revision: http://reviews.llvm.org/D17454
llvm-svn: 262579
|
|
|
|
|
|
|
|
| |
OpenMP 4.5 allows to privatize data members of current class in member
functions. Patch adds initial support for privatization of data members
in 'linear' clause, no codegen support.
llvm-svn: 262578
|