- Dec 03, 2023
-
-
Nathan Sidwell authored
As nullptr is a legitimate value, change the BaseTypeMetadataCache hash lookup/insertion to use find and insert rather than the subscript operator. Also adjust getBaseTypeInfoHelper to do no insertion, but let getBaseTypeInfo do that.
-
Saleem Abdulrasool authored
Add an additional email address that has been used.
-
Hui authored
-
Florian Hahn authored
This patch replaces the IR based truncateToMinimalBitwidths with a VPlan version. This has 3 benefits: 1) the VPlan-based version is simpler; we don't need to implement special codegen for each supported instruction type like the IR based one. 2) Removes a dependency on the cost-model after VPlan execution and 3) Removes a use of getVPValue that uses underlying values after VPlan execution (See removed FIXME). Depends on D149081. Depends on D149079. Reviewed By: Ayal Differential Revision: https://reviews.llvm.org/D149903
-
- Dec 02, 2023
-
-
Peter Hawkins authored
This dependency appears unused and it bloats the size of the Python bindings for non-GPU users.
-
Florian Hahn authored
After inserting a select for the final value, update the VPlan def-use chains. At the moment, the incorrect live-out doesn't cause a mis-compile, as computing the final reduction value is not yet modeled in VPlan.
-
Matt Arsenault authored
-
Matt Arsenault authored
-
Shengchen Kan authored
In memory fold table, we have ``` {X86::KMOVDkk, X86::KMOVDkm, 0}, {X86::KMOVDkk_EVEX, X86::KMOVDkm_EVEX, 0} ``` where `KMOVDkm_EVEX` can use EGPR as base and index registers, while `KMOVDkm` can't. Hence, though `KMOVkk` does not have any GPR operands, we prefer to use `KMOVDkk_EVEX` to help register allocation. It will be compressed to `KMOVDkk` in EVEX2VEX pass if memory folding does not happen. -
Matt Arsenault authored
Avoids spurious diffs from change in how metadata is checked in a future commit.
-
Nikolas Klauser authored
-
Corentin Jabot authored
This reverts commit 030047c4. Breaks Qt and is inconsistent with GCC. See the following issue for details: Fixes #74069
-
Spenser Bauman authored
The existing lowering of tosa.conv2d emits a separate linalg.generic operator to add the bias after computing the computation. This change eliminates that additional step by using the generated linalg.conv_2d_* operator by using the bias value as the input to the linalg.conv_2d operation. Rather than: %init = tensor.empty() %conv = linalg.conv_2d ins(%A, %B) %outs(%init) %init = tensor.empty() %bias = linalg.generic ins(%conv, %bias) outs(%init2) { // perform add operation } The lowering now produces: %init = tensor.empty() %bias_expanded = linalg.broadcast ins(%bias) outs(%init) %conv = linalg.conv_2d ins(%A, %B) %outs(%bias) This is the same strategy as https://github.com/llvm/llvm-project/pull/73049 applied to convolutions. -
Jacek Caban authored
-
Jie Fu authored
llvm-project/llvm/lib/Target/AArch64/AArch64FrameLowering.cpp:497:21: error: unused variable 'MFI' [-Werror,-Wunused-variable] MachineFrameInfo &MFI = MF.getFrameInfo(); ^ 1 error generated. -
Brad Smith authored
The minimum GCC version was bumped up from 4.8 to 5.1 and then even newer awhile ago so garbage collect the pre 4.9 workaround. https://reviews.llvm.org/D66188
-
Momchil Velikov authored
Add support for probing for dynamic allocas (variable-size objects and outgoing stack arguments). Co-authored-by:Oliver Stannard <oliver.stannard@linaro.org>
-
wanglei authored
This patch simultaneously adds tests for `CTPOP`.
-
Kazu Hirata authored
Identified with clangd.
-
Kazu Hirata authored
Identified with clangd.
-
Kazu Hirata authored
Identified with clangd.
-
wanglei authored
By default, `isShuffleMaskLegal` always returns true, which can result in the expansion of `BUILD_VECTOR` into a `VECTOR_SHUFFLE` node in certain situations. Subsequently, the `VECTOR_SHUFFLE` node is expanded again into a `BUILD_VECTOR`, leading to an infinite loop. To address this, we always return false, allowing the expansion of `BUILD_VECTOR` through the stack.
-
Thomas Raoux authored
-Fix case where an op is scheduled in stage 0 and used with a distance of 1 -Fix case where we don't peel the epilogue and a value not part of the last stage is used outside the loop.
-
Kirill Stoimenov authored
This is the failure: https://lab.llvm.org/buildbot/#/builders/236/builds/7728/steps/10/logs/stdio This started with eef8e1d2, but because there were a couple of patches that came after that I had to revert all 3 of them because of merge conflicts.
-
Vitaly Buka authored
-
Vitaly Buka authored
-
LLVM GN Syncbot authored
-
Jared Grubb authored
Add a style option to specify the order that property attributes should appear in ObjC property declarations (property attributes are things like `nonatomic, strong, nullable`). Closes #71323. Differential Revision: https://reviews.llvm.org/D150083
-
Matthias Springer authored
This check was trying to find cases of invalid API usage: incorrect/missing handle side effects and/or incorrect rewriter usage. This check is not implemented correctly and can report false positives in case of pointer reuse (different op created at same location). It is unclear if such a check can be implemented given that we have both tracking listener-based handle updates and handle consumption. Fixes #72931.
-
Vivian authored
-
Quinn Dawkins authored
Without folding the result of the initial tensor.dim, the ReifyResultShapes implementation would be incorrect because it would return a dynamic shape for a static result shape.
-
Brad Smith authored
-
Johannes Doerfert authored
-
Johannes Doerfert authored
-
Johannes Doerfert authored
This moves the offload entry logic into classes and provides convenient accessors. No functional change intended but we can now print all offload entries (and later look them up), tested via `OMPTARGET_DUMP_OFFLOAD_ENTRIES=<device_no>`.
-
Johannes Doerfert authored
-
Paul Kirth authored
When building debug version of LLVM with `LLVM_USE_RELATIVE_PATHS_IN_FILES=On` would cause source paths to be incorrect, and be prefixed by the build directory. This lead to source locations like the following: `../build/llvm/...`. Such paths do not exist, and existing debuggers can't adjust their search location because of the incorrect prefix. Ultimately, this happened because the relative path creation goes in the wrong direction, from source-dir to build-dir instead of from build-dir to source-dir. This patch swaps the directionality of the relative paths so that they get a proper prefix from the build directory. Given a build dir at `/build` and a project directory at `/llvm-project`, we get source locations like: `../llvm-project/llvm/lib/Transforms/...`, which a debugger can resolve once pointed to the correct project directory.
-
Johannes Doerfert authored
This is not completely NFC since we now check all 4 requirements and the test is checking the good and the bad case for combining flags.
-