- Apr 27, 2020
-
-
Matt Arsenault authored
-
Lei Zhang authored
'From' and 'To' should be reversed. And now we must explicitly call the registration function given that MLIR moved away from static registration. Differential Revision: https://reviews.llvm.org/D78934
-
Pavel Labath authored
-
Lei Zhang authored
Instead of using llvm_unreachable to guard against fusing linalg.conv, reject fusing linalg.conv in isFusableInto. tileLinalgOpImpl is a templated function now and it can operate on loop.parellel. So we should avoid calling into getForInductionVarOwner which always assumes loop.for. Differential Revision: https://reviews.llvm.org/D78936
-
Fangrui Song authored
-
Michael Kruse authored
After the update to ISL to isl-0.22.1-87-gfee05a13 and its change of isl_*_dim returning -1 instead of 0, the -1 got wrapped-around to UINT_MAX because Polly often uses 'unsigned' type to represent dimensions, as ISL did before this patch. This may happen in normal executions after an out-of-quota. Fix by catching the error-case earlier.
-
Nico Weber authored
This makes lld's --reproduce output more compatible with tar 1.13 and before. This is a very old version of tar, but it's the version in both gnuwin and unxutils, and the cost for supporting them are very low, so we might as well just do that. https://bugs.chromium.org/p/chromium/issues/detail?id=1073524#c21 and onward has more details. Differential Revision: https://reviews.llvm.org/D78945
-
Louis Dionne authored
This is an attempt to unbreak this test on Windows, where paths contain backslashes that are interpreted as escape characters unless quoted.
-
Florian Hahn authored
This patch documents the planned matrix support in Clang, based on the draft specification discussed on cfe-dev in the 'Matrix Support in Clang' thread. Latest draft spec sent to cfe-dev: http://lists.llvm.org/pipermail/cfe-dev/2020-February/064742.html Discussion thread January: http://lists.llvm.org/pipermail/cfe-dev/2020-January/064206.html Discussion thread March: http://lists.llvm.org/pipermail/cfe-dev/2020-March/064834.html Reviewers: rsmith, anemet, Bigcheese, dexonsmith, rjmccall Reviewed By: rjmccall Differential Revision: https://reviews.llvm.org/D76612
-
David Truby authored
-
Fangrui Song authored
D63847 added `MCInstrAnalysis::evaluateMemoryOperandAddress()`. This patch leverages the feature to print the target addresses for evaluable instructions. ``` -400a: movl 4080(%rip), %eax +400a: movl 4080(%rip), %eax # 5000 <data1> ``` This patch also deletes `MIA->isCall(Inst) || MIA->isUnconditionalBranch(Inst) || MIA->isConditionalBranch(Inst)` which is used to guard `MCInstrAnalysis::evaluateBranch()` Reviewed By: jhenderson, skan Differential Revision: https://reviews.llvm.org/D78776
-
Matt Arsenault authored
Currently this asserts on anything other than errors. In one workaround scenario, AMDGPU emits DiagnosticInfoUnsupported as a warning for functions that can't be correctly codegened, but should never be executed.
-
Mircea Trofin authored
Summary: Added getInliningCostEstimate, which is essentially what getInlineCost computes if passed default inlining params, and non-null ORE or InlineParams::ComputeFullInlineCost. Reviewers: davidxl, eraman, jdoerfert Subscribers: hiraditya, haicheng, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78730
-
Jay Foad authored
-
Wei Mi authored
Profile and profile summary are usually read only once and then annotated on IR. The profile summary metadata on IR should include the value of the newly added partial profile flag, so that compilation phase like thinlto postlink can get the full set of profile information. Differential Revision: https://reviews.llvm.org/D78310
-
Pavel Labath authored
Sadly IPv6 is still not present anywhere. The test was attempting to detect&skip such hosts, but the way it did that (essentially, by calling getaddrinfo) meant that it only detected hosts which have IPv6 support completely compiled out. It did not do anything about hosts which have it compiled in, but lack runtime configuration even for the ::1 loopback address. This patch changes the detection logic to use a new method. It does it by attempting to bind a socket to the appropriate loopback address. That should ensure the hosts loopback interface is fully set up. In an effort to avoid silently skipping the test on too many hosts, the test is fairly strict about the kind of error it expects in these cases -- it will only skip the test when receiving EADDRNOTAVAIL. If we find other error codes that can be reasonably returned in these situations, we can add more of them. The (small) change in TCPSocket.cpp is to ensure that the code correctly propagates the error received from the OS.
-
Lei Zhang authored
-
Nicolas Vasilache authored
Summary: This revision extends the lowering of vector transfers to work with n-D memref and 1-D vector where the permutation map is an identity on the most minor dimensions (1 for now). Differential Revision: https://reviews.llvm.org/D78925
-
Louis Dionne authored
Instead of using the libc++ headers provided alongside the toolchain, use those in the sibling libcxx directory that we know is checked out. Before the days of the monorepo, we couldn't assume that the libc++ repository was present when building libcxxabi. Since we can now make that assumption, it's always better to use the version of libc++ that is in lockstep with libc++abi, to avoid subtle bugs.
-
David Sherwood authored
Adding tests that I forgot to add as part of a previous change: https://reviews.llvm.org/D78636
-
Tres Popp authored
Summary: Order classes by purpose and alphabetically to make it slightly easier to read through the file. Reviewers: ftynse! Subscribers: mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, frgossen, Kayjukh, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D78914
-
Momchil Velikov authored
`getHasRegParm()` was working under the assumption that the RegParm bits are the last field, which is no longer true, after adding the `NoCfCheck` and `CmseNSCall` fields. This causes a spurious "regparm 0" attribute to appear when a function type is declared with either `__attribute__((nocf_check))` or `__attribute__((cmse_nonsecure_call))`. Differential Revision: https://reviews.llvm.org/D77270
-
David Sherwood authored
Summary: When generating code for the LLVM IR zeroinitialiser operation, if the vector type is scalable we should be using SPLAT_VECTOR instead of BUILD_VECTOR. Differential Revision: https://reviews.llvm.org/D78636
-
Dmitri Gribenko authored
This reverts commit b46b1a91. It broke overload resolution for operator 'new' -- see reproducer in https://reviews.llvm.org/D77954.
-
David Green authored
There are some intrinsics like this that currently block tail predication, but should be fine. This allows fma through, as the one that I ran into. There may be others that need the same treatment but I've only done this one here. Differential Revision: https://reviews.llvm.org/D78385
-
Raphael Isemann authored
This code should always be executed, not just when building the debugserver on its own. Fixes the modules build when building LLVM+LLDB together.
-
Louis Dionne authored
This allows defining Lit features that can be enabled or disabled based on compiler support, and parameters that are passed on the command line. The main benefits are: - Feature detection is entirely based on the substitutions provided in the TestingConfig object, which is simpler and decouples it from the complicated compiler emulation infrastructure. - The syntax is declarative, which makes it easy to see what features and parameters are accepted by the test suite. This is significantly less entangled than the current config.py logic. - Since feature detection is based on substitutions, it works really well on top of the new format, and custom Lit configurations can be created easily without being based on `config.py`. Differential Revision: https://reviews.llvm.org/D78381
-
Pavel Labath authored
this is dead and non-functional code that hasn't been touched (modulo refactors) since it was checked in (as an "NFC, with no review and tests) in 2016. Anyone interested in adding darwin support to lldb-server can look this up in git history.
-
Simon Pilgrim authored
It was depending on CachedHashString.h providing the include.
-
Nico Weber authored
This reverts commit b160e9e5. 811c0c9e was reverted in 96717125.
-
Raphael Isemann authored
Summary: For some reason the TestExec test on the macOS bots randomly fails with this error: ``` output: * thread #2, stop reason = EXC_BAD_ACCESS (code=1, address=0x108e66000) * frame #0: 0x0000000108e66000 [...] File "/Users/buildslave/jenkins/workspace/lldb-cmake/llvm-project/lldb/test/API/functionalities/exec/TestExec.py", line 25, in test_hitting_exec self.do_test(False) File "/Users/buildslave/jenkins/workspace/lldb-cmake/llvm-project/lldb/test/API/functionalities/exec/TestExec.py", line 113, in do_test "Stopped at breakpoint in exec'ed process.") AssertionError: False is not True : Stopped at breakpoint in exec'ed process. Config=x86_64-/Users/buildslave/jenkins/workspace/lldb-cmake/lldb-build/bin/clang-11 ``` I don't know why the test program is failing and I couldn't reproduce this problem on my own. This patch is a stab in the dark that just tries to make the test code more similar to code which we would expect in a user program to make whatever part of macOS happy that is currently not liking our code. The actual changes are: * We pass in argv[0] that is describing otherprog path instead of the current argv[0]. * We pass in a non-null envp (which anyway doesn't seem to be allowed on macOS man page). Reviewers: labath, JDevlieghere Reviewed By: labath Subscribers: abidh, lldb-commits Tags: #lldb Differential Revision: https://reviews.llvm.org/D75241
-
Simon Pilgrim authored
We don't need the full DenseMap.h just DenseMapInfo.h
-
Simon Pilgrim authored
-
Simon Pilgrim authored
-
Dmitri Gribenko authored
This reverts commit 811c0c9e. It broke multiple buildbots.
-
Matthias Gehre authored
Summary: Before this PR, `modernize-use-using` would transform the typedef in ``` template <int A> struct InjectedClassName { typedef InjectedClassName b; }; ``` into `using b = InjectedClassName<A>;` and ``` template <int> struct InjectedClassNameWithUnnamedArgument { typedef InjectedClassNameWithUnnamedArgument b; }; ``` into `using b = InjectedClassNameWithUnnamedArgument<>;`. The first fixit is surprising because its different than the code before, but the second fixit doesn't even compile. This PR adds an option to the TypePrinter to print InjectedClassNameType without template parameters (i.e. as written). Reviewers: aaron.ballman, alexfh, hokein, njames93 Subscribers: xazax.hun, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D77979
-
Raphael Isemann authored
This overload is just an artifact from the original version of the patch, but doesn't have any functional purpose.
-
Marcel Koester authored
The latest changes of the Liveness analysis caused a warning related to an unused variable. This commit solves this warning. Differential Revision: https://reviews.llvm.org/D78912
-
Raphael Isemann authored
D78815 added a check that ensures that PassSupport.h and PassAnalysisSupport.h aren't included directly. However, as compiling this header into a module will try to parse it with a clean preprocessor state, this check is also triggered there. The check seems to make sense and it seems that compiling this header into its own module is a mistake, so this patch makes those two headers textual in the modulemap.
-
Simon Pilgrim authored
The insert(truncate/extend(extract(vec0,c0)),vec1,c1) case in rGacbc5ede99 wasn't combining the 'mineltsize' with the src vector elt size which may be smaller due to implicit extension during extraction. Reduced from test case provided by @mstorsjo
-