- Nov 08, 2020
-
-
Cornelius Aschermann authored
This diff fixes missing fields initialization (Size, VMSize). Previously this resulted in broken binaries when multiple sections were added in one tool's invocatation. Test plan: make check-all Differential revision: https://reviews.llvm.org/D90690
-
Carl Ritson authored
Fix a crash when SCC is defined until end of block and mode change must be inserted in SCC live region. Reviewed By: mceier Differential Revision: https://reviews.llvm.org/D90997
-
Mehdi Amini authored
-
Stephen Kelly authored
This was missing from commit 7efe07a1 (Traverse-ignore explicit template instantiations, 2020-11-06).
-
Craig Topper authored
[RISCV] Add test cases showing missed opportunities to use sbset/sbclr/sbinv/sbext when the shift amount isn't masked to log2(xlen) bits. NFC Out of bounds shifts are undefined and these instructions mask their shift amount before use. So we don't need to see a mask in order to select the instructions.
-
Renato Golin authored
As discussed in the mailing list [1-4], we need a separation of support tiers when requiring support from the whole community versus a sub-community. Essentially, if a sub-community is active enough and takes maintenance into their own internal costs without affecting other parts of the community's maintenance costs, then code that is not immediately relevant to all parts (ie. not released, actively tested, etc) can still find its way into the LLVM main repository without major pain points. The main benefit is to reduce the maintenance cost that those sub-communities have outside of LLVM (for example, in duplicating common code, applying the same patches on top of multiple user repositories or downstream projects). This document outlines the components and responsibilities of the sub-communities with regards to maintenance costs and how they affect the rest of the community. It also adds an addendum on removal policies, which expand the existing "new target removal" policy into something more generic, to encompass any piece of code, scripts or documents in the repository. [1] http://lists.llvm.org/pipermail/llvm-dev/2020-October/146249.html [2] http://lists.llvm.org/pipermail/llvm-dev/2020-November/146335.html [3] http://lists.llvm.org/pipermail/llvm-dev/2020-October/146138.html [4] http://lists.llvm.org/pipermail/llvm-dev/2020-November/146298.html
-
Craig Topper authored
-
LLVM GN Syncbot authored
-
Nathan James authored
The config providers that look for configuration files currently take a pointer to a FileSystem in the constructor. For some reason this isn't actually used when trying to read those configuration files, Essentially it just follows the behaviour of the real filesystem. Using clang-tidy standalone this doesn't cause any issue. But if its used as a library and the user wishes to use say an `InMemoryFileSystem` it will try to read the files from the disc instead. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D90992
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Jonas Devlieghere authored
Convert analyzeContextInfo to a work list using the same approach I used to remove the recursion from lookForDIEsToKeep. This fixes the crash reported in https://llvm.org/PR48029. Tested using the reproducer attached to PR48029 as well as by comparing the clang MD5 hashes before and after the change (with and without gmodules). Differential revision: https://reviews.llvm.org/D90873
-
Michał Górny authored
Use skipUnlessDarwin decorator for tests that are specific to Darwin, instead of skipIf... for all other platforms. This should make it clear that these tests are not supposed to work elsewhere. It will also make these tests stop repeatedly popping up while I look for tests that could be fixed on the platform in question. Differential Revision: https://reviews.llvm.org/D91003
-
Michał Górny authored
-
Stella Laurenzo authored
This reverts commit 33039805. Differential Revision: https://reviews.llvm.org/D91006
-
Nikita Popov authored
The distinction between StructOffset and OtherOffset has been originally introduced by 82069c44, which applied different reasoning to both offset kinds. However, this distinction was not actually correct, and has been fixed by c84e77ae. Since then, we only ever consider the sum StructOffset + OtherOffset, so we may as well store it in that form directly.
-
Stella Laurenzo authored
* Introduced issue in debug builds. This reverts commit b5fcd061.
-
Nikita Popov authored
Instead of performing the multiplication in double the bit width and using active bits to determine overflow, use the existing smul_ov() APInt method to detect overflow. The smul_ov() implementation is not particularly efficient, but it's still better than doing this a wide, usually 128-bit, type.
-
Stella Laurenzo authored
Reviewed By: mehdi_amini Differential Revision: https://reviews.llvm.org/D90955
-
Stella Laurenzo authored
* Moved various loose functions to either the mlir::tosa namespace or made static * Fixed an unused variable warning in TosaMakeBroadcastable.cpp.
-
Suraj Sudhir authored
This is the TOSA MLIR Dialect described in the following MLIR RFC: https://llvm.discourse.group/t/rfc-tosa-dialect-in-mlir/1971/24 Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D90411
-
- Nov 07, 2020
-
-
Melanie Blower authored
Reviewers: rnk, dblaikie Differential Revision: https://reviews.llvm.org/D90714
-
Melanie Blower authored
-
Nikita Popov authored
Add basic statistics on the number of pointers that have been determined to maybe capture / not capture.
-
Nikita Popov authored
If there are too many uses, we should directly return -- there's no point in inspecting the remaining uses in the worklist, as we have to conservatively assume a capture anyway. This also means that tooManyUses() gets called exactly once, rather than potentially many times. This restores the behavior prior to e9832dfd, where this was accidentally changed while moving the AddUses logic into a closure, thus making the return a return from the closure rather than the whole function.
-
Nikita Popov authored
-
Nikita Popov authored
If the same value is used multiple times in the same instruction, CaptureTracking may end up reporting the wrong use as being captured, and/or report the same use as being captured multiple times. Make sure that all checks take the use operand number into account, rather than performing unreliable comparisons against the used value. I'm not sure whether this can cause any problems in practice, but at least some capture trackers (ArgUsesTracker, AACaptureUseTracker) do care about which call argument is captured.
-
George Mitenkov authored
Since SPIR-V module has an optional name, this patch makes a change to pass it to `ModuleOp` during conversion. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D90904
-
Nikita Popov authored
We check shouldExplore() before adding uses to the worklist, so uses that should not be explored will not reach captured() in the first place.
-
Jonas Devlieghere authored
Reduce the size of the WorklistItem struct by using a struct.
-
Kazu Hirata authored
The patch simplifies BranchProbabilityInfo::getEdgeProbability by handling two cases separately, depending on whether we have edge probabilities. - If we have edge probabilities, then add up probabilities for successors being equal to Dst. - Otherwise, return the number of ocurrences divided by the total number of successors. Differential Revision: https://reviews.llvm.org/D90980
-
Fangrui Song authored
after D89158
-
Fangrui Song authored
-
Atmn Patel authored
This reverts commit 0b17c6e4. This patch causes a compile-time error in SCEV.
-
Atmn Patel authored
This reverts commit b1878b46. This does fix the test but it means that ac73b73c is not implemented correctly. Reverting for now, and will be reverting the commit that causes this to fail.
-
Fangrui Song authored
-
Atmn Patel authored
By turning the loop into an infinite one, the loop can't be deleted anymore so the test will continue to pass.
-
Fangrui Song authored
-
Fangrui Song authored
to be consistent with other emit*
-
Atmn Patel authored
The commit 0b17c6e4 occasionally causes this test to fail, this fixes it.
-