- Jun 05, 2023
-
-
Matthias Springer authored
Certain functions were declared in `VectorOps.h` instead of `VectorTransforms.h` or `VectorRewritePatterns.h`. Differential Revision: https://reviews.llvm.org/D152146
-
Philipp Stephani authored
Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D148918
-
Zibi Sarbinowski authored
[SystemZ} This revision fixes the following error caused by 301eb6b6. LLVM ERROR: IO failure on output stream: EDC5122I Input/output error. The characters seems to be 3-byte characters which cause the failure with auto conversion from EBCDIC to ASCII. Credit to @Kai who found this issue. Reviewed By: abhina.sreeskantharajan Differential Revision: https://reviews.llvm.org/D152016
-
Timm Bäder authored
... emitting them. This makes later code easier to understand, since we emit the code snippets line by line anyway. It also fixes the weird underlinig of multi-line source ranges. Differential Revision: https://reviews.llvm.org/D151215
-
Martin Braenne authored
The `ReferenceValue` class will be eliminated as part of the ongoing migration to strict handling of value categories (see https://discourse.llvm.org/t/70086 for details). Reviewed By: gribozavr2 Differential Revision: https://reviews.llvm.org/D152144
-
Alexey Lapshin authored
This addresses the issue found by: https://lab.llvm.org/buildbot/#/builders/168/builds/13834
-
Andrew Gozillon authored
[Flang][OpenMP][MLIR] Add lowering from PFT to MLIR (FIR) for OpenMP declare target directive in Flang This patch adds PFT lowering for the OpenMP declare target directive in Flang to the omp dialects declare target attribute, which currently applies to function or global operations. Reviewers: kiranchandramohan, skatrak, jsjodin Differential Revision: https://reviews.llvm.org/D150329
-
Ivan Kosarev authored
Eliminates the need for custom operand classes whose only purpose is to define a parser method. Part of <https://github.com/llvm/llvm-project/issues/62629>. Reviewed By: dp Differential Revision: https://reviews.llvm.org/D151685
-
Haojian Wu authored
Follows the existing patterns, and makes life easier for bazel build system.
-
Ivan Kosarev authored
Removes unnecessary duplication in TableGen definitions. Part of <https://github.com/llvm/llvm-project/issues/62629>. Reviewed By: dp Differential Revision: https://reviews.llvm.org/D151684
-
Timm Bäder authored
-
Amaury Séchet authored
Currently, a node and its users are added back to the worklist in reverse topological order after it is combined. This diff changes that order to be topological. This is part of a larger migration to get the DAGCombiner to process nodes in topological order. Reviewed By: RKSimon Differential Revision: https://reviews.llvm.org/D127115
-
Simon Pilgrim authored
Based off the legalize-add-v*.mir tests
-
Simon Pilgrim authored
Based off the legalize-add.mir tests
-
khei4 authored
Differential Revision: https://reviews.llvm.org/D152068
-
khei4 authored
Differential Revision: https://reviews.llvm.org/D152091
-
Mateja Marjanovic authored
For image and buffer stores the default behaviour on GFX11 and older is to set all unset components to zero. So if we pass only X component it will be the same as X000, or XY same as XY00. This patch simplifies the passed vector of components in InstCombine by removing zero components from the end. For image stores it also trims DMask if necessary. Reviewed by: arsenm, foad, nhaehnle, piotr
-
Jay Foad authored
-
Simon Pilgrim authored
Fixes #63091
-
Simon Pilgrim authored
-
Simon Pilgrim authored
G_CTTZ_ZERO_UNDEF is always legal using the BSF instruction, G_CTTZ requires the BMI1 TZCNT instruction
-
LLVM GN Syncbot authored
-
Dominik Adamski authored
OpenMP standard (section 3.3 for OpenMP 5.2) requires that _OPENMP macro contains release date of given OpenMP standard version. Differential Revision: https://reviews.llvm.org/D151083 Reviewed By: kiranchandramohan
-
Tom Eccles authored
Previously only a constant reference was stored in the FirOpBuilder. However, a lot of code was merged using FirOpBuilder builder{rewriter, getKindMapping(mod)}; This is incorrect because the KindMapping returned will go out of scope as soon as FirOpBuilder's constructor had run. This led to an infinite loop running some tests using HLFIR (because the stack space containing the kind mapping was re-used and corrupted). One solution would have just been to fix the incorrect call sites, however, as a large number of these had already made it past review, I decided to instead change FirOpBuilder to store its own copy of the KindMapping. This is not costly because nearly every time we construct a KindMapping is exclusively to construct a FirOpBuilder. To make this common pattern simpler, I added a new constructor to FirOpBuilder which calls getKindMapping(). Differential Revision: https://reviews.llvm.org/D151881 -
Tom Eccles authored
The old fir.allocmem operation returned a !fir.heap<.> type. The new fir.alloca operation returns a !fir.ref<.> type. This patch inserts a fir.convert so that the old type is preserved. This prevents verifier failures when types returned from fir.if statements don't match the expected type. Differential Revision: https://reviews.llvm.org/D151921
-
Johannes Reifferscheid authored
Reviewed By: akuegel Differential Revision: https://reviews.llvm.org/D152133
-
Guillaume Chatelet authored
This reverts commit 9ec6ebd3. The patch broke RISCV and aarch64 builtbots.
-
Mikhail Gudim authored
Reapply with extra check for struct types, which caused buildbot failures last time. ----- The freeze instruction has not been handled by SCCPInstVisitor. This patch adds SCCPInstVisitor::visitFreezeInst(FreezeInst &I) method to handle freeze instructions. Differential Revision: https://reviews.llvm.org/D151659
-
Viktoriia Bakalova authored
Summary: Reviewers: Subscribers: Differential Revision: https://reviews.llvm.org/D150185
-
Guillaume Chatelet authored
This is based on ideas from @nafi to: - use a branchless version of 'cmp' for 'uint32_t', - completely resolve the lexicographic comparison through vector operations when wide types are available. We also get rid of byte reloads and serializing '__builtin_ctzll'. I did not include the suggestion to replace comparisons of 'uint16_t' with two 'uint8_t' as it did not seem to help the codegen. This can be revisited in sub-sequent patches. The code been rewritten to reduce nested function calls, making the job of the inliner easier and preventing harmful code duplication. Reviewed By: nafi3000 Differential Revision: https://reviews.llvm.org/D148717
-
Matthias Springer authored
Also support replacing payload ops with ConstantLike ops in the TrackingListener, even if the replacement op does not have the same name. (Not supported for ops with multiple results, as this would require splitting the handle.) Differential Revision: https://reviews.llvm.org/D152127
-
Matthias Springer authored
Differential Revision: https://reviews.llvm.org/D152125
-
Matthias Springer authored
Differential Revision: https://reviews.llvm.org/D152124
-
Jay Foad authored
-
David Green authored
To go with D149267 and D149967, this adds predicated mla/mls patterns, selected from select(mask, add(a, mul(b, c)), a) -> mla(a, mask, b, c). The existing patterns are eventually removed by D149967. Differential Revision: https://reviews.llvm.org/D149969
-
Chen Zheng authored
-
Mehdi Amini authored
This was missed when the other dialects adopted it. Reviewed By: rriddle Differential Revision: https://reviews.llvm.org/D151410
-
Qiu Chaofan authored
Reviewed By: shchenz Differential Revision: https://reviews.llvm.org/D141249
-