- Oct 12, 2022
-
-
Arthur Eubanks authored
Similar to D135170. Reviewed By: DavidSpickett Differential Revision: https://reviews.llvm.org/D135461
-
Abinav Puthan Purayil authored
[AMDGPU] Make the uses_dynamic_stack field in the kernel descriptor and the metadata map specific to code object v5 and later Unfortunately, we have a broken handling of this in the runtime of rocm 5.3. The runtime is expected to handle this correctly when v5 becomes the default. Differential Revision: https://reviews.llvm.org/D134714
-
Yuanfang Chen authored
correlates the option with reponse file concept. Reviewed By: HazardyKnusperkeks Differential Revision: https://reviews.llvm.org/D135115
-
Kai Nacke authored
The LIT test cases were migrated with the script provided by Nikita Popov. Due to the size of the change it is split into several parts. Reviewed By: nemanja, nikic Differential Revision: https://reviews.llvm.org/D135474
-
Kai Nacke authored
The LIT test cases were migrated with the script provided by Nikita Popov. Due to the size of the change it is split into several parts. Reviewed By: nemanja, amyk, nikic, PowerPC Differential Revision: https://reviews.llvm.org/D135470
-
Mark de Wever authored
This is mainly to improve the readability of the tests. As a side effects the tests run faster too, Reviewed By: ldionne, #libc Differential Revision: https://reviews.llvm.org/D135288
-
Mehdi Amini authored
-
Mehdi Amini authored
-
Jessica Paquette authored
This matches patterns of the form ``` (X op Y) == X ``` And transforms them to ``` Y == 0 ``` where appropriate. Example: https://godbolt.org/z/hfW811c7W Differential Revision: https://reviews.llvm.org/D135380
-
Philip Reames authored
The previous code used a APInt(1, 0) to represent the demanded elts of a scalable vector, and then ignored that argument if type was scalable. This was inconsistent with the UndefElts parameter which is set to either APInt(1, 0) or APInt(1,1) - that is, implicitly broadcast across all lanes. Particularly since the undef code relied on the DemandedElts parameter having bitwidth 1 to achieve that result! This change switches the demanded parameter to APInt(1,1), documents the broadcast semantics, and takes advantage of it to remove one special case for scalable vectors which is no longer required.
-
Xiang Li authored
A new EnumArgument ResourceKind is added for HLSLResourceAttr. This will be use to get resource kind instead of parse it from the type name. Reviewed By: aaron.ballman Differential Revision: https://reviews.llvm.org/D135335
-
- Oct 11, 2022
-
-
Slava Zakharin authored
Differential Revision: https://reviews.llvm.org/D135684
-
Alex Zinenko authored
-
Joe Nash authored
Make support more generic to support future instructions. Currently NFC. Reviewed By: foad, arsenm Differential Revision: https://reviews.llvm.org/D135678
-
Krzysztof Parzyszek authored
-
Nico Weber authored
Ran: git ls-files '*.gn' '*.gni' | xargs llvm/utils/gn/gn.py format -
Pierre van Houtryve authored
Simply folds away bitcasts that cancel each other. Reviewed By: arsenm Differential Revision: https://reviews.llvm.org/D135146
-
Nikolas Klauser authored
Reviewed By: ldionne, #libc Spies: libcxx-commits Differential Revision: https://reviews.llvm.org/D133638
-
Nikita Popov authored
-
Nico Weber authored
-
Philip Reames authored
Update comment, and add an assertion to check property expected by sole (non-test) caller. Remove tests which appear to have been copied from fixed vector tests, and whose demanded bits don't correspond to the way this interface is otherwise used.
-
Florian Hahn authored
LoopRotation may also fold basic blocks, so cached block dispositions also need to be dropped. Fixes #58291.
-
Nico Weber authored
-
Luke Drummond authored
`getFunctionParamOptimizedAlign` was being passed a null function argument when getting the callee of a bitcasted function symbol. This is because `CallBase::getCalledFunction` does not look through bitcasts. There is already code to handle this case in `NVPTXTargetLowering::getArgumentAlignment`, which is now hoisted into an NVPTX util. The alignment computation now gracefully handles computing alignment of virtual functions with a check for null.
-
David Spickett authored
Most of the paths to this never passed nullptr intentionally. Those that possibly could have were assuming it was not null elsehwere, so would have crashed. I've added asserts in those cases. At least one case was relying on GetAsMemoryData to return an error when it was given nullptr. So I've hoisted that error setting code out into the caller. Depends on D134963 Reviewed By: clayborg Differential Revision: https://reviews.llvm.org/D134965
-
Sanjay Patel authored
((Op1 * X) / Y) / Op1 --> X / Y https://alive2.llvm.org/ce/z/JYxWjA InstSimplify handles the more basic mul+div pattern with shared operand, but we don't seem to have any reassociation folds to handle cases where the common op is further away. This is a generalization of 9cff4711 and another transform derived from issue #58137.
-
Sanjay Patel authored
-
Adrian Kuegel authored
-
Anush Elangovan authored
This is another attempt at https://reviews.llvm.org/D110489. When build IREE we run into cases where we don't have / need LLVM_VERSION_* etc set. Compilation fails if it isn't an integer. Reviewed By: stellaraccident Differential Revision: https://reviews.llvm.org/D135650
-
David Spickett authored
WriteRegister and WriteRegisterUnsigned were never pased nullptr, and only one of them appeared to handle it. Switch to ref to make the intent clear. Depends on D134962 Reviewed By: clayborg Differential Revision: https://reviews.llvm.org/D134963
-
Tobias Gysi authored
The revision adds a mapValue function to the Importer, which can be used in the MLIR builders to provide controlled accesses to the result mapping of the imported instructions. Additionally, the change allows us to avoid accessing a private member variable of the Importer class, which simplifies future refactorings that aim at factoring out a conversion interface (similar to the MLIR to LLVM translation). The revision also renames the variables used when emitting the MLIR builders to prepare the generalization to non-intrinsic instructions. In particular, it renames callInst to inst and it passes in the instruction arguments using an llvmOperands array rather than accessing the call arguments directly. Reviewed By: ftynse Differential Revision: https://reviews.llvm.org/D135645
-
Nikita Popov authored
Instead of a flat list that includes the argument index, use a nested vector, where each inner vector is the attribute set for a single argument. This is more obvious and makes followup changes simpler.
-
Kai Stierand authored
Reviewed By: sammccall Differential Revision: https://reviews.llvm.org/D135555
-
Arthur O'Dwyer authored
This patch is the rebase and squash of three earlier patches. It supersedes all three of them. - D47111: experimental monotonic_buffer_resource. - D47358: experimental pool resources. - D47360: Copy std::experimental::pmr to std::pmr. The significant difference between this patch and the-sum-of-those-three is that this patch does not add `std::experimental::pmr::monotonic_buffer_resource` and so on. This patch simply adds the C++17 standard facilities, and leaves the `std::experimental` namespace entirely alone. Differential Revision: https://reviews.llvm.org/D89057
-
wanglei authored
Differential Revision: https://reviews.llvm.org/D135526
-
Max Kazantsev authored
Just to make the code more structured and easier to understand.
-
Max Kazantsev authored
-
Max Kazantsev authored
-
David Truby authored
This patch adds a cpowi function to the flang runtime, and switches to using that function instead of pgmath for complex number to integer power operations. Differential Revision: https://reviews.llvm.org/D134889
-
David Spickett authored
ReadRegister and ReadRegisterAsUnsigned are always passed valid pointers, so the parameter should be a ref to make the intent clear. Reviewed By: clayborg Differential Revision: https://reviews.llvm.org/D134962
-