[all-commits] [llvm/llvm-project] 1fc72d: [RISCV] Add test for doLocalPostpass issue not che...

Krzysztof Parzyszek via All-commits all-commits at lists.llvm.org
Fri Apr 19 07:56:54 PDT 2024


  Branch: refs/heads/users/kparzysz/spr/b06-concatclauses
  Home:   https://github.com/llvm/llvm-project
  Commit: 1fc72dbc807fb138cafd05501e2e31beaa574693
      https://github.com/llvm/llvm-project/commit/1fc72dbc807fb138cafd05501e2e31beaa574693
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir

  Log Message:
  -----------
  [RISCV] Add test for doLocalPostpass issue not checking if VL was modified. NFC


  Commit: 76ad2897480a85532eee93daf041246881772693
      https://github.com/llvm/llvm-project/commit/76ad2897480a85532eee93daf041246881772693
  Author: Zaara Syeda <syzaara at ca.ibm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/P10InstrResources.td
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCMacroFusion.def
    M llvm/test/CodeGen/PowerPC/toc-data.ll

  Log Message:
  -----------
  [PowerPC] 32-bit large code-model support for toc-data (#85129)

This patch adds the pseudo op ADDItocL for 32-bit large code-model
support for toc-data.


  Commit: edbeae373489a2e710f328ceba50b4740c738217
      https://github.com/llvm/llvm-project/commit/edbeae373489a2e710f328ceba50b4740c738217
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir

  Log Message:
  -----------
  [RISCV] Explicitly bail if something modifies VL/VTYPE in doLocalPostpass

If an instruction between MI and NextMI uses VL or VTYPE we demand the
respective fields so as to not clobber them at their uses. But we don't
consider if something might modify VL or VTYPE, and will happily coalesce
two vsetvlis when we need to preserve them.

This fixes this by skipping to the next vsetvli. Demanding the fields isn't
enough, as we need to preserve the VL and VTYPE values even if no fields
are demanded.

In practice this doesn't happen, presumably due to there not being any
instructions that write to VL or VTYPE without reading them. But I noticed
this whilst working on a separate patch and split it out.


  Commit: 38205717501237f2b7a57eaabe65a8367e5f91c3
      https://github.com/llvm/llvm-project/commit/38205717501237f2b7a57eaabe65a8367e5f91c3
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/www/c_status.html

  Log Message:
  -----------
  [C99] Remove WG14 N522 from the C status page

This paper is about type compatibility rules that changed in C99, but
this is only applicable across translation units and so there's nothing
for us to test. The specific change was that C89 allowed different tag
types (e.g., struct and union) to be compatible and C99 tightened that
restriction. This is a case where the user gets whatever they get if
they link two TUs with incompatible tag types.


  Commit: 41b7341d6b27adf81262a5a0bd4e430675b73bbb
      https://github.com/llvm/llvm-project/commit/41b7341d6b27adf81262a5a0bd4e430675b73bbb
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Factor out helper to recursively collect all users (NFCI).

Factor out logic to collect all users recursively to be re-used
in https://github.com/llvm/llvm-project/pull/87816.


  Commit: 856d1c44103f09f2ed0448001de9dcda63055733
      https://github.com/llvm/llvm-project/commit/856d1c44103f09f2ed0448001de9dcda63055733
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll

  Log Message:
  -----------
  [AMDGPU] Fix predicates for BUFFER_ATOMIC_FMIN/FMAX patterns (#89066)

Use OtherPredicates to avoid interfering with other uses of
SubtargetPredicate for GFX12.


  Commit: 4f88c2311130791cf69da34b743b1b3ba7584a7b
      https://github.com/llvm/llvm-project/commit/4f88c2311130791cf69da34b743b1b3ba7584a7b
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M mlir/include/mlir-c/Dialect/NVGPU.h
    A mlir/lib/Bindings/Python/DialectNVGPU.cpp
    M mlir/lib/CAPI/Dialect/NVGPU.cpp
    M mlir/python/CMakeLists.txt
    M mlir/python/mlir/dialects/nvgpu.py
    M mlir/test/python/dialects/nvgpu.py

  Log Message:
  -----------
  [mlir][py] Add NVGPU's `TensorMapDescriptorType` in py bindings (#88855)

This PR adds NVGPU dialects' TensorMapDescriptorType in the py bindings.

This is a follow-up issue from [this
PR](https://github.com/llvm/llvm-project/pull/87153#discussion_r1546193095)


  Commit: fda04b1caaf1a61b208f23e717a2db6d9b861f5a
      https://github.com/llvm/llvm-project/commit/fda04b1caaf1a61b208f23e717a2db6d9b861f5a
  Author: Rajveer Singh Bharadwaj <rajveer.developer at icloud.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libc/examples/README.md
    M libc/examples/examples.cmake

  Log Message:
  -----------
  [libc] Replace mentions of `LIBC_FULLBUILD` with `LLVM_LIBC_FULL_BUILD` in 'examples/' (#88657)

Resolves #88328


  Commit: d558c090fc78beb6737098f058a084635b893567
      https://github.com/llvm/llvm-project/commit/d558c090fc78beb6737098f058a084635b893567
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/include/clang/Sema/ParsedAttr.h

  Log Message:
  -----------
  [NFC] Clean dead code in ParsedAttr.h (#89064)

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: dbafcd7e6d5b6c3aff74307b2ed5ee1834f275b0
      https://github.com/llvm/llvm-project/commit/dbafcd7e6d5b6c3aff74307b2ed5ee1834f275b0
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M lldb/test/API/commands/process/detach-resumes/TestDetachResumes.py

  Log Message:
  -----------
  [lldb] XFAIL TestDetachResumes on windows


  Commit: e49043512dbdc68319093da46e95a1e331ef837e
      https://github.com/llvm/llvm-project/commit/e49043512dbdc68319093da46e95a1e331ef837e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/bitreverse-codesize.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse-latency.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse.ll

  Log Message:
  -----------
  [CostModel][X86] Update BITREVERSE costs for GFNI targets

Inspired by the recent patches by @shamithoke - we have real scheduler model numbers for GFNI instructions now, allowing us to calculate an upper bounds costs table instead of performing it analytically.


  Commit: 4a5ab13bf5a94ec7f0eabaf24dfe1a5ee720b860
      https://github.com/llvm/llvm-project/commit/4a5ab13bf5a94ec7f0eabaf24dfe1a5ee720b860
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
    M llvm/test/Transforms/VectorCombine/AArch64/vecreduce-shuffle.ll

  Log Message:
  -----------
  [VectorCombine] Remove single quotes from "-passes=vector-combine"

These confuse the update_test_checks.py script when run by DOS cmd.exe


  Commit: 5d314353fbec1a15cd8900f466dcdcf2af40e8c9
      https://github.com/llvm/llvm-project/commit/5d314353fbec1a15cd8900f466dcdcf2af40e8c9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp

  Log Message:
  -----------
  [VPlan] Check for VPWidenLoadRecipe directly in truncateToMinBW. (NFCI).

Since ne
After a separate recipe has been introduced for wide loads in
a9bafe91dd0, we can directly check for load recipes in the early
bail-out and remove the redundant bail out for stores.


  Commit: 812963f6aa2adb5e990f273b8ce1a0eabcdefd7f
      https://github.com/llvm/llvm-project/commit/812963f6aa2adb5e990f273b8ce1a0eabcdefd7f
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libcxx/include/__chrono/formatter.h
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/ostream.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_day.pass.cpp

  Log Message:
  -----------
  [libc++][chrono] Improves date formatting. (#86127)

The formatting of years has been done manually since the results of %Y
outside the "typical" range may produce unexpected values. The same
applies to %F which is identical to %Y-%m-%d. None of these conversion
specifiers is affected by the locale used. So it's trivial to manually
handle this case.

This removes several platform specific ifdefs from the tests.


  Commit: 458328ae23d318a5055d5bac66426b8551bce01f
      https://github.com/llvm/llvm-project/commit/458328ae23d318a5055d5bac66426b8551bce01f
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/include/clang/Sema/Lookup.h
    A clang/include/clang/Sema/Redeclaration.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Interpreter/InterpreterUtils.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp

  Log Message:
  -----------
  [clang][NFC] Refactor `Sema::RedeclarationKind`

This patch converts the enum into scoped enum, and moves it into its own header for the time being. It's definition is needed in `Sema.h`, and is going to be needed in upcoming `SemaObjC.h`. `Lookup.h` can't hold it, because it includes `Sema.h`.


  Commit: 950bb097e11d6ee26533c00519c62df994322228
      https://github.com/llvm/llvm-project/commit/950bb097e11d6ee26533c00519c62df994322228
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    M clang/test/Sema/aarch64-sme-func-attrs.c

  Log Message:
  -----------
  Revert "[Clang][AArch64] Warn when calling non/streaming about vector size difference (#79842)"

This reverts commit 4e85e1ffcaf161736e27a24c291c1177be865976


  Commit: b854a2323337be2633b1135f590678a17e9d1ade
      https://github.com/llvm/llvm-project/commit/b854a2323337be2633b1135f590678a17e9d1ade
  Author: Robin Caloudis <robin.caloudis at gmx.de>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/c23.rst
    M libc/docs/fenv.rst
    M libc/spec/stdc.td
    M libc/src/fenv/CMakeLists.txt
    A libc/src/fenv/fetestexceptflag.cpp
    A libc/src/fenv/fetestexceptflag.h
    M libc/test/src/fenv/CMakeLists.txt
    M libc/test/src/fenv/exception_flags_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/fenv/BUILD.bazel

  Log Message:
  -----------
  [libc][c23][fenv] Implement fetestexceptflag (#87828)

Provide C23 `fetestexceptflag` function according to 7.6.4.6 in the
latest [revision of the C
standard](https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3096.pdf)
from 2023-04-02.

Closes https://github.com/llvm/llvm-project/issues/87565.


  Commit: 8656d4c6a7a742c6fa6ee02c2ace7415163e65e4
      https://github.com/llvm/llvm-project/commit/8656d4c6a7a742c6fa6ee02c2ace7415163e65e4
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParseDecl.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p6-cxx23.cpp

  Log Message:
  -----------
  [Clang][Parse] Diagnose requires expressions with explicit object parameters (#88974)

Clang currently allows the following:
```
auto x = requires (this int) { true; };
```
This patch addresses that.


  Commit: abd5e45a96954d80f6ffe6d8676c0059fae8573b
      https://github.com/llvm/llvm-project/commit/abd5e45a96954d80f6ffe6d8676c0059fae8573b
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic.h
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_other.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic_msvc.h
    M llvm/utils/gn/secondary/compiler-rt/lib/sanitizer_common/BUILD.gn

  Log Message:
  -----------
  [compiler-rt] Use __atomic builtins whenever possible

The code in this file dates back to 2012 when Clang's support for atomic
builtins was still quite limited. The bugs referenced in the comment
at the top of the file have long been fixed and using the compiler
builtins directly should now generate slightly better code.
Additionally, this allows using the atomic builtin header for platforms
where the __sync_builtins are lacking (e.g. Arm Morello).

This change does not introduce any code generation changes for
__tsan_read*/__tsan_write* or __tsan_func_{entry,exit} on x86, which
indicates the previously noted compiler issues have been fixed.

We also have to touch the non-clang codepaths here since the only way we
can make this work easily is by making the memory_order enum match the
compiler-provided macros, so we have to update the debug checks that
assumed the enum was always a bitflag.

The one downside of this change is that 32-bit MIPS now definitely
requires libatomic (but that may already have been needed for RMW ops).

Reviewed By: dvyukov

Pull Request: https://github.com/llvm/llvm-project/pull/84439


  Commit: a88ea8fbb3953c2fe2887438baf342e381a79d8b
      https://github.com/llvm/llvm-project/commit/a88ea8fbb3953c2fe2887438baf342e381a79d8b
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/cuf-invalid.fir

  Log Message:
  -----------
  [flang][cuda] Update memory effect on fir.cuda_allocate op (#88930)

Add MemRead effect on the box operand as the descriptor might be read
when performing the allocation of the data.

Also update the expected type of the box operand to be a reference.
Check in the verifier that this is a reference to a box or class type.

This addresses the comment made post commit on #88586


  Commit: da70f2cdcde8cb96e75ce0236db1fb5353407a69
      https://github.com/llvm/llvm-project/commit/da70f2cdcde8cb96e75ce0236db1fb5353407a69
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/lib/Lower/Allocatable.cpp
    A flang/test/Lower/CUDA/cuda-allocatable.cuf

  Log Message:
  -----------
  [flang][cuda] Lower ALLOCATE for device variable (#88980)

Replace the runtime call to `AllocatableAllocate` for CUDA device
variable to the newly added `fir.cuda_allocate` operation.


  Commit: 19c6a7feca6e1558ef7cbe18efd2477c1126899d
      https://github.com/llvm/llvm-project/commit/19c6a7feca6e1558ef7cbe18efd2477c1126899d
  Author: Alexandros Lamprineas <alexandros.lamprineas at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-cpu-supports.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/Sema/aarch64-cpu-supports.c
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/Sema/attr-target-version.c
    M clang/test/SemaCXX/attr-target-version.cpp
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h

  Log Message:
  -----------
  [FMV] Remove useless features according the latest ACLE spec. (#88965)

As explained in https://github.com/ARM-software/acle/pull/315 we
are deprecating features which aren't adding any value. These are:

sha1, pmull, dit, dgh, ebf16, sve-bf16, sve-ebf16, sve-i8mm,
sve2-pmull128, memtag2, memtag3, ssbs2, bti, ls64_v, ls64_accdata


  Commit: 06947b9f8d258fe66fc69f1e7c0197cb621da3a5
      https://github.com/llvm/llvm-project/commit/06947b9f8d258fe66fc69f1e7c0197cb621da3a5
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libc/config/linux/api.td
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/pthread_condattr_t.h
    M libc/include/pthread.h.def
    M libc/spec/posix.td
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_condattr_destroy.cpp
    A libc/src/pthread/pthread_condattr_destroy.h
    A libc/src/pthread/pthread_condattr_getclock.cpp
    A libc/src/pthread/pthread_condattr_getclock.h
    A libc/src/pthread/pthread_condattr_getpshared.cpp
    A libc/src/pthread/pthread_condattr_getpshared.h
    A libc/src/pthread/pthread_condattr_init.cpp
    A libc/src/pthread/pthread_condattr_init.h
    A libc/src/pthread/pthread_condattr_setclock.cpp
    A libc/src/pthread/pthread_condattr_setclock.h
    A libc/src/pthread/pthread_condattr_setpshared.cpp
    A libc/src/pthread/pthread_condattr_setpshared.h
    M libc/test/src/pthread/CMakeLists.txt
    A libc/test/src/pthread/pthread_condattr_test.cpp

  Log Message:
  -----------
  [libc][POSIX][pthreads] implement pthread_condattr_t functions (#88987)

Implement:
- pthread_condattr_destroy
- pthread_condattr_getclock
- pthread_condattr_getpshared
- pthread_condattr_init
- pthread_condattr_setclock
- pthread_condattr_setpshared

Fixes: #88581


  Commit: 4edeaffbf255137861f5153eb1a6183d956efede
      https://github.com/llvm/llvm-project/commit/4edeaffbf255137861f5153eb1a6183d956efede
  Author: fabrizio-indirli <fabrizio.indirli at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-resize.mlir

  Log Message:
  -----------
  [mlir][tosa] Fix tosa.Resize-to-linalg lowering (#88514)


  Commit: 564f9abfcc3b99a01843f88b5a2c7309bfab5a33
      https://github.com/llvm/llvm-project/commit/564f9abfcc3b99a01843f88b5a2c7309bfab5a33
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel][mlir] Add missing dep after 4f88c2311130791cf69da34b743b1b3ba7584a7b


  Commit: e59632bdfd4c70caed437216af17d335858686fd
      https://github.com/llvm/llvm-project/commit/e59632bdfd4c70caed437216af17d335858686fd
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVScheduleV.td

  Log Message:
  -----------
  [RISCV] Fix typo in RISCVScheduleV.td that was introduced in 60a1158


  Commit: 676d3bafc09d0c331a04b813804407334de12917
      https://github.com/llvm/llvm-project/commit/676d3bafc09d0c331a04b813804407334de12917
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [bazel][libc] Add missing dep after b854a2323337be2633b1135f590678a17e9d1ade


  Commit: 693a458287d019c5c6a66fe3019d099df2978cdb
      https://github.com/llvm/llvm-project/commit/693a458287d019c5c6a66fe3019d099df2978cdb
  Author: Abdul Raheem <55028856+abdulraheembeigh at users.noreply.github.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Interfaces/ViewLikeInterface.td

  Log Message:
  -----------
  [MLIR] Update doc comment in ViewLikeInterface.td (NFC) (#89074)

Signed-off: Abdul Raheem Beigh <abdulraheembeigh at gmail.com>


  Commit: 6f7160eedb2db02f37d4ffd52fff7b0cf88b3fdc
      https://github.com/llvm/llvm-project/commit/6f7160eedb2db02f37d4ffd52fff7b0cf88b3fdc
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll

  Log Message:
  -----------
  [SLP]Attempt to vectorize long stores, if short one failed.

We can try to vectorize long store sequences, if short ones were
unsuccessful because of the non-profitable vectorization. It should not
increase compile time significantly (stores are sorted already,
complexity is n x log n), but vectorize extra code.

Metric: size..text

Program                                                                         size..text
                                                                                results     results0    diff
         test-suite :: External/SPEC/CINT2006/400.perlbench/400.perlbench.test  1088012.00  1088236.00  0.0%
                  test-suite :: SingleSource/UnitTests/matrix-types-spec.test   480396.00   480476.00  0.0%
          test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   664613.00   664661.00  0.0%
         test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   664613.00   664661.00  0.0%
        test-suite :: External/SPEC/CFP2017rate/510.parest_r/510.parest_r.test  2041105.00  2040961.00 -0.0%
                 test-suite :: MultiSource/Applications/JM/lencod/lencod.test   836563.00   836387.00 -0.0%
                 test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1035100.00  1032140.00 -0.3%

In all benchmarks extra code gets vectorized

Reviewers: RKSimon

Reviewed By: RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/88563


  Commit: eefee382186005d3662958e076c8e61e286ea1ab
      https://github.com/llvm/llvm-project/commit/eefee382186005d3662958e076c8e61e286ea1ab
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libc/src/pthread/pthread_condattr_destroy.cpp
    M libc/test/src/pthread/CMakeLists.txt

  Log Message:
  -----------
  [libc] set cmake dependencies for condattr test (#89103)

The entrypoints are not yet exposed on non-x86. Express this dependency
to
unbreak post submit.

Fixes #88987


  Commit: 825536039d667eeb933c590fe40c358fdea03a8d
      https://github.com/llvm/llvm-project/commit/825536039d667eeb933c590fe40c358fdea03a8d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/X86/fshl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshl-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshl-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshl.ll
    M llvm/test/Analysis/CostModel/X86/fshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshr.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-sizelatency.ll

  Log Message:
  -----------
  [CostModel][X86] Add basic GFNI target test coverage for shift/rotate costs


  Commit: da04e4afd3cae13581cac85688fbf10a5848655f
      https://github.com/llvm/llvm-project/commit/da04e4afd3cae13581cac85688fbf10a5848655f
  Author: Noah Goldstein <goldstein.w.n at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp

  Log Message:
  -----------
  [InstCombine] Use `auto *` instead of `auto` in `visitSIToFP`; NFC


  Commit: d423d80e560d8bf7ca493596d9f34a9e1f0eede7
      https://github.com/llvm/llvm-project/commit/d423d80e560d8bf7ca493596d9f34a9e1f0eede7
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libcxx/CMakeLists.txt
    M libcxx/cmake/caches/Apple.cmake
    M libcxx/include/CMakeLists.txt
    R libcxx/include/__algorithm/pstl_backend.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backend.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/any_of.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/backend.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/fill.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/find_if.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/for_each.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/libdispatch.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/merge.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/serial.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/stable_sort.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/thread.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/transform.h
    M libcxx/include/__algorithm/pstl_backends/cpu_backends/transform_reduce.h
    M libcxx/include/__algorithm/pstl_copy.h
    M libcxx/include/__algorithm/pstl_count.h
    M libcxx/include/__algorithm/pstl_find.h
    M libcxx/include/__algorithm/pstl_for_each.h
    M libcxx/include/__algorithm/pstl_generate.h
    M libcxx/include/__algorithm/pstl_is_partitioned.h
    M libcxx/include/__algorithm/pstl_merge.h
    M libcxx/include/__algorithm/pstl_move.h
    M libcxx/include/__algorithm/pstl_replace.h
    M libcxx/include/__algorithm/pstl_rotate_copy.h
    M libcxx/include/__algorithm/pstl_sort.h
    M libcxx/include/__algorithm/pstl_stable_sort.h
    M libcxx/include/__algorithm/pstl_transform.h
    M libcxx/include/__config_site.in
    M libcxx/include/__numeric/pstl_transform_reduce.h
    A libcxx/include/__pstl/backends/libdispatch.h
    A libcxx/include/__pstl/backends/serial.h
    A libcxx/include/__pstl/backends/std_thread.h
    A libcxx/include/__pstl/configuration.h
    A libcxx/include/__pstl/configuration_fwd.h
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap
    M libcxx/src/CMakeLists.txt
    M libcxx/src/pstl/libdispatch.cpp
    M libcxx/test/libcxx/algorithms/pstl.libdispatch.chunk_partitions.pass.cpp
    M libcxx/test/libcxx/vendor/apple/system-install-properties.sh.cpp
    M libcxx/utils/libcxx/test/features.py

  Log Message:
  -----------
  [libc++][pstl] Promote CPU backends to top-level backends (#88968)

This patch removes the two-level backend dispatching mechanism we had in
the PSTL. Instead of selecting both a PSTL backend and a PSTL CPU
backend, we now only select a top-level PSTL backend. This greatly
simplifies the PSTL configuration layer.

While this patch technically removes some flexibility from the PSTL
configuration mechanism because CPU backends are not considered
separately, it opens the door to a much more powerful configuration
mechanism based on chained backends in a follow-up patch.

This is a step towards overhauling the PSTL dispatching mechanism.


  Commit: 8d49ce176414cd4d0d5d276fd721d9226e17e810
      https://github.com/llvm/llvm-project/commit/8d49ce176414cd4d0d5d276fd721d9226e17e810
  Author: David Green <david.green at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-llrint.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/llrint-conv-fp16.ll
    M llvm/test/CodeGen/AArch64/llrint-conv.ll
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter.td

  Log Message:
  -----------
  [GlobalISel][AArch64] Add LLRINT support (#88702)

This hooks up G_INTRINSIC_LLRINT instructions, very similar to the lrint
nodes that already exist. On AArch64 they are treated the same as lrint
with the default return types.


  Commit: 2c22a0c16d1cb844eac142156ba67098627a336c
      https://github.com/llvm/llvm-project/commit/2c22a0c16d1cb844eac142156ba67098627a336c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/sub-xor.ll

  Log Message:
  -----------
  [InstCombine] Add test case for turning sub into xor using dominating condition. NFC

I plan to disable using dominating conditions for turning sub into
xor, but first we need that demonstrates it currently happens.


  Commit: 421a8c5892b7e59f27b2c21452f81fa789a758fd
      https://github.com/llvm/llvm-project/commit/421a8c5892b7e59f27b2c21452f81fa789a758fd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll

  Log Message:
  -----------
  [InstCombine] Add phase ordering test for #88239. NFC


  Commit: ed741ffe893698cd14c6785ac2ee7031d9d344a6
      https://github.com/llvm/llvm-project/commit/ed741ffe893698cd14c6785ac2ee7031d9d344a6
  Author: Nathan Lanza <nathanlanza at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [github] Add ClangIR to new-prs-labeler.yml (#86088)


  Commit: c02ed29ec151d1d555c3735efef2ab215126ddbf
      https://github.com/llvm/llvm-project/commit/c02ed29ec151d1d555c3735efef2ab215126ddbf
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/X86/fshl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshl-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshl-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshl.ll
    M llvm/test/Analysis/CostModel/X86/fshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshr.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshl-rot.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshr-rot.ll

  Log Message:
  -----------
  [CostModel][X86] Recognise vector rotation by uniform constant patterns

Adds suitable costs for AVX512 targets (we still rely on default expansion for AVX2 and earlier)


  Commit: 58a08e154c804051aaca9151a8053aea3ec15646
      https://github.com/llvm/llvm-project/commit/58a08e154c804051aaca9151a8053aea3ec15646
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv32zba.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add coverage for strength reduction of mul by small negative immediates


  Commit: cc82f1290a1e2157a6c0530d78d8cc84d2b8553d
      https://github.com/llvm/llvm-project/commit/cc82f1290a1e2157a6c0530d78d8cc84d2b8553d
  Author: Usman Nadeem <mnadeem at quicinc.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.ll
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext-scalable.ll
    M llvm/test/CodeGen/AArch64/aarch64-smull.ll
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
    M llvm/test/CodeGen/AArch64/arm64-vhadd.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-contract.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-fast.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/concat_vector-truncate-combine.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/AArch64/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/fdiv-combine.ll
    M llvm/test/CodeGen/AArch64/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AArch64/fp-veclib-expansion.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/funnel-shift-rot.ll
    M llvm/test/CodeGen/AArch64/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/insert-extend.ll
    M llvm/test/CodeGen/AArch64/insert-subvector-res-legalization.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/ldexp.ll
    M llvm/test/CodeGen/AArch64/llvm-ir-to-intrinsic.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll
    M llvm/test/CodeGen/AArch64/logic-shift.ll
    M llvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
    M llvm/test/CodeGen/AArch64/neon-dotreduce.ll
    M llvm/test/CodeGen/AArch64/neon-extadd.ll
    M llvm/test/CodeGen/AArch64/neon-shift-neg.ll
    M llvm/test/CodeGen/AArch64/predicated-add-sub.ll
    M llvm/test/CodeGen/AArch64/ragreedy-local-interval-cost.ll
    M llvm/test/CodeGen/AArch64/rcpc3-sve.ll
    M llvm/test/CodeGen/AArch64/reassocmls.ll
    M llvm/test/CodeGen/AArch64/reduce-shuffle.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sink-addsub-of-const.ll
    M llvm/test/CodeGen/AArch64/sme-pstate-sm-changing-call-disable-coalescing.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-compatible-interface.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fp-dots.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-int-dots.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlall.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-rshl.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sqdmulh.ll
    M llvm/test/CodeGen/AArch64/split-vector-insert.ll
    M llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
    M llvm/test/CodeGen/AArch64/srem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/sve-abd.ll
    M llvm/test/CodeGen/AArch64/sve-bitcast.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
    M llvm/test/CodeGen/AArch64/sve-expand-div.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-addressing-modes.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-build-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-concat.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp128.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-frame-offests-crash.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-splat-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-vector-shuffle-tbl.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reciprocal.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reduce-fadda.ll
    M llvm/test/CodeGen/AArch64/sve-fptosi-sat.ll
    M llvm/test/CodeGen/AArch64/sve-fptoui-sat.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-addr-opts.ll
    M llvm/test/CodeGen/AArch64/sve-hadd.ll
    M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
    M llvm/test/CodeGen/AArch64/sve-insert-element.ll
    M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-index.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-logical-imm.ll
    M llvm/test/CodeGen/AArch64/sve-ld-post-inc.ll
    M llvm/test/CodeGen/AArch64/sve-ld1r.ll
    M llvm/test/CodeGen/AArch64/sve-lsr-scaled-index-addressing-mode.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-ldst-sext.ll
    M llvm/test/CodeGen/AArch64/sve-masked-ldst-zext.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-pr62151.ll
    M llvm/test/CodeGen/AArch64/sve-pred-arith.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop2.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop3.ll
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmple.ll
    M llvm/test/CodeGen/AArch64/sve-redundant-store.ll
    M llvm/test/CodeGen/AArch64/sve-split-extract-elt.ll
    M llvm/test/CodeGen/AArch64/sve-split-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-split-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-split-insert-elt.ll
    M llvm/test/CodeGen/AArch64/sve-split-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-split-load.ll
    M llvm/test/CodeGen/AArch64/sve-split-store.ll
    M llvm/test/CodeGen/AArch64/sve-srem-combine-loop.ll
    M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-imm.ll
    M llvm/test/CodeGen/AArch64/sve-stepvector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-convert.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-fma.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-immediates.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-log-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-store.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-zip-uzp-trn.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ptest.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-stores.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-umulo-sdnode.ll
    M llvm/test/CodeGen/AArch64/sve-uunpklo-load-uzp1-store-combine.ll
    M llvm/test/CodeGen/AArch64/sve-vecreduce-dot.ll
    M llvm/test/CodeGen/AArch64/sve-vecreduce-fold.ll
    M llvm/test/CodeGen/AArch64/sve2-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve2-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-combine-rshrnb.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve2-rsh.ll
    M llvm/test/CodeGen/AArch64/sve2-xar.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx2.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/urem-seteq-vec-nonzero.ll
    M llvm/test/CodeGen/AArch64/vec_uaddo.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll
    M llvm/test/CodeGen/AArch64/vector-gep.ll
    M llvm/test/CodeGen/AArch64/vselect-constants.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-sve-instructions.s

  Log Message:
  -----------
  [AArch64] Update latencies for Cortex-A510 scheduling model (#87293)

Updated according to the Software Optimization Guide for Arm®
Cortex®‑A510 Core Revision: r1p3 Issue 6.0.


  Commit: 4572a2db2c2c48820e79fb65f3810348371db4f1
      https://github.com/llvm/llvm-project/commit/4572a2db2c2c48820e79fb65f3810348371db4f1
  Author: David Green <david.green at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll

  Log Message:
  -----------
  [AArch64] Add some test cases for LD2/LD3/LD4 shuffles. NFC


  Commit: 5a0942cd7423069e78fdfb9743a13aedfa7bdee0
      https://github.com/llvm/llvm-project/commit/5a0942cd7423069e78fdfb9743a13aedfa7bdee0
  Author: Youngsuk Kim <joseph942010 at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/test/CodeGen/NVPTX/dynamic_stackalloc.ll
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/nvptx-basic.ll.expected

  Log Message:
  -----------
  [llvm][NVPTX] Don't emit unused var 'temp_param_reg' (NFC) (#89004)

Don't emit unused variable 'temp_param_reg' which has been around since
ae556d3ef72dfe5f40a337b7071f42b7bf5b66a4 .


  Commit: 800f1050e190430f217e1fd0db9414dacc835e11
      https://github.com/llvm/llvm-project/commit/800f1050e190430f217e1fd0db9414dacc835e11
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M .github/new-prs-labeler.yml

  Log Message:
  -----------
  [GitHub] Add a new mapping for `offload` subproject (#89118)

Fix #89071.


  Commit: 6f7976c883da592f2cf6bfadef152e4203c00445
      https://github.com/llvm/llvm-project/commit/6f7976c883da592f2cf6bfadef152e4203c00445
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/sys_info.h
    M libcxx/include/chrono
    A libcxx/test/libcxx/time/time.zone/time.zone.info/time.zone.info.sys/ostream.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.sys_info.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.sys/ostream.pass.cpp
    M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
    M libcxx/test/support/test_macros.h

  Log Message:
  -----------
  [libc++][TZDB] Adds sys_info formatter. (#85896)

Implements parts of:
- P0355 Extending <chrono> to Calendars and Time Zones
- P1361 Integration of chrono with text formatting


  Commit: b1dc62f139ef265a36a2a739ce9ba4e1e48a6dbe
      https://github.com/llvm/llvm-project/commit/b1dc62f139ef265a36a2a739ce9ba4e1e48a6dbe
  Author: Amirreza Ashouri <ar.ashouri999 at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/test/Sema/static-assert.c
    M clang/test/SemaCXX/builtins.cpp
    M clang/test/SemaCXX/deprecated-builtins.cpp

  Log Message:
  -----------
  [clang]Treat arguments to builtin type traits as template type arguments (#87132)

This change improves error messages for builtins in case of empty
parentheses.

Fixes llvm#86997


  Commit: 6cea7c491f4c4c68aa0494a9b18f36ff40c22c81
      https://github.com/llvm/llvm-project/commit/6cea7c491f4c4c68aa0494a9b18f36ff40c22c81
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/test/CodeGen/X86/code-model-elf.ll

  Log Message:
  -----------
  [X86] Always use 64-bit relocations in no-PIC large code model (#89101)

This matches other types of relocations, e.g. to constant pool. And
makes things more consistent with PIC large code model.

Some users of the large code model may not place small data in the lower
2GB of the address space (e.g.
https://github.com/ClangBuiltLinux/linux/issues/2016), so just
unconditionally use 64-bit relocations in the large code model.

So now functions in a section not marked large will use 64-bit
relocations to reference everything when using the large code model.

This also fixes some lldb tests broken by #88172
(https://lab.llvm.org/buildbot/#/builders/68/builds/72458).


  Commit: 1460b4964c7ada2f7536006722c8585b5bd0a1b5
      https://github.com/llvm/llvm-project/commit/1460b4964c7ada2f7536006722c8585b5bd0a1b5
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Manually port d423d80e560d


  Commit: db2f64ee1f743153f242ca92bf627458ba7f8000
      https://github.com/llvm/llvm-project/commit/db2f64ee1f743153f242ca92bf627458ba7f8000
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll

  Log Message:
  -----------
  AMDGPU: Fix not handling atomicrmw fadd in exotic address spaces correctly

We try to interpret unknown address space numbers as aliases of global,
but this wasn't applied here. Also improve test coverage for the
buffer fat pointer address space.


  Commit: 652bcf685c72447f3cc46d93d6c9c1948e8499f3
      https://github.com/llvm/llvm-project/commit/652bcf685c72447f3cc46d93d6c9c1948e8499f3
  Author: Matthias Braun <matze at braunis.de>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    A llvm/test/CodeGen/X86/codegen-prepare-addrmode-tls.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-tls.ll

  Log Message:
  -----------
  CodeGenPrepare: Add support for llvm.threadlocal.address address-mode sinking (#87844)

Depending on the TLSMode many thread-local accesses on x86 can be
expressed by adding a %fs: segment register to an addressing mode. Even
if there are mutliple users of a `llvm.threadlocal.address` intrinsic it
is generally not worth sharing the value in a register but instead fold
the %fs access into multiple addressing modes.

Hence this changes CodeGenPrepare to duplicate the
`llvm.threadlocal.address` intrinsic as necessary.

Introduces a new `TargetLowering::addressingModeSupportsTLS` callback
that allows targets to indicate whether TLS accesses can be part of an
addressing mode.

This is fixing a performance problem, as this folding of TLS-accesses
into multiple addressing modes happened naturally before the
introduction of the `llvm.threadlocal.address` intrinsic, but regressed
due to `SelectionDAG` keeping things in registers when accessed across
basic blocks, so CodeGenPrepare needs to duplicate to mitigate this. We
see a ~0.5% recovery in a codebase with heavy TLS usage (HHVM).

This fixes most of #87437


  Commit: 2583b2eea4a509424e5e5f51dffedd9beede76a3
      https://github.com/llvm/llvm-project/commit/2583b2eea4a509424e5e5f51dffedd9beede76a3
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/runtime/extensions.cpp

  Log Message:
  -----------
  [flang][NFC] Add missing include for FreeBSD

Suggested by dankm here: https://github.com/llvm/llvm-project/pull/88517


  Commit: d0c51f7d5496015ce410cc758a7caf976ffaaec7
      https://github.com/llvm/llvm-project/commit/d0c51f7d5496015ce410cc758a7caf976ffaaec7
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/lib/CodeGen/MachineBasicBlock.cpp

  Log Message:
  -----------
  [LiveIns] Improve recomputeLiveIns() (#88951)

Some small changes to recomputeLiveIns() to improve performance:

- Instead of copying the list of old live-ins, and then clearing
  them, a new method swaps the list for an empty one.
- getLiveIns() now returns a constant reference to the list

As result, the list-data is never copied. Depending on the
implementation
details of the vector container, it can also save calls to allocate
and deallocate memory.
I see a small improvement on CTMark with these changes.

---------

Co-authored-by: Nikita Popov <github at npopov.com>


  Commit: 60b90b523323f8196a9e4a68b1f33358624c09eb
      https://github.com/llvm/llvm-project/commit/60b90b523323f8196a9e4a68b1f33358624c09eb
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py

  Log Message:
  -----------
  [lldb][DynamicLoader] Fix lldb unable to stop at _dl_debug_state if user set it before the process launched. (#88792)

If user sets a breakpoint at `_dl_debug_state` before the process
launched, the breakpoint is not resolved yet. When lldb loads dynamic
loader module, it's created with `Target::GetOrCreateModule` which
notifies any pending breakpoint to resolve. However, the module's
sections are not loaded at this time. They are loaded after returned
from
[Target::GetOrCreateModule](https://github.com/llvm/llvm-project/blob/0287a5cc4e2a5ded1ae2e4079f91052e6a6b8d9b/lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp#L574-L577).
This change fixes it by manually resolving breakpoints after creating
dynamic loader module.


  Commit: e15f47f2675a5400464aec00219658882df5e3fa
      https://github.com/llvm/llvm-project/commit/e15f47f2675a5400464aec00219658882df5e3fa
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/include/llvm/Analysis/SimplifyQuery.h
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/test/Transforms/InstCombine/sub-xor.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll

  Log Message:
  -----------
  [InstCombine] Don't use dominating conditions to transform sub into xor. (#88566)

Other passes are unable to reverse this transform if we use dominating
conditions.
    
Fixes #88239.


  Commit: f309c882ea5ad411ac1011a4228c0e49b1025bb4
      https://github.com/llvm/llvm-project/commit/f309c882ea5ad411ac1011a4228c0e49b1025bb4
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/runtime/extensions.cpp

  Log Message:
  -----------
  Revert "[flang][NFC] Add missing include for FreeBSD"

This reverts commit 2583b2eea4a509424e5e5f51dffedd9beede76a3.


  Commit: 0cee89431d77d0bb0809fd9b2c9d21da2a2783aa
      https://github.com/llvm/llvm-project/commit/0cee89431d77d0bb0809fd9b2c9d21da2a2783aa
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/runtime/extensions.cpp

  Log Message:
  -----------
  [flang][NFC] Add missing include for FreeBSD

Suggested by dankm here: https://github.com/llvm/llvm-project/pull/88517


  Commit: 9435edf628cb2011652897e1f10f7c55313d50be
      https://github.com/llvm/llvm-project/commit/9435edf628cb2011652897e1f10f7c55313d50be
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/lib/Lower/Allocatable.cpp
    M flang/test/Lower/CUDA/cuda-allocatable.cuf

  Log Message:
  -----------
  [flang][cuda] Lower DEALLOCATE for device variables (#89091)

Replace the runtime call to `AllocatableDeallocate` for CUDA device
variable to the newly added `fir.cuda_deallocate` operation.

This is similar with #88980 

A third patch will handle the case of automatic dealloctaion of device
allocatable variables


  Commit: 1b87418b9960983f54aa67f87018466ae12d0ec6
      https://github.com/llvm/llvm-project/commit/1b87418b9960983f54aa67f87018466ae12d0ec6
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel

  Log Message:
  -----------
  [bazel] Improve liblldb building (#89095)

On Linux using --version-script doesn't force loading of the underlying
archives that contain the symbols. By setting alwayslink=True on the API
cc_library we virtually get this behavior. This also allows downstream
users to use the exports files used by cmake. We could build more
configurability into this but there are also a lot of possible
variations users might want.


  Commit: 0ab3f160c4bff1c7d57c046b95ab8c5035ae986f
      https://github.com/llvm/llvm-project/commit/0ab3f160c4bff1c7d57c046b95ab8c5035ae986f
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rv64zba.ll

  Log Message:
  -----------
  [RISCV] Add coverage of add (mul X, C), Y oppurtunity using shNadd


  Commit: 678f19f08296fec299438130cf5943714c590b7e
      https://github.com/llvm/llvm-project/commit/678f19f08296fec299438130cf5943714c590b7e
  Author: azhan92 <alisonxzhang at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Support/Unix/Path.inc
    M llvm/test/tools/llvm-symbolizer/input-file-err.test
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/Path.cpp

  Log Message:
  -----------
  [Support] Report EISDIR when opening a directory (#79880)

The test `llvm/unittests/Support/CommandLineTest.cpp` that handles
errors in expansion of response files was previously disabled for AIX.
Originally the code was dependent on `read` returning `EISDIR` which
occurs on platforms such as Linux. However, other platforms such as AIX
allow use of `read` on file descriptors for directories. This change
updates `readNativeFile` to produce `EISDIR` on AIX and z/OS when used
on a directory (instead of relying on the call to `read` to do so).

---------

Co-authored-by: Alison Zhang <alisonzhang at ibm.com>
Co-authored-by: James Henderson <46713263+jh7370 at users.noreply.github.com>


  Commit: 26101e8c50e07ea53869b0c7f343d76bfed61b02
      https://github.com/llvm/llvm-project/commit/26101e8c50e07ea53869b0c7f343d76bfed61b02
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M flang/lib/Semantics/check-cuda.cpp
    M flang/test/Semantics/cuf11.cuf

  Log Message:
  -----------
  [flang][cuda] Avoid crash by exiting the check if assignment is not usable (#89149)

In the presence of other semantic error, `GetAssignment` would return a
nullptr and therefore would make the rest of the check crash when trying
to collect symbols.

Exiting early when we have a nullptr so the compiler doesn't crash and
user can get the meaningful semantic error.


  Commit: 823eb1a3252dd773f9c4d92093591f1b39ac27d4
      https://github.com/llvm/llvm-project/commit/823eb1a3252dd773f9c4d92093591f1b39ac27d4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp

  Log Message:
  -----------
  [SelectionDAG] Add some validation of (S/U)(ADD/SUB)O_CARRY nodes. (#89133)


  Commit: 156ab4d4fb06be93b0cfce675e4cf86d330d879c
      https://github.com/llvm/llvm-project/commit/156ab4d4fb06be93b0cfce675e4cf86d330d879c
  Author: Qizhi Hu <836744285 at qq.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Scope.h
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Sema/SemaDecl.cpp
    A clang/test/SemaCXX/PR75221.cpp

  Log Message:
  -----------
  [Clang][Sema] set declaration invalid earlier to prevent crash in calculating record layout (#87173)

Try to fix https://github.com/llvm/llvm-project/issues/75221
This crash caused by calculating record layout which contains a field
declaration with dependent type. Make it invalid before it is a complete
definition to prevent this crash. Define a new scope type to record this
type alias and set the record declaration invalid when it is defined in
a type alias template.

Co-authored-by: huqizhi <836744285 at qq.com>


  Commit: 888836930b1ed30b2095d45fcffc482560cb0e39
      https://github.com/llvm/llvm-project/commit/888836930b1ed30b2095d45fcffc482560cb0e39
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/pr46983.ll

  Log Message:
  -----------
  Revert "[SLP]Attempt to vectorize long stores, if short one failed."

This reverts commit 6f7160eedb2db02f37d4ffd52fff7b0cf88b3fdc.

This still causes large compile-time regressions in some cases.


  Commit: 748ef7eccc8b997ee5553cc5aadf04d7c7d0556f
      https://github.com/llvm/llvm-project/commit/748ef7eccc8b997ee5553cc5aadf04d7c7d0556f
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/lib/AST/RecordLayoutBuilder.cpp
    A clang/test/CodeGenCUDA/record-layout.cu

  Log Message:
  -----------
  [CUDA][HIP] Fix record layout on Windows (#87651)

On windows, record layout should be consistent with host side, otherwise
host code is not able to access fields of the record correctly.

Fixes: https://github.com/llvm/llvm-project/issues/51031

Fixes: SWDEV-446010


  Commit: 097b68ff067565af744b5b0327732d7c199710ab
      https://github.com/llvm/llvm-project/commit/097b68ff067565af744b5b0327732d7c199710ab
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/rvv-cmp.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-select.ll

  Log Message:
  -----------
  [RISCV][TTI] Refine the cost of FCmp (#88833)

This patch introduces following changes
- Support all fp predicates
- Use the Val type to estimate the latency/throughput cost
- Assign a cost of 1 for mask operations as LMULCost for mask types
cannot be correctly estimated.


  Commit: 525d00e5edc4b83105c6ad518926b174f76c3a1c
      https://github.com/llvm/llvm-project/commit/525d00e5edc4b83105c6ad518926b174f76c3a1c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/integer-round-up-pow2-alignment.ll

  Log Message:
  -----------
  [InstCombine] Fix poison propagation in round up alignment fold

We can't directly use the high bits value if it is more poisonous
due to poison elements in the masks.

This fixes the issue reported in
https://github.com/llvm/llvm-project/pull/88217#issuecomment-2061034941.


  Commit: 0ee260ec37a039ffc276f2f827c842f71513a3e9
      https://github.com/llvm/llvm-project/commit/0ee260ec37a039ffc276f2f827c842f71513a3e9
  Author: Kai Luo <lkail at cn.ibm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td

  Log Message:
  -----------
  [PowerPC] `ANDI_rec_1_*` should define CR0 (#89034)

These pseudo instructions finally copy the result to CR0 so they should
define `CR0` in their definitions.


  Commit: 29ecd6d50f1400e3101f27567b535eb8af905f58
      https://github.com/llvm/llvm-project/commit/29ecd6d50f1400e3101f27567b535eb8af905f58
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M polly/lib/Analysis/DependenceInfo.cpp
    M polly/lib/Analysis/ScopBuilder.cpp

  Log Message:
  -----------
  [clang-format] Revert breaking stream operators to previous default (#89016)

Reverts commit d68826dfbd98, which changes the previous default behavior
of always breaking before a stream insertion operator `<<` if both
operands are string literals.

Also reverts the related commits 27f547968cce and bf05be5b87fc.

See the discussion in #88483.


  Commit: b6cc667190e3bee7485a225d3dadd8a57c0a22b6
      https://github.com/llvm/llvm-project/commit/b6cc667190e3bee7485a225d3dadd8a57c0a22b6
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp

  Log Message:
  -----------
  [clang-format] Annotate ampamp after new/delete as BinaryOperator (#89033)

Fixes #78789.


  Commit: f2695a1c2f561da42b973187a254b6eeb7da76a9
      https://github.com/llvm/llvm-project/commit/f2695a1c2f561da42b973187a254b6eeb7da76a9
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/Frontend/MultiplexConsumer.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/Modules/reduced-bmi-empty-module-purview.cppm

  Log Message:
  -----------
  [C++20] [Modules] Avoid writing untouched DeclUpdates from GMF in
Reduced BMI

Mitigate https://github.com/llvm/llvm-project/issues/61447

The root cause of the above problem is that when we write a declaration,
we need to lookup all the redeclarations in the imported modules. Then
it will be pretty slow if there are too many redeclarations in different
modules. This patch doesn't solve the porblem.

What the patchs mitigated is, when we writing a named module, we shouldn't
write the declarations from GMF if it is unreferenced **in current
module unit**. The difference here is that, if the declaration is used
in the imported modules, we used to emit it as an update. But we
definitely want to avoid that after this patch.

For that reproducer in
https://github.com/llvm/llvm-project/issues/61447, it used to take 2.5s
to compile and now it only takes 0.49s to compile, which is a big win.


  Commit: 3fbb815c8c82c87f9a6e59e053ab60bad08589f6
      https://github.com/llvm/llvm-project/commit/3fbb815c8c82c87f9a6e59e053ab60bad08589f6
  Author: Luke Lau <luke at igalia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp

  Log Message:
  -----------
  [RISCV] Check that VLMAX is the same when demanding exact VL (#89080)


  Commit: 3e2aad412ada8f1db88c9e0f984a302deed74f4b
      https://github.com/llvm/llvm-project/commit/3e2aad412ada8f1db88c9e0f984a302deed74f4b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp

  Log Message:
  -----------
  [RISCV] Speed up RISCVRegisterInfo::needsFrameBaseReg when frame pointer isn't used. NFC (#89163)

The callee saved size is only used if there is a frame pointer. Sink the
code onto the frame pointer only path.


  Commit: 8b37ec1f7bda40c240f7bfda6737df5043860103
      https://github.com/llvm/llvm-project/commit/8b37ec1f7bda40c240f7bfda6737df5043860103
  Author: Will Hawkins <hawkinsw at obs.cr>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libcxx/test/std/ranges/range.adaptors/range.take/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/types.h

  Log Message:
  -----------
  [libc++][NFC] Add additional tests for begin/end of std::ranges::take_view (#79085)

Add additional tests for `begin`/`end` of `std::ranges::take_view`.

In partial fulfillment of #72406.


  Commit: 808d794a45e169601ff16f72beae2f7bd79342a2
      https://github.com/llvm/llvm-project/commit/808d794a45e169601ff16f72beae2f7bd79342a2
  Author: Will Hawkins <hawkinsw at obs.cr>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take.while/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/eq.pass.cpp
    M libcxx/test/support/test_range.h

  Log Message:
  -----------
  [libc++][NFC] Centralize test for support of == and != in ranges (#78481)

Previously, tests for whether comparison using == was supported by
iterators derived from ranges adaptors was spread throughout the testing
codebase. This PR centralizes the implementation of those tests.


  Commit: 0afc884e874043bf5207d561ab82b107e8860d41
      https://github.com/llvm/llvm-project/commit/0afc884e874043bf5207d561ab82b107e8860d41
  Author: Chia <sun1011jacobi at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-sat-clip.ll
    A llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip.ll

  Log Message:
  -----------
  [RISCV] Use vnclip for scalable vector saturating truncation. (#88648)

Similar to #75145, but for scalable vectors.

Specifically, this patch works for the below optimization case:

## Source Code
```
define void @trunc_sat_i8i16_maxmin(ptr %x, ptr %y) {
  %1 = load <vscale x 4 x i16>, ptr %x, align 16
  %2 = tail call <vscale x 4 x i16> @llvm.smax.v4i16(<vscale x 4 x i16> %1, <vscale x 4 x i16> splat (i16 -128))
  %3 = tail call <vscale x 4 x i16> @llvm.smin.v4i16(<vscale x 4 x i16> %2, <vscale x 4 x i16> splat (i16 127))
  %4 = trunc <vscale x 4 x i16> %3 to <vscale x 4 x i8>
  store <vscale x 4 x i8> %4, ptr %y, align 8
  ret void
}
```
## Before this patch
[Compiler Explorer](https://godbolt.org/z/EKc9eGvo8)
```
trunc_sat_i8i16_maxmin:
        vl1re16.v       v8, (a0)
        li      a0, -128
        vsetvli a2, zero, e16, m1, ta, ma
        vmax.vx v8, v8, a0
        li      a0, 127
        vmin.vx v8, v8, a0
        vsetvli zero, zero, e8, mf2, ta, ma
        vnsrl.wi        v8, v8, 0
        vse8.v  v8, (a1)
        ret
```
## After this patch
```
trunc_sat_i8i16_maxmin:
        vsetivli zero, 4, e8, mf4, ta, ma
        vle16.v v8, (a0)
        vnclip.wi v8, v8, 0
        vse8.v v8, (a1)
        ret
```


  Commit: 3d72c44fedc13ef51d2584b4fe930edb8d2e87ae
      https://github.com/llvm/llvm-project/commit/3d72c44fedc13ef51d2584b4fe930edb8d2e87ae
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td

  Log Message:
  -----------
  [mlir][gpu] Improve `gpu.shuffle` documentation. NFC. (#89168)

* Make the wording around lanes / threads / work items more consistent.
* Add examples for all shufle modes.
* Also clean up `gpu.subgroup_reduce`.


  Commit: 472b612ccbeda470fa15005e11882349b0b384be
      https://github.com/llvm/llvm-project/commit/472b612ccbeda470fa15005e11882349b0b384be
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__type_traits/remove_cv.h

  Log Message:
  -----------
  [libc++][NFC] Remove unused includes from <__type_traits/remove_cv.h> (#88752)


  Commit: fbca90b609f6c42ce7e4c9bb3ee8bd2c230a670c
      https://github.com/llvm/llvm-project/commit/fbca90b609f6c42ce7e4c9bb3ee8bd2c230a670c
  Author: Brad Smith <brad at comstyle.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/unittests/Support/MemoryTest.cpp

  Log Message:
  -----------
  [unittest] Skip W+X MappedMemoryTests on OpenBSD (#89102)

OpenBSD uses W^X so the tests will not work.


  Commit: 3d56ea05b6c746a7144f643bef2ebd599f605b8b
      https://github.com/llvm/llvm-project/commit/3d56ea05b6c746a7144f643bef2ebd599f605b8b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang/include/clang/AST/Decl.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/lib/Analysis/UninitializedValues.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp

  Log Message:
  -----------
  [clang][NFC] Fix FieldDecl::isUnnamedBitfield() capitalization (#89048)

We always capitalize bitfield as "BitField".


  Commit: dbece2bb06e7329d1390b59b3bd2e1558627c2f7
      https://github.com/llvm/llvm-project/commit/dbece2bb06e7329d1390b59b3bd2e1558627c2f7
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/docs/index.rst

  Log Message:
  -----------
  [Docs] Fix FAQ and Lexicon links under design overview (#89027)

This patch updates the FAQ and lexicon links under design overview to
actually work instead of being incomplete and thus completely missing
from the output.


  Commit: 06f54e7c2b4f26fbcad906a6b4aa2e46bf60b8af
      https://github.com/llvm/llvm-project/commit/06f54e7c2b4f26fbcad906a6b4aa2e46bf60b8af
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Convert llvm-spirv to imported executable

This tool now behaves like the others, for consistency.


  Commit: 93d51194b1df8229268953ec94063fc4194a320b
      https://github.com/llvm/llvm-project/commit/93d51194b1df8229268953ec94063fc4194a320b
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Clarify option help message

This should make it more obvious it applies only to libclc.


  Commit: 0aeeff3059e79b86f55ed92a4488bdee8fa66e12
      https://github.com/llvm/llvm-project/commit/0aeeff3059e79b86f55ed92a4488bdee8fa66e12
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Allow building with pre-built tools

Building the libclc project in-tree with debug tools can be very slow.
This commit adds an option for a user to specify a dierctory from which
to import (e.g., release-built) tools. All tools required by the project
must be imported from the same location, for simplicity.

Original patch downstream authored by @jchlanda.


  Commit: dc74c69f016fa65949bf0cf691061e12bef93d29
      https://github.com/llvm/llvm-project/commit/dc74c69f016fa65949bf0cf691061e12bef93d29
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Provide a more helpful error when tools are missing


  Commit: d0af554464774342752548c976e1ce71a2bf856d
      https://github.com/llvm/llvm-project/commit/d0af554464774342752548c976e1ce71a2bf856d
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge

  Log Message:
  -----------
  [CI] Fix libclc dependencies

We need clang and llvm to build in-tree.


  Commit: a5d2ed240d788a5f0caf090669eee27e51a28a89
      https://github.com/llvm/llvm-project/commit/a5d2ed240d788a5f0caf090669eee27e51a28a89
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll

  Log Message:
  -----------
  [VectorCombine] Fix typo in test (NFC)

The llvm.smix should be llvm.smin.


  Commit: 5ff44dbaea27d442c89278871dc2f75942d54716
      https://github.com/llvm/llvm-project/commit/5ff44dbaea27d442c89278871dc2f75942d54716
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/VectorCombine/X86/reduction-of-truncations.ll

  Log Message:
  -----------
  [VectorCombine] Fix incorrect intrinsic signature (NFC)


  Commit: 9099f6f8dcffffd7cf7d5cbe9ca4b7582851fde1
      https://github.com/llvm/llvm-project/commit/9099f6f8dcffffd7cf7d5cbe9ca4b7582851fde1
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/Program.cpp
    M clang/test/AST/Interp/records.cpp

  Log Message:
  -----------
  [clang][Interp] Skip unnamed bit fields in initializers

Fixes the Codegen/CSKY/csky-hard-abi.c test


  Commit: 43eb5e2d4054104dcdd9fadeea8da8bacab6d338
      https://github.com/llvm/llvm-project/commit/43eb5e2d4054104dcdd9fadeea8da8bacab6d338
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-17 (Wed, 17 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Remove unused Predicates for I and E extensions. NFC


  Commit: ff3523f67b858b87ed4f72d143a1ab3634ae1db7
      https://github.com/llvm/llvm-project/commit/ff3523f67b858b87ed4f72d143a1ab3634ae1db7
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/BDCE.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/test/Transforms/InstCombine/freeze.ll

  Log Message:
  -----------
  [IR] Drop poison-generating return attributes when necessary (#89138)

Rename has/dropPoisonGeneratingFlagsOrMetadata to
has/dropPoisonGeneratingAnnotations and make it also handle
nonnull, align and range return attributes on calls, similar
to the existing handling for !nonnull, !align and !range metadata.


  Commit: 562f061e7e710543578875d33d64837abecc23d2
      https://github.com/llvm/llvm-project/commit/562f061e7e710543578875d33d64837abecc23d2
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Load result of pre-inc/dec operation if necessary

This can happen in C.


  Commit: 71c0784dc4a2ef40039a97af122ba78549193120
      https://github.com/llvm/llvm-project/commit/71c0784dc4a2ef40039a97af122ba78549193120
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/AST/DeclPrinter.cpp
    M clang/test/SemaCXX/cxx11-attr-print.cpp
    M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
    M clang/unittests/AST/DeclPrinterTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp

  Log Message:
  -----------
  Fix the double space and double attribute printing of the final keyword. (#88600)

Fixes #56517.


  Commit: b5aff11aa118dabf134a1377dfd94b34e4dedbf7
      https://github.com/llvm/llvm-project/commit/b5aff11aa118dabf134a1377dfd94b34e4dedbf7
  Author: Dmitrii Agibov <dmitrii.agibov at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir

  Log Message:
  -----------
  [mlir][tosa] Add folding for TOSA ArgMax operator (#88871)


  Commit: 83cc60565a8a78ce00ee0c29f167400902e60737
      https://github.com/llvm/llvm-project/commit/83cc60565a8a78ce00ee0c29f167400902e60737
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  [NFC] [Serialization] Extract logics to write special decls from
ASTWriter::WriteASTCore

ASTWriter::WriteASTCore is a big function and slightly hard to read.
This patch extracts the logics to force emitting special declarations
and writing special records for these declarations into member
functions.

This is helpful to improve the readability and also helpful for the
following patch to write special declarations lazily.


  Commit: 7ec342ba16ca97206aa2ddd5b7ec0da063042e03
      https://github.com/llvm/llvm-project/commit/7ec342ba16ca97206aa2ddd5b7ec0da063042e03
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/Modules/reduced-bmi-empty-module-purview-std.cppm

  Log Message:
  -----------
  [C++20] [Modules] [Reduced BMI] Write Special Decl Lazily

ASTWrite would write some special records for the consumer of the AST
can get the information easily. This is fine. But currently all the
special records are written eagerly, which is conflicting with reduced
BMI.

In reduced BMI, we hope to write things as less as possible. It is not a
goal for reduced BMI to retain all the informations. So in this patch we
won't record the special declarations eagerly before we starting write.
But only writing the sepcial records after we writes decls and types,
then only the reached declarations will be collected.


  Commit: 1baa3850656382d1d549a13f8a716ef5dc886eb8
      https://github.com/llvm/llvm-project/commit/1baa3850656382d1d549a13f8a716ef5dc886eb8
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/test/Transforms/InstCombine/and-or-icmp-const-icmp.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/bswap.ll
    M llvm/test/Transforms/InstCombine/compare-signs.ll
    M llvm/test/Transforms/InstCombine/fcmp-range-check-idiom.ll
    M llvm/test/Transforms/InstCombine/icmp-fsh.ll
    M llvm/test/Transforms/InstCombine/icmp-power2-and-icmp-shifted-mask.ll
    M llvm/test/Transforms/InstCombine/icmp-vec-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/icmp-vec.ll
    M llvm/test/Transforms/InstCombine/low-bit-splat.ll
    M llvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check.ll
    M llvm/test/Transforms/InstCombine/xor-ashr.ll
    M llvm/test/Transforms/InstSimplify/cast-unsigned-icmp-cmp-0.ll
    M llvm/test/Transforms/InstSimplify/icmp-constant.ll
    M llvm/test/Transforms/InstSimplify/maxmin_intrinsics.ll
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp

  Log Message:
  -----------
  [IR][PatternMatch] Only accept poison in getSplatValue() (#89159)

In #88217 a large set of matchers was changed to only accept poison
values in splats, but not undef values. This is because we now use
poison for non-demanded vector elements, and allowing undef can cause
correctness issues.

This patch covers the remaining matchers by changing the AllowUndef
parameter of getSplatValue() to AllowPoison instead. We also carry out
corresponding renames in matchers.

As a followup, we may want to change the default for things like m_APInt
to m_APIntAllowPoison (as this is much less risky when only allowing
poison), but this change doesn't do that.

There is one caveat here: We have a single place
(X86FixupVectorConstants) which does require handling of vector splats
with undefs. This is because this works on backend constant pool
entries, which currently still use undef instead of poison for
non-demanded elements (because SDAG as a whole does not have an explicit
poison representation). As it's just the single use, I've open-coded a
getSplatValueAllowUndef() helper there, to discourage use in any other
places.


  Commit: 85215508966abbedaf80a7a0a2ae4687a46447fe
      https://github.com/llvm/llvm-project/commit/85215508966abbedaf80a7a0a2ae4687a46447fe
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp

  Log Message:
  -----------
  [X86] Use m_APIntAllowPoison instead of m_APIntAllowUndef

Fix build after 1baa3850656382d1d549a13f8a716ef5dc886eb8.


  Commit: 9760b6b1ecff3d3c43d182ea488fa34a82472a3e
      https://github.com/llvm/llvm-project/commit/9760b6b1ecff3d3c43d182ea488fa34a82472a3e
  Author: Mike Weller <mike at mikeweller.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/forwarding-reference-overload.cpp

  Log Message:
  -----------
  [clang-tidy] Ignore deleted ctor in `bugprone-forwarding-reference-overload` (#88138)

Fix `bugprone-forwarding-reference-overload` so it doesn't report a
constructor that is deleted.


  Commit: da579ad807bd55c686e1c1c52e0a4bcc259347b4
      https://github.com/llvm/llvm-project/commit/da579ad807bd55c686e1c1c52e0a4bcc259347b4
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp

  Log Message:
  -----------
  [clang][dataflow] Refactor `PropagateResultObject()` with a switch statement. (#88865)

See also discussion in #88726.


  Commit: fcdb2203e05002f0488221f6a0cab42e1a34f8fc
      https://github.com/llvm/llvm-project/commit/fcdb2203e05002f0488221f6a0cab42e1a34f8fc
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    A llvm/test/CodeGen/AMDGPU/atomic_optimization_split_dt_update.ll

  Log Message:
  -----------
  [AMDGPU][AtomicOptimizer] Fix DT update for divergent values with Iterative strategy (#87605)

We take the terminator from EntryBB and put it in ComputeEnd. Make sure
we also move the DT edges, we previously only did it assuming a
non-conditional branch.

Fixes SWDEV-453943


  Commit: b5f2cecf833f8d08197cda80ac684c250b8fa0f9
      https://github.com/llvm/llvm-project/commit/b5f2cecf833f8d08197cda80ac684c250b8fa0f9
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp

  Log Message:
  -----------
  Revert "[clang][dataflow] Refactor `PropagateResultObject()` with a switch statement." (#89176)

Reverts llvm/llvm-project#88865

There were failing tests in the CI that I didn't notice. Sorry.


  Commit: 42348b6918e9bbf2dd0260d8ffab4b80b8ff08f8
      https://github.com/llvm/llvm-project/commit/42348b6918e9bbf2dd0260d8ffab4b80b8ff08f8
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  [github] Add myself as default code reviewer (#89099)


  Commit: 3c721b90d363bf73b78467f6e86c879235bac1b2
      https://github.com/llvm/llvm-project/commit/3c721b90d363bf73b78467f6e86c879235bac1b2
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/source/Expression/IRExecutionUnit.cpp

  Log Message:
  -----------
  Revert "[lldb] Fix evaluation of expressions with static initializers (#89063)"

It breaks expression evaluation on arm, and the x86 breakage has been
fixed in 6cea7c491f4c4c68aa0494a9b18f36ff40c22c81.

This reverts commit 915c84b1480bb3c6d2e44ca83822d2c2304b763a.


  Commit: 135472b553ccc18e4337b23f8d5616c8dda5e2a6
      https://github.com/llvm/llvm-project/commit/135472b553ccc18e4337b23f8d5616c8dda5e2a6
  Author: Isha Agarwal <isha.agarwal at intel.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/X86/x86-cf-protection.c

  Log Message:
  -----------
  [X86][test] Added extra cet tests, NFC (#88736)

Updated cet test to:
-Check different modules based on different cet options
-Added negative tests also

---------

Signed-off-by: Isha Agarwal <isha.agarwal at intel.com>


  Commit: 5d4e072a253afac018e312d75290314bd2d03b30
      https://github.com/llvm/llvm-project/commit/5d4e072a253afac018e312d75290314bd2d03b30
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Serialization/ASTWriter.cpp
    A clang/test/Modules/unreached-static-entities.cppm

  Log Message:
  -----------
  [C++20] [Modules] [Reduced BMI] Don't eagerly write static entities in
module purview

For,

```
export module A;
static int impl() { ... }
export int func() { return impl(); }
```

Previously, even with reduced BMI, the function `impl` will be emitted
into the BMI. After the patch, the static entities in module purview
won't get emitted eagerly. Now the static entities may only be emitted
if required.

Note that, this restriction is actually more relaxed than the language
standard required. The language spec said, the program is ill-formed if
any TU-local entities get exposed. However, we can't do this since there
are many static entities in the headers of existing libraries.
Forbidding that will cause many existing program fail immediately.

Another note here is, we can't do this for non-static non-exported
entities, they can be used for other module units within the same
module.


  Commit: 6e30d97e89f1c49e8bf2073746a5e08f5e75948f
      https://github.com/llvm/llvm-project/commit/6e30d97e89f1c49e8bf2073746a5e08f5e75948f
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  [MLIR][NVVM] [NFC] Update Docs for shfl.sync Op (#89044)

The first argument to the nvvm_shfl_sync_* family
of intrinsics is the thread_mask (aka member_mask). 
This patch renames the corresponding operand in the Op
to reflect the same i.e. `dst` -> `thread_mask`.

While we are there, add summary and description
for this Op.

Signed-off-by: Durgadoss R <durgadossr at nvidia.com>


  Commit: 609ee9fe6a96113c893e8344f0dfaef5eba73e3d
      https://github.com/llvm/llvm-project/commit/609ee9fe6a96113c893e8344f0dfaef5eba73e3d
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Serialization/ASTWriter.cpp

  Log Message:
  -----------
  [clang] Remove unused lambda capture (NFC)

llvm-project/clang/lib/Serialization/ASTWriter.cpp:5077:59:
error: lambda capture 'SemaRef' is not used [-Werror,-Wunused-lambda-capture]
    auto AddEmittedDeclRefOrZero = [this, &SemaDeclRefs, &SemaRef](Decl *D) {
                                                       ~~~^~~~~~~
1 error generated.


  Commit: c82f45f9deb98aa383b0be37f8edc32f9e48c4ec
      https://github.com/llvm/llvm-project/commit/c82f45f9deb98aa383b0be37f8edc32f9e48c4ec
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py

  Log Message:
  -----------
  [mlir][nvgpu] Simplify TMA IR generation (#87153)

This PR add `TmaDescriptorBuilder` 
- class simplifies TMA generation.
- Makes the code ready to support various Tma configurations 
   - removes strings and use the enums from `mlir.nvgpu.ENUMs`.
- Example "swizzle = swizzle_128b, l2promo=none, oob=zero,
interleave=none" to enums in `mlir.nvgpu` dialects.
- Enums have string equivalent that are used during the IR writing and
generation (see `TmaDescriptorBuilder::tensormap_descriptor_ty`).
- Improves readability and abstracts out TMA descriptor builders in
reusable component.

---------

Co-authored-by: Manish Gupta <manigupta at google.com>


  Commit: 03e841c870e7beccf1368e566045e233b3bd8db5
      https://github.com/llvm/llvm-project/commit/03e841c870e7beccf1368e566045e233b3bd8db5
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/docs/resources/test.rst
    M lldb/test/API/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Correct documentation of LLDB_TEST_USER_ARGS (#89042)

https://discourse.llvm.org/t/running-lldb-in-a-container/76801/4 found
that the obvious way to use this variable doesn't work, despite what our
docs and examples say.

Perhaps in the past it did but now you need to use ";" as a separator to
make sure the final command line works properly.

For example "-A foo" becomes "-A foo" when python goes to run the runner
script. The script sees this as one command line element, not two. What
you actually want is "-A;foo" which we convert to "-A" "foo" which the
script sees as one option and one value for that option.

The "Script:" printout from dotest is misleading here because it does `"
".join(cmd)` so it looks like it's ok but in fact it's not.

I'm not changing that format though because printing the command as a
Python list is not useful outside of this specific situation.


  Commit: e7a8dd9b0d419403fe1d8adeb177a4ec78e036cc
      https://github.com/llvm/llvm-project/commit/e7a8dd9b0d419403fe1d8adeb177a4ec78e036cc
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/docs/StandardCPlusPlusModules.rst

  Log Message:
  -----------
  [docs] [C++20] [Modules] Mentioning Module Initializer

Although we want to treat the module initializer as a transparent
concept to users, but it shows that people need to understand
the concept to understand how to understand and distribute modules.

So it is better to mention this too.


  Commit: c674dbc2a89298f1ff06686ae953cef9a1b19961
      https://github.com/llvm/llvm-project/commit/c674dbc2a89298f1ff06686ae953cef9a1b19961
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/aarch64-cpu-supports.c
    M clang/test/CodeGen/aarch64-mixed-target-attributes.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/attr-target-version.cpp
    M clang/test/Sema/aarch64-cpu-supports.c
    M clang/test/Sema/attr-target-clones-aarch64.c
    M clang/test/Sema/attr-target-version.c
    M clang/test/SemaCXX/attr-target-version.cpp
    M compiler-rt/lib/builtins/cpu_model/aarch64.c
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/fuchsia.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M llvm/include/llvm/TargetParser/AArch64TargetParser.h

  Log Message:
  -----------
  Revert "[FMV] Remove useless features according the latest ACLE spec." (#89184)

Reverts llvm/llvm-project#88965

This caused a test suite failure:
https://lab.llvm.org/buildbot/#/builders/185/builds/6583
NOEXE: test-suite::aarch64-acle-fmv-features.test

```
/home/tcwg-buildbot/worker/clang-aarch64-lld-2stage/test/test-suite/SingleSource/UnitTests/AArch64/acle-fmv-features.c:98:1: error: redefinition of 'check_sha1'
   98 | CHECK(sha1, {
      | ^
/home/tcwg-buildbot/worker/clang-aarch64-lld-2stage/test/test-suite/SingleSource/UnitTests/AArch64/acle-fmv-features.c:36:17: note: expanded from macro 'CHECK'
   36 |     static void check_##X(void) { \
      |                 ^
<scratch space>:150:1: note: expanded from here
  150 | check_sha1
      | ^
```

I presume that the useless features need to be removed from the fmv test
as well.


  Commit: fd98f80f602e11d523d252feef301634c2c689a7
      https://github.com/llvm/llvm-project/commit/fd98f80f602e11d523d252feef301634c2c689a7
  Author: Timm Bäder <tbaeder at redhat.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/test/AST/Interp/c.c

  Log Message:
  -----------
  [clang][Interp] Finish initializing structs from CompoundLiteralExprs


  Commit: 61f400165c64894374d23ffbcbebc8650d974961
      https://github.com/llvm/llvm-project/commit/61f400165c64894374d23ffbcbebc8650d974961
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.cpp

  Log Message:
  -----------
  [llvm-exegesis] Define SYS_gettid if not available

This patch defines SYS_gettid as __NR_gettid if SYS_gettid is not
available to avoid compile time errors due to SYS_gettid not being
defined. This happens with certain libcs (like bionic) that do not
define SYS_gettid.


  Commit: 63d8058ef50a3186b6b6a5db254f44673fea3d19
      https://github.com/llvm/llvm-project/commit/63d8058ef50a3186b6b6a5db254f44673fea3d19
  Author: Ramkumar Ramachandra <ram.ramachandra at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/pr55096-scalarize-add.ll

  Log Message:
  -----------
  LoopVectorize: guard appending InstsToScalarize; fix bug (#88720)

In the process of collecting instructions to scalarize, LoopVectorize
uses faulty reasoning whereby it also adds instructions that will be
scalar after vectorization. If an instruction satisfies
isScalarAfterVectorization() for the given VF, it should not be appended
to InstsToScalarize. Add this extra guard, fixing a crash.

Fixes #55096.


  Commit: e90bc9cfd4d22c89dd993f62ede700ae25df49c5
      https://github.com/llvm/llvm-project/commit/e90bc9cfd4d22c89dd993f62ede700ae25df49c5
  Author: Matthew Devereau <matthew.devereau at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/Config/llvm-config.h.cmake
    A llvm/include/llvm/Support/float128.h
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/test/CMakeLists.txt
    A llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll
    M llvm/test/lit.cfg.py
    M llvm/test/lit.site.cfg.py.in
    M llvm/unittests/Analysis/CMakeLists.txt

  Log Message:
  -----------
  Constant Fold Logf128 calls (#84501)

This patch enables constant folding for 128 bit floating-point logf
calls. This is achieved by querying if the host system has the logf128()
symbol available with a CMake test. If so, replace the runtime call with
the compile time value returned from logf128.


  Commit: 3e64f8a4e74cdcaf5920879c86e7e0a827f6ec13
      https://github.com/llvm/llvm-project/commit/3e64f8a4e74cdcaf5920879c86e7e0a827f6ec13
  Author: Nashe Mncube <nashe.mncube at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/mops-register-alias.ll
    A llvm/test/MC/AArch64/armv9.3a-mops-register-aliasing.s

  Log Message:
  -----------
  [AArch64][CodeGen] Fix illegal register aliasing bug for mops instrs (#88869)

A bug was found where mops instructions were being generated that
aliased the source and size registers. This is unpredictable behaviour.
This patch uses the earlyclobber constraint on the input source
register so that it doesn't alias with the size register. Also a test is
introduced which checks affected instructions can't violate this
constraint.


  Commit: 750de326ef0408df4a5f91773c355ded1a1b1b77
      https://github.com/llvm/llvm-project/commit/750de326ef0408df4a5f91773c355ded1a1b1b77
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M llvm/include/llvm/Object/COFFImportFile.h
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/lib/Object/COFFModuleDefinition.cpp
    M llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp

  Log Message:
  -----------
  [COFF] Rename the COFFShortExport::AliasTarget field. NFC. (#89039)

It turns out that the previous name is vaguely misleading.

When operating on a def file like "symbolname == dllname", that is
supposed to make an import library entry, that when the symbol
"symbolname" links against this, it imports the DLL symbol "dllname"
from the referenced DLL. This doesn't need to involve any alias, and it
doesn't need to imply that "dllname" is available on its own as a
separate symbol in the import library at all.

GNU dlltool implements import libraries in the form of "long import
library", where each member is a regular object file with section chunks
that compose the relevant .idata section pieces. There, this kind of
import renaming does not involve any form of aliases, but the right
.idata section just gets a different string than the symbol name.


  Commit: d17db6066d2524856fab493dd894f8396e896bc7
      https://github.com/llvm/llvm-project/commit/d17db6066d2524856fab493dd894f8396e896bc7
  Author: Martin Storsjö <martin at martin.st>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lld/COFF/Writer.cpp
    A lld/test/COFF/autoimport-debug.s

  Log Message:
  -----------
  [LLD] [COFF] Don't create pseudo relocations for discardable sections (#89043)

This extends on the case from 9c970d5ecd6a85188cd2b0a941fcd4d60063ef81;
if a section is marked discardable, it won't be mapped into memory at
runtime, so there's no point in creating runtime pseudo relocations for
such sections.


  Commit: 3da065896b1b59fd8291958e8d13f4a942d51214
      https://github.com/llvm/llvm-project/commit/3da065896b1b59fd8291958e8d13f4a942d51214
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake

  Log Message:
  -----------
  Revert "CompilerRT: Normalize COMPILER_RT_DEFAULT_TARGET_TRIPLE (#88835)"

This reverts commit 16f188761da1df6ba5e6627b8742aacfec8e9ec5.

This broke Libcxx Picolib testing at the install step, and builds
for Windows builtins. Revert while we figure out the cause.


  Commit: 8d6a9c05f6d676c93c84ebf06cf6263657e74c00
      https://github.com/llvm/llvm-project/commit/8d6a9c05f6d676c93c84ebf06cf6263657e74c00
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/Verifier.cpp
    A llvm/test/DebugInfo/X86/template-alias.ll
    M llvm/test/tools/llvm-symbolizer/frame-types.s

  Log Message:
  -----------
  [DWARF] Add support for DW_TAG_template_alias for template aliases (#88943)

Part 1 of fix for issue
https://github.com/llvm/llvm-project/issues/54624

Split from PR #87623. Clang front end changes to follow.

Use DICompositeType to represent the template alias, using its extraData
field as a tuple of DITemplateParameter to describe the template
parameters.

Added template-alias.ll  - Check DWARF emission.
Modified  frame-types.s  - Check llvm-symbolizer understands the DIE.


  Commit: ac39fa740b067f6197dca1caecc97c0da91ebf3d
      https://github.com/llvm/llvm-project/commit/ac39fa740b067f6197dca1caecc97c0da91ebf3d
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir

  Log Message:
  -----------
  [MLIR][Mem2Reg][LLVM] Enhance partial load support (#89094)

This commit improves LLVM dialect's Mem2Reg interfaces to support
promotions of partial loads from larger memory slots. To support this,
the Mem2Reg interface methods are extended with additional data layout
parameters. The data layout is required to determine type sizes to
produce correct conversion sequences.

Note: There will be additional followups that introduce a similar
functionality for stores, and there are plans to support accesses into
the middle of memory slots.


  Commit: c26e9bf8fafea656b64d811c01fc3a5f970829ef
      https://github.com/llvm/llvm-project/commit/c26e9bf8fafea656b64d811c01fc3a5f970829ef
  Author: Matt Devereau <matthew.devereau at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/CMakeLists.txt
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/ADT/APFloat.h
    M llvm/include/llvm/ADT/APInt.h
    M llvm/include/llvm/Config/llvm-config.h.cmake
    R llvm/include/llvm/Support/float128.h
    M llvm/lib/Analysis/CMakeLists.txt
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/lib/Support/APFloat.cpp
    M llvm/test/CMakeLists.txt
    R llvm/test/Transforms/InstSimplify/ConstProp/logf128.ll
    M llvm/test/lit.cfg.py
    M llvm/test/lit.site.cfg.py.in
    M llvm/unittests/Analysis/CMakeLists.txt

  Log Message:
  -----------
  Revert "Constant Fold Logf128 calls (#84501)"

This reverts commit e90bc9cfd4d22c89dd993f62ede700ae25df49c5.


  Commit: 9462abdff1687c1e35574cdef8de6c549addc42a
      https://github.com/llvm/llvm-project/commit/9462abdff1687c1e35574cdef8de6c549addc42a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/insertelement-across-zero.ll

  Log Message:
  -----------
  [SLP]Fix PR89187: fixx assertion check.

Need to use proper index variable to fix a crash.


  Commit: 2a4e61b342e7a19bcb229ef16dee083c58224a3f
      https://github.com/llvm/llvm-project/commit/2a4e61b342e7a19bcb229ef16dee083c58224a3f
  Author: Matthias Springer <me at m-sp.org>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/docs/BufferDeallocationInternals.md
    M mlir/docs/Bufferization.md
    A mlir/docs/OwnershipBasedBufferDeallocation.md
    A mlir/docs/includes/img/bufferization_dealloc_op.svg
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationBase.td

  Log Message:
  -----------
  [mlir][NFC] Move and improve ownership-based buffer dellocation docs (#89196)

Move the documentation of the ownership-based buffer deallocation pass
to a separate file. Also improve the documentation a bit and insert a
figure that explains the `bufferization.dealloc` op (copied from the
tutorial at the LLVM Dev Summit 2023).


  Commit: 652ae4ecadaa972d70ef5cea3b68f2ff103c4af2
      https://github.com/llvm/llvm-project/commit/652ae4ecadaa972d70ef5cea3b68f2ff103c4af2
  Author: Krystian Stasiowski <sdkrystian at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.local-class.cpp

  Log Message:
  -----------
  [Clang][Sema] Warn when 'exclude_from_explicit_instantiation' attribute is used on local classes and members thereof (#88777)

A local class and its members declared in a function template are
instantiated alongside the definition of that template. It therefore
does not make sense to apply the `exclude_from_explicit_instantiation`
attribute to such declarations, and this patch adds a warning to
diagnose these cases (in addition to ignoring the attribute).

(The motivation for this patch is to fix a failing test in libc++ for
#84050. In particular, line 199 in `include/__memory/uses_allocator_construction.h`
in libc++ contains the expression `this->__value_` (reduced to 
https://godbolt.org/z/KqEerKWPd) which will be looked up prior
to instantiation once #84050 lands (the lookup context is the 
current instantiation). `_LIBCPP_HIDE_FROM_ABI` includes 
`__attribute__((exclude_from_explicit_instantiation))`, which in the 
reduced example results in `Local` being instantiated with 
`Local::operator A` as its `DeclContext`)


  Commit: 3f0d52b2dbdb096212e8ffa6ad86aacd0d256957
      https://github.com/llvm/llvm-project/commit/3f0d52b2dbdb096212e8ffa6ad86aacd0d256957
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp

  Log Message:
  -----------
  [mlir][llvm] Clean out f8 types from compatible types list

These were added in faf697e49bad099b36770c7738f36917e3d90d2d so things
can flow through non-opaque LLVM ptrs. Those ptrs are gone so there is
no reason for this to be around anymore. LLVM doesn't support f8 types,
they get converted to i8 when lowering to LLVM dialect.

Removing the f8 types makes LLVM::isCompatibleType and
LLVM::isCompatibleFloatingPointType consistent again.


  Commit: 0e08bce142c90fcdc36365433e02d75acadbaa3c
      https://github.com/llvm/llvm-project/commit/0e08bce142c90fcdc36365433e02d75acadbaa3c
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/any_of.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/fill.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/find_if.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/for_each.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/merge.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/stable_sort.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/transform.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/transform_reduce.h
    M libcxx/include/__pstl/backends/libdispatch.h
    M libcxx/include/__pstl/backends/serial.h
    M libcxx/include/__pstl/backends/std_thread.h
    A libcxx/include/__pstl/cpu_algos/any_of.h
    A libcxx/include/__pstl/cpu_algos/fill.h
    A libcxx/include/__pstl/cpu_algos/find_if.h
    A libcxx/include/__pstl/cpu_algos/for_each.h
    A libcxx/include/__pstl/cpu_algos/merge.h
    A libcxx/include/__pstl/cpu_algos/stable_sort.h
    A libcxx/include/__pstl/cpu_algos/transform.h
    A libcxx/include/__pstl/cpu_algos/transform_reduce.h
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap

  Log Message:
  -----------
  [libc++][pstl] Move the CPU algorithm implementations to __pstl (#89109)

This colocates the CPU algorithms closer to the rest of the PSTL
implementation details.


  Commit: af7a82fdc717c9cbd1b77ff4168292098a1f6e8a
      https://github.com/llvm/llvm-project/commit/af7a82fdc717c9cbd1b77ff4168292098a1f6e8a
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/TargetParser/Triple.cpp

  Log Message:
  -----------
  [NFC] Format code of parseArch() (#89152)

In preparation for a cleaner addition in a following PR.


  Commit: 97c60d61d043e21da454226619a98bfb2f2194ee
      https://github.com/llvm/llvm-project/commit/97c60d61d043e21da454226619a98bfb2f2194ee
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/invalid.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Check that omp.loop_nest represents at least one loop (#89082)


  Commit: a66c09a96dec633c1172a02818859f71fbff4f45
      https://github.com/llvm/llvm-project/commit/a66c09a96dec633c1172a02818859f71fbff4f45
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 0e08bce142c9


  Commit: 73b255c9f824157064212d341a255a962e746fd4
      https://github.com/llvm/llvm-project/commit/73b255c9f824157064212d341a255a962e746fd4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-subvector.ll

  Log Message:
  -----------
  [DAG] Ensure extract_subvector(insert_subvector(x,y,c1),c2) --> extract_subvector(y,c2-c1) is working on fixed vector types

#87925 failed to ensure we weren't removing the extracted subvector from a scalable vector type

Thanks to @antmox for the headsup.


  Commit: e06fb82b40a42eaa6ed6c21b7dbe0fa4bd2443dc
      https://github.com/llvm/llvm-project/commit/e06fb82b40a42eaa6ed6c21b7dbe0fa4bd2443dc
  Author: Oleksandr "Alex" Zinenko <zinenko at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  [github] notify me about mlir python changes


  Commit: 6d9ee88599f551be91938ed77fe66d2d6b01b550
      https://github.com/llvm/llvm-project/commit/6d9ee88599f551be91938ed77fe66d2d6b01b550
  Author: abidh <haqadeer at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp

  Log Message:
  -----------
  [flang] Rename AddDebugFoundation to AddDebugInfo (NFC) (#89191)

These changes were missed in PR #88526.


  Commit: 743d090b96e09fe7c2cea60a8962f579684c37ce
      https://github.com/llvm/llvm-project/commit/743d090b96e09fe7c2cea60a8962f579684c37ce
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang-tools-extra/clang-tidy/add_new_check.py

  Log Message:
  -----------
  [clang-tidy] fix add_new_check.py regex (#89189)


  Commit: e6ee191f968c1dc39410bcb0db3ee62f51c7d158
      https://github.com/llvm/llvm-project/commit/e6ee191f968c1dc39410bcb0db3ee62f51c7d158
  Author: Michael Maitland <michaeltmaitland at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll

  Log Message:
  -----------
  [RISCV] Add test case for CASE_VFMA_CHANGE_OPCODE_VV to handle MF4 pseudos (#88947)

The fix was committed in
https://github.com/llvm/llvm-project/commit/8cee94e989b5bf6fb6455087d48eb6c6e0e23c54.
This adds a test.


  Commit: 16fed31f440ff7b194cb0f843e46339e28aa7982
      https://github.com/llvm/llvm-project/commit/16fed31f440ff7b194cb0f843e46339e28aa7982
  Author: Emma Pilkington <emma.pilkington95 at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    A llvm/test/CodeGen/AMDGPU/release-vgprs-dbg-loc.mir

  Log Message:
  -----------
  [AMDGPU] Fix debug line table for MSG_DEALLOC_VGPRS optimization (#88924)

Deallocating VGPRs interferes with doing a context save, which is needed for GDB
to report a breakpoint. So, in this sequence:

  s_sendmsg MSG_DEALLOC_VGPRS
  s_endpgm

We now use the debug location of the s_endpgm for the s_sendmsg, so a breakpoint
set in the debugger at the end of a shader will be hit before deallocating VGPRs.


  Commit: 73e7f2ff70e64defcc59f707a8d2463dd4c79be0
      https://github.com/llvm/llvm-project/commit/73e7f2ff70e64defcc59f707a8d2463dd4c79be0
  Author: Ramkumar Ramachandra <ram.ramachandra at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/X86/pr72969.ll

  Log Message:
  -----------
  LoopVectorize: guard marking iv as scalar; fix bug (#88730)

When collecting loop scalars, LoopVectorize over-eagerly marks the
induction variable and its update as scalars after vectorization, even
if the induction variable update is a first-order recurrence. Guard the
process with this check, fixing a crash.

Fixes #72969.


  Commit: 4c3514fa53cc39db5de4dbbca9a54977159f24e8
      https://github.com/llvm/llvm-project/commit/4c3514fa53cc39db5de4dbbca9a54977159f24e8
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp

  Log Message:
  -----------
  [clang] Fix a "!CodeSynthesisContexts.empty()" assertion failure when constructing aggregate deduction guides. (#89227)

We were missing to push an record to the instantiation stack in
`DeclareAggregateDeductionGuideForTypeAlias`. This patch fixes that.


  Commit: c515c780244e3ecbb1fcfd06b3ad588d8d22c28e
      https://github.com/llvm/llvm-project/commit/c515c780244e3ecbb1fcfd06b3ad588d8d22c28e
  Author: Matthias Gehre <matthias.gehre at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-out-params.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir

  Log Message:
  -----------
  [mlir][Bufferization] castOrReallocMemRefValue: Use BufferizationOptions (#89175)

This allows to configure both the op used for allocation and copy of
memrefs.
It also changes the default behavior because the default allocation in
`BufferizationOptions` creates `memref.alloc` with `alignment = 64`
where we used to create `memref.alloca` without any alignment before.
Fixes
```
// TODO: Use alloc/memcpy callback from BufferizationOptions if called via
// BufferizableOpInterface impl of ToMemrefOp.
```


  Commit: 8f07a67f9731dfcd490f8aaefac34d95f207b39c
      https://github.com/llvm/llvm-project/commit/8f07a67f9731dfcd490f8aaefac34d95f207b39c
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/test/Driver/aix-toolchain-include.cpp

  Log Message:
  -----------
  [clang][AIX] set OpenMP include path (#88545)

Add include directory for omp.h at `/opt/IBM/openxlCSDK/include/openmp`.


  Commit: bc5536469d7854a043dbfe4c018e5b5dfc069d4f
      https://github.com/llvm/llvm-project/commit/bc5536469d7854a043dbfe4c018e5b5dfc069d4f
  Author: tomnatan30 <130450079+tomnatan30 at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/test/python/ir/operation.py

  Log Message:
  -----------
  [mlir][python] Fix PyOperationBase::walk not catching exception in python callback (#89225)

If the python callback throws an error, the c++ code will throw a
py::error_already_set that needs to be caught and handled in the c++
code .

This change is inspired by the similar solution in
PySymbolTable::walkSymbolTables.


  Commit: f981d860029411febac9200762dca47c1ef1af22
      https://github.com/llvm/llvm-project/commit/f981d860029411febac9200762dca47c1ef1af22
  Author: azhan92 <alisonxzhang at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/test/Driver/compress.c

  Log Message:
  -----------
  XFAIL clang/Driver/test/compress.c on AIX  (#87269)

This PR XFAIL's `clang/Driver/compress.c` on AIX since it requires the
LLVM integrated assembler / assembly parser support, which is not
available on AIX.

```
/home/jenkinsWorker/jenkins/workspace/LLVM-Release/release-testing-prototype/llvm/clang18.1.2-final/final/llvm-project/clang/test/Driver/compress.c:19:18: error: CHECK-OPT_GZ: expected string not found in input
// CHECK-OPT_GZ: "--compress-debug-sections=zlib"
```


  Commit: 9c51f9b7362d25b8c49258fa636fb95aaa07463a
      https://github.com/llvm/llvm-project/commit/9c51f9b7362d25b8c49258fa636fb95aaa07463a
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/test/Driver/response-file-errs.c

  Log Message:
  -----------
  [AIX][NFC] Enable response-file-errs.c

The test was fixed by commit 678f19f08296fec299438130cf5943714c590b7e.


  Commit: 7257c37357ee4540d6a63e5d2854b97f43ae2c49
      https://github.com/llvm/llvm-project/commit/7257c37357ee4540d6a63e5d2854b97f43ae2c49
  Author: Sam McCall <sam.mccall at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Sema/SemaType.cpp
    M clang/test/SemaObjCXX/Inputs/nullability-consistency-smart.h

  Log Message:
  -----------
  [clang] fix -Wnullability-completeness false-positive in dependent code (#88727)

The intent was that smart-pointers do not participate in completeness
checks, but we failed to capture dependent `unique_ptr<T>`, which is not
a RecordType but a TemplateSpecializationType.


  Commit: 353322f61db41392c56dd9204e912199b5250e78
      https://github.com/llvm/llvm-project/commit/353322f61db41392c56dd9204e912199b5250e78
  Author: bcahoon <59846893+bcahoon at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    A llvm/test/CodeGen/AMDGPU/sgpr-spills-empty-prolog-block.mir

  Log Message:
  -----------
  [AMDGPU] Fix end() iterator dereference in SILowerSGPRSpills (#88828)


  Commit: 4c18681a2d5a5738233fce9d7746b968d4b4ab76
      https://github.com/llvm/llvm-project/commit/4c18681a2d5a5738233fce9d7746b968d4b4ab76
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/InstallAPI/DylibVerifier.h
    M clang/include/clang/InstallAPI/MachO.h
    M clang/lib/InstallAPI/DylibVerifier.cpp
    A clang/test/InstallAPI/alias_list.test
    M clang/test/InstallAPI/mismatching-objc-class-symbols.test
    M clang/tools/clang-installapi/ClangInstallAPI.cpp
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/clang-installapi/Options.h
    M llvm/include/llvm/TextAPI/Utils.h
    M llvm/lib/TextAPI/Utils.cpp

  Log Message:
  -----------
  [InstallAPI] Add support for aliased exports (#88750)

Apple's ld supports alias_lists, described as
```
     -alias_list filename
             The specified filename contains a list of aliases. The symbol name and its alias are on one
             line, separated by whitespace.  Lines starting with # are ignored.
```
To handle this for installapi-produced TBD files, pass along the same
input and account for it in verification.


  Commit: a1e7c83af11ee111994ec19029494e6e9ea97dbd
      https://github.com/llvm/llvm-project/commit/a1e7c83af11ee111994ec19029494e6e9ea97dbd
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py

  Log Message:
  -----------
  [lldb] Disable break at _dl_debug_state test on arm


  Commit: 44c876f9e0a0dd6c3a5eb65bb49c2e2661ab02e0
      https://github.com/llvm/llvm-project/commit/44c876f9e0a0dd6c3a5eb65bb49c2e2661ab02e0
  Author: Corentin Ferry <corentin.ferry at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir

  Log Message:
  -----------
  [mlir][emitc] Add EmitC lowering for arith.cmpi (#88700)


  Commit: 2cdbc9cff3b7ef262c45e749f0a942343a19808a
      https://github.com/llvm/llvm-project/commit/2cdbc9cff3b7ef262c45e749f0a942343a19808a
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Preamble.h
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/ParsedASTTests.cpp

  Log Message:
  -----------
  [clangd] Use TargetOpts from preamble when building ASTs (#88381)

Building ASTs with compile flags that are incompatible to the ones used
for the Preamble are not really supported by clang and can trigger
crashes.

In an ideal world, we should be re-using not only TargetOpts, but the
full ParseInputs from the Preamble to prevent such failures.

Unfortunately current contracts of ThreadSafeFS makes this a non-safe
change for certain implementations. As there are no guarantees that the
same ThreadSafeFS is going to be valid in the Context::current() we're
building the AST in.


  Commit: cd0c94bb8558b6e26313694da18006a840521903
      https://github.com/llvm/llvm-project/commit/cd0c94bb8558b6e26313694da18006a840521903
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    A llvm/test/MC/RISCV/rv64e-zcmp-valid.s

  Log Message:
  -----------
  [RISCV] Remove IsEABI from RISCVZC::getStackAdjBase. (#89177)

The usage of IsEABI was only valid for RV32E. For RV64E, the stack
adjust
base needs to be 32 when ra,s0-s1 are being saved. Since it takes more
than 16 bytes to save 3 64-bit registers.
    
The spec lists the rv32e behavior explicitly, but not rv64e. My
assumption is that the only thing that changes with rv64e is which
registers can be used in the register list, but not how the register
list affects the stack_adj_base.


  Commit: acd736e3e1e7b8a20e28ed17fb59595ce1e670bb
      https://github.com/llvm/llvm-project/commit/acd736e3e1e7b8a20e28ed17fb59595ce1e670bb
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang-tools-extra/clangd/ClangdServer.cpp

  Log Message:
  -----------
  [clangd] Propagate context into stdlib indexing thread (#87611)

Some FS implementations rely on snapshots available in the context.


  Commit: fdce6c80bc92c9668b3835264806fa85b8a93ab7
      https://github.com/llvm/llvm-project/commit/fdce6c80bc92c9668b3835264806fa85b8a93ab7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/atomicrmw.ll

  Log Message:
  -----------
  InstCombine: Fix typo in atomicrmw or test

This was copy-paste from the identical add test, and
didn't change to test the or from the name.


  Commit: 9606716be3de067d4402957810fb05d5eee77349
      https://github.com/llvm/llvm-project/commit/9606716be3de067d4402957810fb05d5eee77349
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll

  Log Message:
  -----------
  AMDGPU: Fix typo in test function names


  Commit: d3993ac1890731d2b24543646961c95680788207
      https://github.com/llvm/llvm-project/commit/d3993ac1890731d2b24543646961c95680788207
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py

  Log Message:
  -----------
  [lldb][test] Correctly fix break at _dl_debug_state test on arm.

If lldb finds the dynamic linker in the search path or if the binary is linked staticlly, it will fail at `lldbutil.run_break_set_by_symbol` because the breakpoint is resolved. Otherwise, it's not resolved at this point. But we don't care if it's resolved or not. This test cares about if the breakpoint is hit or not after launching.

This changes the num_expected_locations to -2, which means don't assert on if this breakpoint resolved or not.


  Commit: af0b69f27dd9aa9c4609b413d502114218a6990c
      https://github.com/llvm/llvm-project/commit/af0b69f27dd9aa9c4609b413d502114218a6990c
  Author: Scott Egerton <9487234+ScottEgerton at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInsertSingleUseVDST.cpp
    M llvm/test/CodeGen/AMDGPU/insert-singleuse-vdst.mir

  Log Message:
  -----------
  [AMDGPU] Support wide register or subregister access when emitting s_singleuse_vdst instructions. (#88520)

Both single use producer and consumer instructions using wide/sub
registers are now correctly tracked and eligible for being marked as
single use.


  Commit: 8a21d59f29ef8d6011c6defa05ff7e8b7decc6d2
      https://github.com/llvm/llvm-project/commit/8a21d59f29ef8d6011c6defa05ff7e8b7decc6d2
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    A libcxx/include/__chrono/local_info.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/chrono
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap
    M libcxx/modules/std/chrono.inc
    A libcxx/test/libcxx/time/time.zone/time.zone.info/time.zone.info.local/ostream.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.local_info.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/local_info,members.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/ostream.pass.cpp
    M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp

  Log Message:
  -----------
  [libc++][TZDB] Adds local_info formatter. (#86256)

This adds the local_info type and its formatting options.
The usage of the local_info object will be done in separate patches.

Implements parts of:
- P0355 Extending to Calendars and Time Zones
- P1361 Integration of chrono with text formatting


  Commit: d8a26ca323977035969813b0e1e9fb54fd334620
      https://github.com/llvm/llvm-project/commit/d8a26ca323977035969813b0e1e9fb54fd334620
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Support/KnownBits.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Make abdu and abds optimal (#89081)

Fixes #84212


  Commit: ba1158813d4656585c7e345747bc4db4e3f03b9d
      https://github.com/llvm/llvm-project/commit/ba1158813d4656585c7e345747bc4db4e3f03b9d
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/AArch64/pr88966.ll

  Log Message:
  -----------
  [DAGCombiner][AArch64] Make combineCarryDiamond avoid creating UADDO_CARRY with carry in larger than setcc result type. (#89121)

In the attach test case we were creating a UADDO_CARRY with i1 carry out
and i41 carry in. i41 exceeds is larger than the setcc result type for
AArch64 which is i32. i41 needs to be promoted to i64 since it is larger
than i32. The type legalizer tried to use promoteTargetBoolean, but that
can only promote from a type smaller than setcc result type.

The easiest fix here is to force the carryin type to match the carryout
type at the type of creation. This should ensure the node won't exceeed
setcc result type as long as the output type doesn't.

I think we should explore requiring the types to match for this node.

Fixes #88966


  Commit: b41179d26568acbc7ba7456052029200c2146547
      https://github.com/llvm/llvm-project/commit/b41179d26568acbc7ba7456052029200c2146547
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 8a21d59f29ef


  Commit: 8fa1cbbbb94100ae356665062f88ab58f9f2738c
      https://github.com/llvm/llvm-project/commit/8fa1cbbbb94100ae356665062f88ab58f9f2738c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/gfni-shifts.ll

  Log Message:
  -----------
  [X86] gfni-shifts.ll - add vXi8 variable/splat/constant test coverage

Once #89115 has landed, we can handle per-element shifts as well using (V)GF2P8MULB


  Commit: efbb846f067a60a5fdad1c4a008274c5cb089a3d
      https://github.com/llvm/llvm-project/commit/efbb846f067a60a5fdad1c4a008274c5cb089a3d
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/gfni-rotates.ll

  Log Message:
  -----------
  [X86] gfni-rotates.ll - add vXi8 variable/splat/constant test coverage

Once #89115 has landed, we can handle per-element rotates as well using (V)GF2P8MULB


  Commit: 254cdcddd65efe3c045d49853239932ab07121d5
      https://github.com/llvm/llvm-project/commit/254cdcddd65efe3c045d49853239932ab07121d5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/combine-ptest.ll
    M llvm/test/CodeGen/X86/combine-testpd.ll
    M llvm/test/CodeGen/X86/combine-testps.ll
    M llvm/test/CodeGen/X86/vector-reduce-or-cmp.ll

  Log Message:
  -----------
  [X86] ptest is commutable as long as only the Z flag is used. (#88969)

Fixes #88958.


  Commit: 215eee60497489ae0cc7cc78c0d8b8270e057a70
      https://github.com/llvm/llvm-project/commit/215eee60497489ae0cc7cc78c0d8b8270e057a70
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M flang/CMakeLists.txt

  Log Message:
  -----------
  Revert "[flang][build] Fixed paths discrovery for the out-of-tree build. (#87822)"

This reverts commit 920298456037b9ed3ab14cb646ef6d3bf95d2c2b.


  Commit: 6870ac201f9f50a13313213fea7a14b198d7280a
      https://github.com/llvm/llvm-project/commit/6870ac201f9f50a13313213fea7a14b198d7280a
  Author: jeffreytan81 <jeffreytan at meta.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    A lldb/test/API/tools/lldb-dap/save-core/Makefile
    A lldb/test/API/tools/lldb-dap/save-core/TestDAP_save_core.py
    A lldb/test/API/tools/lldb-dap/save-core/main.cpp

  Log Message:
  -----------
  Fix saving minidump from lldb-dap (#89113)

There are users reporting saving minidump from lldb-dap does not work.

Turns out our stack trace request always evaluate a function call which
caused JIT object file like "__lldb_caller_function" to be created which
can fail minidump builder to get its module size.

This patch fixes "getModuleFileSize" for ObjectFileJIT so that module
list can be saved. I decided to create a lldb-dap test so that this
end-to-end functionality can be validated from our tests (instead of
only command line lldb).

The patch also improves several other small things in the workflow:
1. It logs any minidump stream failure so that it is easier to find out
what stream saving fails. In future, we should show process and error to
end users.
2. It handles error from "getModuleFileSize" llvm::Expected<T> otherwise
it will complain the error is not handled.

---------

Co-authored-by: jeffreytan81 <jeffreytan at fb.com>


  Commit: 24da7fa029f999c0faf5c90de351237a273f385f
      https://github.com/llvm/llvm-project/commit/24da7fa029f999c0faf5c90de351237a273f385f
  Author: Bharathi Ramana Joshi <joshibharathiramana at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
    M mlir/include/mlir/Analysis/Presburger/IntegerRelation.h
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/Affine/Analysis/AffineAnalysis.h
    M mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
    M mlir/lib/Analysis/FlatLinearValueConstraints.cpp
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/PresburgerSpace.cpp
    M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
    M mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
    M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
    M mlir/unittests/Analysis/Presburger/PresburgerSpaceTest.cpp

  Log Message:
  -----------
  [MLIR][Presburger] Use Identifiers outside Presburger library (#77316)

The pull request includes the following changes.
1. Refactors the interface to `PresburgerSpace::identifiers` to `setId` and a
const `getId`, instead of previous `getId` which returned a mutable
reference. `resetIds` does not need to be called to use identifiers, `setId`
calls `resetIds` if identifiers are not enabled.
2. Deprecates `FlatAffineRelation` by refactoring all usages of
`FlatAffineRelation` to `IntegerRelation`. To achieve this,
`FlatAffineRelation::compose` is refactored into
`IntegerRelation::mergeAndCompose`.
3. Deletes unneeded overrides of virtual functions `hasConsistentState`,
`clearAndCopyFrom` and `fourierMotzkinEliminate` from
`FlatLinearValueConstraints` as these were only used through
`FlatAffineRelation` and we now use `IntegerRelation`'s member functions
instead.
4. Fixes an existing bug in FlatLinearValueConstraints' constructor
which caused
identifiers set by superclass FlatLinearConstraints' constructor to be
erased.
5. Fixes `IntegerRelation::convertVarKind` not preserving identifiers.


  Commit: c37c472597d30a313c06bf55c72eaabdaf1ed65a
      https://github.com/llvm/llvm-project/commit/c37c472597d30a313c06bf55c72eaabdaf1ed65a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AVR/AVRISelLowering.cpp

  Log Message:
  -----------
  [AVR] Let ArrayRef infer the array size (NFC) (#88638)


  Commit: 468107904098e0b5d32db710db80907befde614e
      https://github.com/llvm/llvm-project/commit/468107904098e0b5d32db710db80907befde614e
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/include/lldb/Utility/ProcessInfo.h
    M lldb/source/Host/linux/Host.cpp
    M lldb/unittests/Host/linux/HostTest.cpp

  Log Message:
  -----------
  adds additional information to the ProcessInfo object for elf processes (#88995)

This adds some additional bits into a ProcessInfo structure that will be
of use in filling structs in an elf core file. This is a demand for
implementing process save-core


  Commit: d556ed5b4a02bc61a595fbd903d8c9b4116dd926
      https://github.com/llvm/llvm-project/commit/d556ed5b4a02bc61a595fbd903d8c9b4116dd926
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/gfni-rotates.ll
    M llvm/test/CodeGen/X86/gfni-shifts.ll

  Log Message:
  -----------
  [X86] Add GFNI test coverage without AVX512BW

512-bit GFNI doesn't require AVX512BW


  Commit: ee0284ec1027b2917afac3da5322553d0f85a759
      https://github.com/llvm/llvm-project/commit/ee0284ec1027b2917afac3da5322553d0f85a759
  Author: Dmitriy Smirnov <dmitriy.smirnov at arm.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir

  Log Message:
  -----------
  [TOSA] FFT2D/RFFT2D accuracy increased (#88510)

This PR increases accurasy of FFT2D/RFFT2D calculation by removing
periodic part of sin/cos


  Commit: df7eb202ce432ec5f683f673b04878d6e1314d24
      https://github.com/llvm/llvm-project/commit/df7eb202ce432ec5f683f673b04878d6e1314d24
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/RISCV/unsigned-node-trunc-with-signed-users.ll

  Log Message:
  -----------
  [SLP][NFC]Add a test with incorrect final analysis for unsigned nodes, being used in signed nodes.


  Commit: 992413de99588a60920f934de07d703efb432ade
      https://github.com/llvm/llvm-project/commit/992413de99588a60920f934de07d703efb432ade
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/Utils.cpp
    M flang/lib/Lower/OpenMP/Utils.h

  Log Message:
  -----------
  [flang][OpenMP] Move clause/object conversion to happen early, in genOMP (#87086)

This removes the last use of genOmpObjectList2, which has now been
removed.

---------

Co-authored-by: Sergio Afonso <safonsof at amd.com>


  Commit: 33786b62bae4cec1c921f7c017aa6cdc644ced39
      https://github.com/llvm/llvm-project/commit/33786b62bae4cec1c921f7c017aa6cdc644ced39
  Author: Valery Pykhtin <valery.pykhtin at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/utils/update_any_test_checks.py

  Log Message:
  -----------
  Make update_any_test_check.py script accepting @listfile CL argument. (#86800)

Usage: `update_any_test_check.py @my_list_of_tests`
where my_list_of_tests is a file containing list of tests to update.


  Commit: 74e07ab523122d6a8347b25770062ab331b6bb84
      https://github.com/llvm/llvm-project/commit/74e07ab523122d6a8347b25770062ab331b6bb84
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/unsigned-node-trunc-with-signed-users.ll

  Log Message:
  -----------
  [SLP]Fix final analysis for unsigned nodes.

Need to check that at least single bit is cleared for unsigned nodes
before reducing their size. Otherwise they might be treated as signed in
signed nodes.


  Commit: 98427264cab558d285c7222f1f25b904124c6b93
      https://github.com/llvm/llvm-project/commit/98427264cab558d285c7222f1f25b904124c6b93
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/unittests/Host/linux/HostTest.cpp

  Log Message:
  -----------
  this test is flakey on arm in linux because I got too clever (#89267)

the assembly jazz doesn't work on arm. oops


  Commit: eb989f625ee0e47ffa4343abe11b6afa9f3b2e69
      https://github.com/llvm/llvm-project/commit/eb989f625ee0e47ffa4343abe11b6afa9f3b2e69
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    A llvm/test/CodeGen/SPIRV/image/sampler.ll

  Log Message:
  -----------
  [SPIR-V] Fix return type when sampling an image with OpImageSampleExplicitLod (#89252)

This PR fixes parsing of builtins return types in general and fixes
return type when sampling an image with OpImageSampleExplicitLod in
particular.


  Commit: e9654880df9b30af11816782a83ebf960536309c
      https://github.com/llvm/llvm-project/commit/e9654880df9b30af11816782a83ebf960536309c
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    R libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/local_info,members.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/local_info.members.pass.cpp

  Log Message:
  -----------
  [NFC][libc++][chrono] Renames a file.

This uses a period instead of a comma; the latter was a typo.


  Commit: 68e814d9114b6c8910642298714dad6fa79ccad2
      https://github.com/llvm/llvm-project/commit/68e814d9114b6c8910642298714dad6fa79ccad2
  Author: Emma Pilkington <emma.pilkington95 at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/include/llvm/MC/MCDisassembler/MCDisassembler.h
    M llvm/lib/MC/MCDisassembler/MCDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    A llvm/test/MC/Disassembler/AMDGPU/kernel-descriptor-errors.test
    A llvm/test/MC/Disassembler/AMDGPU/kernel-descriptor-rsrc-errors.test
    M llvm/tools/llvm-objdump/llvm-objdump.cpp

  Log Message:
  -----------
   [AMDGPU] Add disassembler diagnostics for invalid kernel descriptors  (#87400)

These mostly are checking for various reserved bits being set. The diagnostics
for gpu-dependent reserved bits have a bit more context since they seem like the
most likely ones to be observed in practice.

This commit also improves the error handling mechanism for
MCDisassembler::onSymbolStart(). Previously it had a comment stream parameter
that was just being ignored by llvm-objdump, now it returns errors using
Expected<T>.


  Commit: 44713f15f9116a83f168f420ebddc6ae061883c0
      https://github.com/llvm/llvm-project/commit/44713f15f9116a83f168f420ebddc6ae061883c0
  Author: Joe Nash <joseph.nash at amd.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td

  Log Message:
  -----------
  [AMDGPU][MC] Separate VOPC MnemonicAlias from Instruction (#89105)

Tablegen classes MnemonicAlias, Requires, and VOPC_Real, all define a
field 'Predicates'. The prior formulation resulted in the instantiated
record inheriting from all three to only have the Predicate set in
Requires, i.e. Gen.AssemblerPredicate. This breaks the design of
GCNPredicateControl (which is a parent class of VOPC_Real) that allows
multiple predicates such as SubtargetPredicate and OtherPredicates to be
set on an Instruction.
MnemonicAlias does not need to be defined in the same record as
VOPC_Real, so we can separate the definitions and remove Requires to
avoid the issue.
NFCI, but it enables future changes, such as setting multiple predicates
on a VOPC_Real.


  Commit: c577f91d266b74d1b5df475fa2dce7c47fc6c57e
      https://github.com/llvm/llvm-project/commit/c577f91d266b74d1b5df475fa2dce7c47fc6c57e
  Author: Charitha Saumya <136391709+charithaintc at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/test/Dialect/Vector/linearize.mlir
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp

  Log Message:
  -----------
  [mlir][vector] Add support for linearizing Extract, ExtractStridedSlice, Shuffle VectorOps in VectorLinearize (#88204)

This PR adds support for converting `vector.extract_strided_slice` and
`vector.extract` operations to equivalent `vector.shuffle` operations
that operates on linearized (1-D) vectors. `vector.shuffle` operations
operating on n-D (n > 1) are also converted to equivalent shuffle
operations working on linearized vectors.


  Commit: 0e5c28d1930e7210f0f293312382c54d298dda06
      https://github.com/llvm/llvm-project/commit/0e5c28d1930e7210f0f293312382c54d298dda06
  Author: Jordan Rupprecht <rupprecht at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/cmake/caches/Fuchsia.cmake
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/packages/Python/lldbsuite/test/lldb_pylint_helper.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/CMakeLists.txt
    M lldb/use_lldb_suite_root.py
    M lldb/utils/lldb-dotest/CMakeLists.txt
    M lldb/utils/lldb-dotest/lldb-dotest.in
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn

  Log Message:
  -----------
  [lldb][test] Remove LLDB_TEST_USE_VENDOR_PACKAGES (#89260)

The `LLDB_TEST_USE_VENDOR_PACKAGES` has defaulted to `Off` for a while.
Either installing `pexpect` or skipping those tests with
`-DLLDB_TEST_USER_ARGS=--skip-category=pexpect` seems to be enough that
we can fully remove this option.

This patch removes the `LLDB_TEST_USE_VENDOR_PACKAGES` cmake
configuration as well as the associated code to add
`third_party/Python/module` to the python path. I'll do the actual
deletion of `third_party/Python/module` in a followup PR in the
(unlikely, I hope) event this commit needs to be reverted.


  Commit: 22ed10d11e3ed5179e21a59cfa78b8318d1e1665
      https://github.com/llvm/llvm-project/commit/22ed10d11e3ed5179e21a59cfa78b8318d1e1665
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [bazel][mlir] Add missing dep after ee0284ec1027


  Commit: 947b656add053a8c9a36cab27b5c6e8eb9c426f7
      https://github.com/llvm/llvm-project/commit/947b656add053a8c9a36cab27b5c6e8eb9c426f7
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/test/Instrumentation/PGOForceFunctionAttrs/basic.ll

  Log Message:
  -----------
  [PGO] Check that PGOOpt exists before using PGOOpt->ColdOptType (#89139)

This means that the pass is unusable without some sort of profile. We
can revisit this decision later if we want to support running this pass
without a profile.


  Commit: b3383d77693b1ea0fc622112b2c4b2e6719b3811
      https://github.com/llvm/llvm-project/commit/b3383d77693b1ea0fc622112b2c4b2e6719b3811
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Fix a typo in barrier.arrive Op (#89273)


  Commit: a71c1b34525c836ab8fbefe4cc3029699ac208a4
      https://github.com/llvm/llvm-project/commit/a71c1b34525c836ab8fbefe4cc3029699ac208a4
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td

  Log Message:
  -----------
  [RISCV] Remove unused HasStdExtZama16b Predicate. NFC


  Commit: 2a3a79ce4c2149d7787d56f9841b66cacc9061d0
      https://github.com/llvm/llvm-project/commit/2a3a79ce4c2149d7787d56f9841b66cacc9061d0
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lld/MachO/ICF.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/InputSection.cpp
    M lld/MachO/MapFile.cpp
    M lld/MachO/MarkLive.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/SectionPriorities.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/MachO/Symbols.cpp
    M lld/MachO/Symbols.h
    M lld/MachO/SyntheticSections.cpp
    M lld/MachO/UnwindInfoSection.cpp
    M lld/MachO/Writer.cpp

  Log Message:
  -----------
  [lld-macho][NFC] Preserve original symbol isec, unwindEntry and size (#88357)

Currently, when moving symbols from one `InputSection` to another (like
in ICF) we directly update the symbol's `isec`, `unwindEntry` and
`size`. By doing this we lose the original information. This information
will be needed in a future change. Since when moving symbols we always
set the symbol's `wasCoalesced` and `isec-> replacement`, we can just
use this info to conditionally get the information we need at access
time.


  Commit: 515269b0ac0e061731eb5546c44083bf771db4d8
      https://github.com/llvm/llvm-project/commit/515269b0ac0e061731eb5546c44083bf771db4d8
  Author: Cyndy Ishida <cyndy_ishida at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/test/InstallAPI/binary-attributes.test
    M clang/test/InstallAPI/rpath.test

  Log Message:
  -----------
  [InstallAPI][Tests] Update tests to be resilient to reversion iteration config (#89270)


  Commit: 22c26fa13d46e174e3d862e5f40cff06d804af0c
      https://github.com/llvm/llvm-project/commit/22c26fa13d46e174e3d862e5f40cff06d804af0c
  Author: Anthony Ha <anthonyha96 at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Target/Platform.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp

  Log Message:
  -----------
  [lldb] Skip remote PutFile when MD5 hashes equal (#88812)

This PR adds a check within `PutFile` to exit early when both local and
destination files have matching MD5 hashes. If they differ, or there is
trouble getting the hashes, the regular code path to put the file is
run.

As I needed this to talk to an `lldb-server` which runs the gdb-remote
protocol, I enabled `CalculateMD5` within `Platform/gdb-server` and also
found and fixed a parsing bug within it as well. Before this PR, the
client is incorrectly parsing the response packet containing the
checksum; after this PR, hopefully this is fixed. There is a test for
the parsing behavior included in this PR.

---------

Co-authored-by: Anthony Ha <antha at microsoft.com>


  Commit: 2a2e21cd2bc4db9ec579d1c53bd11fc4bb0e7714
      https://github.com/llvm/llvm-project/commit/2a2e21cd2bc4db9ec579d1c53bd11fc4bb0e7714
  Author: Michael Flanders <flanders.michaelk at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/docs/dev/config_options.rst

  Log Message:
  -----------
  [libc][docs] adds highlighting languages to `docs/dev/config_options.rst` (#89136)

Fixes #89135.


  Commit: bd0f818d6303b87314755f026742197fd3b2bae2
      https://github.com/llvm/llvm-project/commit/bd0f818d6303b87314755f026742197fd3b2bae2
  Author: Michael Flanders <flanders.michaelk at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/docs/index.rst
    A libc/docs/threads.rst
    A libc/utils/docgen/threads.json

  Log Message:
  -----------
  [libc][docs] adds threads.h impl status docs (#89275)

Closes #88067.

Adding @nickdesaulniers for review.


  Commit: 8ba0041e158f8678e829c10efa73397afdba6b4f
      https://github.com/llvm/llvm-project/commit/8ba0041e158f8678e829c10efa73397afdba6b4f
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/SemaCXX/explicit.cpp

  Log Message:
  -----------
  Stop double-diagnosing explicit convert operator in switch condition (#89142)

Note this also likely fixes a bunch of other cases. We were
double-diagnosting in a template because we were generating the
expression anyway, so any attempts to instantiate the function would
instantiate the expression, thus re-diagnosing it.

This patch replaces it with a RecoveryExpr. Additionally,
VerifyIntegerConstantExpression couldn't handle the RecoveryExpr, as it
requires a non-dependent expression result (which a RecoveryExpr is
dependent). Additionally, callers of it use the return value to decide
that VerifyIntegerConstantExpression succeeded, so it fails if it sees a
RecoveryExpr.


  Commit: 76600aee9d7c851d3e26eed7496cec880bd53861
      https://github.com/llvm/llvm-project/commit/76600aee9d7c851d3e26eed7496cec880bd53861
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    A clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
    A clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
    A clang/test/SemaOpenACC/compute-construct-num_workers-clause.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'num_workers' clause for compute constructs (#89151)

This clause just takes an 'int expr', which is not optional. This patch
implements the clause on compute constructs.


  Commit: e772a268ef75332b72dd9b9ca0341a6af8b0db72
      https://github.com/llvm/llvm-project/commit/e772a268ef75332b72dd9b9ca0341a6af8b0db72
  Author: Orlando Cazalet-Hyams <orlando.hyams at sony.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/CodeGenCXX/debug-info-alias.cpp
    A clang/test/CodeGenCXX/defaulted-template-alias.cpp
    A clang/test/CodeGenCXX/template-alias.cpp
    A clang/test/CodeGenCXX/variadic-template-alias.cpp
    M clang/test/Driver/debug-options.c

  Log Message:
  -----------
  [Clang] Emit DW_TAG_template_alias for template aliases (#87623)

Fix issue https://github.com/llvm/llvm-project/issues/54624

Add front end flags -gtemplate-alias (also a cc1 flag) and -gno-template-alias
to enable/disable usage of the feature. It's enabled by default in the front
end for SCE debugger tuning only.

GCC emits DW_TAG_typedef for template aliases (as does Clang with this feature
disabled), and GDB and LLDB appear not to support DW_TAG_template_alias.

The -Xclang option -gsimple-template-names=mangled is treated the same as
=full, which is not a regression from current behaviour for template
aliases.

The current implementation omits defaulted arguments and as a consequence
also omits empty parameter packs that come after defaulted arguments. Again,
this isn't a regression as the DW_TAG_typedef name doesn't contain defaulted
arguments.

LLVM support added in https://github.com/llvm/llvm-project/pull/88943

Added template-alias.cpp - Check the metadata construction & interaction with
      -gsimple-template-names.
Added variadic-template-alias.cpp - Check template parameter packs work.
Added defaulted-template-alias.cpp - Check defaulted args (don't) work.
Modified debug-options.c - Check Clang generates correct cc1 flags.


  Commit: 67669eada3eac53bb88574988dc82f582c2dc9cc
      https://github.com/llvm/llvm-project/commit/67669eada3eac53bb88574988dc82f582c2dc9cc
  Author: Michael Flanders <flanders.michaelk at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/utils/docgen/fenv.json
    M libc/utils/docgen/signal.json
    M libc/utils/docgen/stdbit.json

  Log Message:
  -----------
  [libc][docs] Updates implementation status for some preexisting docgen json files (#89281)

Moving towards displaying impl status of standard header macros. The macros
aren't handled by docgen yet, so I haven't included updated rst files.


  Commit: b8adf169bb86f8226978e1262443e2ffd94298ce
      https://github.com/llvm/llvm-project/commit/b8adf169bb86f8226978e1262443e2ffd94298ce
  Author: Erich Keane <ekeane at nvidia.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp
    M clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
    A clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
    A clang/test/SemaOpenACC/compute-construct-vector_length-clause.cpp
    M clang/tools/libclang/CIndex.cpp

  Log Message:
  -----------
  [OpenACC] Implement 'vector_length' clause On compute constructs

The 'vector_length' clause is semantically identical to the
'num_workers' clause, in that it takes a mandatory single int-expr. This
is implemented identically to it.


  Commit: b8de7cf6588ebc95e33a0e4a5b4254a94df60e4e
      https://github.com/llvm/llvm-project/commit/b8de7cf6588ebc95e33a0e4a5b4254a94df60e4e
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/src/unistd/linux/pipe.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc] unpoison memory returned by pipe syscall (#88942)

The memory sanitizer doesn't recognize the results of the pipe syscall
as being initialized. This patch manually unpoisons that memory.


  Commit: 7aad1ee70f2c6be603707ff52a13e0e22330e859
      https://github.com/llvm/llvm-project/commit/7aad1ee70f2c6be603707ff52a13e0e22330e859
  Author: Nick Desaulniers <nickdesaulniers at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/docs/contributing.rst

  Log Message:
  -----------
  [libc][docs] link to good beginner bugs (#89297)

Tagging bugs as "good first issue" and taking the time to work with new
contributors pays dividends.


  Commit: 172f6ddfa7662a36e3a41db6bb944f7d72fd0b00
      https://github.com/llvm/llvm-project/commit/172f6ddfa7662a36e3a41db6bb944f7d72fd0b00
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/InstrProfReader.h
    M llvm/include/llvm/ProfileData/InstrProfWriter.h
    M llvm/include/llvm/ProfileData/MemProf.h
    M llvm/include/llvm/ProfileData/MemProfReader.h
    M llvm/lib/ProfileData/InstrProfReader.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    M llvm/test/tools/llvm-profdata/memprof-merge-v0.test
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp

  Log Message:
  -----------
  [memprof] Add Version2 of the indexed MemProf format (#89100)

This patch adds Version2 of the indexed MemProf format.  The new
format comes with a hash table from CallStackId to actual call stacks
llvm::SmallVector<FrameId>.  The rest of the format refers to call
stacks with CallStackId.  This "values + references" model effectively
deduplicates call stacks.  Without this patch, a large indexed memprof
file of mine shrinks from 4.4GB to 1.6GB, a 64% reduction.

This patch does not make Version2 generally available yet as I am
planning to make a few more changes to the format.


  Commit: 6e6da74c8b936e457ca5e56a828823ae6a9f9066
      https://github.com/llvm/llvm-project/commit/6e6da74c8b936e457ca5e56a828823ae6a9f9066
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir-c/Dialect/GPU.h
    A mlir/lib/Bindings/Python/DialectGPU.cpp
    M mlir/lib/CAPI/Dialect/GPU.cpp
    M mlir/python/CMakeLists.txt
    M mlir/python/mlir/dialects/gpu/__init__.py
    M mlir/test/python/dialects/gpu/dialect.py
    M mlir/test/python/dialects/gpu/module-to-binary-nvvm.py

  Log Message:
  -----------
  [mlir][python] add binding to `#gpu.object` (#88992)


  Commit: 16711b431b843dd2143d38fdf6b0591dfb1783e0
      https://github.com/llvm/llvm-project/commit/16711b431b843dd2143d38fdf6b0591dfb1783e0
  Author: cmtice <cmtice at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/DWARF.cpp
    M lld/ELF/DWARF.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/docs/ld.lld.1
    A lld/test/ELF/Inputs/debug-names-a.s
    A lld/test/ELF/Inputs/debug-names-b.s
    A lld/test/ELF/debug-names-bad.s
    A lld/test/ELF/debug-names-die-offset-form-flag-present.s
    A lld/test/ELF/debug-names-different-aug-string.s
    A lld/test/ELF/debug-names-dwarf64.s
    A lld/test/ELF/debug-names-missing-parent.s
    A lld/test/ELF/debug-names-multi-cus.s
    A lld/test/ELF/debug-names-nonames.s
    A lld/test/ELF/debug-names-parent-idx.s
    A lld/test/ELF/debug-names-type-units.s
    A lld/test/ELF/debug-names.s
    M lld/test/ELF/driver.test
    A lld/test/ELF/ppc32-debug-names.s

  Log Message:
  -----------
  [lld][ELF]  Add --debug-names to create merged .debug_names. (#86508)

`clang -g -gpubnames` (with optional -gsplit-dwarf) creates the
`.debug_names` section ("per-CU" index). By default lld concatenates
input `.debug_names` sections into an output `.debug_names` section.
LLDB can consume the concatenated section but the lookup performance is
not good.

This patch adds --debug-names to create a per-module index by combining
the per-CU indexes into a single index that covers the entire load
module. The produced `.debug_names` is a replacement for `.gdb_index`.

Type units (-fdebug-types-section) are not handled yet.

Co-authored-by: Fangrui Song <i at maskray.me>

---------

Co-authored-by: Fangrui Song <i at maskray.me>


  Commit: 78eb2c2cba5ad0f9a36ec1959371527313a76bbe
      https://github.com/llvm/llvm-project/commit/78eb2c2cba5ad0f9a36ec1959371527313a76bbe
  Author: Jon Chesterfield <jonathanchesterfield at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/CodeGen/ABIInfoImpl.cpp

  Log Message:
  -----------
  [clang] Preserve argument type in round pointer to alignment


  Commit: 8b24028a7e2130cb79d40da58c9738400b20465b
      https://github.com/llvm/llvm-project/commit/8b24028a7e2130cb79d40da58c9738400b20465b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/lib/ProfileData/InstrProfWriter.cpp

  Log Message:
  -----------
  [memprof] Use structured binding (NFC) (#89315)


  Commit: 446371f5ccbd81aa7707b4f1a1baa0ea0955dc67
      https://github.com/llvm/llvm-project/commit/446371f5ccbd81aa7707b4f1a1baa0ea0955dc67
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/unittests/ProfileData/InstrProfTest.cpp

  Log Message:
  -----------
  [memprof] Use std::optional (NFC) (#89317)

This is partly for readability and partly for consistency with other
id-to-frame callbacks.


  Commit: 0dcabba9a7c5e1f72eca106ccb61a51b571ebb2a
      https://github.com/llvm/llvm-project/commit/0dcabba9a7c5e1f72eca106ccb61a51b571ebb2a
  Author: Yijia Gu <yijiagu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [mlir][bazel] fix llvm:support dependency error for CAPIGPU


  Commit: a2face49ac7ba49736ca47f5e5dd7fa636b5defa
      https://github.com/llvm/llvm-project/commit/a2face49ac7ba49736ca47f5e5dd7fa636b5defa
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp

  Log Message:
  -----------
  [DXIL] Add DXIL SubArch to correspond to version number (#89125)

This change is in line with similar notation in SPIRV. 

Decoupling version numbering of DXIL and of Shader Model is intended to
enable accurate specification of DXIL features that can be targeted by
different Shader Model versions.


  Commit: 39bfdb7f33f7f53ab662c5cea25129c45a9b4c11
      https://github.com/llvm/llvm-project/commit/39bfdb7f33f7f53ab662c5cea25129c45a9b4c11
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll

  Log Message:
  -----------
  [GlobalOpt] Precommit tests for PR84694 (#87443)

PR link: https://github.com/llvm/llvm-project/pull/84694


  Commit: 2132ebf0fe883a76ee29ad7c639e9f2a77704830
      https://github.com/llvm/llvm-project/commit/2132ebf0fe883a76ee29ad7c639e9f2a77704830
  Author: Jeff Niu <jeff at modular.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/IR/Properties.td

  Log Message:
  -----------
  [mlir] Add def to `Properties.td` to help with enum properties (#89311)

This is useful for defining operation properties that are enums.


  Commit: 0c41eea4742a05e68a2612f00baf5aa53c4c0d94
      https://github.com/llvm/llvm-project/commit/0c41eea4742a05e68a2612f00baf5aa53c4c0d94
  Author: Jeff Niu <jeff at modular.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/include/mlir/Conversion/LLVMCommon/VectorPattern.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Conversion/ArithCommon/AttrToLLVMConverter.cpp
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/lib/Conversion/LLVMCommon/VectorPattern.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp

  Log Message:
  -----------
  [mlir][llvm] Port `overflowFlags` to a native operation property (#89312)

This PR changes the LLVM dialect's IntegerOverflowFlags to be stored on
operations as native properties.


  Commit: 7154a3967eae3817b3bc33a1b55085b397d1bc24
      https://github.com/llvm/llvm-project/commit/7154a3967eae3817b3bc33a1b55085b397d1bc24
  Author: Alex Langford <alangford at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/source/Core/Disassembler.cpp

  Log Message:
  -----------
  [lldb][nfc] Remove unused member Disassembler::m_base_addr (#89289)

This member variable is completely unused. I also don't think it makes a
ton of sense since (1) The "base address" can be obtained from the first
Instruction in its InstructionList, and (2) InstructionLists may not be
a series of contiguous instructions (even though they are most of the
time).


  Commit: 8fb7ddf75fbfc62a91fa163ffb6333edcffab99a
      https://github.com/llvm/llvm-project/commit/8fb7ddf75fbfc62a91fa163ffb6333edcffab99a
  Author: Will Dietz <will.dietz at sifive.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M mlir/lib/Conversion/TosaToLinalg/CMakeLists.txt

  Log Message:
  -----------
  [Tosa] TosaToLinalg: link in Index dialect (#89318)

This is needed now that this depends on it:
ee0284ec1027b2917afac3da5322553d0f85a759

Co-authored-by: Will Dietz <w at wdtz.org>


  Commit: 23d88a825bf46922333a78dc0ea431b9e54e48c2
      https://github.com/llvm/llvm-project/commit/23d88a825bf46922333a78dc0ea431b9e54e48c2
  Author: Fred Grim <fgrim at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/BinaryFormat/ELF.cpp

  Log Message:
  -----------
  adds conversion functions for EI_OSABI in elf (#89280)

These are needed to populate elf headers in core files. This is part of
implementing process save-core in lldb


  Commit: 8c212a3f41e2414cbdea274fd5fd4188893df72c
      https://github.com/llvm/llvm-project/commit/8c212a3f41e2414cbdea274fd5fd4188893df72c
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/test/lit.cfg.py

  Log Message:
  -----------
  [mlir][python] allow passing in PYTHONPATH to lit tests (#89296)


  Commit: ab0b865d31ed0f2c40bd148ad709850dc10728de
      https://github.com/llvm/llvm-project/commit/ab0b865d31ed0f2c40bd148ad709850dc10728de
  Author: Thurston Dang <thurston at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    A llvm/test/CodeGen/AArch64/hwasan-check-memaccess-fixedshadow.ll

  Log Message:
  -----------
  [hwasan] Add testcase for check-memaccess when using a fixed shadow (#89328)

The test case is based on hwasan-check-memaccess.ll (albeit updated
using update_llc_test_checks) with --hwasan-mapping-offset=...

--hwasan-mapping-offset=... actually doesn't affect the LLVM IR at the
moment; future work will introduce memaccess fixed shadow intrinsics.
(https://github.com/llvm/llvm-project/pull/89319)


  Commit: 6b3893690b37d6e85cabfd144eca9a738e3baf9b
      https://github.com/llvm/llvm-project/commit/6b3893690b37d6e85cabfd144eca9a738e3baf9b
  Author: jimingham <jingham at apple.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp

  Log Message:
  -----------
  Check for null oso SymbolFile in SymbolFileDwarfDebugMap::ResolveSymbolContext (#89324)

The couple other places that use the oso module's SymbolFile, they check
that it's non-null, so this is just an oversight in
ResolveSymbolContext.

I didn't add a test for this (but did add a log message for the error
case) because I can't see how this would actually happen. The .o file
had to have valid enough DWARF that the linker's parser could handle it
or it would not be in the debug map. If you delete the .o file, we just
leave that entry out of the debug map. If you strip it or otherwise mess
with it, we'll notice the changed mod time and refuse to read it...

This was based on a report from the field, and we don't have access to
the project. But if the logging tells me how this happened I can come
back and add a test with that example.


  Commit: 55d4a8929711c9fc68a460bafa3a63e4a90ac9c1
      https://github.com/llvm/llvm-project/commit/55d4a8929711c9fc68a460bafa3a63e4a90ac9c1
  Author: Michael Jones <michaelrj at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M libc/src/__support/FPUtil/FEnvImpl.h
    M libc/src/__support/FPUtil/riscv/FEnvImpl.h

  Log Message:
  -----------
  [libc] fix FEnvImpl not using the proxy header (#89303)

In the recent fenv.h header cleanup, two FEnvImpl.h files were missed,
causing build issues. This patch fixes that.


  Commit: 2b2c4a84651787faaa223b7c1b206e3a805bc10c
      https://github.com/llvm/llvm-project/commit/2b2c4a84651787faaa223b7c1b206e3a805bc10c
  Author: Fangrui Song <i at maskray.me>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M lld/test/ELF/debug-names-bad.s

  Log Message:
  -----------
  [ELF,test] Make debug-names-bad.s Linux only because of GNU sed extension


  Commit: 3f2371e1a0dacf78a53d5b57df3cc5f08cddf6a9
      https://github.com/llvm/llvm-project/commit/3f2371e1a0dacf78a53d5b57df3cc5f08cddf6a9
  Author: Max Winkler <max.enrico.winkler at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/test/Driver/cl-outputs.c
    M clang/test/Driver/cl-pch.cpp

  Log Message:
  -----------
  [clang-cl] [Driver] Fix clang-cl driver supported colon options (#88216)

Tested locally against msvc 1939.
MSVC supports the colon form of various options that take a path even
though that isn't documented for all options on MSDN.
I added the colon form for all supported msvc options that clang-cl does
not intentionally ignore due to being unsupported.

I also fixed the existing colon options by ensure we use
`JoinedOrSeparate`. `/F[x]` argument must used within the same command
line argument. However, `/F[x]:` arguments are allowed to span a command
line argument. The following is valid `/F[x]: path` which is 2 separate
command line arguments.
You can see this documented here,
https://learn.microsoft.com/en-us/cpp/build/reference/fo-object-file-name?view=msvc-170,
where it says `/Fo:[ ]"pathname"`.
This behaviour works for all colon options that take a path and I tested
it locally against msvc 1939 for all the option changes in this PR.


  Commit: eb7ad8853cfe6ede2d592a417a1ec64636a61bb5
      https://github.com/llvm/llvm-project/commit/eb7ad8853cfe6ede2d592a417a1ec64636a61bb5
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-sgt-to-icmp-sgt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-slt-to-icmp-sgt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ugt-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/vector-xor.ll

  Log Message:
  -----------
  [InstCombine] Remove some uses with replaceUndefsWith() (#89190)

Now that we don't accept undef splat in PatternMatch, we can remove some
uses of replaceUndefsWith(). I believe in all these cases only poison
splats are possible now, in which case no replacement is necessary.


  Commit: 89f8ba2855789c6c8b445af0e1aa82d5f5cf940a
      https://github.com/llvm/llvm-project/commit/89f8ba2855789c6c8b445af0e1aa82d5f5cf940a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/test/Assembler/implicit-intrinsic-declaration-invalid.ll
    A llvm/test/Assembler/implicit-intrinsic-declaration-invalid2.ll
    A llvm/test/Assembler/implicit-intrinsic-declaration-invalid3.ll
    M llvm/test/Assembler/implicit-intrinsic-declaration.ll

  Log Message:
  -----------
  [AsmParser] Support calling intrinsics without mangling suffix (#89172)

This adds proper support for calling intrinsics without mangling suffix
when parsing textual IR. This already worked (mostly by accident) when
only a single mangling suffix was in use.

This patch extends support to the case where the intrinsic is used with
multiple signatures, and as such multiple different intrinsic
declarations have to be inserted. The final IR will have intrinsics with
mangling suffix as usual.

Motivated by the discussion at:
https://discourse.llvm.org/t/recent-improvements-to-the-ir-parser/77366


  Commit: 949e66baf1c5d97dc60a243d9b66df5216255343
      https://github.com/llvm/llvm-project/commit/949e66baf1c5d97dc60a243d9b66df5216255343
  Author: Andrey Ali Khan Bolshakov <bolsh.andrey at yandex.ru>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/CodeGen/CoverageMappingGen.cpp

  Log Message:
  -----------
  [Coverage][NFC] Avoid visiting non-unique `OpaqueValueExpr` (#88910)

Only unique `OpaqueValueExpr`s should be handled in the mapping builder,
as
[discussed](https://github.com/llvm/llvm-project/pull/85837#discussion_r1542056451)
in #85837. However, `getCond()` returns non-unique `OpaqueValueExpr` for
`BinaryConditionalOperator` (because it is also used as the "true"
branch expression). Use `getCommon()` instead so as to bypass the
`OpaqueValueExpr`.


  Commit: 396cdabe47f3596464b289d0937c0066f50a0ac6
      https://github.com/llvm/llvm-project/commit/396cdabe47f3596464b289d0937c0066f50a0ac6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll

  Log Message:
  -----------
  [PatternMatch] Allow poison in api_pred_ty matchers (#89188)

This allows vector splats containing poison for matchers using
api_pred_ty, making the behavior consistent with cst_pred_ty. In other
words, previously `m_NonNegative()` allowed splats with poison, while
`m_NonNegative(C)` did not. Now both allow them.

The affected matchers are m_MaxSignedValue, m_Negative, m_NonNegative,
m_StrictlyPositive, m_NonPositive, m_Power2, m_Power2OrZero,
m_NegatedPower2, m_NegatedPower2OrZero, m_LowBitMask and
m_LowBitMaskOrZero when passing in APInt.

I briefly went through the uses of these matchers and didn't spot any
places where allowing poison would be obviously wrong (I initially
thought foldSelectICmpAndBinOp is problematic, but because it does not
reuse the original constants, it's fine).

A problem here is that, despite these matchers appearing in a decent
number of places, we have very little pre-existing test coverage for
these folds with poison vectors, so we don't benefit from alive2
verification.


  Commit: 3090efc6b65be0aa26b2ed0b734eef6efdd50322
      https://github.com/llvm/llvm-project/commit/3090efc6b65be0aa26b2ed0b734eef6efdd50322
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/cuf03.cuf
    A flang/test/Semantics/cuf12.cuf

  Log Message:
  -----------
  [flang][cuda] Relax semantic for device variable in block construct (#89330)


  Commit: aac4d03423dd6b7bdef0f2eb03c570f3e2ca6630
      https://github.com/llvm/llvm-project/commit/aac4d03423dd6b7bdef0f2eb03c570f3e2ca6630
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/Sema/SemaModule.cpp
    A clang/test/Modules/pr85122.cppm

  Log Message:
  -----------
  [C++20] [Modules] Mark exported all declarations as used

Close https://github.com/llvm/llvm-project/issues/85122

As the title suggested, it looks pretty sensible.


  Commit: 08a787c91be51e6a561dc50ec34ce28abc04ac54
      https://github.com/llvm/llvm-project/commit/08a787c91be51e6a561dc50ec34ce28abc04ac54
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    A llvm/test/Transforms/InstCombine/update-bpi.ll

  Log Message:
  -----------
  [InstCombine] Add test to track BPI when condition was inverted (#86469)

InstCombine may invert branch condition and profile metadata. Branch
probability analysis should be updated in this case.


  Commit: de3e4a9dfe89dfc0a4d6d5e0891c542f6c82ca57
      https://github.com/llvm/llvm-project/commit/de3e4a9dfe89dfc0a4d6d5e0891c542f6c82ca57
  Author: Freddy Ye <freddy.ye at intel.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/lib/Target/X86/X86InstrKL.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/keylocker-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/sha.ll
    R llvm/test/MC/Disassembler/X86/apx/keylocker.txt
    R llvm/test/MC/Disassembler/X86/apx/sha.txt
    R llvm/test/MC/X86/apx/keylocker-att.s
    R llvm/test/MC/X86/apx/keylocker-intel.s
    R llvm/test/MC/X86/apx/sha-att.s
    R llvm/test/MC/X86/apx/sha-intel.s
    M llvm/test/MC/X86/x86_64-asm-match.s
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp

  Log Message:
  -----------
  [X86][APX] Remove KEYLOCKER and SHA promotions from EVEX MAP4. (#89173)

APX spec: https://cdrdv2.intel.com/v1/dl/getContent/784266
Change happended in version 4.0.
Removed instructions' Opcodes:
AESDEC128KL
AESDEC256KL
AESDECWIDE128KL
AESDECWIDE256KL
AESENC128KL
AESENC256KL
AESENCWIDE128KL
AESENCWIDE256KL
ENCODEKEY128
ENCODEKEY256
SHA1MSG1
SHA1MSG2
SHA1NEXTE
SHA1RNDS4
SHA256MSG1
SHA256MSG2
SHA256RNDS2


  Commit: d3925e65a7ab88eb0ba68d3ab79cd95db5629951
      https://github.com/llvm/llvm-project/commit/d3925e65a7ab88eb0ba68d3ab79cd95db5629951
  Author: YunQiang Su <syq at debian.org>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  CompilerRT: Normalize COMPILER_RT_DEFAULT_TARGET_TRIPLE (#89234)

If LLVM is configured with -DLLVM_DEFAULT_TARGET_TRIPLE, or compiler_rt
is configured with -DCOMPILER_RT_DEFAULT_TARGET_TRIPLE, while the
argument is not normalized, such as Debian-style vendor-less triple,
clang will try to find libclang_rt in lib/<normalized_triple>, while
libclang_rt is placed into lib/<triple_arg>.

Let's also place libclang_rt into lib/<normalized_triple>.
`libcxx/utils/ci/run-buildbot` is also updated to use
`armv7m-none-unknown-eabi` as normalized triple instead of
current `armv7m-none-eabi`.

ChangeLog of this PR:
This patch has been applied and revert twice:
1. The first try is https://github.com/llvm/llvm-project/pull/88407, and
then it is found that it causes some CI failures.
    https://lab.llvm.org/buildbot/#/builders/98/builds/36366
It is then resolved by another commit:
https://github.com/llvm/llvm-project/commit/1693009679313282afbed38778dd3fad62641e1b

    https://lab.llvm.org/buildbot/#/builders/77/builds/36372
It is caused that `COMPILER_RT_DEFAULT_TARGET_TRIPLE` is overwrite
without taking care about `CACHE`.

2. The second try https://github.com/llvm/llvm-project/pull/88835,
     resolves https://lab.llvm.org/buildbot/#/builders/77/builds/36372
     and in fact only one `execute_process` is needed.

Then we find some other CI failures. 
https://github.com/mstorsjo/llvm-mingw/actions/runs/8730621159

https://buildkite.com/llvm-project/libcxx-ci/builds/34897#018eec06-612c-47f1-9931-d3bd88bf7ced

It is due to misunderstanding `-print-effective-triple`: which will
output `thumbv7-w64-windows-gnu` for `armv7-w64-windows-gnu` or some
other thumb-enabled arm triples.
In fact we should use `-print-target-triple`.

For armv7m-picolibc, `armv7m-none-eabi` is hardcoded in
libcxx/utils/ci/run-buildbot, while in fact `armv7m-none-unknown-eabi`
is the real normalized triple.


  Commit: f4bbcac244eded55acf02cc9fd74eb3f0b075304
      https://github.com/llvm/llvm-project/commit/f4bbcac244eded55acf02cc9fd74eb3f0b075304
  Author: yronglin <yronglin777 at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Sema/Sema.h
    M clang/lib/CodeGen/CGLoopInfo.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    M clang/test/Parser/pragma-unroll.cpp

  Log Message:
  -----------
  [Clang] Allow the value of unroll count to be zero  in `#pragma GCC unroll` and `#pragma unroll` (#88666)

Fixes https://github.com/llvm/llvm-project/issues/88624

GCC allows the value of loop unroll count to be zero, and the values of
0 and 1 block any unrolling of the loop. This PR aims to make clang
keeps the same behavior with GCC.
https://gcc.gnu.org/onlinedocs/gcc/Loop-Specific-Pragmas.html

---------

Signed-off-by: yronglin <yronglin777 at gmail.com>


  Commit: 176f7f2c7c1cbc98e10a1cd611d221f473db7a5e
      https://github.com/llvm/llvm-project/commit/176f7f2c7c1cbc98e10a1cd611d221f473db7a5e
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/include/clang/Basic/riscv_vector.td

  Log Message:
  -----------
  [clang][RISCV] Remove unneeded overloaded suffix for vcreate (#89241)

Since `vcreate` doesn't support overload, we can remove it.


  Commit: bd676f00b80a064e1d377a758aec5b7ae6814e5f
      https://github.com/llvm/llvm-project/commit/bd676f00b80a064e1d377a758aec5b7ae6814e5f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M clang/lib/Sema/SemaStmtAttr.cpp

  Log Message:
  -----------
  [Sema] Fix a warning

This patch fixes

  clang/lib/Sema/SemaStmtAttr.cpp:114:18: error: unused variable 'R'
  [-Werror,-Wunused-variable]


  Commit: b64c69d5b1bfeaf675f25e7598b78e9f3543f241
      https://github.com/llvm/llvm-project/commit/b64c69d5b1bfeaf675f25e7598b78e9f3543f241
  Author: Kazu Hirata <kazu at google.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M llvm/include/llvm/ProfileData/InstrProfReader.h
    M llvm/lib/ProfileData/InstrProfReader.cpp

  Log Message:
  -----------
  [memprof] Introduce IndexedMemProfReader (NFC) (#89331)

Without this patch, a lot of details about the deserilization of the
MemProf data are exposed in IndexedInstrProfReader -- four
MemProf-related variables in IndexedInstrProfReader plus 90+ lines of
deserilization code within IndexedInstrProfReader::readHeader.

This patch encapsulates them into a separate class, exposing only
three methods, namely the default constructor, deserialize, and
getMemProfRecord.


  Commit: ab1d988e1483895a71dcd257bdcaf6fdb0a83d62
      https://github.com/llvm/llvm-project/commit/ab1d988e1483895a71dcd257bdcaf6fdb0a83d62
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/InstCombine/fsh.ll

  Log Message:
  -----------
  [InstCombine] Add test for incorrect fshr transform (#89338)


  Commit: 46957a138dea339799059ea5bf032e40042ff185
      https://github.com/llvm/llvm-project/commit/46957a138dea339799059ea5bf032e40042ff185
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/fsh.ll

  Log Message:
  -----------
  [InstCombine] Fix incorrect fshr to fshl transform

This transform is only valid if the (modular) shift amount is not
zero.

Proof: https://alive2.llvm.org/ce/z/WBxn-x

Fixes https://github.com/llvm/llvm-project/issues/89338.


  Commit: 13beabe5e9d790ed6c1db10fb4774fa1330fbb2a
      https://github.com/llvm/llvm-project/commit/13beabe5e9d790ed6c1db10fb4774fa1330fbb2a
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2024-04-18 (Thu, 18 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Conversion/ArithCommon/AttrToLLVMConverter.h
    M mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
    M mlir/include/mlir/Conversion/LLVMCommon/VectorPattern.h
    M mlir/include/mlir/Dialect/LLVMIR/LLVMInterfaces.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Conversion/ArithCommon/AttrToLLVMConverter.cpp
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/lib/Conversion/LLVMCommon/VectorPattern.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp

  Log Message:
  -----------
  Revert "[mlir][llvm] Port `overflowFlags` to a native operation property" (#89344)

Reverts llvm/llvm-project#89312 as it breaks all flang buildbots


  Commit: bd898d5e111e33a7f614f6b6c34940d81be6682c
      https://github.com/llvm/llvm-project/commit/bd898d5e111e33a7f614f6b6c34940d81be6682c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/FunctionAttrs/noundef.ll

  Log Message:
  -----------
  [FunctionAttrs] Add tests for incorrect noundef inference (#88026)


  Commit: 20667dbec30354723d6467b833a081db998eb70a
      https://github.com/llvm/llvm-project/commit/20667dbec30354723d6467b833a081db998eb70a
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGen/ubsan-shift-bitint.c

  Log Message:
  -----------
  [clang][CodeGen] Fix shift-exponent ubsan check for signed _BitInt (#88004)

Commit 5f87957fefb21d454f2f (pull-requst #80515) corrected some codegen
problems related to _BitInt types being used as shift exponents. But it
did not fix it properly for the special case when the shift count
operand is a signed _BitInt.

The basic problem is the same as the one solved for unsigned _BitInt. As
we use an unsigned comparison to see if the shift exponent is
out-of-bounds, then we need to find an unsigned maximum allowed shift
amount to use in the check. Normally the shift amount is limited by
bitwidth of the LHS of the shift. However, when the RHS type is small in
relation to the LHS then we need to use a value that fits inside the
bitwidth of the RHS instead.

The earlier fix simply used the unsigned maximum when deterining the max
shift amount based on the RHS type. It did however not take into
consideration that the RHS type could have a signed representation. In
such situations we need to use the signed maximum instead. Otherwise we
do not recognize a negative shift exponent as UB.


  Commit: 8363ff6a2e9d20258fb72e4db64ffb6e4167618f
      https://github.com/llvm/llvm-project/commit/8363ff6a2e9d20258fb72e4db64ffb6e4167618f
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/test/Driver/aix-toolchain-include.cpp

  Log Message:
  -----------
  specify openmp lib in aix-toolchain-include.cpp test

when unset -fopenmp tries to find the library itself and in some
configurations this test fails

fix for #88545 8f07a67f9731dfcd490f8aaefac34d95f207b39c


  Commit: affcaf622d8e900abab1d39d41d9f2d335f32614
      https://github.com/llvm/llvm-project/commit/affcaf622d8e900abab1d39d41d9f2d335f32614
  Author: Daniil Kovalev <dkovalev at accesssoftek.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/tiny-model-pic.ll

  Log Message:
  -----------
  [test][AArch64][CodeGen] Delete redundant check lines in tiny-model-pic.ll (#89243)

Similarly to #87965, delete check lines which do not have corresponding
FileCheck run lines in tiny-model-pic.ll (while having them tested in
tiny-model-static.ll).


  Commit: ca7d9442baf638f020c9594dc2af388d24c4a3e1
      https://github.com/llvm/llvm-project/commit/ca7d9442baf638f020c9594dc2af388d24c4a3e1
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Support `CXXParenListInitExpr` in `PropagateResultObject()`. (#89235)


  Commit: b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4
      https://github.com/llvm/llvm-project/commit/b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/CodeGen/dwarf-version.c

  Log Message:
  -----------
  [AIX][Debug] generate an error instead of crash in backend for -gdwarf-5

Before this change -gdwarf-5 on AIX will cause backend crash, because
some DWARF5 sections are not defined in XCOFF.
Explicitly statement -gdwarf-5 as unsupported in frontend on AIX.


  Commit: e8fce95887ecfd87a83db8dbb0cc55966b004d6f
      https://github.com/llvm/llvm-project/commit/e8fce95887ecfd87a83db8dbb0cc55966b004d6f
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Analysis/FlowSensitive/Value.h
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/DebugSupport.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
    M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/FlowSensitive/Value.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp

  Log Message:
  -----------
  [clang][nullability] Remove `RecordValue`. (#89052)

This class no longer serves any purpose; see also the discussion here:
https://reviews.llvm.org/D155204#inline-1503204

A lot of existing tests in TransferTest.cpp check for the existence of
`RecordValue`s. Some of these checks are now simply redundant and have
been
removed. In other cases, tests were checking for the existence of a
`RecordValue` as a way of testing whether a record has been initialized.
I have
typically changed these test to instead check whether a field of the
record has
a value.


  Commit: 14193f4320e26b75dc592abf952af1c63760665c
      https://github.com/llvm/llvm-project/commit/14193f4320e26b75dc592abf952af1c63760665c
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/test/CodeGen/SPIRV/empty-module.ll

  Log Message:
  -----------
  [SPIR-V] SPIR-V Backend must generate a valid OCL version if working in OpenCL environment (#89199)

If there is no information about OpenCL version we are forced to
generate OpenCL 1.0 by default for the OpenCL environment to avoid
puzzling run-times with Unknown/0.0 version output. For a reference,
LLVM-SPIRV Translator avoids potential issues with run-times in a
similar manner.


  Commit: 14122106320b88f114301bbf8694ceac9bb7a27a
      https://github.com/llvm/llvm-project/commit/14122106320b88f114301bbf8694ceac9bb7a27a
  Author: martinboehme <mboehme at google.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp

  Log Message:
  -----------
  [clang][dataflow][NFC] Fix code formatting in DataflowEnvironment.cpp (#89352)

For some reason, when I merged #89235, two lines were mis-formatted.

This patch corrects this; while I'm here, I'm also correcting other
existing formatting errors.


  Commit: aac695da42cf48ccb29c2fe495ead564cc913471
      https://github.com/llvm/llvm-project/commit/aac695da42cf48ccb29c2fe495ead564cc913471
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclFriend.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclObjC.cpp
    M clang/lib/AST/DeclOpenMP.cpp
    M clang/lib/AST/DeclTemplate.cpp

  Log Message:
  -----------
  [NFC] [Serialization] Use semantical type 'DeclID' for 'CreateDeserialized'

Previously we use 'unsigned' as the type of ID in 'CreateDeserialized'.

And the type of `DeclID` in serialization is 'uint32_t', so there is
minor inconsistency.

Also more importantly, if we want to extend the type of DeclID from
uint32_t to uint64_t, we may be in trouble due to we forgot updating the
a lot of 'CreateDeserialized'.

So this patch tries to use semantical type 'DeclID' for
'*Decl::CreateDeserialized' to make sure it is tightly consistent.


  Commit: 851462fcaa7f6e3301865de84f98be7e872e64b6
      https://github.com/llvm/llvm-project/commit/851462fcaa7f6e3301865de84f98be7e872e64b6
  Author: David Green <david.green at arm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll

  Log Message:
  -----------
  [AArch64] Remove invalid uabdl patterns. (#89272)

These were added in https://reviews.llvm.org/D14208, which look like
they attempt to detect abs from xor+add+ashr. They do not appear to be
detecting the correct value for the src input though, which I think is
intended to be the sub(zext, zext) part of the pattern. We have pattens
from abs now, so the old invalid patterns can be removed.

Fixes #88784


  Commit: e2a72fa583d9ccec7e996e15ea86f0ceddbfe63c
      https://github.com/llvm/llvm-project/commit/e2a72fa583d9ccec7e996e15ea86f0ceddbfe63c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll

  Log Message:
  -----------
  [VPlan] Introduce recipes for VP loads and stores. (#87816)

Introduce new subclasses of VPWidenMemoryRecipe for VP
(vector-predicated) loads and stores to address multiple TODOs from
https://github.com/llvm/llvm-project/pull/76172

Note that the introduction of the new recipes also improves code-gen for
VP gather/scatters by removing the redundant header mask. With the new
approach, it is not sufficient to look at users of the widened canonical
IV to find all uses of the header mask.

In some cases, a widened IV is used instead of separately widening the
canonical IV. To handle that, first collect all VPValues representing header
masks (by looking at users of both the canonical IV and widened inductions
that are canonical) and then checking all users (recursively) of those header
masks.

Depends on https://github.com/llvm/llvm-project/pull/87411.

PR: https://github.com/llvm/llvm-project/pull/87816


  Commit: 95ffa8a2ac1154d968c0af2d428ade541eddd828
      https://github.com/llvm/llvm-project/commit/95ffa8a2ac1154d968c0af2d428ade541eddd828
  Author: Tina Jung <tinamaria.jung at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/test/Dialect/EmitC/invalid_types.mlir

  Log Message:
  -----------
  [mlir][emitc] Restrict types in EmitC (#88391)

Restrict the types which are valid for EmitC operations. Use what is
currently supported by the emitter as restriction. Define a utility
functions for valid types, such that they can be used to restrict the
operations in table gen as well as being available for reuse in dialect
conversions.


  Commit: 7c7704c946ab6078c42b24a57eb537944861cba1
      https://github.com/llvm/llvm-project/commit/7c7704c946ab6078c42b24a57eb537944861cba1
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    A llvm/test/CodeGen/AMDGPU/lower-module-lds-zero-size-arr.ll

  Log Message:
  -----------
  [AMDGPU] Allow any linkage for dynlds (#84742)

Solves SWDEV-449592


  Commit: 494c637816e4787752ae3bf29be618ffdc92f4cd
      https://github.com/llvm/llvm-project/commit/494c637816e4787752ae3bf29be618ffdc92f4cd
  Author: Ramkumar Ramachandra <ram.ramachandra at arm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/MachineInstrBundle.cpp

  Log Message:
  -----------
  MachineInstrBundle: modernize a couple of loops (NFC) (#89229)


  Commit: 2512ce3df51ef57d9e7134bc187c5cd41f2cd10c
      https://github.com/llvm/llvm-project/commit/2512ce3df51ef57d9e7134bc187c5cd41f2cd10c
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/IR/Instruction.cpp
    M llvm/test/Transforms/Scalarizer/basic.ll

  Log Message:
  -----------
  [IR] Add support for trunc's nuw/nsw flags in `copyIRFlags` (#89353)

This patch fixes
https://github.com/llvm/llvm-project/pull/85592#issuecomment-2065865020.

I found this while fixing flag propagation in my
["vectorizer"](https://github.com/dtcxzyw/llvm-codegen-benchmark/blob/main/vectorize.cpp).


  Commit: 054b1b3b5ac67385220654df12732346b51c8a41
      https://github.com/llvm/llvm-project/commit/054b1b3b5ac67385220654df12732346b51c8a41
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/unsigned-node-trunc-with-signed-users.ll

  Log Message:
  -----------
  Revert "[SLP]Fix final analysis for unsigned nodes."

This reverts commit 74e07ab523122d6a8347b25770062ab331b6bb84.

It might be that Mask.getBitWidth() == Mask.countl_zero() (32 in my
case) and zero bitwidth2 causes the crash.


  Commit: 6f26867cfa4c1333e69a17f8a2fc8297a4ab6d45
      https://github.com/llvm/llvm-project/commit/6f26867cfa4c1333e69a17f8a2fc8297a4ab6d45
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve2-bsl.ll

  Log Message:
  -----------
  [AArch64][SVE2] Generate SVE2 BSL instruction in LLVM for add/sub. (#88413)

Allow to fold or/and-and to BSL instuction for scalable vectors.


  Commit: 4d7f3d9e0fb8cf9a4db6aa73c4fcb21bae98ef3a
      https://github.com/llvm/llvm-project/commit/4d7f3d9e0fb8cf9a4db6aa73c4fcb21bae98ef3a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/unsigned-node-trunc-with-signed-users.ll

  Log Message:
  -----------
  [SLP]Fix final analysis for unsigned nodes.

Need to check that at least single bit is cleared for unsigned nodes
before reducing their size. Otherwise they might be treated as signed in
signed nodes.


  Commit: df411fbac60825d07090ce17391db7606d8400f1
      https://github.com/llvm/llvm-project/commit/df411fbac60825d07090ce17391db7606d8400f1
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
    M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
    M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp

  Log Message:
  -----------
  [MLIR][DataLayout] Add support for scalable vectors (#89349)

This commit extends the data layout to support scalable vectors. For
scalable vectors, the `TypeSize`'s scalable field is set accordingly,
and the alignment information remains the same as for normal vectors.
This behavior is in sync with what LLVM's data layout queries are
producing.

Before this change, scalable vectors incorrectly returned the same size
as "normal" vectors.


  Commit: b3c72bcbf2eb7963ef0ac3da519107aba151f77f
      https://github.com/llvm/llvm-project/commit/b3c72bcbf2eb7963ef0ac3da519107aba151f77f
  Author: Kiran Chandramohan <kiran.chandramohan at arm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Semantics/OpenMP/reduction12.f90

  Log Message:
  -----------
  [Flang][OpenMP] Issue error if reduction clause has proc-pointer (#88999)

OpenMP 5.2: Section 5.5.5: A procedure pointer must not appear in a
reduction clause.

Fixes #87915


  Commit: 090d03d1c7eef4f9790b9300f19176e8f49151dd
      https://github.com/llvm/llvm-project/commit/090d03d1c7eef4f9790b9300f19176e8f49151dd
  Author: Christian Ulmann <christianulmann at gmail.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/Import.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    A mlir/test/Target/LLVMIR/Import/ignore-composite-type-elements.ll

  Log Message:
  -----------
  [MLIR][LLVM] Add flag to skip import of DICompositeType's elems (#89355)

This commit introduces a flag to allow skipping the potentially
recursive import of DICompositeType elements. This patch is essentially a
bandaid for the still broken recursive debug type import.

Some of our downstream inputs are produced by excessive usage of
template meta programming, and thus contain tens of thousands of types
that all participate in such recursions. Unfortunately, the series of
patches that introduces type support is not easily revertible due to
being around for a while now and Modular depending on it.

We can consider to revert this change once the type importer has show to
be very performant, but for now we are talking second vs hours to import
specific files.


  Commit: 7e2c2981fbb9e609886cfbe6c95644ed58b03d08
      https://github.com/llvm/llvm-project/commit/7e2c2981fbb9e609886cfbe6c95644ed58b03d08
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    A llvm/test/CodeGen/SystemZ/zos-frameaddr.ll

  Log Message:
  -----------
  [SystemZ][z/OS] Implement llvm.frameaddr for XPLINK (#89284)

The implementation follows the ELF implementation.


  Commit: e7c042f12fd6f3bbbbe9aeb37854d499aada8457
      https://github.com/llvm/llvm-project/commit/e7c042f12fd6f3bbbbe9aeb37854d499aada8457
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/test/API/python_api/type/TestTypeList.py

  Log Message:
  -----------
  [lldb] Make SBType::FindDirectNestedType work with expression ASTs (#89183)

The types we get out of expressions will not have an associated symbol
file, so the current method of looking up the type will fail. Instead, I
plumb the query through the TypeSystem class. This correctly finds the
type in both cases (importing it into the expression AST if needed). I
haven't measured, but it should also be more efficient than doing a type
lookup (at least, after the type has already been found once).


  Commit: 5af9701985c6abba328dbedbd2d9c602dc46c4b0
      https://github.com/llvm/llvm-project/commit/5af9701985c6abba328dbedbd2d9c602dc46c4b0
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp

  Log Message:
  -----------
  [SystemZ] Fix Operand Retrieval for Vector Reduction Intrinsic in `shouldExpandReduction` (#88874)

In the existing version, SystemZTTIImpl::shouldExpandReduction will
create a `cast` error when handling vector reduction intrinsics that
do not have the vector to reduce as their first operand, such as
`llvm.vector.reduce.fadd` and `llvm.vector.reduce.fmul`.
This commit fixes that problem by moving the cast into the case
statement that handles the specific intrinsic, where the vector
operand position is well-known.


  Commit: e2f1cbae45f81f3cd9a4d3c2bcf69a094eb060fa
      https://github.com/llvm/llvm-project/commit/e2f1cbae45f81f3cd9a4d3c2bcf69a094eb060fa
  Author: NagyDonat <donat.nagy at ericsson.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/PutenvWithAutoChecker.cpp

  Log Message:
  -----------
  [analyzer] Use explicit call description mode (easy cases) (#88879)

This commit explicitly specifies the matching mode (C library function,
any non-method function, or C++ method) for the `CallDescription`s
constructed in various checkers where this transition was easy and
straightforward.

This change won't cause major functional changes, but isn't NFC because
it ensures that e.g. call descriptions for a non-method function won't
accidentally match a method that has the same name.

Separate commits will perform (or have already performed) this change in
other checkers. My goal is to ensure that the call description mode is
always explicitly specified and eliminate (or strongly restrict) the
vague "may be either a method or a simple function" mode that's the
current default.


  Commit: 0a5f50d50be429734074584702cd20cf54c27420
      https://github.com/llvm/llvm-project/commit/0a5f50d50be429734074584702cd20cf54c27420
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [KnownBits] Simplify optimality checking in unit tests. NFC. (#89368)

Use bool instead of function_ref.


  Commit: ae9a5b07e0dca10cd44a11f11915be5eab002307
      https://github.com/llvm/llvm-project/commit/ae9a5b07e0dca10cd44a11f11915be5eab002307
  Author: Dominik Steenken <dost at de.ibm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZFeatures.td
    M llvm/lib/Target/SystemZ/SystemZInstrSystem.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ15.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ16.td
    M llvm/test/MC/Disassembler/SystemZ/insns-z14.txt
    M llvm/test/MC/SystemZ/insn-bad-z13.s
    M llvm/test/MC/SystemZ/insn-good-z14.s

  Log Message:
  -----------
  [SystemZ] Add TPEI instruction and Associated Facility (#89372)

This PR adds the TPEI (Test Pending External Interruption) instruction,
along with the facility that contains it. This is a millicoded system
instruction that is not used for code generation, so it will be used
exclusively by the Assembler and Disassembler.
Accordingly, this commit also adds tests for both.


  Commit: 7fbdadb68e259079d23165ecb94e2893a3823576
      https://github.com/llvm/llvm-project/commit/7fbdadb68e259079d23165ecb94e2893a3823576
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/test/CodeGen/AArch64/xor.ll
    M llvm/test/CodeGen/X86/xor.ll

  Log Message:
  -----------
  [AArch64][X86] xor.ll - fix vec_add_of_not_with_undef_decrement copy+pasta typo

This was copied from vec_add_of_not_with_undef instead of vec_add_of_not_decrement - replacing the second sub with an add


  Commit: 2e68ba99def5b07f4c6c53627baf076c5c924979
      https://github.com/llvm/llvm-project/commit/2e68ba99def5b07f4c6c53627baf076c5c924979
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/xor.ll
    M llvm/test/CodeGen/X86/xor.ll

  Log Message:
  -----------
  [DAG] visitADDLike - update "(x - y) + -1  ->  add (xor y, -1), x" fold to accept UNDEF in a splat vector of -1

Make sure we use getNOT instead of reusing the allones (with undefs) vector


  Commit: aa39b0b13e3b56ac072acff2660dbef9db45bca0
      https://github.com/llvm/llvm-project/commit/aa39b0b13e3b56ac072acff2660dbef9db45bca0
  Author: Chen Zheng <czhengsz at cn.ibm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/test/CodeGen/debug-info-file-checksum.c
    A clang/test/Driver/debug-options-embed-source.c
    M clang/test/Driver/debug-options.c

  Log Message:
  -----------
  [AIX][Debug]correct the cases on AIX bot, NFC

Related to commit b2323f43e3cdb52b4e15a7d4f434cd5c64740dd4


  Commit: 0a8cd1ed1f4f35905df318015b0dbcb69d81d7c2
      https://github.com/llvm/llvm-project/commit/0a8cd1ed1f4f35905df318015b0dbcb69d81d7c2
  Author: Xing Xue <xingxue at outlook.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M openmp/runtime/test/worksharing/for/collapse_test.inc

  Log Message:
  -----------
  [OpenMP] Use half of available logical processors for collapse tests (#88319)

The new collapse test cases define `MAX_THREADS` to be 256 and use all
available threads/logical processors on the system. This triples the
testing time on an AIX machine that has 128 logical processors. This
patch changes to use half of available logical processors to avoid over
subscribing because there are other libomp tests running at the same
time, including 2 other such collapse tests.


  Commit: 90dfabc9e12466ce306b3168f47621598bbf900b
      https://github.com/llvm/llvm-project/commit/90dfabc9e12466ce306b3168f47621598bbf900b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp

  Log Message:
  -----------
  AMDGPU: Refactor unsafe atomicrmw remark emission (#89379)

Defers some of the setup work until the remark is actually emitted. Move
big lambda into a helper function, and only use value capture of a
pointer. Prepare to have different messages.


  Commit: c8db069253a8783ebce0eb6c244551b0b42e997e
      https://github.com/llvm/llvm-project/commit/c8db069253a8783ebce0eb6c244551b0b42e997e
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll

  Log Message:
  -----------
  AMDGPU: Use common check prefix in atomic expand test


  Commit: ce2f6423f0168e945b6f29aa40a3054c1abe22a9
      https://github.com/llvm/llvm-project/commit/ce2f6423f0168e945b6f29aa40a3054c1abe22a9
  Author: Kadir Cetinkaya <kadircet at google.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang-tools-extra/clangd/unittests/CMakeLists.txt

  Log Message:
  -----------
  [clangd] Fix shared-lib builds after 2cdbc9cff3b7ef262


  Commit: a5757c5b65f1894de16f549212b1c37793312703
      https://github.com/llvm/llvm-project/commit/a5757c5b65f1894de16f549212b1c37793312703
  Author: Christian Sigg <chsigg at users.noreply.github.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M mlir/examples/transform/Ch4/lib/MyExtension.cpp
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/IR/Location.h
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
    M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
    M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferDeallocationOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
    M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
    M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/TypeConsistency.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
    M mlir/lib/Dialect/Linalg/Transforms/EliminateEmptyTensors.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandRealloc.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SparseTensor/IR/Detail/Var.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorInterfaces.cpp
    M mlir/lib/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Transform/DebugExtension/DebugExtensionOps.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/Operation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.cpp
    M mlir/test/lib/Conversion/MathToVCIX/TestMathToVCIXConversion.cpp
    M mlir/test/lib/Dialect/Mesh/TestReshardingSpmdization.cpp
    M mlir/test/lib/Dialect/Test/TestToLLVMIRTranslation.cpp
    M mlir/test/lib/IR/TestAffineWalk.cpp
    M mlir/test/lib/IR/TestBuiltinAttributeInterfaces.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp

  Log Message:
  -----------
  Switch member calls to `isa/dyn_cast/cast/...` to free function calls. (#89356)

This change cleans up call sites. Next step is to mark the member
functions deprecated.

See https://mlir.llvm.org/deprecation and
https://discourse.llvm.org/t/preferred-casting-style-going-forward.


  Commit: 9a07d7ea9b37a5b537fc8099cc5744f44da29abc
      https://github.com/llvm/llvm-project/commit/9a07d7ea9b37a5b537fc8099cc5744f44da29abc
  Author: Dinar Temirbulatov <Dinar.Temirbulatov at arm.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/SemaCXX/aarch64-sve-resolve-type.cpp

  Log Message:
  -----------
  [Sema] Check if types are resolved before querying function description.


  Commit: cd11cce949558ad3f0bc0f62bace947d9faca331
      https://github.com/llvm/llvm-project/commit/cd11cce949558ad3f0bc0f62bace947d9faca331
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2024-04-19 (Fri, 19 Apr 2024)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    M clang-tools-extra/clang-tidy/add_new_check.py
    M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Preamble.h
    M clang-tools-extra/clangd/unittests/CMakeLists.txt
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/ParsedASTTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/forwarding-reference-overload.cpp
    M clang/cmake/caches/Fuchsia.cmake
    M clang/docs/ReleaseNotes.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclFriend.h
    M clang/include/clang/AST/DeclObjC.h
    M clang/include/clang/AST/DeclOpenMP.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
    M clang/include/clang/Analysis/FlowSensitive/Value.h
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticInstallAPIKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenACCClauses.def
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/InstallAPI/DylibVerifier.h
    M clang/include/clang/InstallAPI/MachO.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Lookup.h
    M clang/include/clang/Sema/ParsedAttr.h
    A clang/include/clang/Sema/Redeclaration.h
    M clang/include/clang/Sema/Scope.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclFriend.cpp
    M clang/lib/AST/DeclObjC.cpp
    M clang/lib/AST/DeclOpenMP.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/Interp/ByteCodeExprGen.cpp
    M clang/lib/AST/Interp/EvaluationResult.cpp
    M clang/lib/AST/Interp/Program.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/DebugSupport.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
    M clang/lib/Analysis/FlowSensitive/RecordOps.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Analysis/FlowSensitive/TypeErasedDataflowAnalysis.cpp
    M clang/lib/Analysis/FlowSensitive/Value.cpp
    M clang/lib/Analysis/UninitializedValues.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGLoopInfo.cpp
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/Driver/ToolChains/AIX.cpp
    M clang/lib/Driver/ToolChains/AIX.h
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/MultiplexConsumer.cpp
    M clang/lib/InstallAPI/DylibVerifier.cpp
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Interpreter/InterpreterUtils.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaExprMember.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaModule.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaStmtAttr.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/StaticAnalyzer/Checkers/CastValueChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ChrootChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ErrnoTesterChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MmapWriteExecChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCUnusedIVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/cert/PutenvWithAutoChecker.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/test/AST/Interp/c.c
    M clang/test/AST/Interp/records.cpp
    A clang/test/CXX/dcl.decl/dcl.meaning/dcl.fct/p6-cxx23.cpp
    M clang/test/CodeGen/X86/x86-cf-protection.c
    M clang/test/CodeGen/debug-info-file-checksum.c
    M clang/test/CodeGen/dwarf-version.c
    M clang/test/CodeGen/ubsan-shift-bitint.c
    A clang/test/CodeGenCUDA/record-layout.cu
    M clang/test/CodeGenCXX/debug-info-alias.cpp
    A clang/test/CodeGenCXX/defaulted-template-alias.cpp
    M clang/test/CodeGenCXX/pragma-gcc-unroll.cpp
    A clang/test/CodeGenCXX/template-alias.cpp
    A clang/test/CodeGenCXX/variadic-template-alias.cpp
    M clang/test/Driver/aix-toolchain-include.cpp
    M clang/test/Driver/cl-outputs.c
    M clang/test/Driver/cl-pch.cpp
    M clang/test/Driver/compress.c
    A clang/test/Driver/debug-options-embed-source.c
    M clang/test/Driver/debug-options.c
    M clang/test/Driver/response-file-errs.c
    A clang/test/InstallAPI/alias_list.test
    M clang/test/InstallAPI/binary-attributes.test
    M clang/test/InstallAPI/mismatching-objc-class-symbols.test
    M clang/test/InstallAPI/rpath.test
    A clang/test/Modules/pr85122.cppm
    A clang/test/Modules/reduced-bmi-empty-module-purview-std.cppm
    A clang/test/Modules/reduced-bmi-empty-module-purview.cppm
    A clang/test/Modules/unreached-static-entities.cppm
    M clang/test/Parser/pragma-unroll.cpp
    M clang/test/ParserOpenACC/parse-clauses.c
    M clang/test/ParserOpenACC/parse-clauses.cpp
    M clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    M clang/test/Sema/aarch64-sme-func-attrs.c
    M clang/test/Sema/static-assert.c
    A clang/test/SemaCXX/PR75221.cpp
    A clang/test/SemaCXX/aarch64-sve-resolve-type.cpp
    A clang/test/SemaCXX/attr-exclude_from_explicit_instantiation.local-class.cpp
    M clang/test/SemaCXX/builtins.cpp
    M clang/test/SemaCXX/cxx11-attr-print.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/test/SemaCXX/deprecated-builtins.cpp
    M clang/test/SemaCXX/explicit.cpp
    M clang/test/SemaHLSL/BuiltIns/RWBuffers.hlsl
    M clang/test/SemaObjCXX/Inputs/nullability-consistency-smart.h
    A clang/test/SemaOpenACC/compute-construct-intexpr-clause-ast.cpp
    A clang/test/SemaOpenACC/compute-construct-num_workers-clause.c
    A clang/test/SemaOpenACC/compute-construct-num_workers-clause.cpp
    A clang/test/SemaOpenACC/compute-construct-vector_length-clause.c
    A clang/test/SemaOpenACC/compute-construct-vector_length-clause.cpp
    M clang/tools/clang-installapi/ClangInstallAPI.cpp
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/clang-installapi/Options.h
    M clang/tools/libclang/CIndex.cpp
    M clang/unittests/AST/DeclPrinterTest.cpp
    M clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
    M clang/unittests/Analysis/FlowSensitive/RecordOpsTest.cpp
    M clang/unittests/Analysis/FlowSensitive/TransferTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/www/c_status.html
    M compiler-rt/cmake/Modules/CompilerRTUtils.cmake
    M compiler-rt/lib/sanitizer_common/CMakeLists.txt
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic.h
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_mips.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_other.h
    R compiler-rt/lib/sanitizer_common/sanitizer_atomic_clang_x86.h
    M compiler-rt/lib/sanitizer_common/sanitizer_atomic_msvc.h
    M flang/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Tools/CLOptions.inc
    M flang/lib/Lower/Allocatable.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/runtime/extensions.cpp
    M flang/test/Fir/cuf-invalid.fir
    A flang/test/Lower/CUDA/cuda-allocatable.cuf
    A flang/test/Semantics/OpenMP/reduction12.f90
    M flang/test/Semantics/cuf03.cuf
    M flang/test/Semantics/cuf11.cuf
    A flang/test/Semantics/cuf12.cuf
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/darwin/arm/entrypoints.txt
    M libc/config/darwin/x86_64/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/api.td
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/windows/entrypoints.txt
    M libc/docs/c23.rst
    M libc/docs/contributing.rst
    M libc/docs/dev/config_options.rst
    M libc/docs/fenv.rst
    M libc/docs/index.rst
    A libc/docs/threads.rst
    M libc/examples/README.md
    M libc/examples/examples.cmake
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/pthread_condattr_t.h
    M libc/include/pthread.h.def
    M libc/spec/posix.td
    M libc/spec/stdc.td
    M libc/src/__support/FPUtil/FEnvImpl.h
    M libc/src/__support/FPUtil/riscv/FEnvImpl.h
    M libc/src/fenv/CMakeLists.txt
    A libc/src/fenv/fetestexceptflag.cpp
    A libc/src/fenv/fetestexceptflag.h
    M libc/src/pthread/CMakeLists.txt
    A libc/src/pthread/pthread_condattr_destroy.cpp
    A libc/src/pthread/pthread_condattr_destroy.h
    A libc/src/pthread/pthread_condattr_getclock.cpp
    A libc/src/pthread/pthread_condattr_getclock.h
    A libc/src/pthread/pthread_condattr_getpshared.cpp
    A libc/src/pthread/pthread_condattr_getpshared.h
    A libc/src/pthread/pthread_condattr_init.cpp
    A libc/src/pthread/pthread_condattr_init.h
    A libc/src/pthread/pthread_condattr_setclock.cpp
    A libc/src/pthread/pthread_condattr_setclock.h
    A libc/src/pthread/pthread_condattr_setpshared.cpp
    A libc/src/pthread/pthread_condattr_setpshared.h
    M libc/src/unistd/linux/pipe.cpp
    M libc/test/src/fenv/CMakeLists.txt
    M libc/test/src/fenv/exception_flags_test.cpp
    M libc/test/src/pthread/CMakeLists.txt
    A libc/test/src/pthread/pthread_condattr_test.cpp
    M libc/utils/docgen/fenv.json
    M libc/utils/docgen/signal.json
    M libc/utils/docgen/stdbit.json
    A libc/utils/docgen/threads.json
    M libclc/CMakeLists.txt
    M libcxx/CMakeLists.txt
    M libcxx/cmake/caches/Apple.cmake
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/include/CMakeLists.txt
    R libcxx/include/__algorithm/pstl_backend.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backend.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/any_of.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/backend.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/fill.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/find_if.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/for_each.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/libdispatch.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/merge.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/serial.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/stable_sort.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/thread.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/transform.h
    R libcxx/include/__algorithm/pstl_backends/cpu_backends/transform_reduce.h
    M libcxx/include/__algorithm/pstl_copy.h
    M libcxx/include/__algorithm/pstl_count.h
    M libcxx/include/__algorithm/pstl_find.h
    M libcxx/include/__algorithm/pstl_for_each.h
    M libcxx/include/__algorithm/pstl_generate.h
    M libcxx/include/__algorithm/pstl_is_partitioned.h
    M libcxx/include/__algorithm/pstl_merge.h
    M libcxx/include/__algorithm/pstl_move.h
    M libcxx/include/__algorithm/pstl_replace.h
    M libcxx/include/__algorithm/pstl_rotate_copy.h
    M libcxx/include/__algorithm/pstl_sort.h
    M libcxx/include/__algorithm/pstl_stable_sort.h
    M libcxx/include/__algorithm/pstl_transform.h
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    A libcxx/include/__chrono/local_info.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/sys_info.h
    M libcxx/include/__config_site.in
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__numeric/pstl_transform_reduce.h
    A libcxx/include/__pstl/backends/libdispatch.h
    A libcxx/include/__pstl/backends/serial.h
    A libcxx/include/__pstl/backends/std_thread.h
    A libcxx/include/__pstl/configuration.h
    A libcxx/include/__pstl/configuration_fwd.h
    A libcxx/include/__pstl/cpu_algos/any_of.h
    A libcxx/include/__pstl/cpu_algos/fill.h
    A libcxx/include/__pstl/cpu_algos/find_if.h
    A libcxx/include/__pstl/cpu_algos/for_each.h
    A libcxx/include/__pstl/cpu_algos/merge.h
    A libcxx/include/__pstl/cpu_algos/stable_sort.h
    A libcxx/include/__pstl/cpu_algos/transform.h
    A libcxx/include/__pstl/cpu_algos/transform_reduce.h
    M libcxx/include/__type_traits/remove_cv.h
    M libcxx/include/chrono
    M libcxx/include/libcxx.imp
    M libcxx/include/module.modulemap
    M libcxx/modules/std/chrono.inc
    M libcxx/src/CMakeLists.txt
    M libcxx/src/pstl/libdispatch.cpp
    M libcxx/test/libcxx/algorithms/pstl.libdispatch.chunk_partitions.pass.cpp
    A libcxx/test/libcxx/time/time.zone/time.zone.info/time.zone.info.local/ostream.pass.cpp
    A libcxx/test/libcxx/time/time.zone/time.zone.info/time.zone.info.sys/ostream.pass.cpp
    M libcxx/test/libcxx/vendor/apple/system-install-properties.sh.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.elements/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.filter/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.join/range.join.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.inner/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.lazy.split/range.lazy.split.outer/equal.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take.while/sentinel/equality.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/begin.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/end.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/range.take.sentinel/eq.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.take/types.h
    M libcxx/test/std/ranges/range.adaptors/range.zip/iterator/compare.pass.cpp
    M libcxx/test/std/ranges/range.adaptors/range.zip/sentinel/eq.pass.cpp
    M libcxx/test/std/time/time.cal/time.cal.ymd/time.cal.ymd.nonmembers/ostream.pass.cpp
    M libcxx/test/std/time/time.clock/time.clock.system/sys_date.ostream.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.local_info.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.sys_info.pass.cpp
    M libcxx/test/std/time/time.syn/formatter.year_month_day.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/local_info.members.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.local/ostream.pass.cpp
    A libcxx/test/std/time/time.zone/time.zone.info/time.zone.info.sys/ostream.pass.cpp
    M libcxx/test/std/utilities/format/format.formattable/concept.formattable.compile.pass.cpp
    M libcxx/test/support/test_macros.h
    M libcxx/test/support/test_range.h
    M libcxx/utils/ci/run-buildbot
    M libcxx/utils/libcxx/test/features.py
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/Writer.cpp
    M lld/ELF/Config.h
    M lld/ELF/DWARF.cpp
    M lld/ELF/DWARF.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/SyntheticSections.h
    M lld/ELF/Writer.cpp
    M lld/MachO/ICF.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/InputSection.cpp
    M lld/MachO/MapFile.cpp
    M lld/MachO/MarkLive.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/SectionPriorities.cpp
    M lld/MachO/SymbolTable.cpp
    M lld/MachO/Symbols.cpp
    M lld/MachO/Symbols.h
    M lld/MachO/SyntheticSections.cpp
    M lld/MachO/UnwindInfoSection.cpp
    M lld/MachO/Writer.cpp
    M lld/docs/ReleaseNotes.rst
    M lld/docs/ld.lld.1
    A lld/test/COFF/autoimport-debug.s
    A lld/test/ELF/Inputs/debug-names-a.s
    A lld/test/ELF/Inputs/debug-names-b.s
    A lld/test/ELF/debug-names-bad.s
    A lld/test/ELF/debug-names-die-offset-form-flag-present.s
    A lld/test/ELF/debug-names-different-aug-string.s
    A lld/test/ELF/debug-names-dwarf64.s
    A lld/test/ELF/debug-names-missing-parent.s
    A lld/test/ELF/debug-names-multi-cus.s
    A lld/test/ELF/debug-names-nonames.s
    A lld/test/ELF/debug-names-parent-idx.s
    A lld/test/ELF/debug-names-type-units.s
    A lld/test/ELF/debug-names.s
    M lld/test/ELF/driver.test
    A lld/test/ELF/ppc32-debug-names.s
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/docs/resources/test.rst
    M lldb/include/lldb/Core/Disassembler.h
    M lldb/include/lldb/Symbol/CompilerType.h
    M lldb/include/lldb/Symbol/TypeSystem.h
    M lldb/include/lldb/Utility/ProcessInfo.h
    M lldb/packages/Python/lldbsuite/test/lldb_pylint_helper.py
    M lldb/source/Core/Disassembler.cpp
    M lldb/source/Expression/IRExecutionUnit.cpp
    M lldb/source/Host/linux/Host.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
    M lldb/source/Plugins/ObjectFile/Minidump/ObjectFileMinidump.cpp
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationClient.h
    M lldb/source/Plugins/SymbolFile/DWARF/SymbolFileDWARFDebugMap.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    M lldb/source/Symbol/CompilerType.cpp
    M lldb/source/Symbol/Type.cpp
    M lldb/source/Target/Platform.cpp
    M lldb/test/API/CMakeLists.txt
    M lldb/test/API/commands/process/detach-resumes/TestDetachResumes.py
    M lldb/test/API/functionalities/breakpoint/breakpoint_command/TestBreakpointCommand.py
    M lldb/test/API/lit.cfg.py
    M lldb/test/API/lit.site.cfg.py.in
    M lldb/test/API/python_api/type/TestTypeList.py
    A lldb/test/API/tools/lldb-dap/save-core/Makefile
    A lldb/test/API/tools/lldb-dap/save-core/TestDAP_save_core.py
    A lldb/test/API/tools/lldb-dap/save-core/main.cpp
    M lldb/test/CMakeLists.txt
    M lldb/unittests/Host/linux/HostTest.cpp
    M lldb/unittests/Process/gdb-remote/GDBRemoteCommunicationClientTest.cpp
    M lldb/use_lldb_suite_root.py
    M lldb/utils/lldb-dotest/CMakeLists.txt
    M lldb/utils/lldb-dotest/lldb-dotest.in
    M llvm/docs/AMDGPUUsage.rst
    M llvm/docs/index.rst
    M llvm/include/llvm/Analysis/SimplifyQuery.h
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/include/llvm/CodeGen/LivePhysRegs.h
    M llvm/include/llvm/CodeGen/MachineBasicBlock.h
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/include/llvm/IR/Constant.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/include/llvm/IR/Instruction.h
    M llvm/include/llvm/IR/Intrinsics.h
    M llvm/include/llvm/IR/Operator.h
    M llvm/include/llvm/IR/PatternMatch.h
    M llvm/include/llvm/MC/MCDisassembler/MCDisassembler.h
    M llvm/include/llvm/Object/COFFImportFile.h
    M llvm/include/llvm/ProfileData/InstrProfReader.h
    M llvm/include/llvm/ProfileData/InstrProfWriter.h
    M llvm/include/llvm/ProfileData/MemProf.h
    M llvm/include/llvm/ProfileData/MemProfReader.h
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/include/llvm/Support/TargetOpcodes.def
    M llvm/include/llvm/Target/GenericOpcodes.td
    M llvm/include/llvm/Target/GlobalISel/SelectionDAGCompat.td
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/include/llvm/TextAPI/Utils.h
    M llvm/lib/Analysis/CmpInstAnalysis.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/BinaryFormat/ELF.cpp
    M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
    M llvm/lib/CodeGen/MachineBasicBlock.cpp
    M llvm/lib/CodeGen/MachineInstrBundle.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/DWARFLinker/Classic/DWARFLinker.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Instruction.cpp
    M llvm/lib/IR/Operator.cpp
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/MC/MCDisassembler/MCDisassembler.cpp
    M llvm/lib/Object/COFFImportFile.cpp
    M llvm/lib/Object/COFFModuleDefinition.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/ProfileData/InstrProfReader.cpp
    M llvm/lib/ProfileData/InstrProfWriter.cpp
    M llvm/lib/Support/KnownBits.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SchedA510.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    M llvm/lib/Target/AArch64/GISel/AArch64RegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUAtomicOptimizer.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInsertSingleUseVDST.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULibCalls.cpp
    M llvm/lib/Target/AMDGPU/BUFInstructions.td
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SILowerSGPRSpills.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUMemoryUtils.cpp
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AVR/AVRISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/PowerPC/P10InstrResources.td
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCMacroFusion.def
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVScheduleV.td
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    M llvm/lib/Target/SystemZ/SystemZFeatures.td
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZFrameLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrSystem.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ14.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ15.td
    M llvm/lib/Target/SystemZ/SystemZScheduleZ16.td
    M llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/Disassembler/WebAssemblyDisassembler.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86ISelDAGToDAG.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/X86/X86InstrAsmAlias.td
    M llvm/lib/Target/X86/X86InstrKL.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/lib/Target/X86/X86TargetTransformInfo.cpp
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/lib/TextAPI/Utils.cpp
    M llvm/lib/ToolDrivers/llvm-dlltool/DlltoolDriver.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCasts.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineNegator.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineShifts.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/lib/Transforms/Scalar/BDCE.cpp
    M llvm/lib/Transforms/Scalar/GuardWidening.cpp
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/test/Analysis/CostModel/AArch64/shuffle-load.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-cmp.ll
    M llvm/test/Analysis/CostModel/RISCV/rvv-select.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse-codesize.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse-latency.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/bitreverse.ll
    M llvm/test/Analysis/CostModel/X86/fshl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshl-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshl-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshl.ll
    M llvm/test/Analysis/CostModel/X86/fshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/fshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/fshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/fshr.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-ashr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-lshr-sizelatency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-codesize.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-cost-inseltpoison.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-cost.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-latency.ll
    M llvm/test/Analysis/CostModel/X86/vshift-shl-sizelatency.ll
    M llvm/test/Assembler/implicit-intrinsic-declaration-invalid.ll
    A llvm/test/Assembler/implicit-intrinsic-declaration-invalid2.ll
    A llvm/test/Assembler/implicit-intrinsic-declaration-invalid3.ll
    M llvm/test/Assembler/implicit-intrinsic-declaration.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-irtranslator.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/combine-udiv.ll
    A llvm/test/CodeGen/AArch64/GlobalISel/legalize-llrint.mir
    M llvm/test/CodeGen/AArch64/GlobalISel/legalizer-info-validation.mir
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-dup-ext-scalable.ll
    M llvm/test/CodeGen/AArch64/aarch64-smull.ll
    M llvm/test/CodeGen/AArch64/active_lane_mask.ll
    M llvm/test/CodeGen/AArch64/arm64-convert-v4f64.ll
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll
    M llvm/test/CodeGen/AArch64/arm64-vcvt_f.ll
    M llvm/test/CodeGen/AArch64/arm64-vhadd.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-contract.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-add-mull-scalable-fast.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f32-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-f64-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-i16-mul-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-predicated-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-reductions-scalable.ll
    M llvm/test/CodeGen/AArch64/complex-deinterleaving-splat-scalable.ll
    M llvm/test/CodeGen/AArch64/concat_vector-truncate-combine.ll
    M llvm/test/CodeGen/AArch64/dag-combine-concat-vectors.ll
    M llvm/test/CodeGen/AArch64/div-rem-pair-recomposition-signed.ll
    M llvm/test/CodeGen/AArch64/div-rem-pair-recomposition-unsigned.ll
    M llvm/test/CodeGen/AArch64/extbinopload.ll
    M llvm/test/CodeGen/AArch64/fcmp.ll
    M llvm/test/CodeGen/AArch64/fdiv-combine.ll
    M llvm/test/CodeGen/AArch64/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/AArch64/fp-veclib-expansion.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/funnel-shift-rot.ll
    M llvm/test/CodeGen/AArch64/hoist-and-by-const-from-lshr-in-eqcmp-zero.ll
    A llvm/test/CodeGen/AArch64/hwasan-check-memaccess-fixedshadow.ll
    M llvm/test/CodeGen/AArch64/icmp.ll
    M llvm/test/CodeGen/AArch64/insert-extend.ll
    M llvm/test/CodeGen/AArch64/insert-subvector-res-legalization.ll
    M llvm/test/CodeGen/AArch64/intrinsic-cttz-elts-sve.ll
    M llvm/test/CodeGen/AArch64/itofp.ll
    M llvm/test/CodeGen/AArch64/ldexp.ll
    M llvm/test/CodeGen/AArch64/llrint-conv-fp16.ll
    M llvm/test/CodeGen/AArch64/llrint-conv.ll
    M llvm/test/CodeGen/AArch64/llvm-ir-to-intrinsic.ll
    M llvm/test/CodeGen/AArch64/load-insert-zero.ll
    M llvm/test/CodeGen/AArch64/logic-shift.ll
    A llvm/test/CodeGen/AArch64/mops-register-alias.ll
    M llvm/test/CodeGen/AArch64/named-vector-shuffles-sve.ll
    M llvm/test/CodeGen/AArch64/neon-dotreduce.ll
    M llvm/test/CodeGen/AArch64/neon-extadd.ll
    M llvm/test/CodeGen/AArch64/neon-shift-neg.ll
    A llvm/test/CodeGen/AArch64/pr88966.ll
    M llvm/test/CodeGen/AArch64/predicated-add-sub.ll
    M llvm/test/CodeGen/AArch64/ragreedy-local-interval-cost.ll
    M llvm/test/CodeGen/AArch64/rcpc3-sve.ll
    M llvm/test/CodeGen/AArch64/reassocmls.ll
    M llvm/test/CodeGen/AArch64/reduce-shuffle.ll
    M llvm/test/CodeGen/AArch64/sat-add.ll
    M llvm/test/CodeGen/AArch64/sext.ll
    M llvm/test/CodeGen/AArch64/sink-addsub-of-const.ll
    M llvm/test/CodeGen/AArch64/sme-pstate-sm-changing-call-disable-coalescing.ll
    M llvm/test/CodeGen/AArch64/sme-streaming-compatible-interface.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-fp-dots.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-int-dots.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-max.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-min.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-mlall.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-rshl.ll
    M llvm/test/CodeGen/AArch64/sme2-intrinsics-sqdmulh.ll
    M llvm/test/CodeGen/AArch64/split-vector-insert.ll
    M llvm/test/CodeGen/AArch64/srem-seteq-vec-splat.ll
    M llvm/test/CodeGen/AArch64/srem-vector-lkk.ll
    M llvm/test/CodeGen/AArch64/sve-abd.ll
    M llvm/test/CodeGen/AArch64/sve-bitcast.ll
    M llvm/test/CodeGen/AArch64/sve-calling-convention-mixed.ll
    M llvm/test/CodeGen/AArch64/sve-cmp-folds.ll
    M llvm/test/CodeGen/AArch64/sve-doublereduct.ll
    M llvm/test/CodeGen/AArch64/sve-expand-div.ll
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-from-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-fixed-vector.ll
    M llvm/test/CodeGen/AArch64/sve-extract-scalable-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fcmp.ll
    M llvm/test/CodeGen/AArch64/sve-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-addressing-modes.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-build-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-concat.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-subvector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-extract-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-fp128.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-frame-offests-crash.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-extends.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-mask-opt.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-128bit-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-gather.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-loads.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-masked-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-shuffles.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-splat-vector.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-trunc-stores.ll
    M llvm/test/CodeGen/AArch64/sve-fixed-length-vector-shuffle-tbl.ll
    M llvm/test/CodeGen/AArch64/sve-fp-int-min-max.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reciprocal.ll
    M llvm/test/CodeGen/AArch64/sve-fp-reduce-fadda.ll
    M llvm/test/CodeGen/AArch64/sve-fptosi-sat.ll
    M llvm/test/CodeGen/AArch64/sve-fptoui-sat.ll
    M llvm/test/CodeGen/AArch64/sve-gather-scatter-addr-opts.ll
    M llvm/test/CodeGen/AArch64/sve-hadd.ll
    M llvm/test/CodeGen/AArch64/sve-implicit-zero-filling.ll
    M llvm/test/CodeGen/AArch64/sve-insert-element.ll
    M llvm/test/CodeGen/AArch64/sve-insert-vector.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-index.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve-intrinsics-logical-imm.ll
    M llvm/test/CodeGen/AArch64/sve-ld-post-inc.ll
    M llvm/test/CodeGen/AArch64/sve-ld1r.ll
    M llvm/test/CodeGen/AArch64/sve-lsr-scaled-index-addressing-mode.ll
    M llvm/test/CodeGen/AArch64/sve-masked-gather-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-ldst-sext.ll
    M llvm/test/CodeGen/AArch64/sve-masked-ldst-zext.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter-legalize.ll
    M llvm/test/CodeGen/AArch64/sve-masked-scatter.ll
    M llvm/test/CodeGen/AArch64/sve-pr62151.ll
    M llvm/test/CodeGen/AArch64/sve-pred-arith.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop2.ll
    M llvm/test/CodeGen/AArch64/sve-pred-selectop3.ll
    M llvm/test/CodeGen/AArch64/sve-ptest-removal-cmple.ll
    M llvm/test/CodeGen/AArch64/sve-redundant-store.ll
    M llvm/test/CodeGen/AArch64/sve-split-extract-elt.ll
    M llvm/test/CodeGen/AArch64/sve-split-fcvt.ll
    M llvm/test/CodeGen/AArch64/sve-split-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-split-insert-elt.ll
    M llvm/test/CodeGen/AArch64/sve-split-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-split-load.ll
    M llvm/test/CodeGen/AArch64/sve-split-store.ll
    M llvm/test/CodeGen/AArch64/sve-srem-combine-loop.ll
    M llvm/test/CodeGen/AArch64/sve-st1-addressing-mode-reg-imm.ll
    M llvm/test/CodeGen/AArch64/sve-stepvector.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-bit-counting.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ext-loads.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-convert.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-extend-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-fma.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-rounding.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-to-int.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-fp-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-insert-vector-elt.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-arith.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-compares.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-div.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-immediates.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-minmax.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-mulh.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-rem.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-select.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-shifts.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-to-fp.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-int-vselect.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-log-reduce.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-masked-store.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-optimize-ptrue.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-permute-zip-uzp-trn.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-ptest.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-rev.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-sdiv-pow2.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-shuffle.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-stores.ll
    M llvm/test/CodeGen/AArch64/sve-streaming-mode-fixed-length-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-trunc.ll
    M llvm/test/CodeGen/AArch64/sve-umulo-sdnode.ll
    M llvm/test/CodeGen/AArch64/sve-uunpklo-load-uzp1-store-combine.ll
    M llvm/test/CodeGen/AArch64/sve-vecreduce-dot.ll
    M llvm/test/CodeGen/AArch64/sve-vecreduce-fold.ll
    M llvm/test/CodeGen/AArch64/sve2-bsl.ll
    M llvm/test/CodeGen/AArch64/sve2-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve2-fixed-length-fcopysign.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-combine-rshrnb.ll
    M llvm/test/CodeGen/AArch64/sve2-intrinsics-int-arith-imm.ll
    M llvm/test/CodeGen/AArch64/sve2-rsh.ll
    M llvm/test/CodeGen/AArch64/sve2-xar.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx2.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-selx4.ll
    M llvm/test/CodeGen/AArch64/sve2p1-intrinsics-stores.ll
    M llvm/test/CodeGen/AArch64/tiny-model-pic.ll
    M llvm/test/CodeGen/AArch64/uadd_sat_vec.ll
    M llvm/test/CodeGen/AArch64/urem-seteq-vec-nonzero.ll
    M llvm/test/CodeGen/AArch64/vec_uaddo.ll
    M llvm/test/CodeGen/AArch64/vecreduce-add.ll
    M llvm/test/CodeGen/AArch64/vector-fcopysign.ll
    M llvm/test/CodeGen/AArch64/vector-gep.ll
    M llvm/test/CodeGen/AArch64/vselect-constants.ll
    M llvm/test/CodeGen/AArch64/xor.ll
    M llvm/test/CodeGen/AArch64/zext-to-tbl.ll
    A llvm/test/CodeGen/AMDGPU/atomic_optimization_split_dt_update.ll
    M llvm/test/CodeGen/AMDGPU/fp-min-max-buffer-atomics.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fadd.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmax.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fmin.ll
    M llvm/test/CodeGen/AMDGPU/global_atomics_scan_fsub.ll
    M llvm/test/CodeGen/AMDGPU/insert-singleuse-vdst.mir
    A llvm/test/CodeGen/AMDGPU/lower-module-lds-zero-size-arr.ll
    A llvm/test/CodeGen/AMDGPU/release-vgprs-dbg-loc.mir
    A llvm/test/CodeGen/AMDGPU/sgpr-spills-empty-prolog-block.mir
    M llvm/test/CodeGen/NVPTX/dynamic_stackalloc.ll
    M llvm/test/CodeGen/NVPTX/i8x4-instructions.ll
    M llvm/test/CodeGen/PowerPC/toc-data.ll
    M llvm/test/CodeGen/RISCV/rv32zba.ll
    M llvm/test/CodeGen/RISCV/rv64zba.ll
    A llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-sat-clip.ll
    A llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip-sdnode.ll
    R llvm/test/CodeGen/RISCV/rvv/trunc-sat-clip.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.mir
    M llvm/test/CodeGen/SPIRV/empty-module.ll
    A llvm/test/CodeGen/SPIRV/image/sampler.ll
    A llvm/test/CodeGen/SystemZ/zos-frameaddr.ll
    M llvm/test/CodeGen/X86/code-model-elf.ll
    A llvm/test/CodeGen/X86/codegen-prepare-addrmode-tls.ll
    M llvm/test/CodeGen/X86/combine-ptest.ll
    M llvm/test/CodeGen/X86/combine-testpd.ll
    M llvm/test/CodeGen/X86/combine-testps.ll
    M llvm/test/CodeGen/X86/gfni-funnel-shifts.ll
    M llvm/test/CodeGen/X86/gfni-rotates.ll
    M llvm/test/CodeGen/X86/gfni-shifts.ll
    M llvm/test/CodeGen/X86/keylocker-intrinsics-fast-isel.ll
    M llvm/test/CodeGen/X86/sha.ll
    M llvm/test/CodeGen/X86/vector-reduce-or-cmp.ll
    M llvm/test/CodeGen/X86/xor.ll
    M llvm/test/DebugInfo/NVPTX/dbg-declare-alloca.ll
    A llvm/test/DebugInfo/X86/template-alias.ll
    M llvm/test/Instrumentation/PGOForceFunctionAttrs/basic.ll
    A llvm/test/MC/AArch64/armv9.3a-mops-register-aliasing.s
    A llvm/test/MC/Disassembler/AMDGPU/kernel-descriptor-errors.test
    A llvm/test/MC/Disassembler/AMDGPU/kernel-descriptor-rsrc-errors.test
    M llvm/test/MC/Disassembler/SystemZ/insns-z14.txt
    R llvm/test/MC/Disassembler/X86/apx/keylocker.txt
    R llvm/test/MC/Disassembler/X86/apx/sha.txt
    A llvm/test/MC/RISCV/rv64e-zcmp-valid.s
    M llvm/test/MC/SystemZ/insn-bad-z13.s
    M llvm/test/MC/SystemZ/insn-good-z14.s
    R llvm/test/MC/X86/apx/keylocker-att.s
    R llvm/test/MC/X86/apx/keylocker-intel.s
    R llvm/test/MC/X86/apx/sha-att.s
    R llvm/test/MC/X86/apx/sha-intel.s
    M llvm/test/MC/X86/x86_64-asm-match.s
    M llvm/test/TableGen/GlobalISelCombinerEmitter/builtins/match-table-replacerreg.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-imms.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-intrinsics.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table-patfrag-root.td
    M llvm/test/TableGen/GlobalISelCombinerEmitter/match-table.td
    M llvm/test/TableGen/GlobalISelEmitter.td
    M llvm/test/TableGen/x86-fold-tables.inc
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    A llvm/test/Transforms/CodeGenPrepare/X86/sink-addrmode-tls.ll
    M llvm/test/Transforms/FunctionAttrs/noundef.ll
    M llvm/test/Transforms/GlobalOpt/cleanup-pointer-root-users-gep-constexpr.ll
    M llvm/test/Transforms/InstCombine/and-or-icmp-const-icmp.ll
    M llvm/test/Transforms/InstCombine/atomicrmw.ll
    M llvm/test/Transforms/InstCombine/binop-itofp.ll
    M llvm/test/Transforms/InstCombine/bswap-fold.ll
    M llvm/test/Transforms/InstCombine/bswap.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ne-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-sgt-to-icmp-sgt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-slt-to-icmp-sgt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ugt-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/canonicalize-constant-low-bit-mask-and-icmp-ult-to-icmp-ugt.ll
    M llvm/test/Transforms/InstCombine/compare-signs.ll
    M llvm/test/Transforms/InstCombine/fcmp-range-check-idiom.ll
    M llvm/test/Transforms/InstCombine/fmul.ll
    M llvm/test/Transforms/InstCombine/freeze.ll
    M llvm/test/Transforms/InstCombine/fsh.ll
    M llvm/test/Transforms/InstCombine/icmp-fsh.ll
    M llvm/test/Transforms/InstCombine/icmp-power2-and-icmp-shifted-mask.ll
    M llvm/test/Transforms/InstCombine/icmp-vec-inseltpoison.ll
    M llvm/test/Transforms/InstCombine/icmp-vec.ll
    M llvm/test/Transforms/InstCombine/integer-round-up-pow2-alignment.ll
    M llvm/test/Transforms/InstCombine/low-bit-splat.ll
    M llvm/test/Transforms/InstCombine/lshr-trunc-sext-to-ashr-sext.ll
    M llvm/test/Transforms/InstCombine/select-with-bitwise-ops.ll
    M llvm/test/Transforms/InstCombine/select.ll
    M llvm/test/Transforms/InstCombine/signed-truncation-check.ll
    M llvm/test/Transforms/InstCombine/sub-xor.ll
    M llvm/test/Transforms/InstCombine/unsigned-add-lack-of-overflow-check.ll
    A llvm/test/Transforms/InstCombine/update-bpi.ll
    M llvm/test/Transforms/InstCombine/vector-xor.ll
    M llvm/test/Transforms/InstCombine/xor-ashr.ll
    M llvm/test/Transforms/InstSimplify/cast-unsigned-icmp-cmp-0.ll
    M llvm/test/Transforms/InstSimplify/icmp-constant.ll
    M llvm/test/Transforms/InstSimplify/maxmin_intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-gather-scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vplan-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr55096-scalarize-add.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr72969.ll
    A llvm/test/Transforms/PhaseOrdering/X86/pr88239.ll
    A llvm/test/Transforms/SLPVectorizer/RISCV/unsigned-node-trunc-with-signed-users.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshl-rot.ll
    M llvm/test/Transforms/SLPVectorizer/X86/arith-fshr-rot.ll
    A llvm/test/Transforms/SLPVectorizer/insertelement-across-zero.ll
    M llvm/test/Transforms/Scalarizer/basic.ll
    M llvm/test/Transforms/VectorCombine/AArch64/select-shuffle.ll
    M llvm/test/Transforms/VectorCombine/AArch64/shuffletoidentity.ll
    M llvm/test/Transforms/VectorCombine/AArch64/vecreduce-shuffle.ll
    M llvm/test/Transforms/VectorCombine/X86/reduction-of-truncations.ll
    M llvm/test/tools/UpdateTestChecks/update_llc_test_checks/Inputs/nvptx-basic.ll.expected
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A510-sve-instructions.s
    M llvm/test/tools/llvm-profdata/memprof-merge-v0.test
    M llvm/test/tools/llvm-symbolizer/frame-types.s
    M llvm/test/tools/llvm-symbolizer/input-file-err.test
    M llvm/tools/llvm-exegesis/lib/SubprocessMemory.cpp
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-profdata/llvm-profdata.cpp
    M llvm/unittests/IR/InstructionsTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/ProfileData/InstrProfTest.cpp
    M llvm/unittests/Support/CommandLineTest.cpp
    M llvm/unittests/Support/KnownBitsTest.cpp
    M llvm/unittests/Support/MemoryTest.cpp
    M llvm/unittests/Support/Path.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp
    M llvm/utils/TableGen/X86FoldTablesEmitter.cpp
    M llvm/utils/gn/secondary/compiler-rt/lib/sanitizer_common/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/gn/secondary/lldb/test/BUILD.gn
    M llvm/utils/update_any_test_checks.py
    M mlir/docs/BufferDeallocationInternals.md
    M mlir/docs/Bufferization.md
    A mlir/docs/OwnershipBasedBufferDeallocation.md
    A mlir/docs/includes/img/bufferization_dealloc_op.svg
    M mlir/examples/transform/Ch4/lib/MyExtension.cpp
    M mlir/include/mlir-c/Dialect/GPU.h
    M mlir/include/mlir-c/Dialect/NVGPU.h
    M mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
    M mlir/include/mlir/Analysis/Presburger/IntegerRelation.h
    M mlir/include/mlir/Analysis/Presburger/PresburgerSpace.h
    M mlir/include/mlir/Dialect/Affine/Analysis/AffineAnalysis.h
    M mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
    M mlir/include/mlir/Dialect/Bufferization/IR/Bufferization.h
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizationBase.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.h
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitCTypes.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.h
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/include/mlir/IR/Location.h
    M mlir/include/mlir/IR/Properties.td
    M mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
    M mlir/include/mlir/Interfaces/ViewLikeInterface.td
    M mlir/include/mlir/Target/LLVMIR/Import.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/lib/Analysis/FlatLinearValueConstraints.cpp
    M mlir/lib/Analysis/Presburger/IntegerRelation.cpp
    M mlir/lib/Analysis/Presburger/PresburgerSpace.cpp
    A mlir/lib/Bindings/Python/DialectGPU.cpp
    A mlir/lib/Bindings/Python/DialectNVGPU.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/CAPI/Dialect/GPU.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/Dialect/NVGPU.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/lib/Conversion/ArithToEmitC/ArithToEmitC.cpp
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
    M mlir/lib/Conversion/GPUCommon/GPUToLLVMConversion.cpp
    M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
    M mlir/lib/Conversion/TosaToLinalg/CMakeLists.txt
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgPass.cpp
    M mlir/lib/Conversion/VectorToGPU/VectorToGPU.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    M mlir/lib/Dialect/Affine/Analysis/AffineAnalysis.cpp
    M mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
    M mlir/lib/Dialect/Arith/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Arith/Transforms/EmulateUnsupportedFloats.cpp
    M mlir/lib/Dialect/ArmNeon/Transforms/LowerContractionToSMMLAPattern.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferDeallocationOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/Bufferize.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OwnershipBasedBufferDeallocation.cpp
    M mlir/lib/Dialect/Complex/IR/ComplexOps.cpp
    M mlir/lib/Dialect/ControlFlow/Transforms/BufferDeallocationOpInterfaceImpl.cpp
    M mlir/lib/Dialect/EmitC/IR/EmitC.cpp
    M mlir/lib/Dialect/GPU/TransformOps/GPUTransformOps.cpp
    M mlir/lib/Dialect/IRDL/IRDLLoading.cpp
    M mlir/lib/Dialect/LLVMIR/IR/BasicPtxBuilderInterface.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMMemorySlot.cpp
    M mlir/lib/Dialect/LLVMIR/IR/LLVMTypes.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/TypeConsistency.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgMatchOps.cpp
    M mlir/lib/Dialect/Linalg/TransformOps/LinalgTransformOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/ConvertToDestinationStyle.cpp
    M mlir/lib/Dialect/Linalg/Transforms/EliminateEmptyTensors.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Tiling.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Transforms.cpp
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefMemorySlot.cpp
    M mlir/lib/Dialect/MemRef/TransformOps/MemRefTransformOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/EmulateNarrowType.cpp
    M mlir/lib/Dialect/MemRef/Transforms/ExpandRealloc.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Transforms.cpp
    M mlir/lib/Dialect/NVGPU/TransformOps/NVGPUTransformOps.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/SparseTensor/IR/Detail/Var.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorDialect.cpp
    M mlir/lib/Dialect/SparseTensor/IR/SparseTensorInterfaces.cpp
    M mlir/lib/Dialect/SparseTensor/TransformOps/SparseTensorTransformOps.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseAssembler.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseReinterpretMap.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseTensorRewriting.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/CodegenUtils.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/Utils/IterationGraphSorter.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Tosa/IR/ShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaFolders.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/lib/Dialect/Transform/DebugExtension/DebugExtensionOps.cpp
    M mlir/lib/Dialect/Transform/IR/TransformOps.cpp
    M mlir/lib/Dialect/Transform/IR/TransformTypes.cpp
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTransfer.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorDropLeadUnitDim.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorLinearize.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransferSplitRewritePatterns.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/lib/IR/AffineMap.cpp
    M mlir/lib/IR/Operation.cpp
    M mlir/lib/Interfaces/DataLayoutInterfaces.cpp
    M mlir/lib/Target/LLVMIR/ConvertFromLLVMIR.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.cpp
    M mlir/lib/Target/LLVMIR/DebugImporter.h
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/Dialect/VCIX/VCIXToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Transforms/Mem2Reg.cpp
    M mlir/python/CMakeLists.txt
    M mlir/python/mlir/dialects/gpu/__init__.py
    M mlir/python/mlir/dialects/nvgpu.py
    M mlir/test/Conversion/ArithToEmitC/arith-to-emitc.mlir
    M mlir/test/Conversion/NVVMToLLVM/nvvm-to-llvm.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-resize.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize-out-params.mlir
    M mlir/test/Dialect/Bufferization/Transforms/one-shot-module-bufferize.mlir
    M mlir/test/Dialect/EmitC/invalid_types.mlir
    M mlir/test/Dialect/LLVMIR/mem2reg.mlir
    M mlir/test/Dialect/OpenMP/invalid.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Vector/linearize.mlir
    M mlir/test/Integration/GPU/CUDA/sm90/python/tools/matmulBuilder.py
    M mlir/test/Interfaces/DataLayoutInterfaces/query.mlir
    A mlir/test/Target/LLVMIR/Import/ignore-composite-type-elements.ll
    M mlir/test/lib/Conversion/MathToVCIX/TestMathToVCIXConversion.cpp
    M mlir/test/lib/Dialect/DLTI/TestDataLayoutQuery.cpp
    M mlir/test/lib/Dialect/Mesh/TestReshardingSpmdization.cpp
    M mlir/test/lib/Dialect/Test/TestToLLVMIRTranslation.cpp
    M mlir/test/lib/Dialect/Vector/TestVectorTransforms.cpp
    M mlir/test/lib/IR/TestAffineWalk.cpp
    M mlir/test/lib/IR/TestBuiltinAttributeInterfaces.cpp
    M mlir/test/lib/Rewrite/TestPDLByteCode.cpp
    M mlir/test/lit.cfg.py
    M mlir/test/python/dialects/gpu/dialect.py
    M mlir/test/python/dialects/gpu/module-to-binary-nvvm.py
    M mlir/test/python/dialects/nvgpu.py
    M mlir/test/python/ir/operation.py
    M mlir/unittests/Analysis/Presburger/IntegerRelationTest.cpp
    M mlir/unittests/Analysis/Presburger/PresburgerSpaceTest.cpp
    M openmp/runtime/test/worksharing/for/collapse_test.inc
    M polly/lib/Analysis/DependenceInfo.cpp
    M polly/lib/Analysis/ScopBuilder.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel
    M utils/bazel/llvm-project-overlay/libc/test/src/fenv/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/BUILD.bazel
    M utils/bazel/llvm-project-overlay/lldb/source/Plugins/BUILD.bazel
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  Merge branch 'main' into users/kparzysz/spr/b06-concatclauses


Compare: https://github.com/llvm/llvm-project/compare/cbfb3685f970...cd11cce94955

To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list