| Commit message (Collapse) | Author | Age | Files | Lines |
| ... | |
| |
|
|
| |
llvm-svn: 322502
|
| |
|
|
|
|
|
| |
Added basic support for codegen of `depend` clauses on `target`
directive.
llvm-svn: 322501
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D41617
llvm-svn: 322500
|
| |
|
|
| |
llvm-svn: 322499
|
| |
|
|
|
|
|
| |
The old implementation was not always correct. The new one recognizes
more shuffles that match specific instructions.
llvm-svn: 322498
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
implicit converions to bool in more contexts.
Summary: Expand readability-redundant-smartptr-get to understand implicit converions to bool in more contexts.
Reviewers: hokein
Subscribers: klimek, xazax.hun, cfe-commits
Differential Revision: https://reviews.llvm.org/D41998
llvm-svn: 322497
|
| |
|
|
|
|
|
|
|
|
| |
In some cases we do not copy implicit defs from pseudo to real
VOP instructions. It has no visible impact at the moment thus no
tests are affected or added.
Differential Revision: https://reviews.llvm.org/D41783
llvm-svn: 322496
|
| |
|
|
| |
llvm-svn: 322495
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
RISCVABIInfo is implemented in terms of XLen, supporting both RV32 and RV64.
Unfortunately we need to count argument registers in the frontend in order to
determine when to emit signext and zeroext attributes. Integer scalars are
extended according to their type up to 32-bits and then sign-extended to XLen
when passed in registers, but are anyext when passed on the stack. This patch
only implements the base integer (soft float) ABIs.
For more information on the RISC-V ABI, see [the ABI
doc](https://github.com/riscv/riscv-elf-psabi-doc/blob/master/riscv-elf.md),
my [golden model](https://github.com/lowRISC/riscv-calling-conv-model), and
the [LLVM RISC-V calling convention
patch](https://reviews.llvm.org/D39898#2d1595b4) (specifically the comment
documenting frontend expectations).
Differential Revision: https://reviews.llvm.org/D40023
llvm-svn: 322494
|
| |
|
|
| |
llvm-svn: 322493
|
| |
|
|
| |
llvm-svn: 322492
|
| |
|
|
| |
llvm-svn: 322491
|
| |
|
|
|
|
| |
This fixes the FIXME introduced in r315327.
llvm-svn: 322490
|
| |
|
|
|
|
| |
and <utility>. This commit is all the is_XXX algorithms.
llvm-svn: 322489
|
| |
|
|
|
|
|
|
|
|
| |
Since a load and test instruction treat its operands as signed, it can only
replace a logical compare for EQ/NE uses.
Review: Ulrich Weigand
https://bugs.llvm.org/show_bug.cgi?id=35662
llvm-svn: 322488
|
| |
|
|
| |
llvm-svn: 322487
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Summary: This is similar to https://reviews.llvm.org/D41983.
Reviewers: gchatelet
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42069
llvm-svn: 322486
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D40067
llvm-svn: 322485
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Due to missing parentheses.
This is similar to https://reviews.llvm.org/D41983.
Reviewers: gchatelet
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42062
llvm-svn: 322483
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Reviewers: fhahn, rengolin, t.p.northover, echristo, olista01, samparker
Reviewed By: fhahn, samparker
Subscribers: samparker, aemerson, javed.absar, kristof.beyls, llvm-commits
Differential Revision: https://reviews.llvm.org/D41899
llvm-svn: 322481
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
We now hide the static/dynamic split from the code completion, behind a
new implementation of the SymbolIndex interface. This will reduce the
complexity of the sema/index merging that needs to be done by
CodeComplete, at a fairly small cost in flexibility.
Reviewers: hokein
Subscribers: klimek, mgorny, ilya-biryukov, cfe-commits
Differential Revision: https://reviews.llvm.org/D42049
llvm-svn: 322480
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This patch adds a FormatStyleSet for storing per-language FormatStyles for the
purposes of formatting code blocks inside the main code.
Reviewers: bkramer
Reviewed By: bkramer
Subscribers: klimek, djasper, bkramer, cfe-commits
Differential Revision: https://reviews.llvm.org/D41487
llvm-svn: 322479
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
For example, VSQRTSDZr and VSQRTSSZr were missing the predicate.
Also fix braces indentation and braces for consistency.
Reviewers: craig.topper, RKSimon
Suscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41983
llvm-svn: 322478
|
| |
|
|
| |
llvm-svn: 322477
|
| |
|
|
| |
llvm-svn: 322476
|
| |
|
|
|
|
|
| |
all callers have been switched the the Writable version (which does not
require const_casting to be useful).
llvm-svn: 322475
|
| |
|
|
|
|
|
| |
This reverts commit r322085. Internal PPC testing is still showing the
same symptoms as when this patch landed the last time.
llvm-svn: 322474
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
from a trunc.
Summary:
This method is supposed to be called for IVs that have casts in their use-def
chains that are completely ignored after vectorization under PSE. However, for
truncates of such IVs the same InductionDescriptor is used during
creation/widening of both original IV based on PHINode and new IV based on
TruncInst.
This leads to unintended second call to recordVectorLoopValueForInductionCast
with a VectorLoopVal set to the newly created IV for a trunc and causes an
assert due to attempt to store new information for already existing entry in the
map. This is wrong and should not be done.
Fixes PR35773.
Reviewers: dorit, Ayal, mssimpso
Reviewed By: dorit
Subscribers: RKSimon, dim, dcaballe, hsaito, llvm-commits, hiraditya
Differential Revision: https://reviews.llvm.org/D41913
llvm-svn: 322473
|
| |
|
|
|
|
|
|
| |
The comment seems to indicate that this function would return the "bin"
directory on linux. I've verified that this is not the case, so I'm
updating the comment to match.
llvm-svn: 322472
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
bits isa sets.<NFC>
NFC.
Adding MC regressions tests to cover the AVX512F_512 isa sets both 32 and 64 bit.
This patch is part of a larger task to cover MC encoding of all X86 ISA Sets.
started in revision: https://reviews.llvm.org/D39952
Reviewers: zvi, craig.topper, RKSimon, AndreiGrischenko
Differential Revision: https://reviews.llvm.org/D41172
Change-Id: I46aa33dd967d63d33f67d1988ad42d8df2081e39
llvm-svn: 322471
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
This fixes PR35899.
Debug info intrinsics shouldn't affect code generation so ignore them
in GlobalsAA.
Reviewers: hfinkel, aprantl
Reviewed By: aprantl
Subscribers: aprantl, llvm-commits
Differential Revision: https://reviews.llvm.org/D41984
llvm-svn: 322470
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Providing fuzzer sanitizer support for FreeBSD (but only for X86/64 architectures).
Reviewers: kimgr, EricWF, martell
Reviewed By: martell
Patch by David CARLIER.
Subscribers: krytarowski, kimgr, emaste, cfe-commits
Differential Revision: https://reviews.llvm.org/D41809
llvm-svn: 322469
|
| |
|
|
| |
llvm-svn: 322468
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
An alternative (and probably better) fix would be that of
making `Scale` an APInt, and there's a patch floating around
to do this. As we're still discussing it, at least stop crashing
in the meanwhile (added bonus, we now have a regression test for
this situation).
Fixes PR35843.
Thanks to Eli for suggesting the fix and Simon for reporting and
reducing the bug.
llvm-svn: 322467
|
| |
|
|
| |
llvm-svn: 322466
|
| |
|
|
|
|
| |
The test was added ages ago, but we didn't comment where it came from.
llvm-svn: 322465
|
| |
|
|
| |
llvm-svn: 322464
|
| |
|
|
| |
llvm-svn: 322463
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
scalar operations
Summary: This patch changes the kunpck intrinsic autoupgrade to use vXi1 shufflevector operations to perform vector extracts and concats. This more closely matches the definition of the kunpck instructions. Currently we rely on a DAG combine to turn the scalar shift/and/or code into a concat vectors operation. By doing it in the IR we get this for free.
Reviewers: spatel, RKSimon, zvi, jina.nahias
Reviewed By: RKSimon
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D42018
llvm-svn: 322462
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
integer shift/and/or
Summary:
kunpck intrinsics were removed in favor of native IR a few months ago. The implementation lowers them as by operation on the integer types passed to the intrinsic and then just shifting, masking, and oring them together. A special X86 DAG combine was added to recognize this patter and turn it into a concat_vector operation.
I think it makes more sense to keep the IR implementation closer to vector operations on vXi1. Given that we expect these builtins to be used around other builtins that operate on k-registers which we try to represent in IR with vXi1. InstCombine should be able to get rid of the bitcasts between integers and vXi1 leaving only the vector operations.
Reviewers: RKSimon, spatel, zvi, jina.nahias
Reviewed By: RKSimon
Subscribers: cfe-commits
Differential Revision: https://reviews.llvm.org/D42016
llvm-svn: 322461
|
| |
|
|
| |
llvm-svn: 322460
|
| |
|
|
| |
llvm-svn: 322459
|
| |
|
|
|
|
| |
Shows a missed opportunity to remove a unnecessary move compared to 31 shuffle mask.
llvm-svn: 322458
|
| |
|
|
| |
llvm-svn: 322457
|
| |
|
|
| |
llvm-svn: 322456
|
| |
|
|
|
|
| |
types have the same number of elements.
llvm-svn: 322455
|
| |
|
|
|
|
|
|
| |
We have to take special care to avoid the cases where the result of the truncate would be padded with zero elements.
Ideally we'd just use ISD::TRUNCATE for these cases instead.
llvm-svn: 322454
|
| |
|
|
|
|
|
|
|
| |
parseInt assumed that it could take a negative number literal (e.g.
"-123"). However, such number is in reality already handled as a
unary operator '-' followed by a number literal, so the number
literal is always non-negative. Thus, this code is dead.
llvm-svn: 322453
|
| |
|
|
|
|
|
|
|
| |
This is related to moving the sanitizer blacklists to share/
subdirectory.
Differential Revision: https://reviews.llvm.org/D41706
llvm-svn: 322452
|
| |
|
|
|
|
|
|
|
|
|
| |
Currently these files are being installed into a root installation
directory, but this triggers an error when the installation directory
is set to an empty string which is often the case when DESTDIR is
used to control the installation destination.
Differential Revision: https://reviews.llvm.org/D41673
llvm-svn: 322451
|