Commit
657aa3a7631b991b25d0292ed73211f824938598
by esme.yi[yaml2obj] Add support for writing the long symbol name.
Summary: This patch, as a follow-up of D95505, adds support for writing the long symbol name by implementing the StringTable. Only XCOFF32 is suppoted now.
Reviewed By: jhenderson, shchenz
Differential Revision: https://reviews.llvm.org/D103455
|
 | llvm/lib/ObjectYAML/XCOFFEmitter.cpp |
 | llvm/test/tools/yaml2obj/XCOFF/long-symbol-name.yaml |
Commit
e37653da1399d846e02897680412139fdcde93ab
by zeratul976[clangd] Type hints for C++14 return type deduction
Differential Revision: https://reviews.llvm.org/D103789
|
 | clang-tools-extra/clangd/unittests/InlayHintTests.cpp |
 | clang-tools-extra/clangd/InlayHints.cpp |
Commit
3f2ff7cc8ca9a5ba28ac2b25e957a706c8f6491c
by mkazantsev[Test] Add some tests showing room for optimization exploiting undef and UB
|
 | llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll |
Commit
7a97cd9da787d560fee397eb598360349734711e
by Pushpinder.Singh[AMDGPU][Libomptarget] Remove redundant functions
There does not seem to be any use of these functions. They just put the value to a local which is never used again.
Reviewed By: JonChesterfield
Differential Revision: https://reviews.llvm.org/D104512
|
 | openmp/libomptarget/plugins/amdgpu/impl/system.cpp |
Commit
80fd5fa5269ce102b3126d2de49970e3af6719d5
by mahesha.comp[AMDGPU] Replace non-kernel function uses of LDS globals by pointers.
The main motivation behind pointer replacement of LDS use within non-kernel functions is - to *avoid* subsequent LDS lowering pass from directly packing LDS (assume large LDS) into a struct type which would otherwise cause allocating huge memory for struct instance within every kernel.
Reviewed By: rampitec
Differential Revision: https://reviews.llvm.org/D103225
|
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-use-multiple-lds.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-call-diamond-shape.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-indirect-call-signature-match.ll |
 | llvm/lib/Target/AMDGPU/Utils/AMDGPULDSUtils.h |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-ignore-small-lds.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-use-within-phi-inst.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-ignore-global-scope-use.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-indirect-call-diamond-shape.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-call-selected_functions.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-ignore-kernel-only-used-lds.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-use-same-lds.ll |
 | llvm/lib/Target/AMDGPU/AMDGPUReplaceLDSUseWithPointer.cpp |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-use-within-const-expr2.ll |
 | llvm/lib/Target/AMDGPU/CMakeLists.txt |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-ignore-inline-asm-call.ll |
 | llvm/lib/Target/AMDGPU/AMDGPU.h |
 | llvm/lib/Target/AMDGPU/Utils/AMDGPULDSUtils.cpp |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-lds-offsets.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-use-within-const-expr1.ll |
 | llvm/test/CodeGen/AMDGPU/llc-pipeline.ll |
 | llvm/lib/Target/AMDGPU/AMDGPULowerModuleLDSPass.cpp |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-indirect-call-selected_functions.ll |
 | llvm/test/CodeGen/AMDGPU/replace-lds-by-ptr-ignore-not-reachable-lds.ll |
Commit
b746a8db84ba28bcd54982655ff4e2762016bcda
by llvmgnsyncbot[gn build] Port 80fd5fa5269c
|
 | llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn |
Commit
e04533d38a5e7524593001118054efb48dea2b34
by nicolas.vasilache[mlir][Linalg] Introduce a BufferizationAliasInfo (6/n)
This revision adds a BufferizationAliasInfo which maintains and updates information about which tensors will alias once bufferized, which bufferized tensors are equivalent to others and how to handle clobbers.
Bufferization greedily tries to bufferize inplace by:
1. first trying to bufferize SubTensorInsertOp inplace, in reverse order (these are deemed the most expensives). 2. then trying to bufferize all non SubTensorOp / SubTensorInsertOp, in reverse order. 3. lastly trying to bufferize all SubTensorOp in reverse order.
Reverse order is a heuristic that seems to work nicely because structured tensor codegen very often proceeds by:
1. take a subset of a tensor 2. compute on that subset 3. insert the result subset into the full tensor and yield a new tensor.
BufferizationAliasInfo + equivalence sets + clobber analysis allows bufferizing nested subtensor/compute/subtensor_insert sequences inplace to a certain extent. To fully realize inplace bufferization, additional container-containee analysis will be necessary and is left for a subsequent commit.
Differential revision: https://reviews.llvm.org/D104110
|
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize.mlir |
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize-analysis.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
11e9a72dfc83bd4d6ffecd4b84b57238ee87f1f4
by nicolas.vasilache[mlir][Linalg] NFC - Drop unused variable definition.
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
208332de8abf126b6fb5590bea47cd12257bc064
by ruiling.song[AMDGPU] Add Optimize VGPR LiveRange Pass.
This pass aims to optimize VGPR live-range in a typical divergent if-else control flow. For example:
def(a) if(cond) use(a) ... // A else use(a)
As AMDGPU access vgpr with respect to active-mask, we can mark `a` as dead in region A. For details, please refer to the comments in implementation file.
The pass is enabled by default, the frontend can disable it through "-amdgpu-opt-vgpr-liverange=false".
Differential Revision: https://reviews.llvm.org/D102212
|
 | llvm/test/CodeGen/AMDGPU/GlobalISel/udiv.i64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/sdiv.i64.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/srem.i64.ll |
 | llvm/test/CodeGen/AMDGPU/llc-pipeline.ll |
 | llvm/lib/Target/AMDGPU/AMDGPU.h |
 | llvm/test/CodeGen/AMDGPU/vgpr-liverange.ll |
 | llvm/test/CodeGen/AMDGPU/vgpr-liverange-ir.ll |
 | llvm/test/CodeGen/AMDGPU/skip-if-dead.ll |
 | llvm/test/CodeGen/AMDGPU/GlobalISel/urem.i64.ll |
 | llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp |
 | llvm/test/CodeGen/AMDGPU/sgpr-control-flow.ll |
 | llvm/lib/Target/AMDGPU/CMakeLists.txt |
 | llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp |
 | llvm/test/CodeGen/AMDGPU/bypass-div.ll |
 | llvm/test/CodeGen/AMDGPU/collapse-endcf.ll |
Commit
808ac8d5954f5d5cf160fcdd713fdf18cbda16dd
by llvmgnsyncbot[gn build] Port 208332de8abf
|
 | llvm/utils/gn/secondary/llvm/lib/Target/AMDGPU/BUILD.gn |
Commit
225b960cfcc6091e0d51671f446cce7e00d41756
by springerm[mlir][linalg] Support low padding in subtensor(pad_tensor) lowering
Differential Revision: https://reviews.llvm.org/D104591
|
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp |
 | mlir/test/Dialect/Linalg/subtensor-of-padtensor.mlir |
Commit
342bbb7832b69cc2adba9acaac0ed2b9bffbe896
by sjoerd.meijer[FuncSpec] Don't specialise functions with NoDuplicate instructions.
getSpecializationCost was returning INT_MAX for a case when specialisation shouldn't happen, but this wasn't properly checked if specialisation was forced.
Differential Revision: https://reviews.llvm.org/D104461
|
 | llvm/test/Transforms/FunctionSpecialization/function-specialization-nodup2.ll |
 | llvm/lib/Transforms/IPO/FunctionSpecialization.cpp |
Commit
c038845f58a84f03c88a03ab6a59014b3d6c180b
by aqjune[InstCombine] Fold icmp (select c,const,arg), null if icmp arg, null can be simplified
This patch folds icmp (select c,const,arg), null if icmp arg, null can be simplified.
Resolves llvm.org/pr48975.
Reviewed By: nikic, xbolva00
Differential Revision: https://reviews.llvm.org/D96663
|
 | llvm/test/Transforms/InstCombine/assume-icmp-null-select.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp |
Commit
00a88a81d2adcac1f39bc2581c54302aabb1d1dd
by nikita.ppv[Mem2Reg] Regenerate test checks (NFC)
|
 | llvm/test/Transforms/Mem2Reg/pr37632-unreachable-list-of-stores.ll |
Commit
80e0424b2ce9489bec73dbd3b920c4543a25feb1
by nikita.ppv[Mem2Reg] Use poison for unreachable cases
Use poison instead of undef for cases dealing with unreachable code. This still leaves the more interesting case of "load from uninitialized memory" as undef.
|
 | llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp |
 | llvm/test/Transforms/Mem2Reg/pr37632-unreachable-list-of-stores.ll |
Commit
66f878cee91047162e7913cf9533e5313988175a
by springerm[mlir][NFC] Remove Standard dialect dependency on MemRef dialect
* Remove dependency: Standard --> MemRef * Add dependencies: GPUToNVVMTransforms --> MemRef, Linalg --> MemRef, MemRef --> Tensor * Note: The `subtensor_insert_propagate_dest_cast` test case in MemRef/canonicalize.mlir will be moved to Tensor/canonicalize.mlir in a subsequent commit, which moves over the remaining Tensor ops from the Standard dialect to the Tensor dialect.
Differential Revision: https://reviews.llvm.org/D104506
|
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgBase.td |
 | mlir/lib/Conversion/VectorToSCF/VectorToSCF.cpp |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgTypes.h |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.h |
 | mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/lib/Dialect/SparseTensor/Transforms/Sparsification.cpp |
 | mlir/test/Dialect/Standard/canonicalize.mlir |
 | mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp |
 | mlir/lib/Dialect/Shape/Transforms/Bufferize.cpp |
 | mlir/lib/Dialect/SCF/Transforms/Bufferize.cpp |
 | mlir/include/mlir/Dialect/MemRef/IR/MemRef.h |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.h |
 | mlir/test/Dialect/MemRef/canonicalize.mlir |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
 | mlir/include/mlir/Dialect/MemRef/IR/MemRefBase.td |
 | mlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
Commit
acefe0eaaf82c1d31a8d12e15751118eb40fe637
by nikita.ppv[Mem2Reg] Regenerate test checks (NFC)
|
 | llvm/test/Transforms/Mem2Reg/debug-alloca-vla-2.ll |
 | llvm/test/Transforms/SROA/pr37267.ll |
 | llvm/test/Transforms/Mem2Reg/undef-order.ll |
 | llvm/test/Transforms/Mem2Reg/debug-alloca-vla-1.ll |
 | llvm/test/Transforms/Mem2Reg/pr24179.ll |
 | llvm/test/Transforms/SROA/phi-and-select.ll |
Commit
bbd7424402c74b6a84c047657554ff7967da0e85
by sebastian.neubauer[AMDGPU] Fix linking with shared libraries
AMDGPULDSUtils depends on llvm::CallGraph.
|
 | llvm/lib/Target/AMDGPU/Utils/CMakeLists.txt |
Commit
12ae3cb7ba5399b99c02e8a73c681192259e188f
by david.spickett[lldb] Assert that CommandResultObject error messages are not empty
The intention is now that AppendError/SetError/AppendRawError only be called with some message to show. This enforces that.
For SetError with a Status and a fallback string first assert that the Status is a failure Status. Then it calls SetError(StringRef) which checks the message is valid. (which could be the fallback or the Status')
Reviewed By: dblaikie
Differential Revision: https://reviews.llvm.org/D104525
|
 | lldb/source/Interpreter/CommandReturnObject.cpp |
Commit
983972bfb0f9c55e85a1d352b55918a328f72380
by fraser[VP][NFCI] Address various clang-tidy warnings
Reviewed By: simoll
Differential Revision: https://reviews.llvm.org/D104288
|
 | llvm/lib/IR/IntrinsicInst.cpp |
 | llvm/unittests/IR/VPIntrinsicTest.cpp |
Commit
596989da6595e18c15ac18f6c3ff838cf048b068
by benny.kra[mlir][Linalg] Silence warnings in Release builds. NFC.
mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp:940:8: warning: unused variable 'opProducesRootRead' [-Wunused-variable] bool opProducesRootRead = ^ mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp:942:8: warning: unused variable 'opProducesRootWrite' [-Wunused-variable] bool opProducesRootWrite = ^ mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp:1498:11: warning: unused variable 'resultNumber' [-Wunused-variable] int64_t resultNumber = result.getResultNumber(); ^ mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp:1497:11: warning: unused variable 'operandNumber' [-Wunused-variable] int64_t operandNumber = operand.getOperandNumber(); ^ mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp:267:20: warning: unused function 'getInPlace' [-Wunused-function] static InPlaceSpec getInPlace(Value v) { ^
|
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
Commit
b650778dc4acbab8a5415e743604a2a0afabea3d
by rupprecht[NFC] Wrap entire assert-only block in LLVM_DEBUG
|
 | llvm/lib/Target/AMDGPU/SIOptimizeVGPRLiveRange.cpp |
Commit
628e136738823c3f69f4d0fb406c78f017009d1e
by vlad.vinogradov[mlir][ODS] Fix copy ctor for generate Pass classes
Redirect the copy ctor to the actual class instead of overwriting it with `TypeID` based ctor.
This allows the final Pass classes to have extra fields and logic for their copy.
Reviewed By: lattner
Differential Revision: https://reviews.llvm.org/D104302
|
 | mlir/tools/mlir-tblgen/PassGen.cpp |
 | mlir/unittests/TableGen/CMakeLists.txt |
 | mlir/include/mlir/Pass/Pass.h |
 | mlir/unittests/TableGen/PassGenTest.cpp |
 | mlir/unittests/TableGen/passes.td |
Commit
05bb969014d64611721cd30e4d890f626820ec76
by flo[LoopIdiom] Add test case that involves adds with flags and zero exts.
Test coverage to ensure D104319 does not introduce a regression here.
|
 | llvm/test/Transforms/LoopIdiom/X86/memset-size-compute.ll |
Commit
7f20e6ae3229664f866149a4e0739a426b6fa463
by Raphael Isemann[lldb][NFC] Remove redundant deleted constructors in HostInfoBase subclasses
HostInfoBase has a deleted dtor/ctor so there is no need to do the same for all the classes inheriting from it.
Reviewed By: DavidSpickett, JDevlieghere
Differential Revision: https://reviews.llvm.org/D104221
|
 | lldb/include/lldb/Host/windows/HostInfoWindows.h |
 | lldb/include/lldb/Host/macosx/HostInfoMacOSX.h |
 | lldb/include/lldb/Host/linux/HostInfoLinux.h |
Commit
325b6707942dc295a0d7fc9bc23a8242d7a3824f
by bradley.smith[Sema][SVE] Properly match builtin ID when using aux target
Differential Revision: https://reviews.llvm.org/D104539
|
 | clang/lib/Sema/SemaDeclAttr.cpp |
 | clang/test/Sema/aarch64-sve-alias-attribute.c |
Commit
9e7329e37edee0b4e6e212c90c76014a09dc6d90
by bradley.smith[AArch64][SVE] Wire up vscale_range attribute to SVE min/max vector queries
Differential Revision: https://reviews.llvm.org/D103702
|
 | llvm/lib/Target/AArch64/AArch64Subtarget.h |
 | llvm/lib/Target/AArch64/AArch64TargetMachine.cpp |
 | clang/test/CodeGen/aarch64-sve-vector-bits-codegen.c |
 | llvm/test/CodeGen/AArch64/sve-vscale-attr.ll |
 | llvm/lib/Target/AArch64/AArch64Subtarget.cpp |
|
 | llvm/include/llvm/CodeGen/LiveIntervalCalc.h |
Commit
bbe16b7af2d66d2abcf75ad72af6155d4da964cb
by samuel.tebbs[ARM] Transform a fixed-point to floating-point conversion into a VCVT_fix
Conversion from a fixed-point number to a floating-point number is done by multiplying the fixed-point number by 2^(-n) where n is the number of fractional bits. Currently this is lowered to a vcvt (integer to floating-point) then a vmul, but it can instead be lowered directly to a vcvt (fixed-point to floating-point). This patch enables such transformations as long as the multiplication factor is a power of 2.
Differential Revision: https://reviews.llvm.org/D103903
|
 | llvm/test/CodeGen/Thumb2/mve-vcvt-fixed.ll |
 | llvm/lib/Target/ARM/ARMISelDAGToDAG.cpp |
Commit
3063a5472266f05add4e5b85f34141ba2e66fa2e
by hans[clang-cl] Implement /external:I, /external:env, and EXTERNAL_INCLUDE support (PR36003)
This patch does three things:
- Map the /external:I flag to -isystem
- Add support for the /external:env:<var> flag which reads system include paths from the <var> environment variable
- Pick up system include dirs EXTERNAL_INCLUDE in addition to the old INCLUDE environment variable.
Differential revision: https://reviews.llvm.org/D104387
|
 | clang/lib/Driver/ToolChains/MSVC.cpp |
 | clang/test/Driver/cl-options.c |
 | clang/test/Driver/cl-include.c |
 | clang/include/clang/Driver/Options.td |
Commit
aad9e48c5fc778bf2e0d622d55f295d847ae66a1
by vyacheslav.p.zakharin[NFC][libomptarget] Remove redundant libelf dependency for elf_common.
Differential Revision: https://reviews.llvm.org/D104549
|
 | openmp/libomptarget/plugins/common/elf_common/CMakeLists.txt |
Commit
071dbaec875926a9ce03f82446096bfc28eb3c02
by sjoerd.meijer[FuncSpec] Add minsize test. NFC.
|
 | llvm/test/Transforms/FunctionSpecialization/function-specialization-minsize.ll |
Commit
ed31ff9c7a9e538ead1fa4feecf09987998621b4
by bradley.smith[AArch64][SVE] Add missing target require to test
Differential revision: https://reviews.llvm.org/D104643
|
 | clang/test/CodeGen/aarch64-sve-vector-bits-codegen.c |
Commit
2e972e366a15b30ab14a743323975297b99a53e4
by pifon[mlir] Remove "getNumPayloadInductionVariables".
This method always returns 0 after https://reviews.llvm.org/rG7cddf56d608f07b8e49f7e2eeb4a20082611adb6
Differential Revision: https://reviews.llvm.org/D104645
|
 | mlir/lib/Dialect/Linalg/IR/LinalgInterfaces.cpp |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td |
Commit
4819cd162e92d44131444cb2b403028c0c5efe0a
by Matthew.ArsenaultAMDGPU: Add missing tests for v_fma_mixlo
|
 | llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll |
Commit
64b2676ca8290c7ff971c6f5b7a355b0ae7693de
by spatel[InstCombine] fold ctlz/cttz-of-select with 1 or more constant arms
Building on: 4c44b02d87 ...and adding handling for the extra operand in these intrinsics.
This pattern is discussed in: https://llvm.org/PR50140
|
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
 | llvm/lib/Transforms/InstCombine/InstructionCombining.cpp |
 | llvm/test/Transforms/InstCombine/intrinsic-select.ll |
Commit
83bf801f5f266c788f025a3efbb0c83817137c3b
by springerm[mlir][NFC] Move SubTensorOp and SubTensorInsertOp to TensorDialect
The main goal of this commit is to remove the dependency of Standard dialect on the Tensor dialect.
* Rename ops: SubTensorOp --> ExtractTensorOp, SubTensorInsertOp --> InsertTensorOp * Some helper functions are (already) duplicated between the Tensor dialect and the MemRef dialect. To keep this commit smaller, this will be cleaned up in a separate commit. * Additional dialect dependencies: Shape --> Tensor, Tensor --> Standard * Remove dialect dependencies: Standard --> Tensor * Move canonicalization test cases to correct dialect (Tensor/MemRef).
Differential Revision: https://reviews.llvm.org/D104499
|
 | mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
 | mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td |
 | mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td |
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp |
 | mlir/test/Dialect/Linalg/tile-and-distribute.mlir |
 | mlir/test/Conversion/TosaToStandard/tosa-to-standard.mlir |
 | mlir/test/Dialect/Tensor/canonicalize.mlir |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/test/Dialect/Linalg/canonicalize.mlir |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.h |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h |
 | mlir/include/mlir/Dialect/Shape/IR/Shape.h |
 | mlir/lib/Conversion/TosaToStandard/TosaToStandardPass.cpp |
 | mlir/test/Dialect/Standard/canonicalize.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp |
 | mlir/include/mlir/Dialect/Shape/IR/ShapeBase.td |
 | mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td |
 | mlir/test/Dialect/Linalg/fusion-tensor-pattern.mlir |
 | mlir/test/Dialect/Linalg/subtensor-of-padtensor.mlir |
 | mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir |
 | mlir/test/Dialect/SCF/canonicalize.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp |
 | mlir/test/Dialect/Linalg/tile-tensors.mlir |
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/include/mlir/Dialect/Tensor/IR/Tensor.h |
 | mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp |
 | mlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/lib/Dialect/Tensor/IR/TensorOps.cpp |
 | mlir/lib/Conversion/TosaToStandard/TosaToStandard.cpp |
 | mlir/test/Dialect/Linalg/bufferize.mlir |
 | mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
 | mlir/test/Dialect/MemRef/canonicalize.mlir |
 | mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir |
 | mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert.mlir |
 | mlir/test/Dialect/Linalg/fusion-sequence.mlir |
 | mlir/test/IR/core-ops.mlir |
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize-analysis.mlir |
 | mlir/test/Transforms/canonicalize.mlir |
 | mlir/test/Dialect/Linalg/tile-and-fuse-tensors.mlir |
 | mlir/test/Dialect/Linalg/hoisting.mlir |
 | mlir/test/Dialect/Linalg/hoist-padding.mlir |
 | mlir/test/Dialect/Linalg/roundtrip.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp |
 | mlir/test/Dialect/Linalg/tile-and-pad-tensors.mlir |
 | mlir/include/mlir/Conversion/Passes.td |
 | mlir/test/Dialect/Linalg/vectorization.mlir |
 | mlir/test/IR/invalid-ops.mlir |
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize.mlir |
Commit
eab1fd389b61d236bf8df4d09f62dd18253a10bc
by vlad.vinogradov[omp] Fix build without ITT after D103121 changes
Reviewed By: AndreyChurbanov
Differential Revision: https://reviews.llvm.org/D104638
|
 | openmp/runtime/src/kmp_wait_release.h |
 | openmp/runtime/src/kmp_barrier.cpp |
Commit
5958dc75ced482228ae4489df1eb5e255e04e5eb
by hansTry to fix clang/test/Driver/cl-include.c failure
Somewhat speculative. Example failures: https://lab.llvm.org/buildbot/#/builders/5/builds/8857/steps/9/logs/stdio https://lab.llvm.org/buildbot/#/builders/123/builds/4621/steps/8/logs/stdio
|
 | clang/lib/Driver/ToolChains/MSVC.cpp |
Commit
a4273905583559b613e1f23336978007af5849be
by anton.zabaznov[OpenCL] Add support of __opencl_c_images feature macro
Reviewed By: svenvh
Differential Revision: https://reviews.llvm.org/D103911
|
 | clang/test/SemaOpenCL/unsupported-image.cl |
 | clang/lib/Sema/SemaType.cpp |
Commit
2251f33bef387572419679701c69e833a4a4567f
by rosie.sumpter[SLP][AArch64] Add SLP vectorizer regression test. NFC
This test is for a missed SLP vectorizer opportunity, reported here https://bugs.llvm.org/show_bug.cgi?id=44593. This is due to a cost modelling issue with vector reduction intrinsics which will be fixed in a future commit (see https://reviews.llvm.org/D104538).
|
 | llvm/test/Transforms/SLPVectorizer/AArch64/slp-or-reduction.ll |
Commit
198b79caae4ff01f146e311d2db14bfe13f098ad
by spatel[InstCombine] move bitmanipulation-of-select folds
This is no outwardly-visible-difference-intended, but it is obviously better to have all transforms for an intrinsic housed together since we already have helper functions in place.
It is also potentially more efficient to zap a simple pattern match before trying to do expensive computeKnownBits() calls.
|
 | llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp |
Commit
c02160c17b7fc770e57d5b065d8d28a7b2416443
by fanbo.meng[libc++] Remove unused variable
Removing `__current` as it becomes unused-but-set after 2cf78d4ead4a2ab5375bd6087724211d04119a28.
Reviewed By: ldionne, abhina.sreeskantharajan, #libc
Differential Revision: https://reviews.llvm.org/D104544
|
 | libcxx/include/regex |
Commit
186f2ac612ad3cd551dee649e3097f4284774ba0
by Yaxun.Liu[HIP] Add support functions for C++ polymorphic types
Add runtime functions to detect invalid calls to pure or deleted virtual functions.
Patch by: Siu Chi Chan
Reviewed by: Yaxun Liu
Differential Revision: https://reviews.llvm.org/D104392
|
 | clang/lib/Headers/__clang_hip_runtime_wrapper.h |
 | clang/test/Headers/hip-header.hip |
Commit
96994427f2426e895c301be4e6002dc0ba3c4890
by hgrevingRegisterCoalescer: Fix iterating through use operands.
Fixes a minor bug when trying to iterate through use operands when updating debug use operands.
Extends a test to include above.
Differential Revision: https://reviews.llvm.org/D104576
|
 | llvm/lib/CodeGen/RegisterCoalescer.cpp |
 | llvm/test/DebugInfo/MIR/X86/regcoalescer.mir |
Commit
0a2d4f3f24a377dc7d3cbed16d30603dc27554a8
by Raphael Isemann[lldb] Enable Rust v0 symbol demangling
Rust's v0 name mangling scheme [1] is easy to disambiguate from other name mangling schemes because symbols always start with `_R`. The llvm Demangle library supports demangling the Rust v0 scheme. Use it to demangle Rust symbols.
Added unit tests that check simple symbols. Ran LLDB built with this patch to debug some Rust programs compiled with the v0 name mangling scheme. Confirmed symbol names were demangled as expected.
Note: enabling the new name mangling scheme requires a nightly toolchain:
``` $ cat main.rs fn main() { println!("Hello world!"); } $ $(rustup which --toolchain nightly rustc) -Z symbol-mangling-version=v0 main.rs -g $ /home/asm/hacking/llvm/build/bin/lldb ./main --one-line 'b main.rs:2' (lldb) target create "./main" Current executable set to '/home/asm/hacking/llvm/rust/main' (x86_64). (lldb) b main.rs:2 Breakpoint 1: where = main`main::main + 4 at main.rs:2:5, address = 0x00000000000076a4 (lldb) r Process 948449 launched: '/home/asm/hacking/llvm/rust/main' (x86_64) warning: (x86_64) /lib64/libgcc_s.so.1 No LZMA support found for reading .gnu_debugdata section Process 948449 stopped * thread #1, name = 'main', stop reason = breakpoint 1.1 frame #0: 0x000055555555b6a4 main`main::main at main.rs:2:5 1 fn main() { -> 2 println!("Hello world!"); 3 } (lldb) bt error: need to add support for DW_TAG_base_type '()' encoded with DW_ATE = 0x7, bit_size = 0 * thread #1, name = 'main', stop reason = breakpoint 1.1 * frame #0: 0x000055555555b6a4 main`main::main at main.rs:2:5 frame #1: 0x000055555555b78b main`<fn() as core::ops::function::FnOnce<()>>::call_once((null)=(main`main::main at main.rs:1), (null)=<unavailable>) at function.rs:227:5 frame #2: 0x000055555555b66e main`std::sys_common::backtrace::__rust_begin_short_backtrace::<fn(), ()>(f=(main`main::main at main.rs:1)) at backtrace.rs:125:18 frame #3: 0x000055555555b851 main`std::rt::lang_start::<()>::{closure#0} at rt.rs:49:18 frame #4: 0x000055555556c9f9 main`std::rt::lang_start_internal::hc51399759a90501a [inlined] core::ops::function::impls::_$LT$impl$u20$core..ops..function..FnOnce$LT$A$GT$$u20$for$u20$$RF$F$GT$::call_once::h04259e4a34d07c2f at function.rs:259:13 frame #5: 0x000055555556c9f2 main`std::rt::lang_start_internal::hc51399759a90501a [inlined] std::panicking::try::do_call::hb8da45704d5cfbbf at panicking.rs:401:40 frame #6: 0x000055555556c9f2 main`std::rt::lang_start_internal::hc51399759a90501a [inlined] std::panicking::try::h4beadc19a78fec52 at panicking.rs:365:19 frame #7: 0x000055555556c9f2 main`std::rt::lang_start_internal::hc51399759a90501a [inlined] std::panic::catch_unwind::hc58016cd36ba81a4 at panic.rs:433:14 frame #8: 0x000055555556c9f2 main`std::rt::lang_start_internal::hc51399759a90501a at rt.rs:34:21 frame #9: 0x000055555555b830 main`std::rt::lang_start::<()>(main=(main`main::main at main.rs:1), argc=1, argv=0x00007fffffffcb18) at rt.rs:48:5 frame #10: 0x000055555555b6fc main`main + 28 frame #11: 0x00007ffff73f2493 libc.so.6`__libc_start_main + 243 frame #12: 0x000055555555b59e main`_start + 46 (lldb) ```
[1]: https://github.com/rust-lang/rust/issues/60705
Reviewed By: clayborg, teemperor
Differential Revision: https://reviews.llvm.org/D104054
|
 | lldb/source/Core/Mangled.cpp |
 | lldb/include/lldb/Core/Mangled.h |
 | lldb/source/Symbol/Symtab.cpp |
 | lldb/unittests/Core/MangledTest.cpp |
Commit
9f779195d311c983031271d0243d6e6af988ce55
by nikita.ppv[OpaquePtr] Return opaque pointer from opaque pointer GEP
For a GEP on an opaque pointer, also return an opaque pointer (or vector of opaque pointer) result.
This requires explicitly enumerating the GEP source element type, because it is now no longer implicitly enumerated as part of either the source or result pointer types.
Differential Revision: https://reviews.llvm.org/D104652
|
 | llvm/include/llvm/IR/Instructions.h |
 | llvm/lib/Bitcode/Writer/ValueEnumerator.cpp |
 | llvm/test/Assembler/opaque-ptr.ll |
Commit
60d97fb4cfa6164919f5ef5222b2afdd0ee04b1c
by joker.ephRevert "[mlir][NFC] Move SubTensorOp and SubTensorInsertOp to TensorDialect"
This reverts commit 83bf801f5f266c788f025a3efbb0c83817137c3b.
This breaks the build with -DBUILD_SHARED_LIBS=ON
|
 | mlir/test/Dialect/Linalg/hoist-padding.mlir |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.h |
 | mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert.mlir |
 | mlir/test/Dialect/Linalg/hoisting.mlir |
 | mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir |
 | mlir/lib/Conversion/TosaToStandard/TosaToStandardPass.cpp |
 | mlir/test/Dialect/MemRef/canonicalize.mlir |
 | mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td |
 | mlir/include/mlir/Dialect/Shape/IR/Shape.h |
 | mlir/lib/Dialect/Linalg/Transforms/Fusion.cpp |
 | mlir/lib/Dialect/Linalg/Utils/Utils.cpp |
 | mlir/include/mlir/Dialect/StandardOps/IR/Ops.td |
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize-analysis.mlir |
 | mlir/test/Dialect/Standard/canonicalize.mlir |
 | mlir/test/Dialect/Linalg/fusion-sequence.mlir |
 | mlir/lib/Dialect/StandardOps/IR/Ops.cpp |
 | mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp |
 | mlir/test/Dialect/Linalg/fusion-tensor-pattern.mlir |
 | mlir/lib/Dialect/Tensor/IR/TensorOps.cpp |
 | mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgOps.td |
 | mlir/test/Dialect/SCF/canonicalize.mlir |
 | mlir/test/IR/invalid-ops.mlir |
 | mlir/test/Dialect/Linalg/tile-and-fuse-tensors.mlir |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp |
 | mlir/test/Conversion/ShapeToStandard/shape-to-standard.mlir |
 | mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td |
 | mlir/lib/Dialect/Linalg/Transforms/Hoisting.cpp |
 | mlir/test/Transforms/canonicalize.mlir |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h |
 | mlir/test/Dialect/Linalg/subtensor-of-padtensor.mlir |
 | mlir/test/Dialect/Linalg/tile-and-distribute.mlir |
 | mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp |
 | mlir/include/mlir/Dialect/Shape/IR/ShapeBase.td |
 | mlir/test/Conversion/TosaToStandard/tosa-to-standard.mlir |
 | mlir/include/mlir/Conversion/Passes.td |
 | mlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp |
 | mlir/test/Integration/Dialect/Linalg/CPU/test-subtensor-insert-multiple-uses.mlir |
 | mlir/test/Dialect/Linalg/comprehensive-func-bufferize.mlir |
 | mlir/test/Dialect/Linalg/roundtrip.mlir |
 | mlir/test/Dialect/Linalg/tile-tensors.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/Bufferize.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp |
 | mlir/test/IR/core-ops.mlir |
 | mlir/test/Dialect/Linalg/tile-and-pad-tensors.mlir |
 | mlir/test/Dialect/Linalg/vectorization.mlir |
 | mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp |
 | mlir/lib/Conversion/ShapeToStandard/ShapeToStandard.cpp |
 | mlir/include/mlir/Dialect/Tensor/IR/Tensor.h |
 | mlir/test/Dialect/Linalg/bufferize.mlir |
 | mlir/include/mlir/Dialect/Linalg/Utils/Utils.h |
 | mlir/test/Dialect/Tensor/canonicalize.mlir |
 | mlir/lib/Conversion/TosaToStandard/TosaToStandard.cpp |
 | mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp |
 | mlir/test/Dialect/Linalg/canonicalize.mlir |
 | mlir/include/mlir/Dialect/Linalg/Transforms/Hoisting.h |
Commit
503c085e3bcd0a031a363ee89c91b1f1e41bfa4b
by pklausler[flang] Fold more reduction intrinsic function calls
Refactor the recently-implemented MAXVAL/MINVAL folding so that the parts that can be used to implement other reduction transformational intrinsic function folding are exposed.
Use them to implement folding of IALL, IANY, IPARITY, SUM. and PRODUCT. Replace the folding of ALL & ANY to use the new infrastructure and become able to handle DIM= arguments.
Differential Revision: https://reviews.llvm.org/D104562
|
 | flang/lib/Evaluate/fold-real.cpp |
 | flang/lib/Evaluate/fold-character.cpp |
 | flang/lib/Evaluate/fold-logical.cpp |
 | flang/include/flang/Evaluate/real.h |
 | flang/lib/Evaluate/fold-complex.cpp |
 | flang/lib/Evaluate/fold-reduction.h |
 | flang/test/Evaluate/folding20.f90 |
 | flang/lib/Evaluate/fold-integer.cpp |
Commit
f52666985d7011b539f26f54e09a5c89b62dad56
by nathanRevert "[LoopDeletion] Handle Phis with similar inputs from different blocks"
This reverts commit bb1dc876ebb8a2eef38d5183d00c2db1437f1c91.
This patch causes an assertion failure when building an arm64 defconfig Linux kernel.
See https://reviews.llvm.org/D103959 for a link to the original bug report and a reduced reproducer.
|
 | llvm/lib/Transforms/Scalar/LoopDeletion.cpp |
 | llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll |
Commit
f86d1f99b3e9c4819ee0a7b6b785b1ea5feb1627
by jacobhegnaRemove ML inlining model artifacts.
They are not conducive to being stored in git. Instead, we autogenerate mock model artifacts for use in tests. Production models can be specified with the cmake flag LLVM_INLINER_MODEL_PATH.
LLVM_INLINER_MODEL_PATH has two sentinel values: - download, which will download the most recent compatible model. - autogenerate, which will autogenerate a "fake" model for testing the model uptake infrastructure.
Differential Revision: https://reviews.llvm.org/D104251
|
 | llvm/test/Transforms/Inline/ML/bounds-checks-rewards.ll |
 | llvm/lib/Analysis/models/inliner/output_spec.json |
 | llvm/lib/Analysis/models/generate_mock_model.py |
 | llvm/test/Transforms/Inline/ML/ml-test-development-mode.ll |
 | llvm/lib/Analysis/CMakeLists.txt |
 | llvm/lib/Analysis/models/inliner/README.txt |
 | llvm/lib/Analysis/models/inliner/saved_model.pbtxt |
 | llvm/lib/Analysis/models/inliner/variables/variables.data-00000-of-00001 |
 | llvm/cmake/modules/TensorFlowCompile.cmake |
 | llvm/lib/Analysis/models/inlining/config.py |
 | llvm/test/Transforms/Inline/ML/development-training-log.ll |
 | llvm/lib/Analysis/models/inliner/variables/variables.index |
Commit
1265f05c268f09c74a2ecaa3e2b3cea83ec10627
by Raphael Isemann[lldb] Skip TestLimitDebugInfo for Clang<7
Without DW_CC_pass_by_* attributes that Clang 7 started to emit in this test we don't properly read back the return value of the `get_*` functions and just read bogus memory.
See also the TestReturnValue.py test.
|
 | lldb/test/API/functionalities/limit-debug-info/TestLimitDebugInfo.py |
Commit
c197cddb16b3ed0de98f80566f8fc47f78aee64c
by Raphael Isemann[lldb] Add support for escaping zsh arguments
LLDB supports having globbing regexes in the process launch arguments that will be resolved using the user's shell. This requires that we pass the launch args to the shell and then read back the expanded arguments using LLDB's argdumper utility.
As the shell will not just expand the globbing regexes but all special characters, we need to escape all non-globbing charcters such as $, &, <, >, etc. as those otherwise are interpreted and removed in the step where we expand the globbing characters. Also because the special characters are shell-specific, LLDB needs to maintain a list of all the characters that need to be escaped for each specific shell.
This patch adds the list of special characters that need to be escaped for `zsh`. Without this patch on systems where `zsh` is the user's shell (like on all macOS systems) having any of these special characters in your arguments or path to the binary will cause the process launch to fail. E.g., `lldb -- ./calc 1<2` is failing without this patch. The same happens if the absolute path to `calc` is in a directory that contains for example parentheses or other special characters.
Reviewed By: JDevlieghere
Differential Revision: https://reviews.llvm.org/D104627
|
 | lldb/source/Utility/Args.cpp |
 | lldb/unittests/Utility/ArgsTest.cpp |
Commit
28d9fd00d4b5711fb029e3e642e2d81eaf9fd510
by walter erquinigoRevert "[lldb-vscode] attempt to fix flakiness" Revert "[lldb-vscode] only report long running progress events"
This reverts commit f2c009dbcfd11fd1e8941513dcf49fffe43565a1. This reverts commit aa4685c0fb3aab5acb90be5fd3eb5ba8bf1e3211.
|
 | lldb/tools/lldb-vscode/ProgressEvent.cpp |
 | lldb/tools/lldb-vscode/VSCode.h |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
 | lldb/tools/lldb-vscode/ProgressEvent.h |
 | lldb/tools/lldb-vscode/VSCode.cpp |
Commit
0c09e5bd74db90497a272e723213293981633a18
by listmailSplit a test for ease of auto update
|
 | llvm/test/Transforms/LoopVersioning/wrapping-pointer-versioning.ll |
 | llvm/test/Analysis/LoopAccessAnalysis/wrapping-pointer-versioning.ll |
Commit
d9fe96fe264e72c0a5c58cdd40b4efa14d18f475
by nikita.ppv[OpaquePtr] Support opaque constant expression GEP
Adjust assertions to use isOpaqueOrPointeeTypeMatches() and make it return an opaque pointer result for an opaque base pointer. We also need to enumerate the element type, as it is no longer implicitly enumerated through the pointer type.
Differential Revision: https://reviews.llvm.org/D104655
|
 | llvm/lib/Bitcode/Reader/BitcodeReader.cpp |
 | llvm/test/Assembler/opaque-ptr.ll |
 | llvm/lib/Bitcode/Writer/ValueEnumerator.cpp |
 | llvm/lib/IR/Constants.cpp |
 | llvm/lib/AsmParser/LLParser.cpp |
Commit
a969bdc56f66a3c059f6d70e574d11fda8354e2a
by nikita.ppv[InstCombine] Remove unnecessary addres space check (NFC)
It's not possible to bitcast between different address spaces, and this is ensured by the IR verifier. As such, this bitcast to addrspacecast canonicalization can never be hit.
|
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
9080659ac730735c6233153fa2f666015a47b07e
by craig.topper[RISCV] Add isel patterns to match vmacc/vmadd/vnmsub/vnmsac from add/sub and mul.
Reviewed By: frasercrmck
Differential Revision: https://reviews.llvm.org/D104163
|
 | llvm/test/CodeGen/RISCV/rvv/vmulh-sdnode-rv32.ll |
 | llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td |
 | llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll |
 | llvm/test/CodeGen/RISCV/rvv/vrem-sdnode-rv32.ll |
 | llvm/test/CodeGen/RISCV/rvv/vmadd-sdnode.ll |
 | llvm/lib/Target/RISCV/RISCVInstrInfo.cpp |
 | llvm/test/CodeGen/RISCV/rvv/vremu-sdnode-rv32.ll |
 | llvm/test/CodeGen/RISCV/rvv/vremu-sdnode-rv64.ll |
 | llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td |
 | llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td |
 | llvm/test/CodeGen/RISCV/rvv/vnmsub-sdnode.ll |
 | llvm/test/CodeGen/RISCV/rvv/vrem-sdnode-rv64.ll |
Commit
a63d4f6cbab133b0f1ce9afb562546fcc5bb2680
by ndesaulniers[Clang][Codegen] rename no_profile fn attr no_profile_instrument_function
GCC has had this function attribute since GCC 7.1 for this purpose. I added "no_profile" last week in D104475; rename this to "no_profile_instrument_function" to improve compatibility with GCC.
Link: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80223#c11
Reviewed By: MaskRay, aaron.ballman
Differential Revision: https://reviews.llvm.org/D104658
|
 | clang/include/clang/Basic/Attr.td |
 | clang/test/Sema/no_profile_instrument_function-attribute.c |
 | clang/test/CodeGen/no_profile.c |
 | clang/test/Sema/no_profile-attribute.c |
 | clang/include/clang/Basic/AttrDocs.td |
Commit
b2cd98d5fe7ab71415f2a87c741ebf62a7e3ba54
by paulsson[SystemZ] Fix some typos in comments.
|
 | llvm/lib/Target/SystemZ/SystemZISelLowering.cpp |
Commit
ea23c38d0605514f68e33d319a6bdd858381257a
by i[llvm-profdata] Allow omission of -o for --text output
This makes it more convenient to get a text format profile.
Add an error for printing non-text format output to a terminal for instrumentation profile. (It cannot be portably tested. For sample profile, raw_fd_ostream is hidden deeply so it's inconvenient to add a diagnostic.)
Reviewed By: davidxl
Differential Revision: https://reviews.llvm.org/D104600
|
 | llvm/tools/llvm-profdata/llvm-profdata.cpp |
 | llvm/test/tools/llvm-profdata/text-dump.test |
Commit
d9f5d7b959de36085944d4a99a73f3053f953796
by nikita.ppv[InstCombine] Extract bitcast -> gep transform
Move this into a separate function, to make sure that early returns do not accidentally skip other transforms. There is already one isSized() check that could run into this issue, thus this change is not strictly NFC.
|
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
5780611d7e044ef56c4214df2c236ef5e15545ab
by nikita.ppv[InstCombine] Don't try converting opaque pointer bitcast to GEP
Bitcasts having opaque pointer source or result type cannot be converted into a zero-index GEP, GEP source and result types always have the same opaque-ness.
|
 | llvm/test/Transforms/InstCombine/opaque-ptr.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
908b7536615ee8694d949b60716833893c7f7049
by a.bataev[SLP]Improve vectorization of PHI instructions.
Perform better analysis when trying to vectorize PHIs. 1. Do not try to vectorize vector PHIs. 2. Do deeper analysis for more profitable nodes for the vectorization.
Before we just tried to vectorize the PHIs of the same type. Patch improves this and tries to vectorize PHIs with incoming values which come from the same basic block, have the same and/or alternative opcodes.
It allows to save the compile time and provides better vectorization results in general.
Part of D57059.
Differential Revision: https://reviews.llvm.org/D103638
|
 | llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp |
 | llvm/test/Transforms/SLPVectorizer/slp-max-phi-size.ll |
Commit
862313cf59eef22023cc8c5d93bd368e661791d1
by nikita.ppv[LoopUnroll] Don't modify TripCount/TripMultiple in computeUnrollCount() (NFCI)
As these are no longer passed to UnrollLoop(), there is no need to modify them in computeUnrollCount(). Make them non-reference parameters.
Differential Revision: https://reviews.llvm.org/D104590
|
 | llvm/include/llvm/Transforms/Utils/UnrollLoop.h |
 | llvm/lib/Transforms/Scalar/LoopUnrollPass.cpp |
Commit
6922ab73a5a5b0d6a65f0b8796e5fae4345dbbd9
by nikita.ppvRevert "[InstCombine] Extract bitcast -> gep transform"
This reverts commit d9f5d7b959de36085944d4a99a73f3053f953796. This reverts commit 5780611d7e044ef56c4214df2c236ef5e15545ab.
This causes a failure in Coroutine tests.
|
 | llvm/test/Transforms/InstCombine/opaque-ptr.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
075f2370c7fa5495649d09be8b1a9802b17a7f2b
by zoecarver[libcxx][ranges] Add `indirectly_movable` and `indirectly_movable_storable`.
Differential Revision: https://reviews.llvm.org/D102639
|
 | libcxx/test/std/input.output/filesystems/class.directory_iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/associative/multiset/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/predef.iterators/reverse.iterators/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/predef.iterators/insert.iterators/front.insert.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/associative/set/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/vector/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/utilities/memory/util.smartptr/util.smartptr.shared/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/array/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/deque/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/unord/unord.multiset/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/stream.iterators/istream.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/strings/basic.string/string.iterators/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/include/__iterator/concepts.h |
 | libcxx/test/std/utilities/memory/unique.ptr/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/re/re.iter/re.regiter/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/utilities/optional/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/vector.bool/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/predef.iterators/insert.iterators/insert.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/predef.iterators/move.iterators/move.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/sequences/list/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/iterator.requirements/alg.req.ind.move/indirectly_movable_storable.subsumption.compile.pass.cpp |
 | libcxx/test/std/containers/views/span.iterators/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/unord/unord.set/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/stream.iterators/ostream.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/stream.iterators/istreambuf.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/iterator.requirements/alg.req.ind.move/indirectly_movable.compile.pass.cpp |
 | libcxx/test/std/re/re.iter/re.tokiter/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/strings/string.view/string.view.iterators/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/iterator.requirements/alg.req.ind.move/indirectly_movable.subsumption.compile.pass.cpp |
 | libcxx/test/std/containers/associative/map/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/iterator.requirements/alg.req.ind.move/{ind.move.subsumption.compile.pass.cpp} |
 | libcxx/test/std/iterators/predef.iterators/insert.iterators/back.insert.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/iterators/iterator.requirements/alg.req.ind.move/indirectly_movable_storable.compile.pass.cpp |
 | libcxx/test/std/containers/unord/unord.map/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/include/iterator |
 | libcxx/test/std/iterators/stream.iterators/ostreambuf.iterator/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/unord/unord.multimap/iterator_concept_conformance.compile.pass.cpp |
 | libcxx/test/std/containers/associative/multimap/iterator_concept_conformance.compile.pass.cpp |
Commit
a24035883356de2bf201835e72a15f6a22e5032d
by aeubanks[llvm-reduce] Don't delete arguments of intrinsics
The argument reduction pass shouldn't remove arguments of intrinsics, because the resulting module is ill-formed, and so inherently uninteresting.
Reviewed By: aeubanks
Differential Revision: https://reviews.llvm.org/D103129
|
 | llvm/test/tools/llvm-reduce/remove-args-dbg-intrinsics.ll |
 | llvm/tools/llvm-reduce/deltas/ReduceArguments.cpp |
Commit
5013131875402539a249dca47c58cca7c359baf8
by erich.keane[SYCL][NFC] Ensure SYCL kernel for unique-stable-name is unqualified.
Discovered in our downstream, this function that is used to get the type of the kernel parameter type needs to be unqualified, otherwise when our downstream uses this function in a slightly different way, the kernel types no longer match.
|
 | clang/lib/Sema/SemaSYCL.cpp |
Commit
c2e01ee4a5e97b686c49cfc2193e660f3e6dda9c
by craig.topper[RISCV] Remove extra character from a comment. NFC
|
 | llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp |
Commit
1244bca53fb2ff2e6061ae43b830a645bf93cc6d
by thomasraoux[mlir][vector] Support distributing transfer op with permutation map
Differential Revision: https://reviews.llvm.org/D104263
|
 | mlir/test/Dialect/Vector/vector-distribution.mlir |
 | mlir/lib/Dialect/Vector/VectorTransforms.cpp |
Commit
7e2d672a672c0559f6e5c417c5ee2514402cf18e
by ataeiAdd polynomial approximation for trigonometric sine and cosine functions
The approximation relays on range reduced version y \in [0, pi/2]. An input x will have the property that sin(x) = sin(y), -sin(y), cos(y), -cos(y) depends on which quadrable x is in, where sin(y) and cos(y) are approximated with 5th degree polynomial (of x^2). As a result a single pattern can be used to compute approximation for both sine and cosine.
Reviewed By: ezhulenev
Differential Revision: https://reviews.llvm.org/D104582
|
 | mlir/test/mlir-cpu-runner/math_polynomial_approx.mlir |
 | mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp |
Commit
403792f91e822e580dd5dc65ad80d0977d4fd9e3
by nikita.ppv[InstCombine] Add test for bitcast of unsized pointer (NFC)
The bitcast should get folded into the select, but currently isn't due to an incorrect early bailout.
|
 | llvm/test/Transforms/InstCombine/bitcast.ll |
Commit
e2c2124a4b5bad9cf2a1e23a6aef1b2ad753f504
by nikita.ppvReapply [InstCombine] Extract bitcast -> gep transform
Relative to the original patch, an InstCombine test has been added to show a previously missed pattern, and the Coroutine test that resulted in the revert has been regenerated.
-----
Move this into a separate function, to make sure that early returns do not accidentally skip other transforms. This previously happened for the isSized() check, which skipped folds like distributing a bitcast over a select.
|
 | llvm/test/Transforms/Coroutines/coro-retcon-once-value.ll |
 | llvm/test/Transforms/InstCombine/bitcast.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
d9cf8291e7ef26317c13ed9a4e9bd88855166d5d
by mvanottiCreate install targets for scan-build-py.
A new revision identical to https://reviews.llvm.org/D101139 The parent revision of aforementioned revision seems to cause pre-merge checks to fail opaquely. Seeing if creating a new revision will work.
Reviewed By: phosek
Differential Revision: https://reviews.llvm.org/D104138
|
 | clang/tools/scan-build-py/bin/intercept-cc |
 | clang/tools/scan-build-py/lib/libscanbuild/compilation.py |
 | clang/tools/scan-build-py/libscanbuild/__init__.py |
 | clang/tools/scan-build-py/libscanbuild/resources/scanview.css |
 | clang/tools/scan-build-py/libexec/intercept-cc |
 | clang/cmake/caches/Fuchsia-stage2.cmake |
 | clang/tools/scan-build-py/libscanbuild/arguments.py |
 | clang/tools/scan-build-py/tests/__init__.py |
 | clang/tools/scan-build-py/libear/config.h.in |
 | clang/tools/scan-build-py/libear/__init__.py |
 | clang/tools/scan-build-py/lib/libscanbuild/resources/sorttable.js |
 | clang/tools/scan-build-py/lib/libscanbuild/__init__.py |
 | clang/tools/scan-build-py/bin/scan-build |
 | clang/tools/scan-build-py/CMakeLists.txt |
 | clang/tools/scan-build-py/bin/intercept-build |
 | clang/tools/scan-build-py/lib/libscanbuild/resources/scanview.css |
 | clang/tools/scan-build-py/libexec/analyze-cc |
 | clang/tools/scan-build-py/tests/functional/cases/test_exec_anatomy.py |
 | clang/tools/scan-build-py/libexec/analyze-c++ |
 | clang/tools/scan-build-py/bin/analyze-build |
 | clang/tools/scan-build-py/lib/libear/ear.c |
 | clang/tools/scan-build-py/libscanbuild/clang.py |
 | clang/tools/scan-build-py/lib/libscanbuild/analyze.py |
 | clang/tools/scan-build-py/libscanbuild/analyze.py |
 | clang/tools/scan-build-py/bin/analyze-c++ |
 | clang/tools/scan-build-py/lib/libear/config.h.in |
 | clang/tools/scan-build-py/tests/functional/cases/__init__.py |
 | clang/tools/scan-build-py/libear/ear.c |
 | clang/tools/scan-build-py/libscanbuild/shell.py |
 | clang/tools/scan-build-py/bin/intercept-c++ |
 | clang/tools/scan-build-py/libscanbuild/intercept.py |
 | clang/tools/scan-build-py/lib/libscanbuild/resources/selectable.js |
 | clang/tools/scan-build-py/lib/libscanbuild/arguments.py |
 | clang/tools/scan-build-py/lib/libscanbuild/clang.py |
 | clang/tools/scan-build-py/lib/libscanbuild/shell.py |
 | clang/tools/scan-build-py/bin/analyze-cc |
 | clang/tools/scan-build-py/tests/unit/test_analyze.py |
 | clang/tools/scan-build-py/libexec/intercept-c++ |
 | clang/tools/scan-build-py/tests/functional/cases/test_from_cmd.py |
 | clang/tools/scan-build-py/lib/libscanbuild/intercept.py |
 | clang/tools/scan-build-py/tests/functional/cases/test_from_cdb.py |
 | clang/tools/CMakeLists.txt |
 | clang/tools/scan-build-py/libscanbuild/compilation.py |
 | clang/tools/scan-build-py/lib/libscanbuild/report.py |
 | clang/tools/scan-build-py/libscanbuild/resources/selectable.js |
 | clang/tools/scan-build-py/lib/libear/__init__.py |
 | clang/tools/scan-build-py/libscanbuild/report.py |
Commit
39796e1ad02a45b09ac3ef9e3dc1906f28804a91
by nikita.ppvReapply [InstCombine] Don't try converting opaque pointer bitcast to GEP
Reapplied without changes -- this was reverted together with an underlying patch.
-----
Bitcasts having opaque pointer source or result type cannot be converted into a zero-index GEP, GEP source and result types always have the same opaque-ness.
|
 | llvm/test/Transforms/InstCombine/opaque-ptr.ll |
 | llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp |
Commit
9b371f5da4e5df8d392390aec049528a6a08c3b1
by Louis Dionne[libc++] NFC: Fix outdated comment about secrets.env
That file (secrets.env) has now been removed, so the comment was referencing something that didn't exist anymore.
|
 | libcxx/utils/ci/Dockerfile |
Commit
b3634d3e88b7f26534a5057bff182b7dced584fc
by erich.keaneRevert "[SYCL][NFC] Ensure SYCL kernel for unique-stable-name is unqualified."
This reverts commit 5013131875402539a249dca47c58cca7c359baf8.
This patch didn't end up being the solution to the problem. It "fixed" our issue but the actual correct solution is something else. Reverting as this ends up being unnecessary/extra noise.
|
 | clang/lib/Sema/SemaSYCL.cpp |
Commit
c5bbc737e8c6a78867c8e0d0481e25824563bc3d
by a.bataev[SLP][NFC]Rename functions in the tests, NFC.
|
 | llvm/test/Transforms/SLPVectorizer/X86/operandorder.ll |
Commit
3e98b88797e52914ca67aa173aad97595fa61c73
by lebedev.ri[NFC][SimplifyCFG] Fix tests to use FileCheck instead of grep
|
 | llvm/test/Transforms/SimplifyCFG/branch-fold-test.ll |
 | llvm/test/Transforms/SimplifyCFG/2008-12-16-DCECond.ll |
 | llvm/test/Transforms/SimplifyCFG/branch-cond-prop.ll |
 | llvm/test/Transforms/SimplifyCFG/PhiEliminate.ll |
 | llvm/test/Transforms/SimplifyCFG/EqualPHIEdgeBlockMerge.ll |
 | llvm/test/Transforms/SimplifyCFG/hoist-common-code.ll |
 | llvm/test/Transforms/SimplifyCFG/iterative-simplify.ll |
 | llvm/test/Transforms/SimplifyCFG/UncondBranchToReturn.ll |
 | llvm/test/Transforms/SimplifyCFG/2009-05-12-externweak.ll |
 | llvm/test/Transforms/SimplifyCFG/PhiNoEliminate.ll |
 | llvm/test/Transforms/SimplifyCFG/branch-cond-merge.ll |
 | llvm/test/Transforms/SimplifyCFG/duplicate-phis.ll |
 | llvm/test/Transforms/SimplifyCFG/BrUnwind.ll |
 | llvm/test/Transforms/SimplifyCFG/branch-phi-thread.ll |
 | llvm/test/Transforms/SimplifyCFG/2008-05-16-PHIBlockMerge.ll |
 | llvm/test/Transforms/SimplifyCFG/PhiBlockMerge2.ll |
 | llvm/test/Transforms/SimplifyCFG/return-merge.ll |
 | llvm/test/Transforms/SimplifyCFG/dbginfo.ll |
Commit
4cf74469a0f58c01a7fcf140a028b2a68f71df58
by lebedev.ri[NFC][SimplifyCFG] Add basic test for debuginfo preservation of `ret` tail merging
|
 | llvm/test/Transforms/SimplifyCFG/return-merge.ll |
Commit
2bfe0536e5143caad80f7a9691fa775cf451317b
by jdenny.ornl[UpdateCCTestChecks] Fix --replace-value-regex across RUN lines
Without this patch, llvm/utils/update_cc_test_checks.py fails to perform `--replace-value-regex` replacements when two RUN lines produce the same output and use the same single FileCheck prefix. The problem is that replacements in a RUN line's output are not performed until after comparing against previous RUN lines' output, where replacements have already been performed. This patch fixes that.
Reviewed By: MaskRay
Differential Revision: https://reviews.llvm.org/D104566
|
 | clang/test/utils/update_cc_test_checks/Inputs/replace-value-regex-across-runs.c |
 | clang/test/utils/update_cc_test_checks/replace-value-regex-across-runs.test |
 | llvm/utils/UpdateTestChecks/common.py |
 | clang/test/utils/update_cc_test_checks/Inputs/replace-value-regex-across-runs.c.expected |
Commit
3996311ee1b0a3c29a3ffcf9400e12ca76a846d9
by Jinsong Ji[DAGCombine] reassoc flag shouldn't enable contract
According to IR LangRef, the FMF flag:
contract Allow floating-point contraction (e.g. fusing a multiply followed by an addition into a fused multiply-and-add).
reassoc Allow reassociation transformations for floating-point instructions. This may dramatically change results in floating-point.
My understanding is that these two flags shouldn't imply each other, as we might have a SDNode that can be reassociated with others, but not contractble.
eg: We may want following fmul/fad/fsub to freely reassoc, but don't want fma being generated here.
%F = fmul reassoc double %A, %B ; <double> [#uses=1] %G = fmul reassoc double %C, %D ; <double> [#uses=1] %H = fadd reassoc double %F, %G ; <double> [#uses=1] %I = fsub reassoc double %H, %E ; <double> [#uses=1]
Before https://reviews.llvm.org/D45710, `reassoc` flag actually did not imply isContratable either.
The current implementation also only check the flag in fadd node, ignoring fmul node, this patch update that as well.
Reviewed By: spatel, qiucf
Differential Revision: https://reviews.llvm.org/D104247
|
 | llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp |
 | llvm/test/CodeGen/PowerPC/fma-combine.ll |
 | llvm/test/CodeGen/PowerPC/fma-assoc.ll |
 | llvm/test/CodeGen/AMDGPU/fmuladd.f32.ll |
 | llvm/test/CodeGen/PowerPC/repeated-fp-divisors.ll |
 | llvm/test/CodeGen/AArch64/fadd-combines.ll |
 | llvm/test/CodeGen/PowerPC/register-pressure-reduction.ll |
 | llvm/test/CodeGen/PowerPC/fdiv.ll |
 | llvm/test/CodeGen/AMDGPU/fmuladd.f64.ll |
 | llvm/test/CodeGen/PowerPC/fma-aggr-FMF.ll |
 | llvm/test/CodeGen/PowerPC/fma-negate.ll |
 | llvm/test/CodeGen/PowerPC/combine-fneg.ll |
 | llvm/test/CodeGen/AMDGPU/fmuladd.v2f16.ll |
 | llvm/test/CodeGen/PowerPC/fma-precision.ll |
 | llvm/test/CodeGen/X86/machine-combiner.ll |
 | llvm/test/CodeGen/X86/sqrt-fastmath.ll |
 | llvm/test/CodeGen/PowerPC/recipest.ll |
 | llvm/test/CodeGen/PowerPC/fma-mutate.ll |
 | llvm/test/CodeGen/PowerPC/machine-combiner.ll |
 | llvm/test/CodeGen/PowerPC/fmf-propagation.ll |
 | llvm/test/CodeGen/AMDGPU/fmuladd.f16.ll |
Commit
c618692218d16e88fa20df56b29a8dd09c9e9db7
by i[AArch64][X86] Allow 64-bit label differences lower to IMAGE_REL_*_REL32
`IMAGE_REL_ARM64_REL64/IMAGE_REL_AMD64_REL64` do not exist and `.quad a - .` is currently not representable.
For instrumentation, `.quad a - .` is useful representing a cross-section reference in a metadata section, to allow ELF medium/large code models. The COFF limitation makes such generic instrumentations inconvenient. I plan to make a PGO/coverage metadata section field relative in D104556.
Differential Revision: https://reviews.llvm.org/D104564
|
 | llvm/lib/Target/AArch64/MCTargetDesc/AArch64WinCOFFObjectWriter.cpp |
 | llvm/test/MC/AArch64/coff-relocations.s |
 | llvm/test/MC/COFF/cross-section-relative-err.s |
 | llvm/test/MC/COFF/cross-section-relative.s |
 | llvm/lib/Target/X86/MCTargetDesc/X86WinCOFFObjectWriter.cpp |
Commit
bf0d0671a1062aec973c14522d6accf0c438b92e
by efriedma[ARM] Make sure we don't transform unaligned store to stm on Thumb1.
This isn't likely to come up in practice; the combination of compiler flags required to hit this issue should be rare. Found by inspection.
|
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/test/CodeGen/Thumb/ldm-stm-postinc.ll |
Commit
8c68eb83065cc531fde28fc743a7278190f9eb65
by xur[SampleFDO] Make FSDiscriminator flag part of function parameters
Add a parameter of IsFSDiscriminator to function getBaseDiscriminatorFromDiscriminator().
This function currently checks the internal flag of --enable-fs-discriminator. This is not good because we might change the default value of the internal flag.
Note that we have a default parameter. This is just because create_afdo_tool has a call-site to it. I will remove the default parameter in a later patch.
Differential Revision: https://reviews.llvm.org/D104584
|
 | llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h |
 | llvm/include/llvm/IR/DebugInfoMetadata.h |
 | llvm/tools/llvm-profgen/ProfiledBinary.cpp |
Commit
759e7977679299296a0074bc3aba693d3386eb1c
by browneee[DFSan][NFC] Refactor Origin Address Alignment code.
Reviewed By: stephan.yichao.zhao
Differential Revision: https://reviews.llvm.org/D104565
|
 | compiler-rt/lib/dfsan/dfsan.cpp |
Commit
8ace12130526f450c822ca232d1f865b247d7434
by ndesaulniers[IR] convert warn-stack-size from module flag to fn attr
Otherwise, this causes issues when building with LTO for object files that use different values.
Link: https://github.com/ClangBuiltLinux/linux/issues/1395
Reviewed By: dblaikie, MaskRay
Differential Revision: https://reviews.llvm.org/D104342
|
 | clang/test/Frontend/fwarn-stack-size.c |
 | llvm/docs/LangRef.rst |
 | llvm/test/Linker/warn-stack-frame.ll |
 | llvm/test/Verifier/invalid-warn-stack-size.ll |
 | llvm/lib/IR/Module.cpp |
 | llvm/lib/IR/Verifier.cpp |
 | clang/lib/CodeGen/CodeGenFunction.cpp |
 | clang/lib/CodeGen/CodeGenModule.cpp |
 | llvm/include/llvm/IR/Module.h |
 | llvm/lib/CodeGen/PrologEpilogInserter.cpp |
 | llvm/test/CodeGen/ARM/warn-stack.ll |
 | llvm/test/CodeGen/X86/warn-stack.ll |
Commit
4181bfe6888fdc6f24dc42d4ebb295920826de2b
by gclaytonClarify the "env" launch configuration setting.
A few users recently were trying to set environment values when using lldb-vscode and were unsure of the format of the "env" launch configuration setting. Clarify the exact format as when users add the "env" launch config setting, they can see this help string in the IDE.
Differential Revision: https://reviews.llvm.org/D104578
|
 | lldb/tools/lldb-vscode/package.json |
Commit
ad1a9d629b759f43c8c1ea5d4c710c5c5b4b1e6b
by rob.suderman[mlir][tosa] Enable tosa.div for TosaMakeBroadcastable
TosaMakeBroadcastable needs to include tosa.div, which was added later in the specification.
Reviewed By: sjarus, NatashaKnk
Differential Revision: https://reviews.llvm.org/D104157
|
 | mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp |
Commit
8f3d16905d75b07a933d01dc29677fe5867c1b3e
by efriedma[ScalarEvolution] Ensure backedge-taken counts are not pointers.
A backedge-taken count doesn't refer to memory; returning a pointer type is nonsense. So make sure we always return an integer.
The obvious way to do this would be to just convert the operands of the icmp to integers, but that doesn't quite work out at the moment: isLoopEntryGuardedByCond currently gets confused by ptrtoint operations. So we perform the ptrtoint conversion late for lt/gt operations.
The test changes are mostly innocuous. The most interesting changes are more complex SCEV expressions of the form "(-1 * (ptrtoint i8* %ptr to i64)) + %ptr)". This is expected: we can't fold this to zero because we need to preserve the pointer base.
The call to isLoopEntryGuardedByCond in howFarToZero is less precise because of ptrtoint operations; this shows up in the function pr46786_c26_char in ptrtoint.ll. Fixing it here would require more complex refactoring. It should eventually be fixed by future improvements to isImpliedCond.
See https://bugs.llvm.org/show_bug.cgi?id=46786 for context.
Differential Revision: https://reviews.llvm.org/D103656
|
 | llvm/test/Transforms/PhaseOrdering/scev-custom-dl.ll |
 | llvm/test/Analysis/ScalarEvolution/nsw.ll |
 | llvm/test/Transforms/LoopReroll/ptrindvar.ll |
 | llvm/test/Analysis/ScalarEvolution/max-backedge-taken-count-guard-info.ll |
 | llvm/test/Transforms/IndVarSimplify/2011-11-01-lftrptr.ll |
 | llvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll |
 | llvm/test/Analysis/ScalarEvolution/no-wrap-symbolic-becount.ll |
 | llvm/lib/Analysis/ScalarEvolution.cpp |
 | llvm/test/Transforms/LoopIdiom/memset-debugify-remarks.ll |
 | llvm/test/Transforms/LoopVectorize/pointer-induction.ll |
 | llvm/test/Transforms/LoopVectorize/pr45259.ll |
 | llvm/test/Analysis/ScalarEvolution/ptrtoint.ll |
 | llvm/test/Transforms/IndVarSimplify/eliminate-exit-no-dl.ll |
Commit
ac15a128d8756074b150bb5cb11bfd93a1a5c30c
by Vitaly Buka[NFC] Add getUnderlyingObjects test
Reviewed By: lebedev.ri
Differential Revision: https://reviews.llvm.org/D104585
|
 | llvm/test/Analysis/LoopAccessAnalysis/underlying-objects-2.ll |
Commit
74909e4b6e9bc0da6c197cf6c4419991a8dc335f
by efriedmaRename MachineMemOperand::getOrdering -> getSuccessOrdering.
Since this method can apply to cmpxchg operations, make sure it's clear what value we're actually retrieving. This will help ensure we don't accidentally ignore the failure ordering of cmpxchg in the future.
We could potentially introduce a getOrdering() method on AtomicSDNode that asserts the operation isn't cmpxchg, but not sure that's worthwhile.
Differential Revision: https://reviews.llvm.org/D103338
|
 | llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp |
 | llvm/lib/Target/Hexagon/HexagonFrameLowering.cpp |
 | llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp |
 | llvm/lib/CodeGen/MIRVRegNamerUtils.cpp |
 | llvm/lib/Target/AArch64/GISel/AArch64InstructionSelector.cpp |
 | llvm/lib/Target/ARM/ARMISelLowering.cpp |
 | llvm/lib/CodeGen/MachineStableHash.cpp |
 | llvm/lib/CodeGen/MachineOperand.cpp |
 | llvm/lib/Target/SystemZ/SystemZISelLowering.cpp |
 | llvm/include/llvm/CodeGen/MachineMemOperand.h |
 | llvm/include/llvm/CodeGen/SelectionDAGNodes.h |
 | llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp |
 | llvm/lib/Target/XCore/XCoreISelLowering.cpp |
 | llvm/lib/Target/AMDGPU/SIMemoryLegalizer.cpp |
 | llvm/lib/Target/X86/X86ISelLowering.cpp |
 | llvm/lib/CodeGen/MachineFunction.cpp |
 | llvm/lib/Target/ARM/ARMInstrInfo.td |
 | llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp |
 | llvm/lib/Target/Hexagon/HexagonISelLowering.cpp |
 | llvm/lib/CodeGen/GlobalISel/LegalizerInfo.cpp |
 | llvm/lib/Target/Sparc/SparcISelLowering.cpp |
Commit
610d474cfd82f11dc4702e2cf1b2485584d7c243
by walter erquinigo[lldb-vscode] only report long running progress events
When the number of shared libs is massive, there could be hundreds of thousands of short lived progress events sent to the IDE, which makes it irresponsive while it's processing all this data. As these small jobs take less than a second to process, the user doesn't even see them, because the IDE only display the progress of long operations. So it's better not to send these events.
I'm fixing that by sending only the events that are taking longer than 5 seconds to process. In a specific run, I got the number of events from ~500k to 100, because there was only 1 big lib to parse.
I've tried this on several small and massive targets, and it seems to work fine.
Differential Revision: https://reviews.llvm.org/D101128
|
 | lldb/tools/lldb-vscode/ProgressEvent.h |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
 | lldb/tools/lldb-vscode/VSCode.h |
 | lldb/tools/lldb-vscode/ProgressEvent.cpp |
 | lldb/tools/lldb-vscode/VSCode.cpp |
Commit
2e11f4e06804e53cee95e63fdc9e5152f8444abb
by walter erquinigo[lldb-vscode] Add simple DAP logs dump to investigate flakiness in tests
A few times tests have been flaky, presumably by crashed of lldb-vscode itself. They can be caught by looking at the DAP logs, so I'm dumping them when the session ends.
|
 | lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py |
Commit
f84615a5a5cb05aacdb0e9e7ab13f3b95ce11ece
by walter erquinigoRevert "[lldb-vscode] only report long running progress events"
This reverts commit 610d474cfd82f11dc4702e2cf1b2485584d7c243.
lldb-vscode is crashing.
|
 | lldb/tools/lldb-vscode/VSCode.cpp |
 | lldb/tools/lldb-vscode/ProgressEvent.cpp |
 | lldb/tools/lldb-vscode/ProgressEvent.h |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
 | lldb/tools/lldb-vscode/VSCode.h |
Commit
2ba387a316d1bd3b81b4eac00418e903f5c421cd
by springerm[mlir][linalg] Fusion of PadTensorOp
Note: This commit (and previous ones) implements the same functionality as https://reviews.llvm.org/D103243 (which is abandoned).
Differential Revision: https://reviews.llvm.org/D104683
|
 | mlir/test/lib/Dialect/Linalg/TestLinalgFusionTransforms.cpp |
 | mlir/test/Dialect/Linalg/tile-and-fuse-tensors.mlir |
 | mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp |
Commit
bff2b9adbc8de23aeaa654c5957624078ddf8fe9
by walter erquinigoRetry of [lldb-vscode] only report long running progress events
This time adding a check that should prevent the crash found in https://lab.llvm.org/buildbot/#/builders/68/builds/14182/steps/6/logs/stdio
Differential Revision: https://reviews.llvm.org/D101128
|
 | lldb/tools/lldb-vscode/VSCode.cpp |
 | lldb/tools/lldb-vscode/lldb-vscode.cpp |
 | lldb/tools/lldb-vscode/ProgressEvent.cpp |
 | lldb/tools/lldb-vscode/ProgressEvent.h |
 | lldb/tools/lldb-vscode/VSCode.h |
Commit
1c7b84108861ac92fb353891e7e4c747b6ea9f28
by aheejin[WebAssembly] Make tag attribute's encoding uint8
This changes the encoding of the `attribute` field, which currently only contains the value `0` denoting this tag is for an exception, from `varuint32` to `uint8`. This field is effectively unused at the moment and reserved for future use, and it is not likely to need `varuint32` even in future. See https://github.com/WebAssembly/exception-handling/pull/162.
This does not change any encoded binaries because `0` is encoded in the same way both in `varuint32` and `uint8`.
Reviewed By: tlively
Differential Revision: https://reviews.llvm.org/D104571
|
 | llvm/lib/Object/WasmObjectFile.cpp |
 | llvm/include/llvm/BinaryFormat/Wasm.h |
 | llvm/lib/MC/WasmObjectWriter.cpp |
Commit
575253887bccb8732b901608dabcec3d60324cf0
by mkazantsev[LoopDeletion] Require loop to have a predecessor when executing 1st iteration symbolically
Two predecessors break the further logic, and the loop may come to the opt in non-canonicalized state.
|
 | llvm/lib/Transforms/Scalar/LoopDeletion.cpp |
 | llvm/test/Transforms/LoopDeletion/two-predecessors.ll |
Commit
4c4f1ae93ea7477ccb4772007fc78313f5a0644f
by mkazantsevRe-land "[LoopDeletion] Handle Phis with similar inputs from different blocks"
Patch was reverted due to a bug that existed before it and was exposed by it. Returning after the underlying bug has been fixed.
Differential Revision: https://reviews.llvm.org/D103959
|
 | llvm/test/Transforms/LoopDeletion/eval_first_iteration.ll |
 | llvm/lib/Transforms/Scalar/LoopDeletion.cpp |
Commit
f14e6e4451188928b6708693dee706249313c198
by i[llvm-objcopy] Delete empty namespace. NFC
|
 | llvm/tools/llvm-objcopy/llvm-objcopy.cpp |
Commit
4882cacf129b31129a3d7ffdc0c2ed8d0fb67673
by gysit[mlir][linalg] Adapt FillOp to use a scalar operand.
Adapt the FillOp definition to use a scalar operand instead of a capture. This patch is a follow up to https://reviews.llvm.org/D104109. As the input operands are in front of the output operands the patch changes the internal operand order of the FillOp. The pretty printed version of the operation remains unchanged though. The patch also adapts the linalg to standard lowering to ensure the c signature of the FillOp remains unchanged as well.
Differential Revision: https://reviews.llvm.org/D104121
|
 | mlir/test/Dialect/Linalg/fusion-tensor-pattern.mlir |
 | mlir/lib/Conversion/LinalgToStandard/LinalgToStandard.cpp |
 | mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp |
 | mlir/test/lib/Dialect/Linalg/TestLinalgTransforms.cpp |
 | mlir/test/Dialect/Linalg/generalize-named-ops.mlir |
 | mlir/python/mlir/dialects/_linalg_ops_ext.py |
 | mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td |
 | mlir/test/Dialect/Linalg/invalid.mlir |
Commit
3f873e9b51781f58e89806639c8e19eea5610ff7
by i[llvm-objcopy] Internalize some symbols
|
 | llvm/tools/llvm-objcopy/llvm-objcopy.cpp |
Commit
d919b73564fa79b5dbd6352120a23998f27a7811
by bjorn.a.pettersson[NewPM] Print passes with params when using "opt -print-passes"
Make sure we also print passes with params when using "opt -print-passes".
Differential Revision: https://reviews.llvm.org/D104625
|
 | llvm/lib/Passes/PassRegistry.def |
 | llvm/lib/Passes/PassBuilder.cpp |
 | llvm/test/Other/print-passes.ll |