LLVM/project 58fa7e4clang/test/OpenMP irbuilder_nested_parallel_for.c ordered_codegen.cpp, llvm/include/llvm/Frontend/OpenMP OMPIRBuilder.h

Revert "[OMPIRBuilder] always leave PARALLEL via the same barrier" (#169829)

Reverts llvm/llvm-project#164586

Reverting due to buildbot failure:
https://lab.llvm.org/buildbot/#/builders/169/builds/17519
DeltaFile
+77-69llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+53-56llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
+47-61clang/test/OpenMP/irbuilder_nested_parallel_for.c
+10-30clang/test/OpenMP/ordered_codegen.cpp
+20-20clang/test/OpenMP/cancel_codegen.cpp
+10-27llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
+217-26317 files not shown
+263-37023 files

LLVM/project f065583llvm/lib/Transforms/Instrumentation AllocToken.cpp, llvm/test/Instrumentation/AllocToken hot-cold-new.ll

rebase

Created using spr 1.3.8-beta.1
DeltaFile
+25-0llvm/test/LTO/X86/alloc-token-hot-cold-new.ll
+12-12llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+20-0llvm/test/Instrumentation/AllocToken/hot-cold-new.ll
+57-123 files

LLVM/project 25ba298llvm/lib/Transforms/Instrumentation AllocToken.cpp, llvm/test/Instrumentation/AllocToken hot-cold-new.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.8-beta.1

[skip ci]
DeltaFile
+25-0llvm/test/LTO/X86/alloc-token-hot-cold-new.ll
+12-12llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+20-0llvm/test/Instrumentation/AllocToken/hot-cold-new.ll
+57-123 files

LLVM/project bcd5787llvm/lib/Transforms/Instrumentation AllocToken.cpp, llvm/test/Instrumentation/AllocToken hot-cold-new.ll

simplify copts, add extra tests

Created using spr 1.3.8-beta.1
DeltaFile
+25-0llvm/test/LTO/X86/alloc-token-hot-cold-new.ll
+12-12llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+20-0llvm/test/Instrumentation/AllocToken/hot-cold-new.ll
+57-123 files

LLVM/project fb94261libc/cmake/modules LLVMLibCArchitectures.cmake, libc/include/sys syscall.h.def

[libc][darwin] add syscall numbers from macos sdk (#166354)

This PR adds support to include syscall.h from MacOS sdk by explicitly including the path to the sdk via `xcrun`.
DeltaFile
+31-0libc/cmake/modules/LLVMLibCArchitectures.cmake
+2-1libc/include/sys/syscall.h.def
+33-12 files

LLVM/project 39f5ff0mlir/include/mlir/Dialect/Tosa/Transforms Passes.td, mlir/lib/Dialect/Tosa/Transforms TosaArithConstantToConst.cpp CMakeLists.txt

[mlir][tosa] Introduce arith.constant -> tosa.const normalization pass (#168370)

Add a standalone pass that rewrites tensor-valued `arith.constant` ops
into `tosa.const`, normalize the TOSA backend contract.

Signed-off-by: Vitalii Shutov <vitalii.shutov at arm.com>
Co-authored-by: Shubham <shubham at arm.com>
DeltaFile
+111-0mlir/lib/Dialect/Tosa/Transforms/TosaArithConstantToConst.cpp
+100-0mlir/test/Dialect/Tosa/tosa-arith-const-to-tosa-const.mlir
+9-0mlir/include/mlir/Dialect/Tosa/Transforms/Passes.td
+1-0mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
+221-04 files

LLVM/project 5d6d743bolt/lib/Passes Inliner.cpp, bolt/test/AArch64 inline-bti.s

[BOLT][BTI] Skip inlining BasicBlocks containing indirect tailcalls (#168403)

In the Inliner pass, tailcalls are converted to calls in the inlined
BasicBlock. If the tailcall is indirect, the `BR` is converted to `BLR`.

These instructions require different BTI landing pads at their targets.

As the targets of indirect tailcalls are unknown, inlining such blocks
is unsound for BTI: they should be skipped instead.
DeltaFile
+39-0bolt/test/AArch64/inline-bti.s
+26-0bolt/lib/Passes/Inliner.cpp
+65-02 files

LLVM/project 71290f9flang-rt/lib/runtime CMakeLists.txt

Fix modules-only condition
DeltaFile
+1-1flang-rt/lib/runtime/CMakeLists.txt
+1-11 files

LLVM/project 25d027bmlir/lib/Dialect/SCF/Transforms UpliftWhileToFor.cpp, mlir/test/Dialect/SCF uplift-while.mlir

[MLIR][SCF] Sink scf.if from scf.while before region into after region in scf-uplift-while-to-for (#165216)

When a `scf.if` directly precedes an `scf.condition` in the before
region of an `scf.while` and both share the same condition, move the if
into the after region of the loop. This helps simplify the control flow
to enable uplifting `scf.while` to `scf.for`.
DeltaFile
+78-1mlir/lib/Dialect/SCF/Transforms/UpliftWhileToFor.cpp
+31-0mlir/test/Dialect/SCF/uplift-while.mlir
+109-12 files

LLVM/project 3280227clang/include/clang/Basic BuiltinsAMDGPU.def, clang/test/SemaHIP amdgpu-gfx950-load-to-lds.hip

[HIP][AMDGPU] Remove 't' from all __builtin_*_load_lds builtins

Allows for type checking depending on the builtin signature.

stack-info: PR: https://github.com/llvm/llvm-project/pull/165389, branch: users/jmmartinez/fix/load_lds_typesignature/3
DeltaFile
+15-15clang/test/SemaHIP/amdgpu-gfx950-load-to-lds.hip
+3-3clang/include/clang/Basic/BuiltinsAMDGPU.def
+18-182 files

LLVM/project 48e34d9utils/bazel/llvm-project-overlay/mlir BUILD.bazel

[mlir:bazel] Fix build broken by #169670. (#169804)

This PR adds a dependency to the `BUILD` files overlay silently added by
#169670.

Signed-off-by: Ingo Müller <ingomueller at google.com>
DeltaFile
+1-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+1-01 files

LLVM/project e0c0075llvm/lib/Target/SPIRV SPIRVCommandLine.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2 disabled-on-amd.ll

[SPIRV][AMD] Disable SPV_KHR_float_control2 for AMD flavored SPIRV (#169659)

AMD uses the translator to recover LLVM-IR from SPIRV.

Currently, the translator doesn't implement the
`SPV_KHR_float_controls2` extension (I'm working on it).
If this extension is used by the SPIRV module, we cannot translate it
back to LLVM-IR.

I'm working on the extension, but in the meantime, lets just disable it
when the target triple's vendor is `amd`.
DeltaFile
+22-0llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/disabled-on-amd.ll
+6-0llvm/lib/Target/SPIRV/SPIRVCommandLine.cpp
+28-02 files

LLVM/project 8c0a66fllvm/test/Analysis/DependenceAnalysis monotonicity-loop-guard.ll

adjust test cases
DeltaFile
+25-25llvm/test/Analysis/DependenceAnalysis/monotonicity-loop-guard.ll
+25-251 files

LLVM/project 90e8889lldb/source/Plugins/Language/CPlusPlus CPlusPlusLanguage.cpp, lldb/unittests/Language/CPlusPlus CPlusPlusLanguageTest.cpp

[lldb] Fix CxxMethodName Parser on return type (#169652)

The simplified parser incorrectly assumes if there is a context, there
is no return type.

Fixed the case where functions have both a context and a return type.
For example,

`int foo::bar::func()`
`Type<int> foo::bar::func()` 

Also fixed the case where there is no space between the context and
return.
`std::vector<int>foo::bar()`
DeltaFile
+23-10lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
+6-0lldb/unittests/Language/CPlusPlus/CPlusPlusLanguageTest.cpp
+29-102 files

LLVM/project 7f1423ellvm/include/llvm/Analysis Delinearization.h, llvm/lib/Analysis DependenceAnalysis.cpp Delinearization.cpp

[DA][Delinearization] Move validation logic into Delinearization (#169047)

This patch moves the validation logic of delinearization results from DA
to Delinearization. Also call it in `printDelinearization` to test its
behavior. The motivation is as follows:

- Almost the same code exists in `tryDelinearizeFixedSize` and
`tryDelinearizeParametricSize`. Consolidating it in Delinearization
avoids code duplication.
- Currently this validation logic is not well tested. Moving it to
Delinearization allows us to write regression tests easily.

This patch changes the test outputs and debug messages, but otherwise
NFCI.
DeltaFile
+4-130llvm/lib/Analysis/DependenceAnalysis.cpp
+107-0llvm/lib/Analysis/Delinearization.cpp
+10-0llvm/include/llvm/Analysis/Delinearization.h
+8-0llvm/test/Analysis/Delinearization/fixed_size_array.ll
+2-0llvm/test/Analysis/Delinearization/parameter_addrec_product.ll
+2-0llvm/test/Analysis/Delinearization/terms_with_identity_factor.ll
+133-13013 files not shown
+150-13019 files

LLVM/project 8871e9eclang/lib/Driver/ToolChains AMDGPU.cpp

[clang][Driver] Handle ROCm installation layout of lib/llvm/bin/clang (#138928)

Committing on behalf of @stellaraccident
DeltaFile
+8-1clang/lib/Driver/ToolChains/AMDGPU.cpp
+8-11 files

LLVM/project b641509llvm/lib/Transforms/Utils LoopUnroll.cpp, llvm/test/Transforms/LoopUnroll runtime-unroll-reductions.ll partial-unroll-reductions.ll

[LoopUnroll] Introduce parallel accumulators when unrolling FP reductions. (#166630)

This is building on top of
https://github.com/llvm/llvm-project/pull/149470, also introducing
parallel accumulator PHIs when the reduction is for floating points,
provided we have the reassoc flag. See also
https://github.com/llvm/llvm-project/pull/166353, which aims to
introduce parallel accumulators for reductions with vector instructions.
DeltaFile
+199-0llvm/test/Transforms/LoopUnroll/runtime-unroll-reductions.ll
+13-7llvm/test/Transforms/LoopUnroll/partial-unroll-reductions.ll
+6-4llvm/lib/Transforms/Utils/LoopUnroll.cpp
+218-113 files

LLVM/project ce45cf7clang/lib/CodeGen BackendUtil.cpp, clang/test/CodeGen alloc-token-lower.c

remove addition of pass by clang completely

Created using spr 1.3.8-beta.1
DeltaFile
+35-31llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+13-36clang/lib/CodeGen/BackendUtil.cpp
+19-3llvm/lib/Passes/PassBuilderPipelines.cpp
+10-5llvm/test/Instrumentation/AllocToken/module-flags.ll
+9-4clang/test/CodeGen/alloc-token-lower.c
+5-7llvm/test/Other/new-pm-O0-defaults.ll
+91-865 files not shown
+96-9411 files

LLVM/project 31753d0clang/lib/CodeGen BackendUtil.cpp, clang/test/CodeGen lto-newpm-pipeline.c

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.8-beta.1

[skip ci]
DeltaFile
+35-31llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+19-3llvm/lib/Passes/PassBuilderPipelines.cpp
+10-5llvm/test/Instrumentation/AllocToken/module-flags.ll
+5-7llvm/test/Other/new-pm-O0-defaults.ll
+2-4clang/test/CodeGen/lto-newpm-pipeline.c
+2-1clang/lib/CodeGen/BackendUtil.cpp
+73-514 files not shown
+76-5410 files

LLVM/project a161378clang/lib/CodeGen BackendUtil.cpp, clang/test/CodeGen lto-newpm-pipeline.c

address review comments

Created using spr 1.3.8-beta.1
DeltaFile
+35-31llvm/lib/Transforms/Instrumentation/AllocToken.cpp
+19-3llvm/lib/Passes/PassBuilderPipelines.cpp
+10-5llvm/test/Instrumentation/AllocToken/module-flags.ll
+5-7llvm/test/Other/new-pm-O0-defaults.ll
+2-4clang/test/CodeGen/lto-newpm-pipeline.c
+2-1clang/lib/CodeGen/BackendUtil.cpp
+73-514 files not shown
+76-5410 files

LLVM/project bc6ce00llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll, llvm/test/tools/llvm-dwarfdump/X86 simplified-template-names.s

Merge branch 'main' into users/kasuga-fj/da-monotonic-check-1
DeltaFile
+41,820-45,029llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+11,644-10,635llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+5,981-8,885llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v4i64.ll
+5,981-8,885llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v4p0.ll
+7,387-7,087llvm/test/tools/llvm-dwarfdump/X86/simplified-template-names.s
+3,868-6,624llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v3i64.ll
+76,681-87,14510,477 files not shown
+544,164-506,81210,483 files

LLVM/project f8e7716clang/lib/AST ExprConstant.cpp, clang/lib/AST/ByteCode InterpBuiltin.cpp

[Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - Allow PSLL/PSRA/PSRL var intrinsics to be used in constexpr (#169276)

Resolves #169176
DeltaFile
+153-183clang/lib/Headers/mmintrin.h
+52-78clang/lib/Headers/avx512vlintrin.h
+106-0clang/lib/AST/ExprConstant.cpp
+105-0clang/lib/AST/ByteCode/InterpBuiltin.cpp
+36-54clang/lib/Headers/avx512fintrin.h
+50-12clang/test/CodeGen/X86/avx512f-builtins.c
+502-3279 files not shown
+749-44315 files

LLVM/project 7732534openmp/cmake LibompUtils.cmake, openmp/module omp_lib.F90.var

Build omp_lib.mod on device
DeltaFile
+0-1,183openmp/runtime/src/include/omp_lib.F90.var
+1,183-0openmp/module/omp_lib.F90.var
+0-210openmp/runtime/cmake/LibompUtils.cmake
+210-0openmp/cmake/LibompUtils.cmake
+63-13runtimes/CMakeLists.txt
+7-33openmp/runtime/src/CMakeLists.txt
+1,463-1,4397 files not shown
+1,537-1,48213 files

LLVM/project 634f6e9libcxx/include/__algorithm copy_n.h ranges_copy_n.h, libcxx/include/__vector vector.h

[libc++] Merge the implementations of ranges::copy_n and std::copy_n and fix vector::insert to assign (#157444)

This reduces the amount of code we have to maintain a bit.

This also simplifies `vector` by using the internal API instead of
`#if`s to switch based on language dialect.
DeltaFile
+50-16libcxx/include/__algorithm/copy_n.h
+19-30libcxx/include/__vector/vector.h
+3-26libcxx/include/__algorithm/ranges_copy_n.h
+3-0libcxx/include/__algorithm/iterator_operations.h
+75-724 files

LLVM/project 1778938flang/docs OpenMPSupport.md, llvm/include/llvm/Frontend/OpenMP OMPIRBuilder.h

Revert "[MLIR][OpenMP] Add MLIR Lowering Support for dist_schedule (#152736)"

This reverts commit 47ae3eaa29f2195429f2ca19cc171a9ebd83c242.
DeltaFile
+0-205mlir/test/Target/LLVMIR/openmp-dist_schedule_with_wsloop.mlir
+49-140llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+12-24mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+7-27llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
+0-34mlir/test/Target/LLVMIR/openmp-dist_schedule.mlir
+11-11flang/docs/OpenMPSupport.md
+79-4414 files not shown
+93-46410 files

LLVM/project 920a091libcxx/test/libcxx-03/input.output/string.streams/stringbuf const_sso_buffer.pass.cpp, libcxx/test/libcxx-03/iterators contiguous_iterators.pass.cpp

[libc++][C++03] Remove code in the C++03-specific tests that is guarded on the language version (#169354)

This is dead code, since `test/libcxx-03` is only ever executed with
`-std=c++03`.
DeltaFile
+0-164libcxx/test/libcxx-03/utilities/function.objects/func.require/bullet_1_2_3.pass.cpp
+0-108libcxx/test/libcxx-03/utilities/meta/is_referenceable.compile.pass.cpp
+0-105libcxx/test/libcxx-03/utilities/utility/pairs/pairs.pair/abi.trivial_copy_move.pass.cpp
+0-97libcxx/test/libcxx-03/utilities/utility/pairs/pairs.pair/abi.non_trivial_copy_move.pass.cpp
+0-94libcxx/test/libcxx-03/input.output/string.streams/stringbuf/const_sso_buffer.pass.cpp
+0-89libcxx/test/libcxx-03/iterators/contiguous_iterators.pass.cpp
+0-65732 files not shown
+3-1,25138 files

LLVM/project adcc557llvm/test/CodeGen/X86 srem-vector-lkk.ll urem-vector-lkk.ll

[X86] rem-vector-lkk.ll - improve CPU coverage to cover all x86-64 levels (#169805)

SSE2/SSE42/AVX1/AVX2 + x86-64-v4 (AVX512)
DeltaFile
+264-108llvm/test/CodeGen/X86/srem-vector-lkk.ll
+262-98llvm/test/CodeGen/X86/urem-vector-lkk.ll
+526-2062 files

LLVM/project c0d81bfllvm/lib/Target/ARM ARMAsmPrinter.cpp ARMAsmPrinter.h

[ARM] Remove Subtarget from ARMAsmPrinter (#168264)

Remove Subtarget uses from ARMAsmPrinter, making use of TargetMachine
where applicable and getting the Subtarget from the MF where not. Some
of the `if() llvm_unreachable` have been replaced by `asserts`.
DeltaFile
+21-26llvm/lib/Target/ARM/ARMAsmPrinter.cpp
+1-5llvm/lib/Target/ARM/ARMAsmPrinter.h
+5-0llvm/lib/Target/ARM/ARMSubtarget.cpp
+2-2llvm/lib/Target/ARM/ARMMCInstLower.cpp
+29-334 files

LLVM/project f43d268llvm/test/CodeGen/AMDGPU shufflevector.v4p0.v4p0.ll shufflevector.v4i64.v4i64.ll

Merge branch 'main' into users/kasuga-fj/da-move-delinearize-validation
DeltaFile
+5,975-8,879llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v4p0.ll
+5,975-8,879llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v4i64.ll
+3,880-6,644llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v3p0.ll
+3,880-6,644llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v3i64.ll
+2,266-3,675llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v4i64.ll
+2,266-3,675llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v4p0.ll
+24,242-38,3963,481 files not shown
+168,921-251,8513,487 files

LLVM/project e3044cdclang/lib/Basic/Targets X86.cpp, compiler-rt/lib/builtins/cpu_model x86.c

[X86] Sync multiversion features with libgcc and refactor internal feature tables (#168750)

Compiler-rt internal feature table is synced with the one in libgcc
(common/config/i386/i386-cpuinfo.h).

LLVM internal feature table is refactored to include a field ABI_VALUE,
so we won't be relying on ordering to keep the values correct. The table
is also synced to the one in compiler-rt.
DeltaFile
+139-144llvm/include/llvm/TargetParser/X86TargetParser.def
+18-18compiler-rt/lib/builtins/cpu_model/x86.c
+14-15llvm/lib/TargetParser/X86TargetParser.cpp
+3-3clang/lib/Basic/Targets/X86.cpp
+1-2llvm/include/llvm/TargetParser/X86TargetParser.h
+175-1825 files