SuccessChanges

Summary

  1. [buildbot-clangd-ubuntu-clang] deployed new docker image (details)
Commit e80b3b9a559501293a2da7aeddd565c00f0c34a6 by kuhnel
[buildbot-clangd-ubuntu-clang] deployed new docker image

This is just the deployment for the container updated in
cf3881f300f973e6dcc12d2c25dff626290642aa
The file was modifiedbuildbot/google/terraform/main.tf (diff)
The file was modifiedbuildbot/google/docker/buildbot-clangd-ubuntu-clang/VERSION (diff)

Summary

  1. [OpenCL] Fix missing addrspace on implicit move assignment operator (details)
  2. [mlir][linalg] Cleanup LinalgOp usage in comprehensive bufferization. (details)
  3. [AMDGPU] Fix MC tests for v_fmaak_f16 and v_fmamk_f16 (details)
  4. [LV] Mark increment of main vector loop induction variable as NUW. (details)
  5. [Clang] Support a user-defined __dso_handle (details)
  6. [SimpleLoopBoundSplit] Split Bound of Loop which has conditional branch with IV (details)
Commit 438cf5577e720f84d493a272c5a1cbaf6ce19e51 by olemarius.strohm
[OpenCL] Fix missing addrspace on implicit move assignment operator

This fixes the missing address space on `this` in the implicit move
assignment operator.
The function called here is an abstraction around the lines that have
been removed which also sets the address space correctly.
This is copied from CopyConstructor, CopyAssignment and MoveConstructor,
all of which use this function, and now MoveAssignment does too.

Fixes: PR50259

Reviewed By: svenvh

Differential Revision: https://reviews.llvm.org/D103252
The file was modifiedclang/lib/Sema/SemaDeclCXX.cpp
The file was addedclang/test/AST/ast-dump-implicit-members.clcpp
Commit caf26612ddb527ad9e89588e7297b4de51013b83 by gysit
[mlir][linalg] Cleanup LinalgOp usage in comprehensive bufferization.

Replace the uses of deprecated Structured Op Interface methods in ComprehensiveBufferize.cpp. This patch is based on https://reviews.llvm.org/D103394.

Differential Revision: https://reviews.llvm.org/D103520
The file was modifiedmlir/lib/Dialect/Linalg/Transforms/ComprehensiveBufferize.cpp
Commit 9e9edede1833f38e95cfa4845275cb40ee2b4020 by jay.foad
[AMDGPU] Fix MC tests for v_fmaak_f16 and v_fmamk_f16

This looks like a mistake when the tests were committed in r363946.
There were two sets of tests for the f32 variant of these instructions,
instead of one set for f16 and one set for f32.

Differential Revision: https://reviews.llvm.org/D103699
The file was modifiedllvm/test/MC/AMDGPU/gfx10_asm_vop2.s
The file was modifiedllvm/test/MC/Disassembler/AMDGPU/gfx10_dasm_all.txt
Commit 23c2f2e6b24d80d3472dca897feac10e9c34c51f by flo
[LV] Mark increment of main vector loop induction variable as NUW.

This patch marks the induction increment of the main induction variable
of the vector loop as NUW when not folding the tail.

If the tail is not folded, we know that End - Start >= Step (either
statically or through the minimum iteration checks). We also know that both
Start % Step == 0 and End % Step == 0. We exit the vector loop if %IV +
%Step == %End. Hence we must exit the loop before %IV + %Step unsigned
overflows and we can mark the induction increment as NUW.

This should make SCEV return more precise bounds for the created vector
loops, used by later optimizations, like late unrolling.

At the moment quite a few tests still need to be updated, but before
doing so I'd like to get initial feedback to make sure I am not missing
anything.

Note that this could probably be further improved by using information
from the original IV.

Attempt of modeling of the assumption in Alive2:
https://alive2.llvm.org/ce/z/H_DL_g

Part of a set of fixes required for PR50412.

Reviewed By: mkazantsev

Differential Revision: https://reviews.llvm.org/D103255
The file was modifiedllvm/test/Transforms/LoopVectorize/pointer-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-not-allowed.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vector-intrinsic-call-cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/vector-reverse-mask4.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-selectandorcost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/constant-fold.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/reduction-fastmath.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reduction-predselect.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/first-order-recurrence.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-scalars.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/unroll_novec.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-qabs.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dead_instructions.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/induction-step.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-folding-scalar-epilogue-fallback.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/load-deref-pred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dont-fold-tail-for-divisible-TC.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr35432.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleave_short_tc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/outer_loop_test1_no_explicit_vect_width.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-pred-stores.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr42674.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/debugloc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/float-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/pointer_iv.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/float-minmax-instruction-flag.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/optsize.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/use-scalar-epilogue-if-tp-fails.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr34438.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/consecutive-ptr-uniforms.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop-pred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer-loop-vec-phi-predecessor-order.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/dont-fold-tail-for-const-TC.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/arbitrary-induction-step.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer_loop_test2.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vector-geps.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/aarch64-predication.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/extractvalue-no-scalarization-required.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/runtime-check.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr39417-optsize-scevchecks.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/fcmp-vectorize.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
The file was modifiedllvm/lib/Transforms/Vectorize/LoopVectorize.cpp
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/imprecise-through-phis.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr36524.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/induction-trunc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-widen-call-instruction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/x86-interleaved-accesses-masked-group.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/uniform-blend.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/sphinx.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/single-value-blend-phis.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/loop-form.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reduction-types.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/AArch64/outer_loop_test1_no_explicit_vect_width.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr35773.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/phi-cost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/mve-reductions.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ARM/tail-fold-multiple-icmps.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr44488-predication.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-small-size.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/vplan-vectorize-inner-loop-reduction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/interleaving.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/consecutive-ptr-uniforms.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/pr23997.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/assume.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/ptr-induction.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/outer_loop_test1.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/reduction-inloop-uf4.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/X86/small-size.ll
The file was modifiedllvm/test/Transforms/LoopVectorize/pr45259.ll
Commit b31f41e78b2722785f3df1da0d77dfcd68125d15 by andrew.savonichev
[Clang] Support a user-defined __dso_handle

This fixes PR49198: Wrong usage of __dso_handle in user code leads to
a compiler crash.

When Init is an address of the global itself, we need to track it
across RAUW. Otherwise the initializer can be destroyed if the global
is replaced.

Differential Revision: https://reviews.llvm.org/D101156
The file was modifiedclang/lib/CodeGen/CodeGenModule.cpp
The file was addedclang/test/CodeGenCXX/dso-handle-custom.cpp
Commit a2a0ac42abcb57bd982a94534c219ac983572ac3 by jingu.kang
[SimpleLoopBoundSplit] Split Bound of Loop which has conditional branch with IV

This pass transforms loops that contain a conditional branch with induction
variable. For example, it transforms left code to right code:

                             newbound = min(n, c)
while (iv < n) {            while(iv < newbound) {
   A                           A
   if (iv < c)                 B
     B                         C
   C                         }
}                           if (iv != n) {
                               while (iv < n) {
                                 A
                                 C
                               }
                             }

Differential Revision: https://reviews.llvm.org/D102234
The file was modifiedllvm/lib/Passes/PassBuilder.cpp
The file was addedllvm/include/llvm/Transforms/Scalar/LoopBoundSplit.h
The file was addedllvm/test/Transforms/LoopBoundSplit/loop-bound-split.ll
The file was addedllvm/lib/Transforms/Scalar/LoopBoundSplit.cpp
The file was modifiedllvm/utils/gn/secondary/llvm/lib/Transforms/Scalar/BUILD.gn
The file was modifiedllvm/lib/Passes/PassRegistry.def
The file was modifiedllvm/lib/Transforms/Scalar/CMakeLists.txt

Summary

  1. [AIX] Use posix_memalign instead of malloc to ensure 16 byte alignment (details)
  2. [test-suite] Suppress FP_CONTRACT due to command line changes planned in D74436 (details)
Commit 7d06bc9ba14517d7ea795c8ba1be6adc495801a9 by zarko
[AIX] Use posix_memalign instead of malloc to ensure 16 byte alignment

On AIX in 32bit mode, malloc may not be 16 byte aligned as required for vector
data types. This causes these test cases to generate incorrect output.
Using posix_memalign instead we ensure 16 byte alignment in 64 and
32 bit mode and correct output.

Reviewed By: bmahjour

Differential Revision: https://reviews.llvm.org/D103553
The file was modifiedSingleSource/UnitTests/Vector/Altivec/alti.stepfft.c (diff)
The file was modifiedSingleSource/UnitTests/Vector/Altivec/alti.expandfft.c (diff)
Commit ccc86f938839d02de3a6564b2d80fb47a60aa069 by melanie.blower
[test-suite] Suppress FP_CONTRACT due to command line changes planned in D74436

The dependent clang patch changes the default setting for ffp-contract to true,
and that causes about 20 test-suite LNT tests to fail on X86. This patch
modifies the build settings to these tests to suppress FP_CONTRACT and
allows the tests to pass.

Reviewed By: Andy Kaylor, segpop, rengolin, jdoerfert

Differential Revision: https://reviews.llvm.org/D102861
The file was modifiedMicroBenchmarks/ImageProcessing/Blur/CMakeLists.txt (diff)
The file was modifiedMultiSource/Applications/oggenc/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/fdtd-apml/fdtd-apml.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/ludcmp/ludcmp.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/datamining/correlation/correlation.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/adi/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/gramschmidt/gramschmidt.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/trisolv/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/datamining/covariance/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemver/gemver.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/syr2k/syr2k.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/atax/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/bicg/bicg.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/gesummv/CMakeLists.txt (diff)
The file was modifiedMultiSource/Benchmarks/Rodinia/srad/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/cholesky/cholesky.c (diff)
The file was modifiedMultiSource/Benchmarks/DOE-ProxyApps-C++/HPCCG/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/medley/reg_detect/reg_detect.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/seidel-2d/seidel-2d.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/mvt/mvt.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/gesummv/gesummv.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemver/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/lu/lu.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/3mm/3mm.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/adi/adi.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/trmm/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/symm/symm.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/trisolv/trisolv.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/syrk/syrk.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/dynprog/dynprog.c (diff)
The file was modifiedSingleSource/Benchmarks/Linpack/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/datamining/correlation/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/bicg/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Misc-C++/Large/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/gemm/gemm.c (diff)
The file was modifiedMultiSource/Benchmarks/DOE-ProxyApps-C++/CLAMR/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/datamining/covariance/covariance.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/atax/atax.c (diff)
The file was modifiedMultiSource/Benchmarks/DOE-ProxyApps-C++/miniFE/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/fdtd-2d/fdtd-2d.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/jacobi-1d-imper/jacobi-1d-imper.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/gramschmidt/CMakeLists.txt (diff)
The file was modifiedMicroBenchmarks/ImageProcessing/BilateralFiltering/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/medley/floyd-warshall/floyd-warshall.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/symm/CMakeLists.txt (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/stencils/jacobi-2d-imper/jacobi-2d-imper.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/doitgen/doitgen.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/2mm/2mm.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/solvers/durbin/durbin.c (diff)
The file was modifiedSingleSource/Benchmarks/Polybench/linear-algebra/kernels/trmm/trmm.c (diff)