| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: Use symbol index to populate completion results for qualfified IDs e.g. "nx::A^".
Reviewers: ilya-biryukov, sammccall
Reviewed By: ilya-biryukov, sammccall
Subscribers: rwols, klimek, mgorny, cfe-commits, sammccall
Differential Revision: https://reviews.llvm.org/D41281
llvm-svn: 321083
|
| |
|
|
|
|
| |
Original commit is at: https://reviews.llvm.org/D41295.
llvm-svn: 321082
|
| |
|
|
| |
llvm-svn: 321081
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: This is to be consistent with latest Movidius MDK releases.
Also, don't inherit any gcc paths for shave triple.
Reviewers: jyknight
Subscribers: emaste, fedor.sergeev
Differential Revision: https://reviews.llvm.org/D41295
llvm-svn: 321080
|
| |
|
|
|
|
| |
The refactoring in r281640 made -dot-cfg-only ignore the "-only" part.
llvm-svn: 321079
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Negative values never disabled the pruning - they simply set high values for the pruning interval.
The behaviour now is that negative values set the maximum pruning interval (which appears to have been the intention from the start) see https://reviews.llvm.org/D41231.
I have adjusted the comments to reflect this, removed any inaccurate statements, and corrected any typos I spotted in the English.
Differential Revision: https://reviews.llvm.org/D41279
llvm-svn: 321078
|
| |
|
|
|
|
|
|
|
|
| |
borked by: rL284966 (see: https://reviews.llvm.org/D25730).
Previously, Interval was unsigned (see: CachePruning.h), replacing the type with std::chrono::seconds (which is signed) causes a regression in behaviour because the c-api intends negative values to translate to large positive intervals to *effectively* disable the pruning (see comments on: setCachePruningInterval()).
Differential Revision: https://reviews.llvm.org/D41231
llvm-svn: 321077
|
| |
|
|
| |
llvm-svn: 321076
|
| |
|
|
|
|
| |
This is a follow-up fix of r320814. A test case is also added.
llvm-svn: 321075
|
| |
|
|
|
|
|
|
|
|
|
|
| |
As mentioned in D38318 and D40865, modern Intel processors prefer to combine multiple shuffles to a variable shuffle mask (PSHUFB/VPERMPS etc.) instead of having multiple stage 'fixed' shuffles which put more pressure on Port 5 (at the expense of extra shuffle mask loads).
This patch provides a FeatureFastVariableShuffle target flag for Haswell+ CPUs that prefers combining 2 or more fixed shuffles to a single variable shuffle (default is 3 shuffles).
The long term aim is to drive more of this from schedule data (probably via the MC) but we're not close to being ready for that yet.
Differential Revision: https://reviews.llvm.org/D41323
llvm-svn: 321074
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
- Moved these functions to SourceCode.h
- added unit tests
- fix off by one in positionToOffset: Offset - 1 in final calculation was wrong
- fixed formatOnType which had an equal and opposite off-by-one
- positionToOffset and offsetToPosition both consistently clamp to beginning/end
of file when input is out of range
- gave variables more descriptive names
- removed windows line ending fixmes where there is nothing to fix
- elaborated on UTF-8 fixmes
This will conflict with Eric's D41281, but in a pretty easy-to-resolve way.
Reviewers: ioeric
Subscribers: klimek, mgorny, ilya-biryukov, cfe-commits
Differential Revision: https://reviews.llvm.org/D41351
llvm-svn: 321073
|
| |
|
|
|
|
| |
Also adds a simple test case.
llvm-svn: 321072
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
The motivation here is LLDB, where we need to fixup relocations in
mmapped files before their contents can be read correctly. The
MemoryBuffer class does exactly what we need, *except* that it maps the
file in read-only mode.
WritableMemoryBuffer reuses the existing machinery for opening and
mmapping a file. The only difference is in the argument to the
mapped_file_region constructor -- we create a private copy-on-write
mapping, so that we can make changes to the mapped data, but the changes
aren't carried over to the underlying file.
This patch is based on an initial version by Zachary Turner.
Reviewers: mehdi_amini, rnk, rafael, dblaikie, zturner
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D40291
llvm-svn: 321071
|
| |
|
|
|
|
|
|
|
|
|
|
| |
reductions (PR32841)
Extension to D39729 which performed this for vXi16, with the same bit flipping to handle SMAX/SMIN/UMAX cases, vXi8 UMIN horizontal reductions can be performed.
This makes use of the fact that by performing a pair-wise i8 SHUFFLE/UMIN before PHMINPOSUW, we both get the UMIN of each pair but also zero-extend the upper bits ready for v8i16.
Differential Revision: https://reviews.llvm.org/D41294
llvm-svn: 321070
|
| |
|
|
| |
llvm-svn: 321069
|
| |
|
|
| |
llvm-svn: 321068
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary: When scopes are specified, only match symbols from scopes.
Reviewers: sammccall
Reviewed By: sammccall
Subscribers: klimek, ilya-biryukov, cfe-commits
Differential Revision: https://reviews.llvm.org/D41367
llvm-svn: 321067
|
| |
|
|
|
|
|
| |
This instruction is encoded as zero, so we have handle that case when checking
for unimplemented opcodes when producing the encoding for an instruction.
llvm-svn: 321066
|
| |
|
|
|
|
| |
are smoke only.
llvm-svn: 321065
|
| |
|
|
|
|
|
|
|
|
|
| |
Before this patch, dwarfdump's lookup parameter only accepts unsigned.
Given that for many current platforms the load address already exceeds
unsigned (e.g. arm64 w/ 0x100000000), dwarfdump needs an unsigned long
long parameter.
Patch by: Dr. Michael 'Mickey' Lauer <mickey@vanille-media.de>
llvm-svn: 321064
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
successors
PRE in JumpThreading should not be able to hoist copy of non-speculable loads across
instructions that don't always transfer execution to their successors, otherwise they may
introduce an unsafe load which otherwise would not be executed.
The same problem for GVN was fixed as rL316975.
Differential Revision: https://reviews.llvm.org/D40347
llvm-svn: 321063
|
| |
|
|
|
|
| |
Differential Revision: https://reviews.llvm.org/D41009
llvm-svn: 321062
|
| |
|
|
|
|
|
|
|
|
|
|
| |
getPointerDereferenceableBytes()
Reviewers: rnk, hfinkel, efriedma
Subscribers: llvm-commits
Differential Revision: https://reviews.llvm.org/D41355
llvm-svn: 321061
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Summary:
Sanitizers on NetBSD require additional linkage:
- libutil for forkpty(3)
- libexecinfo for backtrace(3)
Sponsored by <The NetBSD Foundation>
Reviewers: joerg, eugenis, vitalybuka, kcc
Reviewed By: eugenis
Subscribers: #sanitizers, cfe-commits
Tags: #sanitizers
Differential Revision: https://reviews.llvm.org/D41054
llvm-svn: 321060
|
| |
|
|
|
|
|
|
| |
v16i16 instead.
BWI supports shifting by word amounts. Even if VLX isn't support we can still widen to v32i16 and extract the lower half. For SKX its preferrable to not use 512-bit vector if we can.
llvm-svn: 321059
|
| |
|
|
|
|
|
|
| |
iterating over every integer VT and checking their size.
Previously, we were checking for MVTs with sizes betwen 8 and 64 which only includes i8, i16, i32, and i64 today. But I don't think we should assume that and should list the types that are legal for x86. I also don't think we need i64 since type legalization is guaranteed to split those up.
llvm-svn: 321058
|
| |
|
|
|
|
| |
I doubt there's any way to create a ashr for an FP type.
llvm-svn: 321057
|
| |
|
|
|
|
|
|
| |
zero vector.
Pretty sure these are handled by a target independent DAG combine that turns them into undef these days.
llvm-svn: 321056
|
| |
|
|
|
|
|
|
|
|
| |
for a non-uniform shift.
My reading of the SDM says that all bits of the shift amount are used. If the value of the element is larger than the number of bits the result the shift result is zero. So I think we need to zero_extend here to avoid garbage in the upper bits.
In reality we lower any_extend as zero_extend so in most cases it would be hard to hit this.
llvm-svn: 321055
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The method IEEEFloat::convertFromStringSpecials() does not recognize
the "+Inf" and "-Inf" strings but these strings are printed for
the double Infinities by the IEEEFloat::toString().
This patch adds the "+Inf" and "-Inf" strings to the list of recognized
patterns in IEEEFloat::convertFromStringSpecials().
Re-landing after fix.
Reviewers: sberg, bogner, majnemer, timshen, rnk, skatkov, gottesmm, bkramer, scanon, anna
Reviewed By: anna
Subscribers: mkazantsev, FlameTop, llvm-commits, reames, apilipenko
Differential Revision: https://reviews.llvm.org/D38030
llvm-svn: 321054
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the emission
Between the creation of the last InstructionMatcher and the first
emission of the related Rule, we need to clear the internal map of IDs.
We used to do that right after the creation of the main
InstructionMatcher when building the rule and although that worked, this
is fragile because if for some reason some later code decides to create
more InstructionMatcher before the final call to emit, then the IDs
would be completely messed up.
Move that to the beginning of "emit" so that the IDs are guarantee to be
consistent.
NFC.
llvm-svn: 321053
|
| |
|
|
|
|
|
|
|
|
|
| |
Fixes regression from r320533.
This fixes the undefined behavior, but I'm not sure it's really right...
I think we end up with missing coverage for code in modules.
Differential Revision: https://reviews.llvm.org/D41374
llvm-svn: 321052
|
| |
|
|
|
|
|
| |
file. For macos builds specifically, use the macosx entitlements
files; for all other builds, use the ios etc entitlements.
llvm-svn: 321051
|
| |
|
|
|
|
|
| |
This array is tightly coupled with the .def file. Someone should look
into fixing that.
llvm-svn: 321050
|
| |
|
|
|
|
| |
The test was using both // and # before.
llvm-svn: 321049
|
| |
|
|
|
|
|
|
| |
We need to handle IR for tests that want to do lowering (or just
-stop-after with IR as input). I've run this on one AArch64 test to
demonstrate what it looks like.
llvm-svn: 321048
|
| |
|
|
|
|
|
|
| |
This change adds support for adding progbits sections with contents from a file
Differential Revision: https://reviews.llvm.org/D41212
llvm-svn: 321047
|
| |
|
|
|
|
|
|
|
| |
I missed some prefixes and the fact that on AArch64 we use "bzero"
instead of "__bzero" as on X86 when doing my refactoring in r321035.
Improve tests for bzero.
llvm-svn: 321046
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
InitLibcalls()
I missed the fact that the later called InitLibcallCallingConvs()
overrides some things set in InitLibcalls() when I did the refactoring
in r321036.
Fix by merging InitLibcallCallingConvs() into InitLibcalls() and doing
the initialization earlier.
llvm-svn: 321045
|
| |
|
|
| |
llvm-svn: 321044
|
| |
|
|
|
|
|
| |
This problem was present for a while, but somehow asan didn't catch
it before the refactoring in r321036.
llvm-svn: 321043
|
| |
|
|
| |
llvm-svn: 321042
|
| |
|
|
|
|
|
| |
WatchOS isn't report as iOS (as opposed to tvos) so the exception I
added in my last commit wasn't necessary after all.
llvm-svn: 321041
|
| |
|
|
|
|
|
|
| |
longer generate a long nop on x86.
Long nops aren't supported by all x86 CPUs. So if no CPU is specified we have to use a single byte nop.
llvm-svn: 321040
|
| |
|
|
|
|
|
| |
For tests that do lowering we need to support IR as input, so here we
clarify some names to avoid ambiguity in upcoming commits.
llvm-svn: 321039
|
| |
|
|
|
|
| |
This recommits the change from r321026. I have a fix for the lld test now.
llvm-svn: 321038
|
| |
|
|
|
|
| |
Filenames should match the name of the class they contain.
llvm-svn: 321037
|
| |
|
|
|
|
|
|
|
|
|
| |
Note:
- X86ISelLowering: setLibcallName(SINCOS) was superfluous as
InitLibcalls() already does it.
- ARMISelLowering: Setting libcallnames for sincos/sincosf seemed
superfluous as in the darwin case it wouldn't be used while for all
other cases InitLibcalls already does it.
llvm-svn: 321036
|
| |
|
|
| |
llvm-svn: 321035
|
| |
|
|
| |
llvm-svn: 321034
|