Commit
928c4b4b4988b4d633a96afa4c7f4584bc0009e5
by sam.parker[SCEV] Refactor isHighCostExpansionHelper
To enable the cost of constants, the helper function has been reorganised: - A struct has been introduced to hold SCEV operand information so that we know the user of the operand, as well as the operand index. The Worklist now uses instead instead of a bare SCEV. - The costing of each SCEV, and collection of its operands, is now performed in a helper function.
Differential Revision: https://reviews.llvm.org/D86050
|
 | llvm/include/llvm/Transforms/Utils/ScalarEvolutionExpander.h |
 | llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp |
Commit
136eb79a8846c4e8ff6ba5ccfc0c470ab351fb13
by frgossen[MLIR][Standard] Add `dynamic_tensor_from_elements` operation
With `dynamic_tensor_from_elements` tensor values of dynamic size can be created. The body of the operation essentially maps the index space to tensor elements.
Declare SCF operations in the `scf` namespace to avoid name clash with the new `std.yield` operation. Resolve ambiguities between `linalg/shape/std/scf.yield` operations.
Differential Revision: https://reviews.llvm.org/D86276
|
 | mlir/lib/Dialect/SCF/SCF.cpp |
 | mlir/test/Dialect/Standard/invalid.mlir |
 | mlir/lib/Dialect/Shape/IR/Shape.cpp |
 | mlir/test/Dialect/Standard/ops.mlir |
 | mlir/lib/Conversion/SCFToStandard/SCFToStandard.cpp |
 | mlir/include/mlir/Dialect/SCF/SCFOps.td |
 | mlir/lib/Dialect/Linalg/Transforms/Loops.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/lib/Dialect/Shape/Transforms/ShapeToShapeLowering.cpp |
 | mlir/lib/Conversion/LinalgToLLVM/LinalgToLLVM.cpp |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp |
Commit
3097427f93dde9a49f729e995b8d52d91cc30d4c
by Xing[obj2yaml] Add support for dumping the .debug_str section.
This patch adds support for dumping the .debug_str section to obj2yaml.
Reviewed By: jhenderson
Differential Revision: https://reviews.llvm.org/D86867
|
 | llvm/test/tools/obj2yaml/ELF/DWARF/debug-str.yaml |
 | llvm/tools/obj2yaml/elf2yaml.cpp |
Commit
9b645ebfff168fcf3cf29b21f49762a04d8ceb37
by llvm-dev[X86][AVX] Use lowerShuffleWithPERMV in shuffle combining to support non-VLX targets
lowerShuffleWithPERMV allows us to use the ZMM variants for 128/256-bit variable shuffles on non-VLX AVX512 targets.
This is another step towards shuffle combining through between vector widths - we still end up with an annoying regression (combine_vpermilvar_vperm2f128_zero_8f32) but we're going in the right direction....
|
 | llvm/test/CodeGen/X86/vector-zext.ll |
 | llvm/test/CodeGen/X86/shuffle-strided-with-offset-256.ll |
 | llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll |
 | llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll |
 | llvm/test/CodeGen/X86/insertelement-ones.ll |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll |
 | llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll |
 | llvm/test/CodeGen/X86/vector-shuffle-avx512.ll |
Commit
5bb27e735d3ba561b93a12e07d79cd88a5bff338
by llvm-devX86AvoidStoreForwardingBlocks.cpp - use unsigned for Opcode values. NFCI.
Fixes clang-tidy cppcoreguidelines-narrowing-conversions warnings.
|
 | llvm/lib/Target/X86/X86AvoidStoreForwardingBlocks.cpp |
Commit
3a86eb03d54ef80cf498d9473a1c735c93cdfa66
by grimar[llvm-readobj/elf] - Introduce Relocation<ELFT> helper.
It removes templating for Elf_Rel[a] handling that we introduced earlier and introduces a helper class instead.
It was briefly discussed in D87087, which showed, why having templates is probably not ideal for the generalization of dumpers code.
Differential revision: https://reviews.llvm.org/D87141
|
 | llvm/tools/llvm-readobj/ELFDumper.cpp |
Commit
e57cbcbdc18adcadc6c97ff4f3f81b0f4b81c698
by llvm-devLegalizeTypes.h - remove orphan SplitVSETCC declaration. NFCI.
The implementation no longer exists
|
 | llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h |
Commit
15acdd75439b402e993ebe0dbf8eb02e9b88bbdc
by frgossen[MLIR][Shape] Merge `shape` to `std`/`scf` lowerings.
Merge the two lowering passes because they are not useful by themselves. The new pass lowers to `std` and `scf` is considered an auxiliary dialect.
See also https://llvm.discourse.group/t/conversions-with-multiple-target-dialects/1541/12
Differential Revision: https://reviews.llvm.org/D86779
|
 | mlir/lib/Conversion/ShapeToSCF/CMakeLists.txt |
 | mlir/include/mlir/Conversion/ShapeToSCF/ShapeToSCF.h |
 | mlir/lib/Conversion/ShapeToSCF/ShapeToSCF.cpp |
 | mlir/include/mlir/Conversion/Passes.h |
 | mlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp |
 | mlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir |
 | mlir/test/Conversion/ShapeToSCF/shape-to-scf.mlir |
 | mlir/include/mlir/Conversion/Passes.td |
Commit
1c849ec40a53ca017a668b957fef333e560b0886
by ntv[MLIR] Fix Win test due to partial order of CHECK directives
Differential Revision: https://reviews.llvm.org/D87230
|
 | mlir/test/Conversion/VectorToSCF/vector-to-loops.mlir |
Commit
3ca8b9a560a249a18b9f6092b96aa7e8e52db5cf
by spatel[InstCombine] give a name to an intermediate value for easier tracking; NFC
As noted in PR47430, we probably want to conditionally include 'nsw' here anyway, so we are going to need to fill out the optional args.
|
 | llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp |
 | llvm/test/Transforms/InstCombine/sub.ll |
Commit
28aa60aae25b7e46804deae909b29b66c1b41d95
by spatel[InstCombine] add test with more unreachable insts; NFC
Goes with D87149
|
 | llvm/test/Transforms/InstCombine/assume.ll |
Commit
79ea83e104e368ef0f520f1bfa74c15d91baef93
by simon.wallis2[SelectionDAG] memcpy expansion of const volatile struct ignores const zero
In getMemcpyLoadsAndStores(), a memcpy where the source is a zero constant is expanded to a MemOp::Set instead of a MemOp::Copy, even when the memcpy is volatile. This is incorrect.
The fix is to add a check for volatile, and expand to MemOp::Copy in the volatile case.
Reviewed By: chill
Differential Revision: https://reviews.llvm.org/D87134
|
 | llvm/test/CodeGen/ARM/memcpy-const-vol-struct.ll |
 | llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp |
Commit
a8a91533dd65041ced68ed5b9348b5d023837488
by llvm-dev[X86] Replace EmitX86AddSubSatExpr with EmitX86BinaryIntrinsic generic helper. NFCI.
Feed the Intrinsic::ID value directly instead of via the IsSigned/IsAddition bool flags.
|
 | clang/lib/CodeGen/CGBuiltin.cpp |
Commit
6670f5d1e66563ad482576d9db4b8393539ab53b
by llvm-devMachineStableHash.h - remove MachineInstr.h include. NFC.
Use forward declarations and move the include to MachineStableHash.cpp
|
 | llvm/include/llvm/CodeGen/MachineStableHash.h |
 | llvm/lib/CodeGen/MachineStableHash.cpp |
Commit
dbb81881955d641bc873442e75874a5cb160f4ee
by grimar[llvm-readobj/elf] - Generalize the code for printing dynamic relocations. NFCI.
Currently we have 2 large `printDynamicRelocations` methods that have a very similar code for GNU/LLVM styles.
This patch removes the duplication and renames them to `printDynamicReloc` for consistency.
Differential revision: https://reviews.llvm.org/D87087
|
 | llvm/tools/llvm-readobj/ELFDumper.cpp |
Commit
973800dc7cbe28a98030293e77afa8ea0343c37d
by david.trubyRevert "[MLIR][Shape] Merge `shape` to `std`/`scf` lowerings."
This reverts commit 15acdd75439b402e993ebe0dbf8eb02e9b88bbdc.
|
 | mlir/test/Conversion/ShapeToSCF/shape-to-scf.mlir |
 | mlir/lib/Conversion/ShapeToSCF/CMakeLists.txt |
 | mlir/include/mlir/Conversion/ShapeToSCF/ShapeToSCF.h |
 | mlir/include/mlir/Conversion/Passes.td |
 | mlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp |
 | mlir/include/mlir/Conversion/Passes.h |
 | mlir/lib/Conversion/ShapeToSCF/ShapeToSCF.cpp |
 | mlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir |
Commit
23f700c785a141355fa6d022552aafc73135bf5d
by Raphael IsemannRevert "[clang] Prevent that Decl::dump on a CXXRecordDecl deserialises further declarations."
This reverts commit 0478720157f6413fad7595b8eff9c70d2d99b637. This probably doesn't work when forcing deserialising while dumping (which the ASTDumper optionally supports).
|
 | clang/unittests/AST/ASTDumpTest.cpp |
 | clang/unittests/AST/CMakeLists.txt |
 | clang/test/AST/ast-dump-lambda.cpp |
 | clang/lib/AST/TextNodeDumper.cpp |
 | clang/test/AST/ast-dump-records.cpp |
Commit
bb73fcfd0708d8f145060afa461d96f98f0e5f27
by llvmgnsyncbot[gn build] Port 23f700c785a
|
 | llvm/utils/gn/secondary/clang/unittests/AST/BUILD.gn |
Commit
2853ae3c1b8174e3660424ffac45922601f700ee
by llvm-dev[X86] Update SSE/AVX ABS intrinsics to emit llvm.abs.* (PR46851)
We're now getting close to having the necessary analysis/combines etc. for the new generic llvm.abs.* intrinsics.
This patch updates the SSE/AVX ABS vector intrinsics to emit the generic equivalents instead of the icmp+sub+select code pattern.
Differential Revision: https://reviews.llvm.org/D87101
|
 | clang/test/CodeGen/avx512vl-builtins.c |
 | clang/test/CodeGen/avx512f-builtins.c |
 | clang/lib/CodeGen/CGBuiltin.cpp |
 | clang/test/CodeGen/ssse3-builtins.c |
 | clang/test/CodeGen/avx512vlbw-builtins.c |
 | clang/test/CodeGen/avx2-builtins.c |
 | llvm/test/CodeGen/X86/ssse3-intrinsics-fast-isel.ll |
 | clang/test/CodeGen/avx512bw-builtins.c |
 | llvm/test/CodeGen/X86/avx2-intrinsics-fast-isel.ll |
Commit
f6db681a78994dd7eb7da62da73754d1321085b3
by llvm-dev[X86][SSE] Move llvm.x86.ssse3.pabs.*.128 intrinsics to ssse3-intrinsics-x86-upgrade.ll
These have been auto upgraded for some time so this is just a tidyup.
|
 | llvm/test/CodeGen/X86/ssse3-intrinsics-x86.ll |
 | llvm/test/CodeGen/X86/ssse3-intrinsics-x86-upgrade.ll |
Commit
6b954f1b79605e4139157ce064fe695c86a0f06a
by raul.tambre[KillTheDoctor/CMake] Add missing keyword PRIVATE in target_link_libraries
Add PRIVATE keyword in target_link_libraries to prevent CMake Error on Windows.
While trying to compile llvm/clang on Windows, the following CMake error occurred. The reason is a missing PUBLIC/PRIVATE/INTERFACE keyword in target_link_libraries.
` CMake Error at utils/KillTheDoctor/CMakeLists.txt:5 (target_link_libraries): The keyword signature for target_link_libraries has already been used with the target "KillTheDoctor". All uses of target_link_libraries with a target must be either all-keyword or all-plain.
The uses of the keyword signature are here:
* cmake/modules/AddLLVM.cmake:771 (target_link_libraries) `
Reviewed By: tambre
Differential Revision: https://reviews.llvm.org/D87203
|
 | llvm/utils/KillTheDoctor/CMakeLists.txt |
Commit
4368739941eb1336197dde0e92eb23ce79739ac7
by grimar[llvm-readobj] - Remove code duplication when printing dynamic relocations. NFCI.
LLVM style code can be simplified to avoid the duplication of logic related to printing dynamic relocations.
Differential revision: https://reviews.llvm.org/D87089
|
 | llvm/tools/llvm-readobj/ELFDumper.cpp |
Commit
a5046f7acece0085cb6f457da7ebca34d267155a
by esme.yi[NFC][PowerPC] Add tests in constants-i64.ll.
|
 | llvm/test/CodeGen/PowerPC/constants-i64.ll |
Commit
1e1a4a481987f77fe3e6debc015c1d07af249258
by zinenko[mlir] Take ValueRange instead of ArrayRef<Value> in StructuredIndexed
This was likely overlooked when ValueRange was first introduced. There is no reason why StructuredIndexed needs specifically an ArrayRef so use ValueRange for better type compatibility with the rest of the APIs.
Reviewed By: nicolasvasilache, mehdi_amini
Differential Revision: https://reviews.llvm.org/D87127
|
 | mlir/include/mlir/EDSC/Builders.h |
Commit
4b530f75199d9b5e7ee1f4e86e1513a83b4b86cb
by llvm-dev[X86][SSE] Use llvm.abs.* vector intrinsics instead of old (deprecated) SSE/AVX intrinsics for combine tests
This also allows us to extend testing to SSE2+ targets
|
 | llvm/test/CodeGen/X86/combine-abs.ll |
Commit
96e0f34be797ab8bb80526367009495a7eb2118f
by llvm-dev[X86] Auto upgrade SSE/AVX PABS intrinsics to generic Intrinsic::abs
Minor followup to D87101, we were expanding this to a neg+icmp+select pattern like we were in CGBuiltin
|
 | llvm/lib/IR/AutoUpgrade.cpp |
Commit
288c582fc93956a7464a988a77c9f6d0f79ed65d
by sjoerd.meijerFollow up of rG5f1cad4d296a, slightly reduced test case. NFC.
|
 | llvm/test/CodeGen/ARM/pr45824.ll |