OSDN Git Service
Richard Sandiford [Mon, 15 Jul 2019 08:09:21 +0000 (08:09 +0000)]
DeveloperPolicy: fix a typo
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366046
91177308-0d34-0410-b5e6-
96231b3b80d8
Hideto Ueno [Mon, 15 Jul 2019 06:49:04 +0000 (06:49 +0000)]
[Attributor] Deduce "nonnull" attribute
Summary:
Porting nonnull attribute to attributor.
Reviewers: jdoerfert, sstefan1
Reviewed By: jdoerfert
Subscribers: xbolva00, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63604
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366043
91177308-0d34-0410-b5e6-
96231b3b80d8
Serguei Katkov [Mon, 15 Jul 2019 06:42:39 +0000 (06:42 +0000)]
[LoopUtils] Extend the scope of getLoopEstimatedTripCount
With this patch the getLoopEstimatedTripCount function will
accept also the loops where there are more than one exit but
all exits except latch block should ends up with a call to deopt.
This side exits should not impact the estimated trip count.
Reviewers: reames, mkuper, danielcdh
Reviewed By: reames
Subscribers: fhahn, lebedev.ri, hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D64553
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366042
91177308-0d34-0410-b5e6-
96231b3b80d8
Bill Wendling [Mon, 15 Jul 2019 06:35:28 +0000 (06:35 +0000)]
Remove set but unused variable.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366041
91177308-0d34-0410-b5e6-
96231b3b80d8
Serguei Katkov [Mon, 15 Jul 2019 05:51:10 +0000 (05:51 +0000)]
[LoopInfo] Introduce getUniqueNonLatchExitBlocks utility function
Extract the code from LoopUnrollRuntime into utility function to
re-use it in D63923.
Reviewers: reames, mkuper
Reviewed By: reames
Subscribers: fhahn, hiraditya, zzheng, dmgreen, llvm-commits
Differential Revision: https://reviews.llvm.org/D64548
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366040
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Mon, 15 Jul 2019 05:02:32 +0000 (05:02 +0000)]
[PowerPC] Support fp128 libcalls
On PowerPC, IEEE 754 quadruple-precision libcall names use "kf" instead of "tf".
In libgcc, libgcc/config/rs6000/float128-sed converts TF names to KF
names. This patch implements its 24 substitution rules.
Reviewed By: hfinkel
Differential Revision: https://reviews.llvm.org/D64282
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366039
91177308-0d34-0410-b5e6-
96231b3b80d8
Yonghong Song [Mon, 15 Jul 2019 04:51:34 +0000 (04:51 +0000)]
[BPF] add unit tests for preserve_{array,union,struct}_access_index intrinsics
This is a followup patch for https://reviews.llvm.org/D61810/new/,
which adds new intrinsics preserve_{array,union,struct}_access_index.
Currently, only BPF backend utilizes preserve_{array,union,struct}_access_index
intrinsics, so all tests are compiled with BPF target.
https://reviews.llvm.org/D61524 already added some tests for these
intrinsics, but some of them pretty complex.
This patch added a few unit test cases focusing on individual intrinsic
functions.
Also made a few clarification on language reference for these intrinsics.
Differential Revision: https://reviews.llvm.org/D64606
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366038
91177308-0d34-0410-b5e6-
96231b3b80d8
Kang Zhang [Mon, 15 Jul 2019 03:55:10 +0000 (03:55 +0000)]
[NFC][PowerPC] Add the test block-placement.mir
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366037
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Mon, 15 Jul 2019 03:24:35 +0000 (03:24 +0000)]
[ValueTracking] Look through constant Int2Ptr/Ptr2Int expressions
Summary:
This is analogous to the int2ptr/ptr2int instruction handling introduced
in D54956.
Reviewers: fhahn, efriedma, spatel, nlopes, sanjoy, lebedev.ri
Subscribers: hiraditya, bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64708
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366036
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Mon, 15 Jul 2019 02:02:31 +0000 (02:02 +0000)]
[X86] Separate the memory size of vzext_load/vextract_store from the element size of the result type. Use them improve the codegen of v2f32 loads/stores with sse1 only.
Summary:
SSE1 only supports v4f32. But does have instructions like movlps/movhps that load/store 64-bits of memory.
This patch breaks the connection between the node VT of the vzext_load/vextract_store patterns and the memory VT. Enabling a v4f32 node with a 64-bit memory VT. I've used i64 as the memory VT here. I've written the PatFrag predicate to just check the store size not the specific VT. I think the VT will only matter for CSE purposes. We could use v2f32, but if we want to start using these operations in more places a simple integer type might make the most sense.
I'd like to maybe use this same thing for SSE2 and later as well, but that will need more work to be supported by EltsFromConsecutiveLoads to avoid regressing lit tests. I'd maybe also like to combine bitcasts with these load/stores nodes now that the types are disconnected. And I'd also like to consider canonicalizing (scalar_to_vector + load) to vzext_load.
If you want I can split the mechanical tablegen stuff where I added the 32/64 off from the sse1 change.
Reviewers: spatel, RKSimon
Reviewed By: RKSimon
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64528
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366034
91177308-0d34-0410-b5e6-
96231b3b80d8
Alexandros Lamprineas [Sun, 14 Jul 2019 20:31:15 +0000 (20:31 +0000)]
[TargetParser][ARM] Account dependencies when processing target features
Teaches ARM::appendArchExtFeatures to account dependencies when processing
target features: i.e. when you say -march=armv8.1-m.main+mve.fp+nofp it
means mve.fp should get discarded too. (Split from D63936)
Differential Revision: https://reviews.llvm.org/D64048
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366031
91177308-0d34-0410-b5e6-
96231b3b80d8
Florian Hahn [Sun, 14 Jul 2019 20:12:36 +0000 (20:12 +0000)]
[LV] Exclude loop-invariant inputs from scalar cost computation.
Loop invariant operands do not need to be scalarized, as we are using
the values outside the loop. We should ignore them when computing the
scalarization overhead.
Fixes PR41294
Reviewers: hsaito, rengolin, dcaballe, Ayal
Reviewed By: Ayal
Differential Revision: https://reviews.llvm.org/D59995
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366030
91177308-0d34-0410-b5e6-
96231b3b80d8
Alexandros Lamprineas [Sun, 14 Jul 2019 18:32:42 +0000 (18:32 +0000)]
[clang][Driver][ARM] Favor -mfpu over default CPU features
When processing the command line options march, mcpu and mfpu, we store
the implied target features on a vector. The change D62998 introduced a
temporary vector, where the processed features get accumulated. When
calling DecodeARMFeaturesFromCPU, which sets the default features for
the specified CPU, we certainly don't want to override the features
that have been explicitly specified on the command line. Therefore, the
default features should appear first in the final vector. This problem
became evident once I added the missing (unhandled) target features in
ARM::getExtensionFeatures.
Differential Revision: https://reviews.llvm.org/D63936
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366027
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Sun, 14 Jul 2019 18:24:19 +0000 (18:24 +0000)]
[GitSVN][NFC] Mark dry-run commits as such in the log output
Summary: This helps to avoid worries about the "dry run flag" while testing.
Reviewers: jyknight, rnk, mehdi_amini
Subscribers: bollu, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64697
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366023
91177308-0d34-0410-b5e6-
96231b3b80d8
Nikita Popov [Sun, 14 Jul 2019 15:55:32 +0000 (15:55 +0000)]
[InstCombine] Add assume context test; NFC
Baseline test for D37215.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366021
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Sun, 14 Jul 2019 15:05:05 +0000 (15:05 +0000)]
[Hashing] hash_1to3_bytes - avoid trunc(v + zext(x)) NFCI.
MSVC complains about the extension to uint64_t for an addition followed by truncation back to uint32_t - add an explicit uint32_t cast to avoid this.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366020
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Sun, 14 Jul 2019 14:08:39 +0000 (14:08 +0000)]
[x86] add test for sub-with-flags opportunity (PR40483); NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366019
91177308-0d34-0410-b5e6-
96231b3b80d8
Florian Hahn [Sun, 14 Jul 2019 14:06:25 +0000 (14:06 +0000)]
Recommit "[BitcodeReader] Validate OpNum, before accessing Record array."
This recommits r365750 (git commit
8b222ecf2769ee133691f208f6166ce118c4a164)
Original message:
Currently invalid bitcode files can cause a crash, when OpNum exceeds
the number of elements in Record, like in the attached bitcode file.
The test case was generated by clusterfuzz: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=15698
Reviewers: t.p.northover, thegameg, jfb
Reviewed By: jfb
Differential Revision: https://reviews.llvm.org/D64507
llvm-svn: 365750jkkkk
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366018
91177308-0d34-0410-b5e6-
96231b3b80d8
Florian Hahn [Sun, 14 Jul 2019 12:35:50 +0000 (12:35 +0000)]
[BitcodeReader] Use tighter upper bound to validate forward references.
At the moment, bitcode files with invalid forward reference can easily
cause the bitcode reader to run out of memory, by creating a forward
reference with a very high index.
We can use the size of the bitcode file as an upper bound, because a
valid bitcode file can never contain more records. This should be
sufficient to fail early in most cases. The only exception is large
files with invalid forward references close to the file size.
There are a couple of clusterfuzz runs that fail with out-of-memory
because of very high forward references and they should be fixed by this
patch.
A concrete example for this is D64507, which causes out-of-memory on
systems with low memory, like the hexagon upstream bots.
Reviewers: t.p.northover, thegameg, jfb, efriedma, hfinkel
Reviewed By: jfb
Differential Revision: https://reviews.llvm.org/D64577
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366017
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Sun, 14 Jul 2019 11:47:36 +0000 (11:47 +0000)]
VirtRegMap - add missing initializers. NFCI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366016
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Sun, 14 Jul 2019 11:41:52 +0000 (11:41 +0000)]
SlotIndexes - add missing initializer. NFCI.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366015
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Sun, 14 Jul 2019 11:10:04 +0000 (11:10 +0000)]
[MachineOutliner] Add missing initializers for OutlinedFunction. NFCI.
Appeases MSVC/cppcheck.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366014
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Sun, 14 Jul 2019 04:13:33 +0000 (04:13 +0000)]
[X86] Remove offset of 8 from the call to FuseInst for UNPCKLPDrr folding added in r365287.
This was copy/pasted from above and I forgot to change it. We just
need the default offset of 0 here.
Fixes PR42616.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366011
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Sat, 13 Jul 2019 17:01:00 +0000 (17:01 +0000)]
[Attributor][Fix] Never override given argument numbers
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366009
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 15:43:00 +0000 (15:43 +0000)]
[ARM] Add sign and zero extend patterns for MVE
The vmovlb instructions can be uses to sign or zero extend vector registers
between types. This adds some patterns for them and relevant testing. The
VBICIMM generation is also put behind a hasNEON check (as is already done for
VORRIMM).
Code originally by David Sherwood.
Differential Revision: https://reviews.llvm.org/D64069
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366008
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 15:26:51 +0000 (15:26 +0000)]
[ARM] MVE VNEG instruction patterns
This selects integer VNEG instructions, which can be especially useful with shifts.
Differential Revision: https://reviews.llvm.org/D64204
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366006
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 14:58:32 +0000 (14:58 +0000)]
[ARM] MVE integer abs
Similar to floating point abs, we also have instructions for integers.
Differential Revision: https://reviews.llvm.org/D64027
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366005
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 14:48:54 +0000 (14:48 +0000)]
[ARM] MVE integer min and max
This simply makes the MVE integer min and max instructions legal and adds the
relevant patterns for them.
Differential Revision: https://reviews.llvm.org/D64026
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366004
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 14:38:53 +0000 (14:38 +0000)]
[ARM] MVE VRINT support
This adds support for the floor/ceil/trunc/... series of instructions,
converting to various forms of VRINT. They use the same suffixes as their
floating point counterparts. There is not VTINTR, so nearbyint is expanded.
Also added a copysign test, to show it is expanded.
Differential Revision: https://reviews.llvm.org/D63985
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366003
91177308-0d34-0410-b5e6-
96231b3b80d8
David Green [Sat, 13 Jul 2019 14:29:02 +0000 (14:29 +0000)]
[ARM] MVE minnm and maxnm instructions
This adds the patterns for minnm and maxnm from the fminnum and fmaxnum nodes,
similar to scalar types.
Original patch by Simon Tatham
Differential Revision: https://reviews.llvm.org/D63870
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366002
91177308-0d34-0410-b5e6-
96231b3b80d8
Thomas Preud'homme [Sat, 13 Jul 2019 13:24:30 +0000 (13:24 +0000)]
FileCheck [7/12]: Arbitrary long numeric expressions
Summary:
This patch is part of a patch series to add support for FileCheck
numeric expressions. This specific patch extend numeric expression to
support an arbitrary number of operands, either variable or literals.
Copyright:
- Linaro (changes up to diff 183612 of revision D55940)
- GraphCore (changes in later versions of revision D55940 and
in new revision created off D55940)
Reviewers: jhenderson, chandlerc, jdenny, probinson, grimar, arichardson, rnk
Subscribers: hiraditya, llvm-commits, probinson, dblaikie, grimar, arichardson, tra, rnk, kristina, hfinkel, rogfer01, JonChesterfield
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D60387
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366001
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Sat, 13 Jul 2019 13:16:46 +0000 (13:16 +0000)]
Revert "[InstCombine] add tests for umin/umax via usub.sat; NFC"
This reverts commit rL365999 /
0f6148df23edcd3081f5e761de19edd4f823f16d.
The tests already exist in this file, and the hoped-for transform
(mentioned in D62871) is invalid because of undef as discussed in
D63060.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@366000
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Sat, 13 Jul 2019 12:54:48 +0000 (12:54 +0000)]
[InstCombine] add tests for umin/umax via usub.sat; NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365999
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Sat, 13 Jul 2019 12:04:52 +0000 (12:04 +0000)]
[x86] simplify cmov with same true/false operands
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365998
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Sat, 13 Jul 2019 09:28:33 +0000 (09:28 +0000)]
[Object] isNotObjectErrorInvalidFileType: simplify
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365997
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Sat, 13 Jul 2019 09:23:35 +0000 (09:23 +0000)]
[Object] isNotObjectErrorInvalidFileType: fix use-after-move
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365996
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Sat, 13 Jul 2019 01:09:27 +0000 (01:09 +0000)]
[Attributor][NFC] Run clang-format on the attributor files (.h/.cpp)
The Attributor files are kept formatted with clang-format, we should try
to keep this state.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365984
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Sat, 13 Jul 2019 01:09:21 +0000 (01:09 +0000)]
[Attributor] Only return attributes with a valid state
Attributor::getAAFor will now only return AbstractAttributes with a
valid AbstractState. This simplifies call sites as they only need to
check if the returned pointer is non-null. It also reduces the potential
for accidental misuse.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365983
91177308-0d34-0410-b5e6-
96231b3b80d8
Evgeniy Stepanov [Sat, 13 Jul 2019 00:29:03 +0000 (00:29 +0000)]
Extend function attributes bitset size from 64 to 96.
Summary: We are going to add a function attribute number 64.
Reviewers: pcc, jdoerfert, lebedev.ri
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64663
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365980
91177308-0d34-0410-b5e6-
96231b3b80d8
Johannes Doerfert [Sat, 13 Jul 2019 00:09:27 +0000 (00:09 +0000)]
[Attributor][FIX] Lookup of (call site) argument attributes
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365977
91177308-0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Fri, 12 Jul 2019 23:30:55 +0000 (23:30 +0000)]
PDB HashTable: Move TraitsT from class parameter to the methods that need it
The traits object is only used by a few methods. Deserializing a hash
table and walking it is possible without the traits object, so it
shouldn't be required to build a dummy object for that use case.
The TraitsT object used to be a function template parameter before
r327647, this restores it to that state.
This makes it clear that the traits object isn't needed at all in 1 of
the current 3 uses of HashTable (and I am going to add another use that
doesn't need it), and that the default PdbHashTraits isn't used outside
of tests.
While here, also re-enable 3 checks in the test that were commented out
(which requires making HashTableInternals templated and giving FooBar
an operator==).
No intended behavior change.
Differential Revision: https://reviews.llvm.org/D64640
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365974
91177308-0d34-0410-b5e6-
96231b3b80d8
Stanislav Mekhanoshin [Fri, 12 Jul 2019 22:42:01 +0000 (22:42 +0000)]
[AMDGPU] use v32f32 for 3 mfma intrinsics
These should really use v32f32, but were defined as v32i32
due to the lack of the v32f32 type.
Differential Revision: https://reviews.llvm.org/D64667
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365972
91177308-0d34-0410-b5e6-
96231b3b80d8
Vitaly Buka [Fri, 12 Jul 2019 22:37:55 +0000 (22:37 +0000)]
isBytewiseValue checks ConstantVector element by element
Summary: Vector of the same value with few undefs will sill be considered "Bytewise"
Reviewers: eugenis, pcc, jfb
Reviewed By: jfb
Subscribers: dexonsmith, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64031
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365971
91177308-0d34-0410-b5e6-
96231b3b80d8
Alina Sbirlea [Fri, 12 Jul 2019 22:30:30 +0000 (22:30 +0000)]
[MemorySSA] Use SetVector to avoid nondeterminism.
Summary:
Use a SetVector for DeadBlockSet.
Resolves PR42574.
Reviewers: george.burgess.iv, uabelho, dblaikie
Subscribers: jlebar, Prazek, mgrang, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64601
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365970
91177308-0d34-0410-b5e6-
96231b3b80d8
Wouter van Oortmerssen [Fri, 12 Jul 2019 22:08:25 +0000 (22:08 +0000)]
[WebAssembly] refactored utilities to not depend on MachineInstr
Summary:
Most of these functions can work for MachineInstr and MCInst
equally now.
Reviewers: dschuff
Subscribers: MatzeB, sbc100, jgravelle-google, aheejin, sunfish, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64643
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365965
91177308-0d34-0410-b5e6-
96231b3b80d8
Alex Lorenz [Fri, 12 Jul 2019 22:06:08 +0000 (22:06 +0000)]
[macCatalyst] Use macCatalyst pretty name in .build_version darwin
assembly command
'macCatalyst' is more readable than 'maccatalyst'. I renamed the objdump output,
but the assembly should match it as well.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365964
91177308-0d34-0410-b5e6-
96231b3b80d8
Douglas Yung [Fri, 12 Jul 2019 21:39:45 +0000 (21:39 +0000)]
[test][AArch64] Relax the opcode tests for FP min/max instructions.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365961
91177308-0d34-0410-b5e6-
96231b3b80d8
David Bolvansky [Fri, 12 Jul 2019 21:14:21 +0000 (21:14 +0000)]
[InstCombine] Disable fold from D64285 for non-integer types
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365959
91177308-0d34-0410-b5e6-
96231b3b80d8
Evgeniy Stepanov [Fri, 12 Jul 2019 21:13:55 +0000 (21:13 +0000)]
Factor out resolveFrameOffsetReference (NFC).
Split AArch64FrameLowering::resolveFrameIndexReference in two parts
* Finding frame offset for the index.
* Finding base register and offset to that register.
The second part will be used to implement a virtual frame pointer in
armv8.5 MTE stack instrumentation lowering.
Reviewers: pcc, vitalybuka, hctim, ostannard
Subscribers: javed.absar, kristof.beyls, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64171
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365958
91177308-0d34-0410-b5e6-
96231b3b80d8
Matt Arsenault [Fri, 12 Jul 2019 20:12:17 +0000 (20:12 +0000)]
AMDGPU: Drop remnants of byval support for shaders
Before 2018, mesa used to use byval interchangably with inreg, which
didn't really make sense. Fix tests still using it to avoid breaking
in a future commit.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365953
91177308-0d34-0410-b5e6-
96231b3b80d8
David Tenty [Fri, 12 Jul 2019 20:12:15 +0000 (20:12 +0000)]
Fix missing use of defined() in include guard
Subscribers: arsenm, jvesely, nhaehnle, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64657
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365952
91177308-0d34-0410-b5e6-
96231b3b80d8
Nikita Popov [Fri, 12 Jul 2019 20:03:34 +0000 (20:03 +0000)]
[SystemZ] Fix addcarry of addcarry of const carry (PR42606)
This fixes https://bugs.llvm.org/show_bug.cgi?id=42606 by extending
D64213. Instead of only checking if the carry comes from a matching
operation, we now check the full chain of carries. Otherwise we might
custom lower the outermost addcarry, but then generically legalize
an inner addcarry.
Differential Revision: https://reviews.llvm.org/D64658
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365949
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Fri, 12 Jul 2019 19:26:35 +0000 (19:26 +0000)]
[X86] Use MachineInstr::findRegisterDefOperand to simplify some code in optimizeCompareInstr. NFCI
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365946
91177308-0d34-0410-b5e6-
96231b3b80d8
Jonas Devlieghere [Fri, 12 Jul 2019 19:25:45 +0000 (19:25 +0000)]
[DebugInfo] Add column info for inline sites
The column field is missing for all inline sites, currently it's always
zero. This changes populates DW_AT_call_column field for inline sites.
Test case modified to cover this change.
Patch by: Wenlei He
Differential revision: https://reviews.llvm.org/D64033
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365945
91177308-0d34-0410-b5e6-
96231b3b80d8
Sterling Augustine [Fri, 12 Jul 2019 18:51:08 +0000 (18:51 +0000)]
The variable "Latch" is only used in an assert, which makes builds that use "-DNDEBUG" fail with unused variable messages.
Summary: Move the logic into the assert itself.
Subscribers: hiraditya, sanjoy, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64654
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365943
91177308-0d34-0410-b5e6-
96231b3b80d8
Ulrich Weigand [Fri, 12 Jul 2019 18:44:51 +0000 (18:44 +0000)]
[SystemZ] Fix build bot failure after r365932
Insert LLVM_FALLTHROUGH to avoid compiler warning.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365942
91177308-0d34-0410-b5e6-
96231b3b80d8
Sanjay Patel [Fri, 12 Jul 2019 18:38:29 +0000 (18:38 +0000)]
[x86] add test for bogus cmov (PR40483); NFC
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365941
91177308-0d34-0410-b5e6-
96231b3b80d8
Stanislav Mekhanoshin [Fri, 12 Jul 2019 18:38:06 +0000 (18:38 +0000)]
[AMDGPU] Extend MIMG opcode to 8 bits
This is NFC, but required for future commit.
Differential Revision: https://reviews.llvm.org/D64649
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365940
91177308-0d34-0410-b5e6-
96231b3b80d8
Stefan Stipanovic [Fri, 12 Jul 2019 18:34:06 +0000 (18:34 +0000)]
Addition to rL365925, removing remaining virtuals
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365938
91177308-0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Fri, 12 Jul 2019 18:24:38 +0000 (18:24 +0000)]
Slightly simplify MappedBlockStream::createIndexedStream() calls
All callers had a PDBFile object at hand, so call
Pdb.createIndexedStream() instead, which pre-populates all the arguments
(and returns nullptr for kInvalidStreamIndex).
Also change safelyCreateIndexedStream() to only take the string index,
and update callers. Make the method public and call it in two places
that manually did the bounds checking before.
No intended behavior change.
Differential Revision: https://reviews.llvm.org/D64633
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365936
91177308-0d34-0410-b5e6-
96231b3b80d8
Nico Weber [Fri, 12 Jul 2019 18:22:47 +0000 (18:22 +0000)]
Add explicit newline at end of `llvm-pdbutil dump`
All dump modes I checked didn't print a trailing newline, so add one.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365934
91177308-0d34-0410-b5e6-
96231b3b80d8
Ulrich Weigand [Fri, 12 Jul 2019 18:13:16 +0000 (18:13 +0000)]
[SystemZ] Add support for new cpu architecture - arch13
This patch series adds support for the next-generation arch13
CPU architecture to the SystemZ backend.
This includes:
- Basic support for the new processor and its features.
- Assembler/disassembler support for new instructions.
- CodeGen for new instructions, including new LLVM intrinsics.
- Scheduler description for the new processor.
- Detection of arch13 as host processor.
Note: No currently available Z system supports the arch13
architecture. Once new systems become available, the
official system name will be added as supported -march name.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365932
91177308-0d34-0410-b5e6-
96231b3b80d8
Leonard Chan [Fri, 12 Jul 2019 18:09:09 +0000 (18:09 +0000)]
Remove unused methods in Sancov.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365931
91177308-0d34-0410-b5e6-
96231b3b80d8
Craig Topper [Fri, 12 Jul 2019 17:52:17 +0000 (17:52 +0000)]
[X86] Add NEG to isUseDefConvertible.
We can use the C flag from NEG to detect that the input was zero.
Really we could probably use the Z flag too. But C matches what
we'd do for usubo 0, X.
Haven't found a test case for this due to the usubo formation
in CGP. But I verified if I comment out the CGP code this
transformation catches some of the same cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365929
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Fri, 12 Jul 2019 17:42:32 +0000 (17:42 +0000)]
[X86][AVX] Add PR34359 shuffle test case.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365926
91177308-0d34-0410-b5e6-
96231b3b80d8
Stefan Stipanovic [Fri, 12 Jul 2019 17:42:14 +0000 (17:42 +0000)]
[Attributor] Removing unnecessary `virtual` keywords.
Some function in the Attributor framework are unnecessarily
marked virtual. This patch removes virtual keyword
Reviewers: jdoerfert
Subscribers: hiraditya, llvm-commits
Differential Revision: https://reviews.llvm.org/D64637
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365925
91177308-0d34-0410-b5e6-
96231b3b80d8
Hideto Ueno [Fri, 12 Jul 2019 17:38:51 +0000 (17:38 +0000)]
[Attributor] Deduce "nofree" function attribute
Summary: Deduce "nofree" function attribute. A more concise description of "nofree" is on D49165.
Reviewers: jdoerfert
Reviewed By: jdoerfert
Subscribers: homerdin, hfinkel, lebedev.ri, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D62687
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365924
91177308-0d34-0410-b5e6-
96231b3b80d8
Philip Reames [Fri, 12 Jul 2019 17:05:35 +0000 (17:05 +0000)]
[IndVars] Use exit count reasoning to discharge obviously untaken exits
Continue in the spirit of D63618, and use exit count reasoning to prove away loop exits which can not be taken since the backedge taken count of the loop as a whole is provably less than the minimal BE count required to take this particular loop exit.
As demonstrated in the newly added tests, this triggers in a number of cases where IndVars was previously unable to discharge obviously redundant exit tests. And some not so obvious ones.
Differential Revision: https://reviews.llvm.org/D63733
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365920
91177308-0d34-0410-b5e6-
96231b3b80d8
James Y Knight [Fri, 12 Jul 2019 16:41:28 +0000 (16:41 +0000)]
Fix some minor coding-style issues in git-llvm.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365918
91177308-0d34-0410-b5e6-
96231b3b80d8
James Y Knight [Fri, 12 Jul 2019 16:40:46 +0000 (16:40 +0000)]
Allow the 'git-llvm' tool to push to svn from the split repositories
for 'test-suite', 'lnt', 'zorg', and 'www'.
This is done by looking at the pathname of the git remote named
'origin', which is not 100% reliable, but should work in most cases.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365917
91177308-0d34-0410-b5e6-
96231b3b80d8
Hideto Ueno [Fri, 12 Jul 2019 16:29:14 +0000 (16:29 +0000)]
[FunctionAttrs] Add a test for "nofree" function attribute
This patch adds a test for nofree function attribute.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365916
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Fri, 12 Jul 2019 16:23:25 +0000 (16:23 +0000)]
[Support] Move the static initializer install_out_memory_new_handler to InitLLVM
An application linking against LLVMSupport should not get the gratuitous
set::std_new_handler call.
Reviewed By: jfb
Differential Revision: https://reviews.llvm.org/D64505
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365915
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Fri, 12 Jul 2019 16:16:23 +0000 (16:16 +0000)]
Add missing <atomic> include to appease MSVC builds.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365914
91177308-0d34-0410-b5e6-
96231b3b80d8
Artem Belevich [Fri, 12 Jul 2019 16:13:29 +0000 (16:13 +0000)]
Minor cleanup.
Simplify things a bit by removing unnecessary full type qualification.
This also happens to avoid a build break with now-unsupported
Visual Studio 2015.
Differential Review: https://reviews.llvm.org/D64588
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365913
91177308-0d34-0410-b5e6-
96231b3b80d8
Hideto Ueno [Fri, 12 Jul 2019 16:08:32 +0000 (16:08 +0000)]
Test commit
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365912
91177308-0d34-0410-b5e6-
96231b3b80d8
Jordan Rose [Fri, 12 Jul 2019 16:05:09 +0000 (16:05 +0000)]
Support for dumping current PrettyStackTrace on SIGINFO (Ctrl-T)
Support SIGINFO (and SIGUSR1 for POSIX purposes) to tell what
long-running jobs are doing, as inspired by BSD tools (including on
macOS), by dumping the current PrettyStackTrace.
This adds a new kind of signal handler for non-fatal "info" signals,
similar to the "interrupt" handler that already exists for SIGINT
(Ctrl-C). It then uses that handler to update a "generation count"
managed by the PrettyStackTrace infrastructure, which is then checked
whenever a PrettyStackTraceEntry is pushed or popped on each
thread. If the generation has changed---i.e. if the user has pressed
Ctrl-T---the stack trace is dumped, though unfortunately it can't
include the deepest entry because that one is currently being
constructed/destructed.
https://reviews.llvm.org/D63750
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365911
91177308-0d34-0410-b5e6-
96231b3b80d8
Jay Foad [Fri, 12 Jul 2019 15:59:40 +0000 (15:59 +0000)]
[AMDGPU] Fix DPP combiner check for exec modification
Summary:
r363675 changed the exec modification helper function, now called
execMayBeModifiedBeforeUse, so that if no UseMI is specified it checks
all instructions in the basic block, even beyond the last use. That
meant that the DPP combiner no longer worked in any basic block that
ended with a control flow instruction, and in particular it didn't work
on code sequences generated by the atomic optimizer.
Fix it by reinstating the old behaviour but in a new helper function
execMayBeModifiedBeforeAnyUse, and limiting the number of instructions
scanned.
Reviewers: arsenm, vpykhtin
Subscribers: kzhuravl, nemanjai, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, kbarton, MaskRay, jfb, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64393
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365910
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Fri, 12 Jul 2019 15:18:29 +0000 (15:18 +0000)]
[LegacyPassManager] Small ModuleCount cleanup
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365907
91177308-0d34-0410-b5e6-
96231b3b80d8
Jay Foad [Fri, 12 Jul 2019 15:02:59 +0000 (15:02 +0000)]
[AMDGPU] Restrict v_cndmask_b32 abs/neg modifiers to f32
Summary:
D64497 allowed abs/neg source modifiers on v_cndmask_b32 but it doesn't
make any sense to apply them to f16 operands; they would interpret the
bits of the value as an f32, giving nonsensical results. This patch
restricts them to f32 operands.
Reviewers: arsenm, hakzsam
Subscribers: kzhuravl, jvesely, wdng, nhaehnle, yaxunl, dstuttard, tpr, t-tye, hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64636
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365904
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Fri, 12 Jul 2019 14:58:15 +0000 (14:58 +0000)]
Delete dead stores
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365903
91177308-0d34-0410-b5e6-
96231b3b80d8
Tom Stellard [Fri, 12 Jul 2019 14:40:18 +0000 (14:40 +0000)]
cmake: Add INSTALL_WITH_TOOLCHAIN option to add_*_library macros
Summary:
This will simplify the macros by allowing us to remove the hard-coded
list of libraries that should be installed when
LLVM_INSTALL_TOOLCHAIN_ONLY is enabled.
Reviewers: beanz, smeenai
Reviewed By: beanz
Subscribers: aheejin, mehdi_amini, mgorny, steven_wu, dexonsmith, cfe-commits, llvm-commits
Tags: #clang, #llvm
Differential Revision: https://reviews.llvm.org/D64580
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365902
91177308-0d34-0410-b5e6-
96231b3b80d8
Bryant Wong [Fri, 12 Jul 2019 13:09:39 +0000 (13:09 +0000)]
[gn] Tag unneeded variable.
When only building targets without assembly parsers (e.g. `llvm_targets_to_build
= ["NVPTX"]`), `all_targets` is empty and causes GN to warn about an
assigned-but-unused variable.
Differential Revision: https://reviews.llvm.org/D31727
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365897
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Pilgrim [Fri, 12 Jul 2019 13:00:35 +0000 (13:00 +0000)]
[DAGCombine] narrowExtractedVectorBinOp - wrap subvector extraction in helper. NFCI.
First step towards supporting 'free' subvector extractions other than concat_vectors.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365896
91177308-0d34-0410-b5e6-
96231b3b80d8
Alexey Bader [Fri, 12 Jul 2019 12:48:43 +0000 (12:48 +0000)]
[LIT] Emit timeout error message only if timeout was reached
Summary:
This improves readability of LIT output: previously
error messages gets emitted that say that there was no error:
error: command reached timeout: False
Patch by Alexey Sachkov.
Reviewers: ddunbar, mgorny, modocache
Reviewed By: mgorny
Subscribers: delcypher, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64240
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365895
91177308-0d34-0410-b5e6-
96231b3b80d8
David Bolvansky [Fri, 12 Jul 2019 11:31:16 +0000 (11:31 +0000)]
[InstCombine] Fold select (icmp sgt x, -1), lshr (X, Y), ashr (X, Y) to ashr (X, Y))
Summary:
(select (icmp sgt x, -1), lshr (X, Y), ashr (X, Y)) -> ashr (X, Y))
(select (icmp slt x, 1), ashr (X, Y), lshr (X, Y)) -> ashr (X, Y))
Fixes PR41173
Alive proof by @lebedev.ri (thanks)
Name: PR41173
%cmp = icmp slt i32 %x, 1
%shr = lshr i32 %x, %y
%shr1 = ashr i32 %x, %y
%retval.0 = select i1 %cmp, i32 %shr1, i32 %shr
=>
%retval.0 = ashr i32 %x, %y
Optimization: PR41173
Done: 1
Optimization is correct!
Reviewers: lebedev.ri, spatel
Reviewed By: lebedev.ri
Subscribers: nikic, craig.topper, llvm-commits, lebedev.ri
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64285
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365893
91177308-0d34-0410-b5e6-
96231b3b80d8
Alex Brachet [Fri, 12 Jul 2019 10:44:06 +0000 (10:44 +0000)]
Fix test case of llvm-nm using implicit a.out
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365892
91177308-0d34-0410-b5e6-
96231b3b80d8
George Rimar [Fri, 12 Jul 2019 10:29:29 +0000 (10:29 +0000)]
[test/Object, obj2yaml] - Move test cases from test/Object and cleanup.
test/Object is not correct place to have tests that check obj2yaml
functionality, because we have test/tools/obj2yaml folder for that.
In this patch I merged a few test cases with their YAMLs from Inputs
folder, converted one of binary inputs and moved them to
tools/obj2yaml folder.
There are still another tests that might need the same, so it is initial step.
Differential revision: https://reviews.llvm.org/D64555
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365891
91177308-0d34-0410-b5e6-
96231b3b80d8
Alex Brachet [Fri, 12 Jul 2019 10:20:01 +0000 (10:20 +0000)]
[tools] [llvm-nm] Default to reading from stdin not a.out
Summary: This moves away from defaulting to a.out and uses stdin only if stdin has a file redirected to it. This has been discussed on the llvm-dev mailing list [[ https://lists.llvm.org/pipermail/llvm-dev/2019-July/133642.html | here ]].
Reviewers: jhenderson, rupprecht, MaskRay, chrisjackson
Reviewed By: jhenderson, MaskRay
Subscribers: llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64290
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365889
91177308-0d34-0410-b5e6-
96231b3b80d8
Djordje Todorovic [Fri, 12 Jul 2019 09:45:12 +0000 (09:45 +0000)]
Revert "[DwarfDebug] Dump call site debug info"
A build failure was found on the SystemZ platform.
This reverts commit
9e7e73578e54cd22b3c7af4b54274d743b6607cc.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365886
91177308-0d34-0410-b5e6-
96231b3b80d8
George Rimar [Fri, 12 Jul 2019 09:29:12 +0000 (09:29 +0000)]
[Object/ELF] - Improve error reporting for notes.
This patch improves the error messages reported for
note sections and phdrs and also makes a cleanup for
existent test case.
Differential revision: https://reviews.llvm.org/D64470
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365884
91177308-0d34-0410-b5e6-
96231b3b80d8
Kai Luo [Fri, 12 Jul 2019 09:10:35 +0000 (09:10 +0000)]
[NFC][PowerPC] Added test for MachinePRE.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365883
91177308-0d34-0410-b5e6-
96231b3b80d8
Sam Elliott [Fri, 12 Jul 2019 08:36:07 +0000 (08:36 +0000)]
[RISCV] Allow parsing dot '.' in assembly
Summary:
Useful for jumps, such as `j .`.
I am not sure who should review this. Do not hesitate to change the reviewers if needed.
Reviewers: asb, jrtc27, lenary
Reviewed By: lenary
Subscribers: MaskRay, lenary, hiraditya, rbar, johnrusso, simoncook, apazos, sabuasal, niosHD, kito-cheng, shiva0217, zzheng, edward-jones, rogfer01, MartinMosbeck, brucehoult, the_o, rkruppe, PkmX, jocewei, psnobl, benna, Jim, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D63669
Patch by John LLVM (JohnLLVM)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365881
91177308-0d34-0410-b5e6-
96231b3b80d8
Bryant Wong [Fri, 12 Jul 2019 08:25:59 +0000 (08:25 +0000)]
Test commit. NFC.
Formatting fix.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365878
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Fri, 12 Jul 2019 06:23:24 +0000 (06:23 +0000)]
[YAMLIO] Wrap explicit specialization in llvm::yaml to appease build bots
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365876
91177308-0d34-0410-b5e6-
96231b3b80d8
Stanislav Mekhanoshin [Fri, 12 Jul 2019 05:13:10 +0000 (05:13 +0000)]
[AMDGPU] Fixed comment. NFC.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365871
91177308-0d34-0410-b5e6-
96231b3b80d8
Simon Atanasyan [Fri, 12 Jul 2019 04:58:45 +0000 (04:58 +0000)]
[mips] Fix JmpLink to texternalsym and tglobaladdr on mcroMIPS R6
There is not match for the `MipsJmpLink texternalsym` and `MipsJmpLink
tglobaladdr` patterns for microMIPS R6. As a result LLVM incorrectly
selects the `JALRC16` compact 2-byte instruction which takes a target
instruction address from a register only and assign `R_MIPS_32` relocation
for this instruction. This relocation completely overwrites `JALRC16`
and nearby instructions.
This patch adds missed matching patterns, selects `BALC` instruction and
assign a correct `R_MICROMIPS_PC26_S1` relocation.
Differential Revision: https://reviews.llvm.org/D64552
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365870
91177308-0d34-0410-b5e6-
96231b3b80d8
Fangrui Song [Fri, 12 Jul 2019 04:51:31 +0000 (04:51 +0000)]
[YAMLIO] Remove trailing spaces when outputting maps
llvm::yaml::Output::paddedKey unconditionally outputs spaces, which
are superfluous if the value to be dumped is a sequence or map.
Change `bool NeedsNewLine` to `StringRef Padding` so that it can be
overridden to `\n` if the value is a sequence or map.
An empty map/sequence is special. It is printed as `{}` or `[]` without
a newline, while a non-empty map/sequence follows a newline. To handle
this distinction, add another variable `PaddingBeforeContainer` and does
the special handling in endMapping/endSequence.
Reviewed By: grimar, jhenderson
Differential Revision: https://reviews.llvm.org/D64566
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365869
91177308-0d34-0410-b5e6-
96231b3b80d8
Tom Stellard [Fri, 12 Jul 2019 02:31:50 +0000 (02:31 +0000)]
docs/GithubMove.rst: Add link to GitHub migration status page
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365865
91177308-0d34-0410-b5e6-
96231b3b80d8
Vitaly Buka [Fri, 12 Jul 2019 02:23:07 +0000 (02:23 +0000)]
Return Undef from isBytewiseValue for empty arrays or structs
Reviewers: pcc, eugenis
Subscribers: hiraditya, llvm-commits
Tags: #llvm
Differential Revision: https://reviews.llvm.org/D64052
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365864
91177308-0d34-0410-b5e6-
96231b3b80d8
Artem Dergachev [Fri, 12 Jul 2019 02:16:56 +0000 (02:16 +0000)]
NFC: Unforget a colon in a few CHECK: directives.
Differential Revision: https://reviews.llvm.org/D64526
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@365863
91177308-0d34-0410-b5e6-
96231b3b80d8