- Aug 01, 2023
-
-
Mikhail Gudim authored
Currently, only `SUB`, `ADD`, `OR` and `XOR` are covered. This patch adds `AND`, `SHL`, `SRA`, `SRL`. Reviewed By: craig.topper Differential Revision: https://reviews.llvm.org/D155344
-
Emilio Cota authored
[bazel] typo fix for f0549017 [mlir][bufferization][transform][python] Add enums to bindings & mixins
-
Florian Hahn authored
This reverts commit 245ec675. Recommits eea92586 with a fix to only erase the instruction from the first part if it is defined outside the loop. This fixes a use-after-free error reported.
-
Kiran Chandramohan authored
Loop index variables are privatised for a worksharing loop. The alloca ops of the privatised index are hoisted to the entry block of the outlineable region or parent function. With HLFIR, the hlfir.declare should be created in the same place as the alloca op. To achieve this the alloc and the hflir.declare should be created in the same place. A new function is created in OpenMP.cpp for this purpose. Reviewed By: tblah Differential Revision: https://reviews.llvm.org/D156719
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D155400
-
Alex Bradbury authored
<https://github.com/llvm/llvm-project/issues/64090> A forthcoming patch addresses these cases.
-
Zhongyunde authored
We check the loop trip count is known a power of 2 to determine whether the tail loop can be eliminated in D146199. However, the remainder loop of mask scalable loop can also be removed If we know the mask is always going to be true for every vector iteration. Depend on the assume of power-of-two vscale on D155350 proofs: https://alive2.llvm.org/ce/z/bT62Wa Fix https://github.com/llvm/llvm-project/issues/63616. Reviewed By: goldstein.w.n, nikic, david-arm, paulwalker-arm Differential Revision: https://reviews.llvm.org/D154953
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D155394
-
wangpc authored
So that we can simplify some code and simplify the implmentation when we want to add new features (like adding new bang operators). Reviewed By: fpetrogalli Differential Revision: https://reviews.llvm.org/D156502
-
Jay Foad authored
-
Ingo Müller authored
This patch uses the new enum binding generation to add the enums of the dialect to the Python bindings and uses them in the mix-in class where it was still missing (namely, the `LayoutMapOption` for the `function_boundary_type_conversion` of the `OneShotBufferizeOp`. The patch also piggy-backs a few smaller clean-ups: * Order the keyword-only arguments alphabetically. * Add the keyword-only arguments to an overload where they were left out by accident. * Change some of the attribute values used in the tests to non-default values such that they show up in the output IR and check for that output. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D156664
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D156786
-
Timm Bäder authored
-
Sameer Sahasrabuddhe authored
Having an extern template declaration prevents implicit instantiation of templates, which causes linker errors when building with shared libraries. For example, the sources in libAnalysis do not contain any explicit instantiation of the CycleInfo, which is a specialization of GenericCycleInfo. Thus, any calls to functions defined in the body of GenericCycleInfo produce undefined references. The absence of any extern template declaration allows a local instance of these functions to be created.
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D154474
-
Alexey Bataev authored
-
Timm Bäder authored
We didn't call the function explicitly in a static_assert() statement and the checkPotentialConstantExpression() invocation quietly aborted early because of the missing initializer for A::a. Fix this by calling ignoredExprs() explicitly. Differential Revision: https://reviews.llvm.org/D149965
-
Florian Hahn authored
Add extra test for that issue in 245ec675. Also generate full check lines for tests, which should now be deterministic on all platforms.
-
Hans Wennborg authored
Closes #64279
-
Joseph Huber authored
The GPU makes use of different address spaces. We generally work with global memory, thread private memory, and thread shared memory. This patch simply adds a few preliminary wrappers to map these concepts to the numerical values the backend uses. Obviously casts between these will need to be checked by the user. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D156731
-
Younan Zhang authored
This is a follow-up to D151785, addressing https://github.com/clangd/clangd/issues/1703. The previous approach of peeling pointer types during a traversal using getPointeeType might have produced unexpected results; since the method would implicitly desugar the type if the type being passed in could not be cast to a Pointer-like Type. Reviewed By: nridge Differential Revision: https://reviews.llvm.org/D156300
-
Francesco Petrogalli authored
When dealing with the subunits of a resource group, we should reset the subunits availability at the first avaiable cycle of the resource that contains the subunits. Previously, the reset operation was returning cycle 0, effectively erasing the booking history of the subunits. Without this change, when using intervals for models have make use of subunits, the erasing of resource booking for subunits can raise the assertion "A resource is being overwritten" in `ResourceSegments::add`. The test added in the patch is one of such cases. Reviewed By: andreadb Differential Revision: https://reviews.llvm.org/D156530
-
LLVM GN Syncbot authored
-
Sameer Sahasrabuddhe authored
This reverts commit 93a37067. The "extern template" declaration of CycleInfo caused problems in a shared build when CycleInfo was removed from Verifier.cpp. There needs to be an explicit instantiation corresponding to an extern template in every SO.
-
Aaron Ballman authored
This amends 1e06b82b
-
Paulo Matos authored
Adds support for SPV_INTEL_optnone. Currently still in draft form but I wanted to open this revision to ask some questions. Differential Revision: https://reviews.llvm.org/D156297
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D149960
-
Ben Shi authored
Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D156780
-
Timm Bäder authored
Instead of evaluating the entire thing and then pop'ing the value from the stack, just pass the discard() on.
-
Nikita Popov authored
Set phi inputs to poison whenever we find a dead edge (either during initial worklist population or the main InstCombine run), instead of only doing this for successors of dead blocks. This means that the phi operand is set to poison even if for critical edges without an intermediate block. There are quite a few test changes, because the pattern is fairly common in vectorizer output, for cases where we know the vectorized loop will be entered.
-
Timm Bäder authored
Differential Revision: https://reviews.llvm.org/D149837
-
Nikita Popov authored
-
Nikita Popov authored
To reduce spurious diffs in future changes.
-
Nikita Popov authored
-
Sameer Sahasrabuddhe authored
The GenericConvergenceVerifier stores a pointer *OS, which can be nullptr. This can crash the verifier.
-
Nikita Popov authored
Avoid the second backedge condition from being optimized away, that's not the point of the test.
-
Maksim Kita authored
Improve foldOpIntoPhi() for icmp operator to check if incoming PHI value can be replaced with constant based on implied condition. Depends on D156619. Differential Revision: https://reviews.llvm.org/D156620
-
Maksim Kita authored
Precommit tests for D156620. Differential Revision: https://reviews.llvm.org/D156619
-
Ben Shi authored
Reviewed By: zixuan-wu Differential Revision: https://reviews.llvm.org/D156543
-
Ben Shi authored
Reviewed By: zixuan-wu Differential Revison: https://reviews.llvm.org/D154588
-