[all-commits] [llvm/llvm-project] 9b528e: Debuginfod cache use index cache settings and incl...

Vitaly Buka via All-commits all-commits at lists.llvm.org
Mon Jan 13 09:55:04 PST 2025


  Branch: refs/heads/users/vitalybuka/spr/ubsan-pass-fsanitize-skip-hot-cutoff-into-fsanitizebounds
  Home:   https://github.com/llvm/llvm-project
  Commit: 9b528ed38038e39c441927b1fd0220654c253a3c
      https://github.com/llvm/llvm-project/commit/9b528ed38038e39c441927b1fd0220654c253a3c
  Author: GeorgeHuyubo <113479859+GeorgeHuyubo at users.noreply.github.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/unittests/Debuginfod/DebuginfodTests.cpp

  Log Message:
  -----------
  Debuginfod cache use index cache settings and include real file name (#120814)

This PR include two changes:
1. Change debuginfod cache file name to include origin file name, the
new file name would be something like:

llvmcache-13267c5f5d2e3df472c133c8efa45fb3331ef1ea-liblzma.so.5.2.2.debuginfo.dwp
So it will provide more information in image list instead of a plain
llvmcache-123
2. Switch debuginfod cache to use lldb index cache settings. Currently
we don't have proper settings for setting the cache path or the cache
expiration time for debuginfod cache. We want to use the lldb index
cache settings, as they make sense to be in the same place and have the
same TTL.

---------

Co-authored-by: George Hu <georgehuyubo at gmail.com>


  Commit: 82aac16ddda8f61d8f547bd127f39b4e81e40464
      https://github.com/llvm/llvm-project/commit/82aac16ddda8f61d8f547bd127f39b4e81e40464
  Author: Jorge Gorbe Moya <jgorbe at google.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

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

  Log Message:
  -----------
  [bazel] Remove obsolete exclusion from glob.

lib/Tooling/NodeIntrospection.cpp was deleted in commit
371eccd5dfed88c8e76449233d8388c12be3464b so excluding it from the glob
does nothing.


  Commit: df808df8f73e30d288e4dfdef5e527bc392f3bce
      https://github.com/llvm/llvm-project/commit/df808df8f73e30d288e4dfdef5e527bc392f3bce
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M flang/module/cudadevice.f90
    A flang/test/Lower/CUDA/cuda-intrinsic.cuf

  Log Message:
  -----------
  [flang][cuda] Add bind(c) interfaces for __fadd_rd and __fadd_ru (#122535)

Function like `__fadd_rd ` and `__fadd_ru ` need to be converted to the
cuda equivalent.


  Commit: 0de18e72c607c1b52be2c60d45cf2f9fc3af4542
      https://github.com/llvm/llvm-project/commit/0de18e72c607c1b52be2c60d45cf2f9fc3af4542
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/test/Frontend/ftime-report-template-decl.cpp
    M llvm/include/llvm/Support/Timer.h
    M llvm/lib/Support/Timer.cpp

  Log Message:
  -----------
  -ftime-report: reorganize timers

The code generation time is unclear in the -ftime-report output:

* The two clang timers "Code Generation Time" and "LLVM IR Generation
  Time" are in the default group "Miscellaneous Ungrouped Timers".
* There is also a "Clang front-end time" group, which actually includes
  code generation time.

```
===-------------------------------------------------------------------------===
                         Miscellaneous Ungrouped Timers
===-------------------------------------------------------------------------===

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.0611 (  1.7%)   0.0099 (  4.4%)   0.0710 (  1.9%)   0.0713 (  1.9%)  LLVM IR Generation Time
   3.5140 ( 98.3%)   0.2165 ( 95.6%)   3.7306 ( 98.1%)   3.7342 ( 98.1%)  Code Generation Time
   3.5751 (100.0%)   0.2265 (100.0%)   3.8016 (100.0%)   3.8055 (100.0%)  Total
...
===-------------------------------------------------------------------------===
                          Clang front-end time report
===-------------------------------------------------------------------------===
  Total Execution Time: 3.9108 seconds (3.9146 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   3.6802 (100.0%)   0.2306 (100.0%)   3.9108 (100.0%)   3.9146 (100.0%)  Clang front-end timer
   3.6802 (100.0%)   0.2306 (100.0%)   3.9108 (100.0%)   3.9146 (100.0%)  Total
```

This patch

* renames "Clang front-end time report" (FrontendAction time) to "Clang
  time report",
* renames "Clang front-end" to "Front end",
* moves "LLVM IR Generation" into the group,
* replaces "Code Generation time" with "Optimizer" (middle end) and
  "Machine code generation" (back end).

```
% clang -c sqlite3.i -w -ftime-report -mllvm -sort-timers=0
...
===-------------------------------------------------------------------------===
                               Clang time report
===-------------------------------------------------------------------------===
  Total Execution Time: 1.5922 seconds (1.5972 wall clock)

   ---User Time---   --System Time--   --User+System--   ---Wall Time---  --- Name ---
   0.5107 ( 35.9%)   0.0105 (  6.2%)   0.5211 ( 32.7%)   0.5222 ( 32.7%)  Front end
   0.2464 ( 17.3%)   0.0340 ( 20.0%)   0.2804 ( 17.6%)   0.2814 ( 17.6%)  LLVM IR generation
   0.6240 ( 43.9%)   0.1235 ( 72.7%)   0.7475 ( 47.0%)   0.7503 ( 47.0%)  Machine code generation
   0.0413 (  2.9%)   0.0018 (  1.0%)   0.0431 (  2.7%)   0.0433 (  2.7%)  Optimizer
   1.4224 (100.0%)   0.1698 (100.0%)   1.5922 (100.0%)   1.5972 (100.0%)  Total
```

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


  Commit: 18078605046c50f01f31e826ea3591f99019de38
      https://github.com/llvm/llvm-project/commit/18078605046c50f01f31e826ea3591f99019de38
  Author: amosher-nvidia <amosher at nvidia.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/test/ELF/linkerscript/filename-spec.s

  Log Message:
  -----------
  [lld][ELF] Handle archive special casing in Input Sections (#119293)

According to the binutils spec:
https://sourceware.org/binutils/docs/ld/Input-Section-Basics.html

You should be able to specify all files in an archive using this syntax
`archivename:` , however, lld currently will only accept `archivename:*`
to match all files within an archive.

This patch will, only when necessary, create a copy of the file
specification and add an implicit wildcard `*` to the end. It also
updates the filename-spec linkerscript test to check for this behavior.

---------

Co-authored-by: Peter Smith <peter.smith at arm.com>


  Commit: 90eca3f3f43048f055e70e3edd4e2d8ea2a26783
      https://github.com/llvm/llvm-project/commit/90eca3f3f43048f055e70e3edd4e2d8ea2a26783
  Author: Adam Yang <hanbyang at microsoft.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M .github/workflows/spirv-tests.yml

  Log Message:
  -----------
  [Github] Explicitly requesting Ubuntu 22.04 for SPIRV test (#122395)

For the same reason as
[#122221](https://github.com/llvm/llvm-project/pull/122221), this fixes
build failure from missing python3.


  Commit: 799955eb176042999b4d12a901b1c33b42035014
      https://github.com/llvm/llvm-project/commit/799955eb176042999b4d12a901b1c33b42035014
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M lld/test/ELF/lto/new-pass-manager.ll
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/test/Feature/load_plugin_error.ll
    M llvm/test/Other/X86/lto-hot-cold-split.ll

  Log Message:
  -----------
  [ThinLTO] Skip opt pipeline and summary wrapper pass on empty modules (#120143)

Follow up to PR118508, to avoid unnecessary compile time for an empty
combind regular LTO module if all modules end up being ThinLTO only.

This required minor changes to a few tests to ensure they weren't empty.


  Commit: 24bd9bc0b59d51c82e9a4d84c21d86d58d0ef6ce
      https://github.com/llvm/llvm-project/commit/24bd9bc0b59d51c82e9a4d84c21d86d58d0ef6ce
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M llvm/lib/Support/Timer.cpp

  Log Message:
  -----------
  [Timer] Remove signpots overhead on unsupported systems

startTimer/stopTimer are frequently called. It's important to reduce
overhead.


  Commit: 2d5f07c82836bde6f5ae16518931a78783a22ec8
      https://github.com/llvm/llvm-project/commit/2d5f07c82836bde6f5ae16518931a78783a22ec8
  Author: Veera <32646674+veera-sivarajan at users.noreply.github.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll
    M llvm/test/Transforms/InstCombine/div-shift.ll

  Log Message:
  -----------
  [InstCombine] Fold `X udiv Y` to `X lshr cttz(Y)` if Y is a power of 2 (#121386)

Fixes #115767

This PR folds `X udiv Y` to `X lshr cttz(Y)` if Y is a power of two
since bitwise operations are faster than division.

Proof: https://alive2.llvm.org/ce/z/qHmLta


  Commit: a418eb1c0ddeb119d9cfbf6d6e80c0f118503d13
      https://github.com/llvm/llvm-project/commit/a418eb1c0ddeb119d9cfbf6d6e80c0f118503d13
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMSystemRegister.td

  Log Message:
  -----------
  [ARM] Use GenericTable PrimaryKey to remove one of the SearchIndexes for BankedRegsList. NFC


  Commit: cfe26358e3051755961fb1f3b46328dc2c326895
      https://github.com/llvm/llvm-project/commit/cfe26358e3051755961fb1f3b46328dc2c326895
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
    M clang-tools-extra/clangd/Hover.cpp
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.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/Randstruct.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/Targets/LoongArch.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/CodeGen/Targets/XCore.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/tools/libclang/CXType.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp

  Log Message:
  -----------
  Reapply "[clang] Avoid re-evaluating field bitwidth" (#122289)


  Commit: 7c886d5d9265177e5dadb7ac5704cccffc3b95e0
      https://github.com/llvm/llvm-project/commit/7c886d5d9265177e5dadb7ac5704cccffc3b95e0
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M llvm/lib/IR/PassTimingInfo.cpp

  Log Message:
  -----------
  PassTimingInfo: test TheTimeInfo first. NFC

TheTimeInfo is a member variable and is often non-null, allowing the
caller `getPassTimer` to skip one check.


  Commit: 0384069d6ca5cd025cae414e65ab08f174fcc175
      https://github.com/llvm/llvm-project/commit/0384069d6ca5cd025cae414e65ab08f174fcc175
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td

  Log Message:
  -----------
  [AArch64] Use GenericTable PrimaryKey to remove some SearchIndexes. NFC


  Commit: f3d3ec86d1a40a2c86d743384d272ebcd0a1cbd8
      https://github.com/llvm/llvm-project/commit/f3d3ec86d1a40a2c86d743384d272ebcd0a1cbd8
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2025-01-10 (Fri, 10 Jan 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-data-operands.f90
    M flang/test/Lower/OpenACC/acc-data.f90
    M flang/test/Lower/OpenACC/acc-declare-globals.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-kernels.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90

  Log Message:
  -----------
  [flang][acc] Add a missing acc.delete generation for the copyin clause (#122539)

We are missing the deletion part of the copyin clause after a region or
in a destructor. This PR completes its implementation for data regions,
compute regions, and global declarations.

Example:
```f90
subroutine sub()
  real :: x(1:10)
  !$acc data copyin(x)
  !$acc end data
end subroutine sub
```
We are getting the following:
```mlir
    %5 = acc.copyin varPtr(%2#0 : !fir.ref<!fir.array<10xf32>>) bounds(%4) -> !fir.ref<!fir.array<10xf32>> {name = "x"}
    acc.data dataOperands(%5 : !fir.ref<!fir.array<10xf32>>) {
      acc.terminator
    }
    return
```
With this PR, we'll get:
```mlir
    %5 = acc.copyin varPtr(%2#0 : !fir.ref<!fir.array<10xf32>>) bounds(%4) -> !fir.ref<!fir.array<10xf32>> {name = "x"}
    acc.data dataOperands(%5 : !fir.ref<!fir.array<10xf32>>) {
      acc.terminator
    }
    acc.delete accPtr(%5 : !fir.ref<!fir.array<10xf32>>) bounds(%4) {dataClause = #acc<data_clause acc_copyin>, name = "x"}
    return
```


  Commit: a3e62d849f07d1e55e6d15465f4f3842ff4b3717
      https://github.com/llvm/llvm-project/commit/a3e62d849f07d1e55e6d15465f4f3842ff4b3717
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [AST] Fix a warning

This patch fixes:

  clang/unittests/AST/ASTImporterTest.cpp:3397:9: error: unused
  variable 'ToTU' [-Werror,-Wunused-variable]


  Commit: 26d513d197e14b824dd9d353aff38af1925c3770
      https://github.com/llvm/llvm-project/commit/26d513d197e14b824dd9d353aff38af1925c3770
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Pattern.cpp

  Log Message:
  -----------
  [TableGen] Migrate away from PointerUnion::{is,get} (NFC) (#122569)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>


  Commit: 212cba0ef37dd3b2a253c063240370de42fc67c1
      https://github.com/llvm/llvm-project/commit/212cba0ef37dd3b2a253c063240370de42fc67c1
  Author: Michael Clark <michaeljclark at mac.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/test/MC/X86/avx512pf-64-att.s

  Log Message:
  -----------
  [X86] Correct the cdisp8 encoding for VSCATTER/VGATHER prefetch (#122051)

during differential fuzzing, I found 8 more instructions with disp8
offset multiplier differences to binutils. somewhat sure there is a bug
in the X86 LLVM disp8 offset multipliers for this subset of vector
scatter and gather prefetch instructions. please check and refer to the
previous pull request: https://github.com/llvm/llvm-project/pull/120340

these vector scatter and gather prefetch instructions also have an
unusual k mask operand position but I have not addressed this with this
patch as I am unsure how to change the Intel format in the tablegen
file.

```
hex:	62 f2 fd 49 c6 4c 51 01
llvm:	vgatherpf0dpd	{k1}, zmmword ptr [rcx + 2*ymm2 + 4]
ours:	vgatherpf0dpd	qword ptr * 8 [rcx + 2*ymm2 + 8] {k1}
gnu:	vgatherpf0dpd 	QWORD PTR [rcx+ymm2*2+0x8]{k1}

hex:	62 f2 7d 49 c7 4c 51 01
llvm:	vgatherpf0qps	{k1}, ymmword ptr [rcx + 2*zmm2 + 8]
ours:	vgatherpf0qps	dword ptr * 8 [rcx + 2*zmm2 + 4] {k1}
gnu:	vgatherpf0qps	DWORD PTR [rcx+zmm2*2+0x4]{k1}

hex:	62 f2 fd 49 c6 54 51 01
llvm:	vgatherpf1dpd	{k1}, zmmword ptr [rcx + 2*ymm2 + 4]
ours:	vgatherpf1dpd	qword ptr * 8 [rcx + 2*ymm2 + 8] {k1}
gnu:	vgatherpf1dpd	QWORD PTR [rcx+ymm2*2+0x8]{k1}

hex:	62 f2 7d 49 c7 54 51 01
llvm:	vgatherpf1qps	{k1}, ymmword ptr [rcx + 2*zmm2 + 8]
ours:	vgatherpf1qps	dword ptr * 8 [rcx + 2*zmm2 + 4] {k1}
gnu:	vgatherpf1qps	DWORD PTR [rcx+zmm2*2+0x4]{k1}

hex:	62 f2 fd 49 c6 6c 51 01
llvm:	vscatterpf0dpd	{k1}, zmmword ptr [rcx + 2*ymm2 + 4]
ours:	vscatterpf0dpd	qword ptr * 8 [rcx + 2*ymm2 + 8] {k1}
gnu:	vscatterpf0dpd	QWORD PTR [rcx+ymm2*2+0x8]{k1}

hex:	62 f2 7d 49 c7 6c 51 01
llvm:	vscatterpf0qps	{k1}, ymmword ptr [rcx + 2*zmm2 + 8]
ours:	vscatterpf0qps	dword ptr * 8 [rcx + 2*zmm2 + 4] {k1}
gnu:	vscatterpf0qps	DWORD PTR [rcx+zmm2*2+0x4]{k1}

hex:	62 f2 fd 49 c6 74 51 01
llvm:	vscatterpf1dpd	{k1}, zmmword ptr [rcx + 2*ymm2 + 4]
ours:	vscatterpf1dpd	qword ptr * 8 [rcx + 2*ymm2 + 8] {k1}
gnu:	vscatterpf1dpd QWORD PTR [rcx+ymm2*2+0x8]{k1}

hex:	62 f2 7d 49 c7 74 51 01
llvm:	vscatterpf1qps	{k1}, ymmword ptr [rcx + 2*zmm2 + 8]
ours:	vscatterpf1qps	dword ptr * 8 [rcx + 2*zmm2 + 4] {k1}
gnu:	vscatterpf1qps DWORD PTR [rcx+zmm2*2+0x4]{k1}
```


  Commit: f38c40bff399fda9cbed522816f7ddd18f6c0918
      https://github.com/llvm/llvm-project/commit/f38c40bff399fda9cbed522816f7ddd18f6c0918
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll

  Log Message:
  -----------
  VT: teach isImpliedCondMatchingOperands about samesign (#122474)

Move isImplied{True,False}ByMatchingCmp from CmpInst to ICmpInst, so
that it can operate on CmpPredicate instead of CmpInst::Predicate, and
teach it about samesign. There are two callers of this function, and we
choose to migrate the one in ValueTracking, namely
isImpliedCondMatchingOperands to CmpPredicate, hence teaching it about
samesign, with visible test impact.


  Commit: 30bb1863892a235fe1d90eb6b496bd24b0c177d8
      https://github.com/llvm/llvm-project/commit/30bb1863892a235fe1d90eb6b496bd24b0c177d8
  Author: Niels Dekker <N.Dekker at lumc.nl>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst

  Log Message:
  -----------
  [clang-tidy] Mention std::forward_list in container-size-empty doc (#120701)

Mentioned `std::forward_list` as example of a container without
`size()`.


  Commit: dc2963c8d77229ca1b20663beddef2323cc69a88
      https://github.com/llvm/llvm-project/commit/dc2963c8d77229ca1b20663beddef2323cc69a88
  Author: Tommy Chen <tmd279936 at gmail.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp

  Log Message:
  -----------
  [clang-tidy] exclude CXXParenListInitExpr from RedundantCastingCheck (#109741)

Exclude CXXParenListInitExpr from RedundantCastingCheck because there
are false positive cases. Currently, we can't think of positive cases
for CXXParenListInitExpr. This can be improved by following the
initListExpr method if we can come up with some positive cases.

Fixes #108846


  Commit: 35e89897a4086f5adbab10b4b90aa63ef5b35514
      https://github.com/llvm/llvm-project/commit/35e89897a4086f5adbab10b4b90aa63ef5b35514
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/IR/FuncOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp

  Log Message:
  -----------
  [Dialect] Migrate away from PointerUnion::{is,get} (NFC) (#122568)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>


  Commit: 4435b7d8d3df31d59402b6b106d8d45fd2ba0f93
      https://github.com/llvm/llvm-project/commit/4435b7d8d3df31d59402b6b106d8d45fd2ba0f93
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td

  Log Message:
  -----------
  [flang] Migrate away from PointerUnion::{is,get} (NFC) (#122585)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>


  Commit: 642e493d4dc6d8f18900a22ed2ca6f638b69a2f8
      https://github.com/llvm/llvm-project/commit/642e493d4dc6d8f18900a22ed2ca6f638b69a2f8
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/fsh.ll

  Log Message:
  -----------
  [InstCombine] Convert fshl(x, 0, y) to shl(x, and(y, BitWidth - 1)) when BitWidth is pow2 (#122362)

Convert `fshl(x, 0, y)` to `shl(x, and(y, BitWidth - 1))` when BitWidth
is pow2

Alive2 proof: https://alive2.llvm.org/ce/z/3oTEop
Fixes: #122235


  Commit: 32bcd41adcc664f6d690efc9b7cd209ac9c65f68
      https://github.com/llvm/llvm-project/commit/32bcd41adcc664f6d690efc9b7cd209ac9c65f68
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/readability/use-std-min-max.cpp

  Log Message:
  -----------
  [clang-tidy] use correct template type in ``std::min`` and ``std::max`` when operand is integer literal for readability-use-std-min-max (#122296)

When comparing with integer literal, integer promote will happen to
promote type which has less bit width than int to int or unsigned int.
It will let auto-fix provide correct but out of expected fix.

e.g.
```c++
short a;
if ( a > 10 )
  a = 10;
```
will be
```c++
short a;
if ( (int)a > 10 )
  a = (short)10;
```

which will be fixed as
```c++
short a;
a = std::max<int>(a, 10);
```

but actually it can be
```c++
short a;
a = std::max<short>(a, 10);
```

Fixed: #121676


  Commit: 77ef5a601ad3827316e412788f609e9141b51e83
      https://github.com/llvm/llvm-project/commit/77ef5a601ad3827316e412788f609e9141b51e83
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang/test/LibClang/symbols.test

  Log Message:
  -----------
  [Clang][NFC] Fix a test failure with mold linker (#122587)

Mold prefers the suffix '$' for symbols like PLT and GOT entries, so
exclude these symbols as well. Otherwise, this test will fail for
developers using mold-linked Clang.

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


  Commit: 876fa60f081ed66ad9645f955790198c3a96882c
      https://github.com/llvm/llvm-project/commit/876fa60f081ed66ad9645f955790198c3a96882c
  Author: Mingjie Xu <xumingjie.enna1 at bytedance.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
    M llvm/test/Instrumentation/TypeSanitizer/basic.ll

  Log Message:
  -----------
  [TySan] Skip instrumentation for function declarations (#122488)

Skip function declarations for instrumentation.

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


  Commit: 1d58699f5ce1a79634ea81f576cd4975cb04f046
      https://github.com/llvm/llvm-project/commit/1d58699f5ce1a79634ea81f576cd4975cb04f046
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp

  Log Message:
  -----------
  [SDPatternMatch] Add Matcher m_Undef (#122521)

Add Matcher `m_Undef`

Fixes: #122439


  Commit: d291e459093be6df542c1770b26ff2e1bf1e6949
      https://github.com/llvm/llvm-project/commit/d291e459093be6df542c1770b26ff2e1bf1e6949
  Author: macurtis-amd <macurtis at amd.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/test/Transforms/omp-map-info-finalization.fir

  Log Message:
  -----------
  [flang] Teach omp-map-info-finalization to reuse descriptor allocas (#122507)

Internal testing shows improvements in some SPEC HPC benchmarks with
this change.


  Commit: b622cc67d0af9326b9e4f1f91d8be790c57dd86c
      https://github.com/llvm/llvm-project/commit/b622cc67d0af9326b9e4f1f91d8be790c57dd86c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    A llvm/test/CodeGen/X86/pr122580.ll

  Log Message:
  -----------
  [X86] LowerCTPOP - check if the operand is a constant when collecting KnownBits

Under certain circumstances, lowering of other instructions can result in computeKnownBits being able to detect a constant that it couldn't previously.

Fixes #122580


  Commit: b306eff56f950285e01c7accdb36f09d17506dcc
      https://github.com/llvm/llvm-project/commit/b306eff56f950285e01c7accdb36f09d17506dcc
  Author: William Moses <gh at wsmoses.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/test/Dialect/LLVMIR/inlining.mlir

  Log Message:
  -----------
  [MLIR] Enable inlining for private symbols (#122572)

The inlining code for llvm funcs seems to have needlessly forbidden
inlining of private (e.g. non-cloning) symbols.


  Commit: 38fcf62483907aa48325e60d1f685805e846c6ea
      https://github.com/llvm/llvm-project/commit/38fcf62483907aa48325e60d1f685805e846c6ea
  Author: William Moses <gh at wsmoses.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/Import.h
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp

  Log Message:
  -----------
  [MLIR] Import LLVM add flag to disable loadalldialects (#122574)

Co-authored-by: Oleksandr "Alex" Zinenko <ftynse at gmail.com>


  Commit: ba58d35019ae40641ae454472a43965a7bee5696
      https://github.com/llvm/llvm-project/commit/ba58d35019ae40641ae454472a43965a7bee5696
  Author: Janis Heims <technoelf at undertheprinter.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/test/MC/M68k/Data/Classes/MxMoveSR.s

  Log Message:
  -----------
  [M68k] Use M68010 cpu as target for SR move test (#122452)

Fixes the test introduced in #111145.

It would also make sense to throw an error when the user attempts to use
a move-from-sr on an unsupported architecture. Currently the encoder
generates garbage instructions for a 68000 because the AsmMatcher is
able to match the move against a MOV16rr


  Commit: ae9bf17697d2245be707e93125f18d09eaf77aa9
      https://github.com/llvm/llvm-project/commit/ae9bf17697d2245be707e93125f18d09eaf77aa9
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.h
    M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp

  Log Message:
  -----------
  [clang-tidy] remove never used IgnoreCase in option (#122573)


  Commit: 0249554ee1ac49e6f1d93fa78a55971fc706f635
      https://github.com/llvm/llvm-project/commit/0249554ee1ac49e6f1d93fa78a55971fc706f635
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/clang-tidy/ClangTidyOptions.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/code.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/error-config/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/normalized-path.test

  Log Message:
  -----------
  [clang-tidy] fix incorrect configuration file path resolving when file paths contain `..` (#121323)

`makeAbsolute` will not normalize path. When getting parent folder, `..`
will go into the subfolder instead of the parent folder.


  Commit: 78953433a5a0e3551f4c698636fe46e2536a30d2
      https://github.com/llvm/llvm-project/commit/78953433a5a0e3551f4c698636fe46e2536a30d2
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512.ll

  Log Message:
  -----------
  [X86] vector popcnt tests - regenerate VPTERNLOG comments


  Commit: 7b184687dd144de33c9f3e3f5c2d18212a5df9a9
      https://github.com/llvm/llvm-project/commit/7b184687dd144de33c9f3e3f5c2d18212a5df9a9
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vselect-avx.ll

  Log Message:
  -----------
  [X86] vselect-avx.ll - regenerate VPTERNLOG comments


  Commit: 60788154981f52bb4595d2cdbe8e77d2f7ca0a48
      https://github.com/llvm/llvm-project/commit/60788154981f52bb4595d2cdbe8e77d2f7ca0a48
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-mask-op.ll

  Log Message:
  -----------
  [X86] avx512-mask-op.ll - regenerate VPTERNLOG comments


  Commit: 70f37321de26bfbf2c5a0af5c274ab5ca43f8fed
      https://github.com/llvm/llvm-project/commit/70f37321de26bfbf2c5a0af5c274ab5ca43f8fed
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/avx512-build-vector.ll

  Log Message:
  -----------
  [X86] avx512-build-vector.ll - regenerate VPTERNLOG comments


  Commit: 32351b5450119799ef33da92e87149467c622224
      https://github.com/llvm/llvm-project/commit/32351b5450119799ef33da92e87149467c622224
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy][doc] fix incorrectly code snippet in release note (#122595)


  Commit: 1eed46960c217f9480865702f06fb730c7521e61
      https://github.com/llvm/llvm-project/commit/1eed46960c217f9480865702f06fb730c7521e61
  Author: Marius Kamp <msk at posteo.org>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/csel-cmp-cse.ll

  Log Message:
  -----------
  [AArch64] Eliminate Common Subexpression of CSEL by Reassociation (#121350)

If we have a CSEL instruction that depends on the flags set by a
(SUBS x c) instruction and the true and/or false expression is
(add (add x y) -c), we can reassociate the latter expression to
(add (SUBS x c) y) and save one instruction.

Proof for the basic transformation: https://alive2.llvm.org/ce/z/-337Pb

We can extend this transformation for slightly different constants. For
example, if we have (add (add x y) -(c-1)) and a the comparison x <u c,
we can transform the comparison to x <=u c-1 to eliminate the comparison
instruction, too. Similarly, we can transform (x == 0) to (x <u 1).

Proofs for the transformations that alter the constants:
https://alive2.llvm.org/ce/z/3nVqgR

Fixes #119606.


  Commit: ab9a80a3ad78f611fd06cd6f7215bd828809310c
      https://github.com/llvm/llvm-project/commit/ab9a80a3ad78f611fd06cd6f7215bd828809310c
  Author: David Green <david.green at arm.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    A llvm/test/CodeGen/ARM/scalarize-assert-zext.ll

  Log Message:
  -----------
  [DAG] Allow AssertZExt to scalarize. (#122463)

With range and undef metadata on a call we can have vector AssertZExt
generated on a target with no vector operations. The AssertZExt needs to
scalarize to a normal `AssertZext tin, ValueType`. I have added
AssertSext too, although I do not have a test case.

Fixes #110374


  Commit: 9a9e41ca89f0d78705b60497ece9071b0a5a83f0
      https://github.com/llvm/llvm-project/commit/9a9e41ca89f0d78705b60497ece9071b0a5a83f0
  Author: bernhardu <bernhardu at mailbox.org>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M compiler-rt/lib/interception/tests/interception_win_test.cpp

  Log Message:
  -----------
  [win/asan] GetInstructionSize: Add test for `8D A4 24 ...`. (#119794)

This adds a test line and updates a comment.


  Commit: 657fb4433e027722e8c9a5002d0c194ecd3f2956
      https://github.com/llvm/llvm-project/commit/657fb4433e027722e8c9a5002d0c194ecd3f2956
  Author: Austin Kerbow <Austin.Kerbow at amd.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.exp.small.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/sched-barrier-pre-RA.mir

  Log Message:
  -----------
  [AMDGPU] Add target hook to isGlobalMemoryObject (#112781)

We want special handing for IGLP instructions in the scheduler but they
should still be treated like they have side effects by other passes. Add
a target hook to the ScheduleDAGInstrs DAG builder so that we have more
control over this.


  Commit: 2914ba1c01fdc496082197abf7cd35e2af526634
      https://github.com/llvm/llvm-project/commit/2914ba1c01fdc496082197abf7cd35e2af526634
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M libcxx/src/experimental/tzdb.cpp
    M libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
    M libcxx/test/libcxx/time/time.zone/time.zone.db/version.pass.cpp

  Log Message:
  -----------
  [libc++] Improve diagnostic when failing to parse the tzdb (#122125)

Providing the character that we failed on is helpful for figuring out
what's going wrong in the tzdb.


  Commit: 7f59b4e9982f92431f3069645dab6171363c3404
      https://github.com/llvm/llvm-project/commit/7f59b4e9982f92431f3069645dab6171363c3404
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

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

  Log Message:
  -----------
  [VPlan] Skip non-induction phi recipes in legalizeAndOptimizeInductions.

The body of the loop only applies to wide induction recipes, skip any other
header phi recipes up-frond


  Commit: bfe93aedcc7d393c2697e66d6569baffb701ba6f
      https://github.com/llvm/llvm-project/commit/bfe93aedcc7d393c2697e66d6569baffb701ba6f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp

  Log Message:
  -----------
  [AMDGPU] Fix a warning

This patch fixes:

  llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp:255:18: error: private
  field 'DAG' is not used [-Werror,-Wunused-private-field]


  Commit: cc995ad064ffe22566270fe95e974a368c71ba22
      https://github.com/llvm/llvm-project/commit/cc995ad064ffe22566270fe95e974a368c71ba22
  Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    A llvm/test/Transforms/InstSimplify/subnuw-with-xor.ll

  Log Message:
  -----------
  [InstSimpify] Simplifying `(xor (sub C_Mask, X), C_Mask)` -> `X` (#122552)

- **[InstSimpify] Add tests for simplifying `(xor (sub C_Mask, X),
C_Mask)`; NFC**
- **[InstSimpify] Simplifying `(xor (sub C_Mask, X), C_Mask)` -> `X`**

Helps address regressions with folding `clz(Pow2)`.

Proof: https://alive2.llvm.org/ce/z/zGwUBp


  Commit: 17ef436e3df231fa45aa6010bf8ed41189380679
      https://github.com/llvm/llvm-project/commit/17ef436e3df231fa45aa6010bf8ed41189380679
  Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstSimplify/call.ll

  Log Message:
  -----------
  [ValueTracking] Take into account whether zero is poison when computing CR for `ct{t,l}z` (#122548)


  Commit: 07ff786e39e2190449998d3af1000454dee501be
      https://github.com/llvm/llvm-project/commit/07ff786e39e2190449998d3af1000454dee501be
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp

  Log Message:
  -----------
  [TableGen] Avoid repeated hash lookups (NFC) (#122586)


  Commit: a56eb7c9986456ae4b492fff79c3cf18d0ef8ad3
      https://github.com/llvm/llvm-project/commit/a56eb7c9986456ae4b492fff79c3cf18d0ef8ad3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang/lib/Sema/SemaDecl.cpp

  Log Message:
  -----------
  [Sema] Avoid repeated hash lookups (NFC) (#122588)


  Commit: 4f4e2abb1a5ff1225d32410fd02b732d077aa056
      https://github.com/llvm/llvm-project/commit/4f4e2abb1a5ff1225d32410fd02b732d077aa056
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M mlir/examples/transform-opt/mlir-transform-opt.cpp
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/IR/Matchers.h
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
    M mlir/include/mlir/Pass/AnalysisManager.h
    M mlir/lib/Analysis/DataFlowFramework.cpp
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bytecode/Writer/IRNumbering.h
    M mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
    M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp
    M mlir/lib/Transforms/Utils/FoldUtils.cpp
    M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp

  Log Message:
  -----------
  [mlir] Migrate away from PointerUnion::{is,get} (NFC) (#122591)

Note that PointerUnion::{is,get} have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>

I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.


  Commit: eabf9313d47b8e25b2a2e4ee62dd70f79eacf1df
      https://github.com/llvm/llvm-project/commit/eabf9313d47b8e25b2a2e4ee62dd70f79eacf1df
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M .ci/metrics/metrics.py

  Log Message:
  -----------
  [CI] Detect step failures in metrics job (#122564)

This patch makes the metrics job also detect failures in individual
steps. This is necessary now that we are setting continue-on-error in
the premerge jobs to prevent sending out unnecessary email to detect
what jobs actually fail.


  Commit: 2c7829e676dfd6a33f7c9955ea930f51aca37e20
      https://github.com/llvm/llvm-project/commit/2c7829e676dfd6a33f7c9955ea930f51aca37e20
  Author: Congcong Cai <congcongcai0907 at 163.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clang-tidy][doc] combine the clang-tidy itself's change together in release note (#122594)

<img width="1137" alt="image"
src="https://github.com/user-attachments/assets/25433743-2c19-422a-93c5-3edfc1bb7a3f"
/>


  Commit: 5e4b41c1d534c90a4591b840a4f1b2f7bf59279f
      https://github.com/llvm/llvm-project/commit/5e4b41c1d534c90a4591b840a4f1b2f7bf59279f
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/test/include/CMakeLists.txt
    A libc/test/include/header-test-template.c

  Log Message:
  -----------
  [libc] Add compile tests for each public header (#122527)

This adds a test that consists of compiling `#include <...>`,
pretty much alone, for each public header file in each different
language mode (`-std=...` compiler switch) with -Werror and many
warnings enabled.

There are several headers that have bugs when used alone, and
many more headers that have bugs in certain language modes.  So
for now, compiling the new tests is gated on the cmake switch
-DLLVM_LIBC_BUILD_HEADER_TESTS=ON.  When all the bugs are fixed,
the switch will be removed so future regressions don't land.


  Commit: 4f6fabd11ad1a5de8e066adad28c8da4a615f8bb
      https://github.com/llvm/llvm-project/commit/4f6fabd11ad1a5de8e066adad28c8da4a615f8bb
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M clang/lib/Driver/Driver.cpp

  Log Message:
  -----------
  [Driver] Avoid repeated map lookups (NFC) (#122625)


  Commit: 5ee0a71df919a328c714e25f0935c21e586cc18b
      https://github.com/llvm/llvm-project/commit/5ee0a71df919a328c714e25f0935c21e586cc18b
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWinCOFFObjectWriter.h
    M llvm/include/llvm/MC/MCWinCOFFStreamer.h
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/win-import-call-optimization-nocalls.ll
    A llvm/test/CodeGen/AArch64/win-import-call-optimization.ll
    A llvm/test/CodeGen/MIR/AArch64/called-globals.mir
    M llvm/test/CodeGen/MIR/X86/call-site-info-error1.mir
    M llvm/test/CodeGen/MIR/X86/call-site-info-error2.mir
    A llvm/test/MC/AArch64/win-import-call-optimization.s
    A llvm/test/MC/COFF/bad-parse.s

  Log Message:
  -----------
  [aarch64][win] Add support for import call optimization (equivalent to MSVC /d2ImportCallOptimization) (#121516)

This change implements import call optimization for AArch64 Windows
(equivalent to the undocumented MSVC `/d2ImportCallOptimization` flag).

Import call optimization adds additional data to the binary which can be
used by the Windows kernel loader to rewrite indirect calls to imported
functions as direct calls. It uses the same [Dynamic Value Relocation
Table mechanism that was leveraged on x64 to implement
`/d2GuardRetpoline`](https://techcommunity.microsoft.com/blog/windowsosplatform/mitigating-spectre-variant-2-with-retpoline-on-windows/295618).

The change to the obj file is to add a new `.impcall` section with the
following layout:
```cpp
  // Per section that contains calls to imported functions:
  //  uint32_t SectionSize: Size in bytes for information in this section.
  //  uint32_t Section Number
  //  Per call to imported function in section:
  //    uint32_t Kind: the kind of imported function.
  //    uint32_t BranchOffset: the offset of the branch instruction in its
  //                            parent section.
  //    uint32_t TargetSymbolId: the symbol id of the called function.
```

NOTE: If the import call optimization feature is enabled, then the
`.impcall` section must be emitted, even if there are no calls to
imported functions.

The implementation is split across a few parts of LLVM:
* During AArch64 instruction selection, the `GlobalValue` for each call
to a global is recorded into the Extra Information for that node.
* During lowering to machine instructions, the called global value for
each call is noted in its containing `MachineFunction`.
* During AArch64 asm printing, if the import call optimization feature
is enabled:
- A (new) `.impcall` directive is emitted for each call to an imported
function.
- The `.impcall` section is emitted with its magic header (but is not
filled in).
* During COFF object writing, the `.impcall` section is filled in based
on each `.impcall` directive that were encountered.

The `.impcall` section can only be filled in when we are writing the
COFF object as it requires the actual section numbers, which are only
assigned at that point (i.e., they don't exist during asm printing).

I had tried to avoid using the Extra Information during instruction
selection and instead implement this either purely during asm printing
or in a `MachineFunctionPass` (as suggested in [on the
forums](https://discourse.llvm.org/t/design-gathering-locations-of-instructions-to-emit-into-a-section/83729/3))
but this was not possible due to how loading and calling an imported
function works on AArch64. Specifically, they are emitted as `ADRP` +
`LDR` (to load the symbol) then a `BR` (to do the call), so at the point
when we have machine instructions, we would have to work backwards
through the instructions to discover what is being called. An initial
prototype did work by inspecting instructions; however, it didn't
correctly handle the case where the same function was called twice in a
row, which caused LLVM to elide the `ADRP` + `LDR` and reuse the
previously loaded address. Worse than that, sometimes for the
double-call case LLVM decided to spill the loaded address to the stack
and then reload it before making the second call. So, instead of trying
to implement logic to discover where the value in a register came from,
I instead recorded the symbol being called at the last place where it
was easy to do: instruction selection.


  Commit: d997a722c194feec5f3a94dec5acdce59ac5e55b
      https://github.com/llvm/llvm-project/commit/d997a722c194feec5f3a94dec5acdce59ac5e55b
  Author: Daniel Paoliello <danpao at microsoft.com>
  Date:   2025-01-11 (Sat, 11 Jan 2025)

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

  Log Message:
  -----------
  Fix build break in MIRPrinter (#122630)


  Commit: 42da12063f49e8d52e63dcb36d25b55ed3688a26
      https://github.com/llvm/llvm-project/commit/42da12063f49e8d52e63dcb36d25b55ed3688a26
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/simd.f90
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-simd-private.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [flang][OpenMP] Extend delayed privatization for `omp.simd` (#122156)

Adds support for delayed privatization for `simd` directives. This PR
includes PFT down to LLVM IR lowering.


  Commit: a5364444bd0dbbd60e83ee6cf11adabd72f4df54
      https://github.com/llvm/llvm-project/commit/a5364444bd0dbbd60e83ee6cf11adabd72f4df54
  Author: Barnabás Pőcze <pobrn at protonmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp

  Log Message:
  -----------
  [clang-tidy] performance-unnecessary-copy-initialization: Consider static functions (#119974)

Static member functions can be considered the same way as free functions
are, so do that.


  Commit: fdfe7e7fabc85ed7293ca6f5f234d41812644584
      https://github.com/llvm/llvm-project/commit/fdfe7e7fabc85ed7293ca6f5f234d41812644584
  Author: Sharjeel Khan <sharjeel.khan4754 at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/test/Driver/fsanitize.c

  Log Message:
  -----------
  [Driver] Error when using msan on Android (#122540)

Msan is not supported on Android as mentioned in google/sanitizers#1381.
We proactively give the warning saying it is unsupported to fix
android/ndk#1958.


  Commit: 8ebc35f8d041f097a2b973b455dc3533420af6bf
      https://github.com/llvm/llvm-project/commit/8ebc35f8d041f097a2b973b455dc3533420af6bf
  Author: MichelleCDjunaidi <michellechrisalyn at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.h
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/incorrect-enable-shared-from-this.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp

  Log Message:
  -----------
  [clang-tidy] Create bugprone-incorrect-enable-shared-from-this check (#102299)

This checks that classes/structs inheriting from
``std::enable_shared_from_this`` does so with public inheritance, so it
prevents crashes due to ``std::make_shared`` and ``shared_from_this()``
getting called when the internal weak pointer was not initialized (e.g.
due to private inheritance).


  Commit: 753295835544f16b4e180576aa020680231c4318
      https://github.com/llvm/llvm-project/commit/753295835544f16b4e180576aa020680231c4318
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn

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


  Commit: 6422546e996c769dda39a681da090fe28870a376
      https://github.com/llvm/llvm-project/commit/6422546e996c769dda39a681da090fe28870a376
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
    M mlir/test/Conversion/FuncToLLVM/func-to-llvm.mlir

  Log Message:
  -----------
  [mlir][LLVM] Fix conversion of non-standard MLIR float types (#122634)

Certain non-standard float types were directly passed through in the
LLVM type converter, resulting in invalid IR or failed assertions:

```
mlir-opt: mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp:638: FailureOr<Type> mlir::LLVMTypeConverter::convertVectorType(VectorType) const: Assertion `LLVM::isCompatibleVectorType(vectorType) && "expected vector type compatible with the LLVM dialect"' failed.
```

The LLVM type converter should not define invalid type conversion rules
for such types. If there is no type conversion rule, conversion patterns
will not apply to ops with such operand types.


  Commit: d080f78772acf9de4961b89062c02fdd5f82186a
      https://github.com/llvm/llvm-project/commit/d080f78772acf9de4961b89062c02fdd5f82186a
  Author: TilakChad <49703944+TilakChad at users.noreply.github.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/AST/Expr.cpp
    A clang/test/SemaCXX/crash-GH121274.cpp

  Log Message:
  -----------
  [Clang] Fixed a crash when __PRETTY_FUNCTION__ or __FUNCSIG__ (clang-cl) appears in the trailing return type of the lambda  (#122611)

The (function) type of the lambda function is null while parsing
trailing return type. The type is filled-in when the lambda body is
entered. So, resolving `__PRETTY_FUNCTION__` before the lambda body is
entered causes the crash.

Fixes #121274.


  Commit: 26b4a0ac7ed3f04f10bd1c043e2cf9c52da7fc47
      https://github.com/llvm/llvm-project/commit/26b4a0ac7ed3f04f10bd1c043e2cf9c52da7fc47
  Author: eleviant <56861949+eleviant at users.noreply.github.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    A llvm/test/tools/gold/X86/Inputs/unified-lto-foo.ll
    A llvm/test/tools/gold/X86/unified-lto.ll
    M llvm/tools/gold/gold-plugin.cpp

  Log Message:
  -----------
  Add 'unifiedlto' option to gold plugin (#121336)

Option allows using full LTO when linking bitcode files compiled with
unified LTO pipeline.


  Commit: 66badf224ade6e78d5da005f6a9819092fd8767b
      https://github.com/llvm/llvm-project/commit/66badf224ade6e78d5da005f6a9819092fd8767b
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll

  Log Message:
  -----------
  VT: teach a special-case optz about samesign (#122590)

There is a narrow special-case in isImpliedCondICmps that can benefit
from being taught about samesign. Since it costs us nothing to implement
it, teach it about samesign, for completeness. This patch marks the
completion of the effort to teach ValueTracking about samesign.


  Commit: 0d352b2ea767e043b47d78bfdbd6820356628314
      https://github.com/llvm/llvm-project/commit/0d352b2ea767e043b47d78bfdbd6820356628314
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/test/Driver/cuda-arch-translation.cu
    M clang/test/Driver/hip-code-object-version.hip
    M clang/test/Driver/hip-target-id.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/linker-wrapper.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [Clang] Use `-targets=host-x86_64-unknown-linux-gnu` as bundler target (#122627)

This a prime patch to support generic target when using `--offload-compress`.


  Commit: 4f7dc1b55ae5b8ed1a36dd941ef4f9920bfdac8d
      https://github.com/llvm/llvm-project/commit/4f7dc1b55ae5b8ed1a36dd941ef4f9920bfdac8d
  Author: Ruhung <143302514+Ruhung at users.noreply.github.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    A llvm/test/Transforms/InstCombine/add-sext-icmp.ll

  Log Message:
  -----------
  [InstCombine] Fold (add (add A, 1), (sext (icmp ne A, 0))) to call umax(A, 1) (#122491)

Transform (add (add A, 1), (sext (icmp ne A, 0))) into call umax(A, 1).

Fixes #121853.

Alive2: https://alive2.llvm.org/ce/z/TweTan


  Commit: be6c752e157638849f1f59f7e2b7ecbe11a022fe
      https://github.com/llvm/llvm-project/commit/be6c752e157638849f1f59f7e2b7ecbe11a022fe
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/test/CodeGen/X86/avx512-build-vector.ll
    M llvm/test/CodeGen/X86/avx512-mask-op.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/permute.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics.ll
    M llvm/test/CodeGen/X86/combine-or.ll
    M llvm/test/CodeGen/X86/combine-sub-usat.ll
    M llvm/test/CodeGen/X86/expand-vp-cast-intrinsics.ll
    M llvm/test/CodeGen/X86/extract-concat.ll
    M llvm/test/CodeGen/X86/insert-into-constant-vector.ll
    M llvm/test/CodeGen/X86/isel-buildvector-avx.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/nontemporal-4.ll
    M llvm/test/CodeGen/X86/pr29112.ll
    M llvm/test/CodeGen/X86/pr46532.ll
    M llvm/test/CodeGen/X86/pr78109.ll
    M llvm/test/CodeGen/X86/pr97968.ll
    M llvm/test/CodeGen/X86/sse41-intrinsics-x86.ll
    M llvm/test/CodeGen/X86/vec_fp_to_int.ll
    M llvm/test/CodeGen/X86/vec_minmax_sint.ll
    M llvm/test/CodeGen/X86/vec_minmax_uint.ll
    M llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-128.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-avx512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-128.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-256.ll
    M llvm/test/CodeGen/X86/vselect-avx.ll
    M llvm/test/CodeGen/X86/widen_fadd.ll
    M llvm/test/CodeGen/X86/widen_fdiv.ll
    M llvm/test/CodeGen/X86/widen_fmul.ll
    M llvm/test/CodeGen/X86/widen_fsub.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll

  Log Message:
  -----------
  [X86] X86FixupVectorConstantsPass - use VPMOVSX/ZX extensions for PS/PD domain moves (#122601)

For targets with free domain moves, or AVX512 support, allow the use of VPMOVSX/ZX extension loads to reduce the load sizes.

I've limited this to extension to i32/i64 types as we're mostly interested in shuffle mask loading here, but we could include i16 types as well just as easily.

Inspired by a regression on #122485


  Commit: b91d5af1ac3ad2c18b1dfde2061a6ac1d638e6e4
      https://github.com/llvm/llvm-project/commit/b91d5af1ac3ad2c18b1dfde2061a6ac1d638e6e4
  Author: Twice <twice at apache.org>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorGather.cpp
    M mlir/test/Dialect/Vector/vector-gather-lowering.mlir

  Log Message:
  -----------
  [MLIR][Vector] Allow any strided memref for one-element vector.load in lowering vector.gather (#122437)

In `Gather1DToConditionalLoads`, currently we will check if the stride
of the most minor dim of the input memref is 1. And if not, the
rewriting pattern will not be applied. However, according to the
verification of `vector.load` here:

https://github.com/llvm/llvm-project/blob/4e32271e8b304eb018c69f74c16edd1668fcdaf3/mlir/lib/Dialect/Vector/IR/VectorOps.cpp#L4971-L4975

.. if the output vector type of `vector.load` contains only one element,
we can ignore the requirement of the stride of the input memref, i.e.
the input memref can be with any stride layout attribute in such case.

So here we can allow more cases in lowering `vector.gather` by relaxing
such check.

As shown in the test case attached in this patch
[here](https://github.com/llvm/llvm-project/blob/1933fbad58302814ccce5991a9320c0967f3571b/mlir/test/Dialect/Vector/vector-gather-lowering.mlir#L151),
now `vector.gather` of memref with non-trivial stride can be lowered
successfully if the result vector contains only one element.

---------

Signed-off-by: PragmaTwice <twice at apache.org>
Co-authored-by: Andrzej Warzyński <andrzej.warzynski at gmail.com>


  Commit: d047dbd95ed3ef4ace54eaa7c32fe3954317f926
      https://github.com/llvm/llvm-project/commit/d047dbd95ed3ef4ace54eaa7c32fe3954317f926
  Author: eleviant <56861949+eleviant at users.noreply.github.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    A llvm/test/tools/gold/X86/Inputs/merge-functions-foo.ll
    A llvm/test/tools/gold/X86/merge-functions.ll
    M llvm/tools/gold/gold-plugin.cpp

  Log Message:
  -----------
  Add function merger to be run during LTO link with gold plugin (#121343)

Patch adds 'merge-functions' plugin option for this purpose.


  Commit: 9dee7c44491635ec9037b90050bcdbd3d5291e38
      https://github.com/llvm/llvm-project/commit/9dee7c44491635ec9037b90050bcdbd3d5291e38
  Author: vfdev <vfdev.5 at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/docs/Bindings/Python.md
    M mlir/lib/Bindings/Python/Globals.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRModule.cpp
    M mlir/lib/Bindings/Python/IRModule.h
    M mlir/lib/Bindings/Python/MainModule.cpp
    M mlir/python/requirements.txt
    A mlir/test/python/multithreaded_tests.py

  Log Message:
  -----------
  Added free-threading CPython mode support in MLIR Python bindings (#107103)

Related to https://github.com/llvm/llvm-project/issues/105522

Description:

This PR is a joint work with Peter Hawkins (@hawkinsp) originally done
by myself for pybind11 and then reworked to nanobind based on Peter's
branch: https://github.com/hawkinsp/llvm-project/tree/nbdev .

- Added free-threading CPython mode support for MLIR Python bindings
- Added a test which can reveal data races when cpython and LLVM/MLIR
compiled with TSAN

Context:
- Related to https://github.com/google/jax/issues/23073

Co-authored-by: Peter Hawkins <phawkins at google.com>


  Commit: 1d2eea962ac9724350f025f4c70808d42a435289
      https://github.com/llvm/llvm-project/commit/1d2eea962ac9724350f025f4c70808d42a435289
  Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    A clang/test/OpenMP/masked_taskloop_simd_codegen.c

  Log Message:
  -----------
  [OpenMP] codegen support for masked combined construct masked taskloop simd (#121916)

Added codegen support for combined masked constructs `masked taskloop
simd`.
Added implementation for `EmitOMPMaskedTaskLoopSimdDirective`.

Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>


  Commit: 3f1486f08e0dd64136fb7f50e38cd618dd0255d2
      https://github.com/llvm/llvm-project/commit/3f1486f08e0dd64136fb7f50e38cd618dd0255d2
  Author: Jacques Pienaar <jpienaar at google.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/docs/Bindings/Python.md
    M mlir/lib/Bindings/Python/Globals.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRModule.cpp
    M mlir/lib/Bindings/Python/IRModule.h
    M mlir/lib/Bindings/Python/MainModule.cpp
    M mlir/python/requirements.txt
    R mlir/test/python/multithreaded_tests.py

  Log Message:
  -----------
  Revert "Added free-threading CPython mode support in MLIR Python bindings (#107103)"

Breaks on 3.8, rolling back to avoid breakage while fixing.

This reverts commit 9dee7c44491635ec9037b90050bcdbd3d5291e38.


  Commit: 43fdd6e81d8ea42d1de8fd96fe45957dee54cb32
      https://github.com/llvm/llvm-project/commit/43fdd6e81d8ea42d1de8fd96fe45957dee54cb32
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp

  Log Message:
  -----------
  [memprof] Migrate away from PointerUnion::is (NFC) (#122622)

Note that PointerUnion::is have been soft deprecated in
PointerUnion.h:

  // FIXME: Replace the uses of is(), get() and dyn_cast() with
  //        isa<T>, cast<T> and the llvm::dyn_cast<T>

In this patch, I'm calling call().getBase() for an instance of
PointerUnion.  call() alone would return an instance of IndexCall,
which wraps PointerUnion.  Note that isa<> cannot directly accept an
instance of IndexCall, at least without defining CastInfo.

I'm not touching PointerUnion::dyn_cast for now because it's a bit
complicated; we could blindly migrate it to dyn_cast_if_present, but
we should probably use dyn_cast when the operand is known to be
non-null.


  Commit: fd87188c2bbbdd283b286daea2b9bd5c6605f7e1
      https://github.com/llvm/llvm-project/commit/fd87188c2bbbdd283b286daea2b9bd5c6605f7e1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M lld/wasm/SymbolTable.cpp

  Log Message:
  -----------
  [wasm] Avoid repeated hash lookups (NFC) (#122626)


  Commit: 16aa400a2780ab21f73722875734440643f276c3
      https://github.com/llvm/llvm-project/commit/16aa400a2780ab21f73722875734440643f276c3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M lld/ELF/Arch/ARM.cpp

  Log Message:
  -----------
  [ELF] Avoid repeated hash lookups (NFC) (#122628)


  Commit: 1afba19913253dda865a8e57b37b9f4dabead1ac
      https://github.com/llvm/llvm-project/commit/1afba19913253dda865a8e57b37b9f4dabead1ac
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll

  Log Message:
  -----------
  [VPlan] Try to narrow wide and replicating recipes to uniform recipes.

Use the existing VPlan-based analysis to identify recipes that only have
their first lane demanded and transform them to uniform recpliate
recipes. This simplifies the generated code in some places and prepares
for fixing https://github.com/llvm/llvm-project/issues/122496.


  Commit: 0ebb3ac7c92c4c1c44e7f3d17832d75ec5a42a67
      https://github.com/llvm/llvm-project/commit/0ebb3ac7c92c4c1c44e7f3d17832d75ec5a42a67
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll

  Log Message:
  -----------
  Revert "[VPlan] Try to narrow wide and replicating recipes to uniform recipes."

This reverts commit 1afba19913253dda865a8e57b37b9f4dabead1ac.

Typo breaking the build


  Commit: 3ff1d0198575282ad585c891b2e61e904a7d8c5a
      https://github.com/llvm/llvm-project/commit/3ff1d0198575282ad585c891b2e61e904a7d8c5a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll

  Log Message:
  -----------
  Recommit "[VPlan] Try to narrow wide and replicating recipes to uniform recipes."

This reverts commit 0ebb3ac7c92c4c1c44e7f3d17832d75ec5a42a67.

Re-applies commit with typos fixed.


  Commit: f5a35a31bfe6cbc16bec0c130f2bb3632dbf1fbf
      https://github.com/llvm/llvm-project/commit/f5a35a31bfe6cbc16bec0c130f2bb3632dbf1fbf
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll

  Log Message:
  -----------
  [LV] Add test cases with incorrect IV live-outs.

Add test cases for https://github.com/llvm/llvm-project/issues/122496
and https://github.com/llvm/llvm-project/issues/122602.


  Commit: 5c0aa31c3cb448065f12ede53e4dd54a9a98f650
      https://github.com/llvm/llvm-project/commit/5c0aa31c3cb448065f12ede53e4dd54a9a98f650
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/tools/driver/cc1_main.cpp

  Log Message:
  -----------
  -ftime-report: Move FrontendTimer closer to TimeTraceScope

... to improve consistency and make "Clang time report" cover
`FrontendAction::BeginSourceFile` and `FrontendAction::EndSourceFile`.


  Commit: b4ce29ab31b29ca926704c160e3909298ddf2b2b
      https://github.com/llvm/llvm-project/commit/b4ce29ab31b29ca926704c160e3909298ddf2b2b
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/include/clang/AST/Type.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/test/CodeGen/AArch64/sme-intrinsics/aarch64-sme-attrs.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-sme-atts.cpp
    M clang/test/Sema/aarch64-sme-func-attrs.c

  Log Message:
  -----------
  [AArch64][Clang] Add support for __arm_agnostic("sme_za_state") (#121788)

This adds support for parsing the attribute and codegen to map it to
"aarch64_za_state_agnostic" LLVM IR attribute.

This attribute is described in the Arm C Language Extensions (ACLE)
document:

  https://github.com/ARM-software/acle/blob/main/main/acle.md#__arm_agnostic


  Commit: 8df64ed77727ab9b7540819f2fe64379e88a50be
      https://github.com/llvm/llvm-project/commit/8df64ed77727ab9b7540819f2fe64379e88a50be
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/X86/uniform-phi.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    A llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll

  Log Message:
  -----------
  [LV] Don't consider IV increments uniform if exit value is used outside.

In some cases, there might be a chain of uniform instructions producing
the exit value. To generate correct code in all cases, consider the IV
increment not uniform, if there are users outside the loop.

Instead, let VPlan narrow the IV, if possible using the logic from
3ff1d01985752.

Test case from #122602 verified with Alive2:
    https://alive2.llvm.org/ce/z/bA4EGj

Fixes https://github.com/llvm/llvm-project/issues/122496.
Fixes https://github.com/llvm/llvm-project/issues/122602.


  Commit: 08028d68a90bbc47464562a745e33fa10256a7d3
      https://github.com/llvm/llvm-project/commit/08028d68a90bbc47464562a745e33fa10256a7d3
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M clang/lib/AST/TypePrinter.cpp

  Log Message:
  -----------
  [Clang] Fix buildbot failure introduced by #121788

Silences 'enumeration not handled in switch' warning,
which causes buildbot failures with -Werror.


  Commit: 0e51b54b7ac02b0920e20b8ccae26b32bd6b6982
      https://github.com/llvm/llvm-project/commit/0e51b54b7ac02b0920e20b8ccae26b32bd6b6982
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    A llvm/test/CodeGen/DirectX/BufferStore-sm61.ll
    A llvm/test/CodeGen/DirectX/RawBufferStore-error64.ll
    A llvm/test/CodeGen/DirectX/RawBufferStore.ll

  Log Message:
  -----------
  [DirectX] Implement the resource.store.rawbuffer intrinsic (#121282)

This introduces `@llvm.dx.resource.store.rawbuffer` and generalizes the
buffer store docs under DirectX/DXILResources.

Fixes #106188


  Commit: acbd822879f7727127926c25e1b47f5017f962c5
      https://github.com/llvm/llvm-project/commit/acbd822879f7727127926c25e1b47f5017f962c5
  Author: Bill Hoffman <bill.hoffman at kitware.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/lib/Driver/Driver.cpp
    M clang/test/Driver/modules-print-library-module-manifest-path.cpp

  Log Message:
  -----------
  Fix print module manifest file for macos (#122370)

This commit fixes -print-library-module-manifest-path on macos.
Currently, this only works on linux systems. This is because on macos
systems the library and header files are installed in a different
location. The module manifest is next to the libraries and the search
function was not looking in both places. There is also a test included.


  Commit: 59bba39a692fd371d0dd0e6baba49a414bf7d855
      https://github.com/llvm/llvm-project/commit/59bba39a692fd371d0dd0e6baba49a414bf7d855
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  [RISCV] Rework memcpy test (#120364)

Use descriptive names and add more cases.


  Commit: 4637c777463248d42fbdc383f324310522ce85d2
      https://github.com/llvm/llvm-project/commit/4637c777463248d42fbdc383f324310522ce85d2
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  Revert "[RISCV] Rework memcpy test" (#122662)

Reverts llvm/llvm-project#120364

The test should be updated due to some recent changes.


  Commit: 681c4a2068702f7483608b89e7a7e9235faf6bd9
      https://github.com/llvm/llvm-project/commit/681c4a2068702f7483608b89e7a7e9235faf6bd9
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  Reapply "[RISCV] Rework memcpy test (#120364)"

Use descriptive names and add more cases.

This recommits 59bba39 which was reverted in 4637c77.


  Commit: 77e6f434ec79db025aa9c7d193179727f1d63714
      https://github.com/llvm/llvm-project/commit/77e6f434ec79db025aa9c7d193179727f1d63714
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp

  Log Message:
  -----------
  [SPIRV] convergence anchor intrinsic does not have a parent token (#122230)


  Commit: f15da5fb7845979889b73f3f47bb126617e823cf
      https://github.com/llvm/llvm-project/commit/f15da5fb7845979889b73f3f47bb126617e823cf
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    A llvm/test/CodeGen/AMDGPU/invalid-cast-load-i1.ll

  Log Message:
  -----------
  [AMDGPU] Fix an invalid cast in `AMDGPULateCodeGenPrepare::visitLoadInst` (#122494)

Fixes: SWDEV-507695


  Commit: 7bf1cb702bdbec4b054a65cb58244596e8cd4138
      https://github.com/llvm/llvm-project/commit/7bf1cb702bdbec4b054a65cb58244596e8cd4138
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp
    A llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-functions.ll
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-s-time.ll
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-wave32-feature.ll

  Log Message:
  -----------
  [AMDGPU][NewPM] Port AMDGPURemoveIncompatibleFunctions to NPM (#122261)


  Commit: ecf4f95c4f55eea0830659654fa264189773a423
      https://github.com/llvm/llvm-project/commit/ecf4f95c4f55eea0830659654fa264189773a423
  Author: wldfngrs <wldfngrs at gmail.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/include/math.yaml
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sincosf16_utils.h
    A libc/src/math/generic/tanf16.cpp
    M libc/src/math/generic/tanpif16.cpp
    A libc/src/math/tanf16.h
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/cosf16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/tanf16_test.cpp
    A libc/test/src/math/tanf16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add tanf16 function (#121018)

- Implementation of tan for 16-bit floating point inputs.
- Exhaustive tests across the 16-bit input range


  Commit: f431f93a775d2a18ff67bc53a634a81a4580bbee
      https://github.com/llvm/llvm-project/commit/f431f93a775d2a18ff67bc53a634a81a4580bbee
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp

  Log Message:
  -----------
  [CodeGen][NewPM] Use proper NPM AtomicExpandPass in AMDGPU (#122086)

`PassRegistry.def` already has this entry, but the dummy definition was
being pulled instead.

I couldn't reproduce the build failures that FIXME referenced, maybe the
Dummy pass getting in the way was part of the cause.


  Commit: b86153919652302982356990d93fda4ad9ddae30
      https://github.com/llvm/llvm-project/commit/b86153919652302982356990d93fda4ad9ddae30
  Author: Shourya Goel <shouryagoel10000 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libc/include/llvm-libc-types/cfloat128.h

  Log Message:
  -----------
  [libc][complex] fix compiler support matrix for cfloat128 (#122593)

Before this patch, [godbolt](https://godbolt.org/z/6PPsvv9qd) failed to
compile `cfloat128` with `-ffreestanding` but with the patch, the
compilation succeeds, [godbolt](https://godbolt.org/z/4M8zzejss).

Fixes: #122500

cc: @nickdesaulniers


  Commit: 6f558e0e124012fd00927d6d42545649bd7e0dcd
      https://github.com/llvm/llvm-project/commit/6f558e0e124012fd00927d6d42545649bd7e0dcd
  Author: CHANDRA GHALE <chandra.nitdgp at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    A clang/test/OpenMP/masked_taskloop_codegen.c

  Log Message:
  -----------
  [OpenMP] codegen support for masked combined construct masked taskloop (#121914)

Added codegen support for combined masked constructs `masked taskloop.`
Added implementation for `EmitOMPMaskedTaskLoopDirective`.

---------

Co-authored-by: Chandra Ghale <ghale at pe31.hpc.amslabs.hpecorp.net>


  Commit: 36c3466aef6c8bfde0ddc736b8403e2c45f5e1c6
      https://github.com/llvm/llvm-project/commit/36c3466aef6c8bfde0ddc736b8403e2c45f5e1c6
  Author: Clément Fournier <clement.fournier at tu-dresden.de>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/test/Dialect/Linalg/transform-op-decompose.mlir

  Log Message:
  -----------
  [mlir][linalg] Fix neutral elt for softmax (#118952)

The decomposition of `linalg.softmax` uses `maxnumf`, but the identity
element that is used in the generated code is the one for `maximumf`.
They are not the same, as the identity for `maxnumf` is `NaN`, while the
one of `maximumf` is `-Infty`. This is wrong and prevents the maxnumf
from being folded.

Related to #114595, which fixed the folder for maxnumf.


  Commit: 76af93fbea6c5f0f3558824ce8ebfafcf80a94d4
      https://github.com/llvm/llvm-project/commit/76af93fbea6c5f0f3558824ce8ebfafcf80a94d4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-01-12 (Sun, 12 Jan 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp

  Log Message:
  -----------
  Partially revert "[TableGen] Avoid repeated hash lookups (NFC) (#122586)"

This partially reverts commit 07ff786e39e2190449998d3af1000454dee501be.

The hunk being reverted in this patch seems to break:

  tools/llvm-gsymutil/ARM_AArch64/macho-merged-funcs-dwarf.yaml

under LLVM_ENABLE_EXPENSIVE_CHECKS.


  Commit: 56a37a3c767b037143235bf34d180be85de7fd53
      https://github.com/llvm/llvm-project/commit/56a37a3c767b037143235bf34d180be85de7fd53
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  [SLPVectorizer] Refactor HorizontalReduction::createOp (NFC) (#121549)

This patch simplifies select-based integer min/max reductions by
utilizing `llvm::getMinMaxReductionPredicate`, and generates
intrinsic-based min/max reductions by utilizing
`llvm::getMinMaxReductionIntrinsicOp`.


  Commit: 4f96fb5fb349b0030f9c14b4fe389cebc3069702
      https://github.com/llvm/llvm-project/commit/4f96fb5fb349b0030f9c14b4fe389cebc3069702
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocPBQP.cpp

  Log Message:
  -----------
  Reapply "Spiller: Detach legacy pass and supply analyses instead (#119181)" (#122665)

Makes Inline Spiller amenable to the new PM.

This reapplies commit a531800344dc54e9c197a13b22e013f919f3f5e1 reverted
because of two unused private members reported on sanitizer bots.


  Commit: b270525f730be6e7196667925f5a9bfa153262e9
      https://github.com/llvm/llvm-project/commit/b270525f730be6e7196667925f5a9bfa153262e9
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTImporterLookupTable.cpp
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Not using primary context in lookup table (#118466)

`ASTImporterLookupTable` did use the `getPrimaryContext` function to get
the declaration context of the inserted items. This is problematic
because the primary context can change during import of AST items, most
likely if a definition of a previously not defined class is imported.
(For any record the primary context is the definition if there is one.)
The use of primary context is really not important, only for namespaces
because these can be re-opened and lookup in one namespace block is not
enough. This special search is now moved into ASTImporter instead of
relying on the lookup table.


  Commit: 1b199d19902a752433c397377567ff381261e94a
      https://github.com/llvm/llvm-project/commit/1b199d19902a752433c397377567ff381261e94a
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M .ci/generate_test_report.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh

  Log Message:
  -----------
  [ci] Handle the case where all reported tests pass but the build is still a failure (#120264)

In this build:
https://buildkite.com/llvm-project/github-pull-requests/builds/126961

The builds actually failed, probably because prerequisite of a test
suite failed to build.

However they still ran other tests and all those passed. This meant that
the test reports were green even though the build was red. On some level
this is technically correct, but it is very misleading in practice.

So I've also passed the build script's return code, as it was when we
entered the on exit handler, to the generator, so that when this happens
again, the report will draw the viewer's attention to the overall
failure. There will be a link in the report to the build's log file, so
the next step to investigate is clear.

It would be nice to say "tests failed and there was some other build
error", but we cannot tell what the non-zero return code was caused by.
Could be either.

The script handles the following situations now:
| Have Result Files? | Tests reported failed? | Return code | Report |

|--------------------|------------------------|-------------|-----------------------------------------------------------------------------|
| Yes | No | 0 | Success style report. |
| Yes | Yes | 0 | Shouldn't happen, but if it did, failure style report
showing the failures. |
| Yes | No | 1 | Failure style report, showing no failures but noting
that the build failed. |
| Yes | Yes | 1 | Failure style report, showing the test failures. |
| No | ? | 0 | No test report, success shown in the normal build
display. |
| No | ? | 1 | No test report, failure shown in the normal build
display. |


  Commit: d03f35f9b6d031d6a9375d90ccf7cc285f8e4b79
      https://github.com/llvm/llvm-project/commit/d03f35f9b6d031d6a9375d90ccf7cc285f8e4b79
  Author: xiaoleis-nv <99947620+xiaoleis-nv at users.noreply.github.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Fix the datatype error for nvvm.mma.sync when the operand is bf16 (#122664)

The PR fixes the datatype error for `nvvm.mma.sync` when the operand is
`bf16`. This operation originally requires the A/B type to be `f16x2`
for the `bf16` MMA. However, it violates the NVVM intrinsic
[[here](https://github.com/xiaoleis-nv/llvm-project/blob/372044ee09d39942925824f8f335aef40bfe92f0/llvm/include/llvm/IR/IntrinsicsNVVM.td#L119)],
where the A/B operand type should be `i32`. This is a bug, and there are
no tests in MLIR that cover this datatype.

```
    // mma bf16 -> s32 @ m16n8k16/m16n8k8
    !eq(gft,"m16n8k16:a:bf16") : !listsplat(llvm_i32_ty, 4),
    !eq(gft,"m16n8k16:b:bf16") : !listsplat(llvm_i32_ty, 2),
    !eq(gft,"m16n8k8:a:bf16") : !listsplat(llvm_i32_ty, 2),
    !eq(gft,"m16n8k8:b:bf16") : [llvm_i32_ty],
```

This PR addresses this bug and adds tests to guarantee correctness.

Co-authored-by: Xiaolei Shi <xiaoleis at nvidia.com>


  Commit: e2a071ece58790f8dd4886e998033cab82e906fb
      https://github.com/llvm/llvm-project/commit/e2a071ece58790f8dd4886e998033cab82e906fb
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/test/CodeGen/AArch64/machine-cp-sub-reg.mir

  Log Message:
  -----------
  [MachineCP] Correctly handle register masks and sub-registers (#122472)

When passing an instruction with a register mask, the machine copy
propagation pass was dropping the information about some copy
instructions which define a register which is preserved by the mask,
because that register overlaps a register which is partially clobbered
by it. This resulted in a miscompilation for AArch64, because this
caused a live copy to be considered dead.

The fix is to clobber register masks by finding the set of reg units
which is preserved by the mask, and clobbering all units not in that
set.


  Commit: 16923da241377b05cf485dcca07f2b00df6bf500
      https://github.com/llvm/llvm-project/commit/16923da241377b05cf485dcca07f2b00df6bf500
  Author: xtex <xtex at envs.net>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/include/clang/Frontend/Utils.h
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/test/Frontend/dependency-gen-symlink.c
    M clang/test/Frontend/dependency-gen-windows-duplicates.c
    M clang/test/VFS/external-names.c

  Log Message:
  -----------
  Revert "[clang] Canonicalize absolute paths in dependency file" (#121638)

Reverts llvm/llvm-project#117458

https://github.com/llvm/llvm-project/pull/117458#issuecomment-2568804774

https://github.com/ninja-build/ninja/issues/2528


  Commit: c2979c58d49bf3c7dc892ed9fb49cdca389130ee
      https://github.com/llvm/llvm-project/commit/c2979c58d49bf3c7dc892ed9fb49cdca389130ee
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Clang] Add release note for pointer overflow optimization change (#122462)

Add a release note for optimization change related to pointer overflow
checks. I've put this in the breaking changes section to give it the
best chance of being seen.


  Commit: b5987157e86b3ef87b8ed95f737e0a016974c793
      https://github.com/llvm/llvm-project/commit/b5987157e86b3ef87b8ed95f737e0a016974c793
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate-align.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix `omp-declarative-allocate-align.f90` expectations (#122675)

The test was effectively a no-op since we used `//` instead of `!` for
`RUN` and `CHECK` lines. Also, we have to specify the proper OpenMP
version.


  Commit: a3b3c26048e1e9397cf412b07f09f82fe49e351e
      https://github.com/llvm/llvm-project/commit/a3b3c26048e1e9397cf412b07f09f82fe49e351e
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/TableGen/TGLexer.h

  Log Message:
  -----------
  [TableGen] Use assert instead of PrintFatalError in TGLexer. NFC. (#122303)

Do not use the PrintFatalError diagnostic machinery for conditions that
can never happen with any input.


  Commit: 7e01a322f850e86be9eefde8ae5a30e532d22cfa
      https://github.com/llvm/llvm-project/commit/7e01a322f850e86be9eefde8ae5a30e532d22cfa
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/unittests/AST/ASTImporterTest.cpp

  Log Message:
  -----------
  [clang][ASTImporter] Fix unused variable warning (NFC) (#122686)


  Commit: 7e2eb0f83e1cf6861c8fd1f038a88a8ddd851c34
      https://github.com/llvm/llvm-project/commit/7e2eb0f83e1cf6861c8fd1f038a88a8ddd851c34
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/test/CodeGen/NVPTX/convert-sm89.ll
    A llvm/test/CodeGen/NVPTX/convert-sm90.ll

  Log Message:
  -----------
  [NVPTX] Add float to tf32 conversion intrinsics (#121507)

This patch adds the missing variants of float to tf32 conversion
intrinsics, with their corresponding lit tests.

PTX Spec link:

https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-cvt

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


  Commit: f136c800b60dbfacdbb645e7e92acba52e2f279f
      https://github.com/llvm/llvm-project/commit/f136c800b60dbfacdbb645e7e92acba52e2f279f
  Author: vfdev <vfdev.5 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/docs/Bindings/Python.md
    M mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp
    M mlir/lib/Bindings/Python/Globals.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRModule.cpp
    M mlir/lib/Bindings/Python/IRModule.h
    M mlir/lib/Bindings/Python/MainModule.cpp
    M mlir/python/requirements.txt
    A mlir/test/python/multithreaded_tests.py

  Log Message:
  -----------
  Enabled freethreading support in MLIR python bindings (#122684)

Reland reverted https://github.com/llvm/llvm-project/pull/107103 with
the fixes for Python 3.8

cc @jpienaar

Co-authored-by: Peter Hawkins <phawkins at google.com>


  Commit: d2ba364440662b1025b2fbc00066eaae8b369cb1
      https://github.com/llvm/llvm-project/commit/d2ba364440662b1025b2fbc00066eaae8b369cb1
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/TableGen/TGLexer.cpp

  Log Message:
  -----------
  Fix an unused-variable warning in release build.


  Commit: d7e79663e77e05ed4e7580be1dca00d7ef3b12c5
      https://github.com/llvm/llvm-project/commit/d7e79663e77e05ed4e7580be1dca00d7ef3b12c5
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/docs/Modules.rst

  Log Message:
  -----------
  Remove an extra trailing `` in Modules.rst, NFC


  Commit: 171d3edd0507422f64cc11b33dac7b7f2b703f76
      https://github.com/llvm/llvm-project/commit/171d3edd0507422f64cc11b33dac7b7f2b703f76
  Author: quic_hchandel <165007698+hchandel at users.noreply.github.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/test/CodeGen/RISCV/attributes.ll
    A llvm/test/MC/RISCV/xqciint-invalid.s
    A llvm/test/MC/RISCV/xqciint-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add Qualcomm uC Xqciint (Interrupts) extension (#122256)

This extension adds eleven instructions to accelerate interrupt
servicing.

The current spec can be found at:
https://github.com/quic/riscv-unified-db/releases/latest

This patch adds assembler only support.

---------

Co-authored-by: Harsh Chandel <hchandel at qti.qualcomm.com>


  Commit: 795e35a653b977bf637d1d049423adc8a63cd20d
      https://github.com/llvm/llvm-project/commit/795e35a653b977bf637d1d049423adc8a63cd20d
  Author: Sam Tebbs <samuel.tebbs at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    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/VPlanValue.h
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll

  Log Message:
  -----------
  Reland "[LoopVectorizer] Add support for partial reductions" with non-phi operand fix. (#121744)

This relands the reverted #120721 with a fix for cases where neither
reduction operand are the reduction phi. Only
63114239cc8d26225a0ef9920baacfc7cc00fc58 and
63114239cc8d26225a0ef9920baacfc7cc00fc58 are new on top of the reverted
PR.

---------

Co-authored-by: Nicholas Guy <nicholas.guy at arm.com>


  Commit: 5315f3f8cb8f562ec39f57f2fce79c8e017595f9
      https://github.com/llvm/llvm-project/commit/5315f3f8cb8f562ec39f57f2fce79c8e017595f9
  Author: Momchil Velikov <momchil.velikov at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c
    M clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c.expected
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/update_cc_test_checks.py

  Log Message:
  -----------
  Handle leading underscores in update_cc_test_checks.py (#121800)

For some ABIs `update_cc_test_checks.py` is unable to generate tests
because of the mismatch between the mangled function names reported by
clang's `-asd-dump` and the function names in LLVM IR.

This patch fixes it by striping the leading underscore from the mangled
name for global functions if the data layout string says they have one.


  Commit: 6c5941b09fca487efc5000c82bbce6054bf36a7c
      https://github.com/llvm/llvm-project/commit/6c5941b09fca487efc5000c82bbce6054bf36a7c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/subvectorwise-store-of-vector-splat.ll

  Log Message:
  -----------
  [X86] subvectorwise-store-of-vector-splat.ll - regenerate VPTERNLOG comments


  Commit: b605dab7a8352158ee0d399b8c3433f9a8b495a3
      https://github.com/llvm/llvm-project/commit/b605dab7a8352158ee0d399b8c3433f9a8b495a3
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M polly/lib/External/isl/interface/python.cc
    M polly/lib/External/isl/libisl-gdb.py
    M polly/lib/External/isl/python/isl.py.top
    M polly/test/lit.site.cfg.in
    M polly/utils/pyscop/isl.py

  Log Message:
  -----------
  [Polly] Use "is" instead of "==" to check for None (#94021)

>From PEP8
(https://peps.python.org/pep-0008/#programming-recommendations):

> Comparisons to singletons like None should always be done with is or
is not, never the equality operators.


  Commit: ca92bdfa3ef8f9a1cc97167fc96601f8bd7b436b
      https://github.com/llvm/llvm-project/commit/ca92bdfa3ef8f9a1cc97167fc96601f8bd7b436b
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/command/ParseCommand.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ConditionalController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ControllerHelpers.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/Debuggers.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [cross-project-tests] Use "is" instead of "==" to check for None (#94016)

>From PEP8
(https://peps.python.org/pep-0008/#programming-recommendations):

> Comparisons to singletons like None should always be done with is or
is not, never the equality operators.


  Commit: 5609724c2e5b59130c6fcfc128120777282c8d9a
      https://github.com/llvm/llvm-project/commit/5609724c2e5b59130c6fcfc128120777282c8d9a
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M polly/test/update_check.py

  Log Message:
  -----------
  [Polly] Fix invalid escape sequences (#94037)

These generate a SyntaxWarning since Python 3.12.


  Commit: 3efe83291f07dcf2423065e63b826407d1ec2609
      https://github.com/llvm/llvm-project/commit/3efe83291f07dcf2423065e63b826407d1ec2609
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll

  Log Message:
  -----------
  [AArch64] Fix chain for calls from agnostic-ZA functions.

The lowering code was using the wrong chain value, which meant that
the 'smstart' after the call from streaming agnostic-ZA functions ->
non-streaming private-ZA functions was incorrectly removed from the DAG.


  Commit: 5eb9acff2845f08741e70be4a5fc1d6afc644375
      https://github.com/llvm/llvm-project/commit/5eb9acff2845f08741e70be4a5fc1d6afc644375
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M polly/lib/External/isl/interface/python.cc
    M polly/lib/External/isl/libisl-gdb.py
    M polly/lib/External/isl/python/isl.py.top

  Log Message:
  -----------
  [Polly] Revert changes to isl Python code

This partially reverts b605dab7a8352158ee0d399b8c3433f9a8b495a3,
dropping the changes to isl. This is an external library, so
we shouldn't modify it unless strictly necessary.


  Commit: a1a3e019d7adbacaa848bee12020e4d9a8401c02
      https://github.com/llvm/llvm-project/commit/a1a3e019d7adbacaa848bee12020e4d9a8401c02
  Author: Eisuke Kawashima <e.kawaschima+github at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/command/ParseCommand.py
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [cross-project-tests] Fix invalid escape sequences (#94031)

These generate a SyntaxWarning with Python 3.12.


  Commit: 73b0e8a191f89fd785a052795c1c855d4119119e
      https://github.com/llvm/llvm-project/commit/73b0e8a191f89fd785a052795c1c855d4119119e
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/enqueue-kernel.ll

  Log Message:
  -----------
  [AMDGPU][NewPM] Port AMDGPUOpenCLEnqueuedBlockLowering to NPM (#122434)


  Commit: 82b9eb1086d45caf74ff3d5dfa519631c247eb14
      https://github.com/llvm/llvm-project/commit/82b9eb1086d45caf74ff3d5dfa519631c247eb14
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    R flang/test/Lower/OpenMP/Todo/reduction-teams.f90
    A flang/test/Lower/OpenMP/reduction-teams.f90

  Log Message:
  -----------
  [Flang][OpenMP] Support teams reductions lowering (#122683)

This patch adds PFT to MLIR lowering of teams reductions. Since there is
still no MLIR to LLVM IR translation implemented, compilation of
programs including these constructs will still trigger
not-yet-implemented errors.


  Commit: e9a55770dcee48a3c28b71720db383762049a778
      https://github.com/llvm/llvm-project/commit/e9a55770dcee48a3c28b71720db383762049a778
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll

  Log Message:
  -----------
  AMDGPU: Add gfx9 run line to scalar_to_vector test (#122659)


  Commit: f4598194b5d65f6bafa987a2e55c46d03c5d0052
      https://github.com/llvm/llvm-project/commit/f4598194b5d65f6bafa987a2e55c46d03c5d0052
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll

  Log Message:
  -----------
  DAG: Fold bitcast of scalar_to_vector to anyext (#122660)

scalar_to_vector is difficult to make appear and test,
but I found one case where this makes an observable difference.
It fires more often than this in the test suite, but most of them
have no net result in the final code. This helps reduce regressions
in a future commit.


  Commit: 41a94de75caacb979070ec7a010dfe3c4e9f116f
      https://github.com/llvm/llvm-project/commit/41a94de75caacb979070ec7a010dfe3c4e9f116f
  Author: Maksim Ivanov <emaxx at google.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/examples/Attribute/Attribute.cpp
    M clang/examples/CallSuperAttribute/CallSuperAttrInfo.cpp
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/lib/Sema/SemaSwift.cpp
    M clang/lib/Sema/SemaType.cpp

  Log Message:
  -----------
  [clang] Refactor attr diagnostics to use %select (#122473)

A cleanup follow-up to #118501 and #118567.


  Commit: 3397950f2d21426c7520d114a12588128906a897
      https://github.com/llvm/llvm-project/commit/3397950f2d21426c7520d114a12588128906a897
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll

  Log Message:
  -----------
  [LV] Fix FindLastIV reduction for epilogue vectorization. (#120395)

Following 0e528ac404e13ed2d952a2d83aaf8383293c851e, this patch adjusts
the resume value of VPReductionPHIRecipe for FindLastIV reductions.
Replacing the resume value with:

  ResumeValue = ResumeValue == StartValue ? SentinelValue : ResumeValue;

This addressed the correctness issue when the start value might not be
less than the minimum value of a monotonically increasing induction
variable.

Thanks Florian Hahn for the help.

---------

Co-authored-by: Florian Hahn <flo at fhahn.com>


  Commit: 21e58ee9f7de60a7e9202ad3f424ec3ad5a6fce5
      https://github.com/llvm/llvm-project/commit/21e58ee9f7de60a7e9202ad3f424ec3ad5a6fce5
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/UsersManual.rst
    A clang/docs/analyzer/images/example_attribute_nonnull.png
    A clang/docs/analyzer/images/example_cf_returns_retained.png
    A clang/docs/analyzer/images/example_ns_returns_retained.png
    M clang/docs/analyzer/user-docs.rst
    A clang/docs/analyzer/user-docs/Annotations.rst
    M clang/docs/analyzer/user-docs/FAQ.rst
    M clang/include/clang/Basic/AttrDocs.td
    M clang/www/analyzer/annotations.html
    R clang/www/analyzer/images/example_attribute_nonnull.png
    R clang/www/analyzer/images/example_cf_returns_retained.png
    R clang/www/analyzer/images/example_ns_returns_retained.png

  Log Message:
  -----------
  [NFC][analyzer][docs] Migrate 'annotations.html' to RST (#122246)

This commit migrates the contents of 'annotations.html' in the old
HTML-based documentation of the Clang static analyzer to the new
RST-based documentation.

During this conversion I reordered the sections of this documentation
file by placing the section "Custom Assertion Handlers" as a subsection
of "Annotations to Enhance Generic Checks". (The primary motivation was
that Sphinx complained about inconsistent section levels; with this
change I preserved that sections describing individual annotations are
all on the same level.)

Apart from this change and the format conversion, I didn't review,
validate or edit the contents of this documentation file because I think
it would be better to place any additional changes in separate commits.


  Commit: 8b4561467e828c3755ad2942715fac00de2be4a7
      https://github.com/llvm/llvm-project/commit/8b4561467e828c3755ad2942715fac00de2be4a7
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/depend_diff_types.ll

  Log Message:
  -----------
  LAA: add missed swap when inverting src, sink (#122254)

When inverting source and sink on a negative induction step, the types
of the source and sink should also be swapped. This fixes a bug in the
code that follows, that computes properties based on these types. With
234cc40 ([LAA] Limit no-overlap check to at least one loop-invariant
accesses.), that code is guarded by a loop-invariant condition: however,
the commit did not add any new tests exercising the guarded code, and
hence the bugfix in this patch requires additional tests to exercise
that guarded codepath.


  Commit: 418f5cd6c2b99c8cd45113aada8e83446ebdc350
      https://github.com/llvm/llvm-project/commit/418f5cd6c2b99c8cd45113aada8e83446ebdc350
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll

  Log Message:
  -----------
  [LV][EVL] Pre-commit test case for fixed-order recurrence with EVL tail folding. (NFC) (#122456)

This test case is from
SingleSource/UnitTests/Vectorizer/recurrences.test.
Pre-commit for #122458


  Commit: ed80d0c2ae41888d8d0be90e73026bc126d82161
      https://github.com/llvm/llvm-project/commit/ed80d0c2ae41888d8d0be90e73026bc126d82161
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    A clang/docs/analyzer/images/example_custom_assert.png
    A clang/docs/analyzer/images/example_null_pointer.png
    A clang/docs/analyzer/images/example_use_assert.png
    M clang/docs/analyzer/user-docs/FAQ.rst
    R clang/www/analyzer/images/example_custom_assert.png
    R clang/www/analyzer/images/example_null_pointer.png
    R clang/www/analyzer/images/example_use_assert.png
    R clang/www/analyzer/images/scan_build_cmd.png

  Log Message:
  -----------
  [NFC][analyzer][docs] Restore/remove orphaned images (#122481)

When commit 61a76f58ebf1 converted the static analyzer FAQ from HTML to
RST, it accidentally left out three images (`example_*.png`) that were
previously present in that document. This commit re-adds those three
images to the FAQ (and moves them to the directory for the image assets
of the RST documentation).

Moreover commit 093aaca2b0ad _copied_ the file `scan_build_cmd.png` to
the RST documentation directory instead of just moving it; so this
commit removes its "old" copy which is no longer used (because the old
HTML-based documentation file was replaced by a stub that redirects to
the RST docs).


  Commit: d6f7f2a5fa0e305253f936cdc8364eecfd568121
      https://github.com/llvm/llvm-project/commit/d6f7f2a5fa0e305253f936cdc8364eecfd568121
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    M llvm/test/CodeGen/AArch64/machine-cp-sub-reg.mir

  Log Message:
  -----------
  Revert "[MachineCP] Correctly handle register masks and sub-registers (#122472)"

This reverts commit e2a071ece58790f8dd4886e998033cab82e906fb.

This causes a large compile-time regression.


  Commit: 22e9024c9f374c0c740647829050c289673dbb11
      https://github.com/llvm/llvm-project/commit/22e9024c9f374c0c740647829050c289673dbb11
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/Support/ModRef.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    A llvm/test/Assembler/captures-errors.ll
    A llvm/test/Assembler/captures.ll
    M llvm/test/Bitcode/attributes.ll
    M llvm/unittests/IR/AttributesTest.cpp

  Log Message:
  -----------
  [IR] Introduce captures attribute (#116990)

This introduces the `captures` attribute as described in:
https://discourse.llvm.org/t/rfc-improvements-to-capture-tracking/81420

This initial patch only introduces the IR/bitcode support for the
attribute and its in-memory representation as `CaptureInfo`. This will
be followed by a patch to upgrade and remove the `nocapture` attribute,
and then by actual inference/analysis support.

Based on the RFC feedback, I've used a syntax similar to the `memory`
attribute, though the only "location" that can be specified is `ret`.

I've added some pretty extensive documentation to LangRef on the
semantics. One non-obvious bit here is that using ptrtoint will not
result in a "return-only" capture, even if the ptrtoint result is only
used in the return value. Without this requirement we wouldn't be able
to continue ordinary capture analysis on the return value.


  Commit: 7ed451a3f3f777966b05c51af920aa23fa1cd73e
      https://github.com/llvm/llvm-project/commit/7ed451a3f3f777966b05c51af920aa23fa1cd73e
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fdot.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fvdot.c
    M clang/test/Sema/aarch64-fp8-intrinsics/acle_sme2_fp8_imm.c
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/test/CodeGen/AArch64/fp8-sve-fdot.ll
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Change feature dependencies of fp8 features (#122280)

This patch simplifies feature dependencies of FP8 features and also adds
new tests to check these.


  Commit: ad38e24eb74e97148faec97c4f843b87768b6e9b
      https://github.com/llvm/llvm-project/commit/ad38e24eb74e97148faec97c4f843b87768b6e9b
  Author: David Pagan <dave.pagan at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    R clang/test/OpenMP/allocate_allocator_modifier_ast_print.cpp
    R clang/test/OpenMP/allocate_allocator_modifier_codegen.cpp
    R clang/test/OpenMP/allocate_allocator_modifier_messages.cpp
    A clang/test/OpenMP/allocate_modifiers_ast_print.cpp
    A clang/test/OpenMP/allocate_modifiers_codegen.cpp
    A clang/test/OpenMP/allocate_modifiers_messages.cpp

  Log Message:
  -----------
  [clang][OpenMP] Add 'align' modifier for 'allocate' clause (#121814)

The 'align' modifier is now accepted in the 'allocate' clause. Added LIT
tests covering codegen, PCH, template handling, and serialization for
'align' modifier.

Added support for align-modifier to release notes.

Testing
- New allocate modifier LIT tests.
- OpenMP LIT tests.
- check-all


  Commit: d98ced1a9d641539d5bbb287bd16378ba3f5dba9
      https://github.com/llvm/llvm-project/commit/d98ced1a9d641539d5bbb287bd16378ba3f5dba9
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/include/clang/Driver/Multilib.h
    M clang/lib/Driver/Multilib.cpp
    A clang/test/Driver/baremetal-multilib-custom-flags-parsing.yaml

  Log Message:
  -----------
  [Multilib] Custom flags YAML parsing (#110657)

This patch is the first step to extend the current multilib system to
support the selection of library variants which do not correspond to
existing command-line options.

Proposal can be found in
https://discourse.llvm.org/t/rfc-multilib-custom-flags/81058

The multilib mechanism supports libraries that target code generation or
language options such as `--target`, `-mcpu`, `-mfpu`,
`-mbranch-protection`. However, some library variants are particular to
features that do not correspond to any command-line options. Examples
include variants for multithreading and semihosting.

This work introduces a way to instruct the multilib system to consider
these features in library selection. This particular patch comprises a
new section in `multilib.yaml` to declare flags for which no option
exists. Henceforth this sort of flag will be called `custom flag` for
clarity.

The `multilib.yaml` file will have a new section called Flags which
contains the declarations of the target’s custom flags:

```yaml
Flags:
- Name: multithreaded
  Values:
  - Name: no-multithreaded
    MacroDefines: [__SINGLE_THREAD__]
  - Name: multithreaded
  Default: no-multithreaded

- Name: io
  Values:
    - Name: io-none
    - Name: io-semihosting
      MacroDefines: [SEMIHOSTING]
    - Name: io-linux-syscalls
      MacroDefines: [LINUX_SYSCALLS, HOSTED=1]
   Default: io-none
```
- Name: the name to categorize a flag.
- Values: a list of possible values.
- Default: it specifies which value this flag should take if not
specified in the command-line invocation. It must be one value from the
Values field.

Each flag Value follows this description:
- Name (required): the name of the custom flag value (string). This is
the string to be used in `-fmultilib-flag=<string>`.
- MacroDefines (optional): a list of strings to be used as macro
definitions. Each string
  is fed into the driver as ``-D<string>``.

A Default value is useful to save users from specifying custom flags
that have a most commonly used value.

The namespace of flag values is common across all flags. This means that
flag values must be unique.


  Commit: 2a551ab3002897ba52a27961b766f3741695c816
      https://github.com/llvm/llvm-project/commit/2a551ab3002897ba52a27961b766f3741695c816
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/print-multi-selection-flags.c

  Log Message:
  -----------
  [Multilib] Add -fmultilib-flag command-line option (#110658)

This patch is the second step to extend the current multilib system to
support the selection of library variants which do not correspond to
existing command-line options.

Proposal can be found in
https://discourse.llvm.org/t/rfc-multilib-custom-flags/81058

The multilib mechanism supports libraries that target code generation or
language options such as --target, -mcpu, -mfpu, -mbranch-protection.
However, some library variants are particular to features that do not
correspond to any command-line options. Examples include variants for
multithreading and semihosting.

This work introduces a way to instruct the multilib system to consider
these features in library selection.

The driver must be informed about the multilib custom flags with a new
command-line option.
```
-fmultilib-flag=C
```
Where the grammar for C is:
```
C -> option
option -> multithreaded | no-multithreaded | io-none | io-semihosting | io-linux-syscalls | ...
```
There must be one option instance for each flag specified:
```
-fmultilib-flag=multithreaded -fmultilib-flag=io-semihosting
```
Contradictory options are untied by *last one wins*.

These options are to be used exclusively by the multilib mechanism in
the Clang driver. Hence they are not forwarded to the compiler frontend.


  Commit: 162397f98d04415eebe115cdcb01558932e5c802
      https://github.com/llvm/llvm-project/commit/162397f98d04415eebe115cdcb01558932e5c802
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/include/__flat_map/flat_map.h
    M libcxx/include/module.modulemap
    R libcxx/test/libcxx/containers/containers.adaptors/flat.map/container_stability.pass.cpp
    R libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter_stability.pass.cpp
    R libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range_stability.pass.cpp

  Log Message:
  -----------
  [libc++] Replace stable_sort with sort in flat_map (#121431)

Fixes #120788


  Commit: cedb44af53f195135e8e8de98f161048d19f8857
      https://github.com/llvm/llvm-project/commit/cedb44af53f195135e8e8de98f161048d19f8857
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__functional/function.h
    M libcxx/include/__memory/allocator.h
    R libcxx/include/__memory/builtin_new_allocator.h
    M libcxx/include/__memory/unique_temporary_buffer.h
    M libcxx/include/__new/allocate.h
    M libcxx/include/__string/constexpr_c_functions.h
    A libcxx/include/__utility/element_count.h
    M libcxx/include/__utility/small_buffer.h
    M libcxx/include/module.modulemap
    M libcxx/src/memory_resource.cpp
    M libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp

  Log Message:
  -----------
  [libc++] Pass type information down to __libcpp_allocate (#118837)

Currently, places where we call __libcpp_allocate must drop type
information on the ground even when they actually have such information
available. That is unfortunate since some toolchains and system
allocators are able to provide improved security when they know what
type is being allocated.

This is the purpose of http://wg21.link/p2719, where we introduce a new
variant of `operator new` which takes a type in its interface. A
different but related issue is that `std::allocator` does not honor any
in-class `T::operator new` since it is specified to call the global
`::operator new` instead.

This patch closes the gap to make it trivial for implementations that
provide typed memory allocators to actually benefit from that
information in more contexts, and also makes libc++ forward-compatible
with future proposals that would fix the existing defects in
`std::allocator`. It also makes the internal allocation API higher level
by operating on objects instead of operating on bytes of memory.

Since this is a widely-used function and making this a template could
have an impact on debug info sizes, I tried minimizing the number of
templated layers by removing `__do_deallocate_handle_size`, which was
easy to replace with a macro (and IMO this leads to cleaner code).


  Commit: d1a622db1b1a93ac61f7f281605c4606b391f24a
      https://github.com/llvm/llvm-project/commit/d1a622db1b1a93ac61f7f281605c4606b391f24a
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/include/__locale

  Log Message:
  -----------
  [libc++][NFC] Use uint32_t instead of __uint32_t on Apple (#122356)

We had a 15 year old occurence of __uint32_t, likely from a time when
uint32_t was not available everywhere.


  Commit: 019a902ac644c59dfa8e6091f96846b516444ca5
      https://github.com/llvm/llvm-project/commit/019a902ac644c59dfa8e6091f96846b516444ca5
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/future
    A libcxx/test/libcxx/thread/futures/futures.task/type.depr.verify.cpp
    M libcxx/test/libcxx/thread/futures/futures.task/types.pass.cpp

  Log Message:
  -----------
  [libc++] Deprecate extension `packaged_task::result_type` (#122600)

This extension is questionable and non-conforming. Perhaps we should
deprecate and then remove it.

Towards #112856.


  Commit: 7457f51f6cf61b960e3e6e45e63378debd5c1d5c
      https://github.com/llvm/llvm-project/commit/7457f51f6cf61b960e3e6e45e63378debd5c1d5c
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/pr97968.ll
    M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] Fold VPERMV3(X,M,Y) -> VPERMV(CONCAT(X,Y),WIDEN(M)) iff the CONCAT is free (#122485)

This extends the existing fold which concatenates X and Y if they are sequential subvectors extracted from the same source.

By using combineConcatVectorOps we can recognise other patterns where X and Y can be concatenated for free (e.g. sequential loads, concatenating repeated instructions etc.), which allows the VPERMV3 fold to be a lot more aggressive.

This required combineConcatVectorOps to be extended to fold the additional case of "concat(extract_subvector(x,lo), extract_subvector(x,hi)) -> extract_subvector(x)", similar to the original VPERMV3 fold where "x" was larger than the concat result type.

This also exposes more cases where we have repeated vector/subvector loads if they have multiple uses - e.g. where we're loading a ymm and the lo/hi xmm pairs independently - in the past we've always considered this to be relatively benign, but I'm not certain if we should now do more to keep these from splitting?


  Commit: 65566281edac2b5f75a99302e7200c957db90143
      https://github.com/llvm/llvm-project/commit/65566281edac2b5f75a99302e7200c957db90143
  Author: Ryan Mansfield <ryan_mansfield at apple.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/test/tools/llvm-objdump/ELF/pt-gnu-property.test
    M llvm/tools/llvm-objdump/ELFDump.cpp

  Log Message:
  -----------
  [llvm-objdump] Remove leading whitespace for PT_GNU_PROPERTY. (#121591)

This fixes the misaligned display of addresses for this p_type.

Previous:

```
   STACK off    0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**64
         filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
   PROPERTY off    0x0000000000000358 vaddr 0x0000000000000358 paddr 0x0000000000000358 align 2**3
         filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
    NOTE off    0x0000000000000334 vaddr 0x0000000000000334 paddr 0x0000000000000334 align 2**2
         filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
```

After:


```
   STACK off    0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**64
         filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw-
PROPERTY off    0x0000000000000358 vaddr 0x0000000000000358 paddr 0x0000000000000358 align 2**3
         filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
    NOTE off    0x0000000000000334 vaddr 0x0000000000000334 paddr 0x0000000000000334 align 2**2
         filesz 0x0000000000000020 memsz 0x0000000000000020 flags r--
```


  Commit: b5ba4f06db2e159885fc4b6e7709274a3910b8b5
      https://github.com/llvm/llvm-project/commit/b5ba4f06db2e159885fc4b6e7709274a3910b8b5
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__locale_dir/locale_base_api.h
    R libcxx/include/__locale_dir/locale_base_api/fuchsia.h
    A libcxx/include/__locale_dir/support/fuchsia.h
    A libcxx/include/__locale_dir/support/no_locale/characters.h
    A libcxx/include/__locale_dir/support/no_locale/strtonum.h
    M libcxx/include/module.modulemap

  Log Message:
  -----------
  [libc++] Redefine Fuchsia locale base support on top of the new API (#122489)

This follows the same path we've been doing for all platforms so far,
moving away from the old definition of the locale base API.

Co-authored-by: Daniel Thornburgh <mysterymath at gmail.com>


  Commit: ce8c64fc8e067608be0dd44ca5399f85bab9e20d
      https://github.com/llvm/llvm-project/commit/ce8c64fc8e067608be0dd44ca5399f85bab9e20d
  Author: vfdev <vfdev.5 at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/examples/standalone/python/StandaloneExtensionPybind11.cpp

  Log Message:
  -----------
  Remove StandaloneExtensionPybind11.cpp FT update as does not work with python 3.8 and old pybind11 (#122697)

Description:
- Remove StandaloneExtensionPybind11.cpp FT update as does not work with
python 3.8 and old pybind11

This should also fix the failing toy.test:
https://github.com/llvm/llvm-project/pull/122684#issuecomment-2586802692

cc @jpienaar


  Commit: 99612a3a18e0c40aac9c52b68e67b106f97ed4fa
      https://github.com/llvm/llvm-project/commit/99612a3a18e0c40aac9c52b68e67b106f97ed4fa
  Author: bernhardu <bernhardu at mailbox.org>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M compiler-rt/lib/interception/interception_win.cpp
    M compiler-rt/lib/interception/tests/interception_win_test.cpp

  Log Message:
  -----------
  [win/asan] GetInstructionSize: Support some more 2 byte instructions. (#120235)

This patch adds several instructions seen when trying to run a
executable built with ASan with llvm-mingw.
(x86 and x86_64, using the git tip in llvm-project).

Also includes instructions collected by
Roman Pišl and Eric Pouech in the Wine bug reports below.

```
Related: https://github.com/llvm/llvm-project/issues/96270

Co-authored-by: Roman Pišl <rpisl at seznam.cz>
                https://bugs.winehq.org/show_bug.cgi?id=50993
                https://bugs.winehq.org/attachment.cgi?id=70233
Co-authored-by: Eric Pouech <eric.pouech at gmail.com>
                https://bugs.winehq.org/show_bug.cgi?id=52386
                https://bugs.winehq.org/attachment.cgi?id=71626
```

CC: @zmodem


  Commit: 5e7d7fb1f0cefbb6f00bcd71867014ce8b71a11e
      https://github.com/llvm/llvm-project/commit/5e7d7fb1f0cefbb6f00bcd71867014ce8b71a11e
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/test/Driver/print-enabled-extensions/aarch64-fujitsu-monaka.c

  Log Message:
  -----------
  [AArch64] Fix aarch64-fujitsu-monaka.c test (#122716)


  Commit: 7378afd167860083eaaf0d8e411c91a28a6605d6
      https://github.com/llvm/llvm-project/commit/7378afd167860083eaaf0d8e411c91a28a6605d6
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/include/clang/Driver/Multilib.h
    M clang/lib/Driver/Multilib.cpp
    R clang/test/Driver/baremetal-multilib-custom-flags-parsing.yaml

  Log Message:
  -----------
  Revert "[Multilib] Custom flags YAML parsing" (#122722)

Reverts llvm/llvm-project#110657

It seems that this patch is causing the sanitizer bot to fail. Reverting
while I investigate


  Commit: ab6c89c220192159a66c1a91ad3dd892bad1c3b2
      https://github.com/llvm/llvm-project/commit/ab6c89c220192159a66c1a91ad3dd892bad1c3b2
  Author: Brotcrunsher <brotcrunsher at hotmail.de>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M libcxx/src/shared_mutex.cpp

  Log Message:
  -----------
  [libcxx] Don't hold the lock when calling notify_* on gates in std::shared_mutex (#107876)

Holding the associated lock while calling notify_* on a
condition_variable is generally considered a pessimization, as the
notified thread might "instantly" wake up, notice that it can't acquire
the lock, and then goes back to sleep.


  Commit: 34ba84fe90b3e369c03e695a395ec632ef60e23d
      https://github.com/llvm/llvm-project/commit/34ba84fe90b3e369c03e695a395ec632ef60e23d
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp

  Log Message:
  -----------
  [SPIRV] Return success when selecting reads and writes. (#122162)

The function `selectImageWriteIntrinsic` and `selectReadImageIntrinsic`
are void functions. The should return true if they succeed, and false
otherwise. This commit updates the code to do this.


  Commit: af524de1fa94e4b4cee8b745d1b68f4ea0090759
      https://github.com/llvm/llvm-project/commit/af524de1fa94e4b4cee8b745d1b68f4ea0090759
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
    A llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll

  Log Message:
  -----------
  [SLP]Do not include subvectors for fully matched buildvectors

If the buildvector node fully matched another node, need to exclude
subvectors, when building final shuffle, just a shuffle of the original
node must be emitted.

Fixes #122584


  Commit: 09a8b7cbc29d8704c343197d4b33b6972366c682
      https://github.com/llvm/llvm-project/commit/09a8b7cbc29d8704c343197d4b33b6972366c682
  Author: gbMattN <146744444+gbMattN at users.noreply.github.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M compiler-rt/lib/tysan/tysan.cpp
    A compiler-rt/test/tysan/struct-offset-different-base.cpp

  Log Message:
  -----------
  [TySan] Fix struct access with different bases (#120412)

Original pull request
[here](https://github.com/llvm/llvm-project/pull/108385)
Fixes issue https://github.com/llvm/llvm-project/issues/105960

If a member in a struct is also a struct, accessing a member partway
through this inner struct currently causes a false positive. This is
because when checking aliasing, the access offset is seen as greater
than the starting offset of the inner struct, so the loop continues one
iteration, and believes we are accessing the member after the inner
struct.

The next member's offset is greater than the offset we are looking for,
so when we subtract the next member's offset from what we are looking
for, the offset underflows.

To fix this, we check if the member we think we are accessing has a
greater offset than the offset we are looking for. If so, we take a step
back. We cannot do this in the loop, since the loop does not check the
final member. This means the penultimate member would still cause false
positives.


  Commit: 3318a7248ae464af0abd0bea5515fa58c962b890
      https://github.com/llvm/llvm-project/commit/3318a7248ae464af0abd0bea5515fa58c962b890
  Author: goldsteinn <35538541+goldsteinn at users.noreply.github.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/test/Transforms/InstCombine/cttz.ll

  Log Message:
  -----------
  [InstCombine] Fold `(ct{t,l}z Pow2)` -> `Log2(Pow2)` (#122620)

- **[InstCombine] Add tests for folding `(ct{t,l}z Pow2)`; NFC**
- **[InstCombine] Fold `(ct{t,l}z Pow2)` -> `Log2(Pow2)`**

Do so we can find `Log2(Pow2)` for "free" with `takeLog2`

https://alive2.llvm.org/ce/z/CL77fo


  Commit: e2c49a45da31522d91e2e7b12bbc0901b0519384
      https://github.com/llvm/llvm-project/commit/e2c49a45da31522d91e2e7b12bbc0901b0519384
  Author: Peter Hawkins <phawkins at google.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRModule.h

  Log Message:
  -----------
  [mlir python] Add locking around PyMlirContext::liveOperations. (#122720)

In JAX, I observed a race between two PyOperation destructors from
different threads updating the same `liveOperations` map, despite not
intentionally sharing the context between different threads. Since I
don't think we can be completely sure when GC happens and on which
thread, it seems safest simply to add locking here.

We may also want to explicitly support sharing a context between threads
in the future, which would require this change or something similar.


  Commit: 79e788d02eefdacb08af365389b9055518f3fad6
      https://github.com/llvm/llvm-project/commit/79e788d02eefdacb08af365389b9055518f3fad6
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/test/Lower/CUDA/cuda-devptr.cuf
    M flang/test/Lower/HLFIR/bindc-value-derived.f90
    M flang/test/Lower/OpenMP/copyin.f90
    A flang/test/Lower/derived-types-bindc.f90
    M flang/test/Lower/intentout-deallocate.f90
    A flang/test/Semantics/offsets04.f90

  Log Message:
  -----------
  [flang][AIX] BIND(C) derived type alignment for AIX (#121505)

This patch is to handle the alignment requirement for the `bind(c)`
derived type component that is real type and larger than 4 bytes. The
alignment of such component is 4-byte.


  Commit: 051cd36f82ca9c9db599fc0fa782e22645d824c9
      https://github.com/llvm/llvm-project/commit/051cd36f82ca9c9db599fc0fa782e22645d824c9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  [gn build] Port b5ba4f06db2e


  Commit: 7059178bd38e770bfadebeadf0811d0d7cb9a9e2
      https://github.com/llvm/llvm-project/commit/7059178bd38e770bfadebeadf0811d0d7cb9a9e2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

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

  Log Message:
  -----------
  [gn build] Port cedb44af53f1


  Commit: 7aebacbee965a83c5cc69f6a723605436651672c
      https://github.com/llvm/llvm-project/commit/7aebacbee965a83c5cc69f6a723605436651672c
  Author: Philipp Schilk <schilk.philipp at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/lib/TableGen/Operator.cpp
    M mlir/test/mlir-tblgen/op-result.td

  Log Message:
  -----------
  [MLIR][TableGen] Use arg index in InferredResultType constructor. (#122717)

Trying to constrain two results to be of the same type using
`AllTypesMatch` would cause `mlir-tablgen` to crash on this
assertion[1].

Example:

```tblgen
def OpL5 : NS_Op<"op_with_same_but_unconstraint_results",
    [AllTypesMatch<["result_a", "result_b"]>]> {
  let results = (outs AnyType:$result_a, AnyType:$result_b);
}
```

This is because there was a small bug when constructing the `inferences`
graph from these constraints: The sources should be specified by the
combined arg/result index (in other words, with results negative) not
with the result index.


[1]
https://github.com/llvm/llvm-project/blob/99612a3a18e0c40aac9c52b68e67b106f97ed4fa/mlir/lib/TableGen/Operator.cpp#L526


  Commit: 658ec8593b25f2bd05874deab4582b6759e92e40
      https://github.com/llvm/llvm-project/commit/658ec8593b25f2bd05874deab4582b6759e92e40
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/test/CXX/drs/cwg1xx.cpp
    M clang/www/cxx_dr_status.html

  Log Message:
  -----------
  [clang] Add test for CWG170 "Pointer-to-member conversions" (#121667)

This patch adds test for
[CWG170](https://cplusplus.github.io/CWG/issues/170.html). The
resolution adds explicit undefined behavior, so I think the best we can
do is to put the test into constexpr evaluator. Change to
[expr.static.cast] is not tested, because it was a drive-by fix that
removed an impossible case (I confirmed it using minutes). Minutes
mention several times a comprehensive paper in this design space which
no one seem to remember. I believe it's
[P0149R0](https://wg21.link/p0149r0) "Generalised member pointers".


  Commit: f1632d25db47629221b8a25d79b7993b397f6886
      https://github.com/llvm/llvm-project/commit/f1632d25db47629221b8a25d79b7993b397f6886
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll

  Log Message:
  -----------
  IR: introduce ICmpInst::isImpliedByMatchingCmp (#122597)

Create an abstraction over isImplied{True,False}ByMatchingCmp to
faithfully communicate the result of both functions, cleaning up code in
callsites. While at it, fix a bug in the implied-false version of the
function, which was inadvertedenly dropping samesign information.


  Commit: 3d507a890540082f5c7fc15a0f9b1dd85be02174
      https://github.com/llvm/llvm-project/commit/3d507a890540082f5c7fc15a0f9b1dd85be02174
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [llvm][Docs] Add new LLDB Python guidance to release notes (#122719)

As decided in
https://discourse.llvm.org/t/rfc-lets-document-and-enforce-a-minimum-python-version-for-lldb/82731
and implemented by https://github.com/llvm/llvm-project/pull/114807.


  Commit: 9256485043fe5cc3a24dba649deef8ae69e6d702
      https://github.com/llvm/llvm-project/commit/9256485043fe5cc3a24dba649deef8ae69e6d702
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/test/CodeGen/AArch64/fmv-dependencies.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
    M clang/test/CodeGen/AArch64/targetattr.c
    M clang/test/Driver/aarch64-implied-sme-features.c
    M clang/test/Driver/aarch64-implied-sve-features.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/TargetParser/AArch64TargetParser.cpp
    M llvm/test/MC/AArch64/SVE2/bdep-diagnostics.s
    M llvm/test/MC/AArch64/SVE2/bdep.s
    M llvm/test/MC/AArch64/SVE2/bext.s
    M llvm/test/MC/AArch64/SVE2/bgrp.s
    M llvm/test/MC/AArch64/SVE2/directive-arch-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-arch.s
    M llvm/test/MC/AArch64/SVE2/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-arch_extension.s
    M llvm/test/MC/AArch64/SVE2/directive-cpu-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-cpu.s
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [Clang][LLVM][AArch64]Add new feature SSVE-BitPerm (#121947)

The 20204-12 ISA update release adds a new feature: FEAT_SSVE_BitPerm,
which allows the sve-bitperm instructions to run in streaming mode.

It also removes the requirement of FEAT_SVE2 for FEAT_SVE_BitPerm. The
sve2-bitperm feature is now an alias for sve-bitperm and sve2.

A new feature flag sve-bitperm is added to reflect the change that the
instructions under FEAT_SVE_BitPerm are supported if:
 on non streaming mode with FEAT_SVE2 and FEAT_SVE_BitPerm or
 in streaming mode with FEAT_SME and FEAT_SSVE_BitPerm


  Commit: 8d306ccdef6b70881f5d79b09c03df720351e5f8
      https://github.com/llvm/llvm-project/commit/8d306ccdef6b70881f5d79b09c03df720351e5f8
  Author: William Moses <gh at wsmoses.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    A mlir/test/Dialect/LLVMIR/inlining-nvvm.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Enable inlining of func's calling nvvm intrinsics (#122650)


  Commit: 305b25c2f4264971515f71d192b75a9d27037c2d
      https://github.com/llvm/llvm-project/commit/305b25c2f4264971515f71d192b75a9d27037c2d
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M flang/CMakeLists.txt

  Log Message:
  -----------
  [flang] Support discovering LLVM/Clang/MLIR without explicit *_DIR (#122639)

Support discovering LLVM, Clang and MLIR via the standard CMake logic in
addition to explicitly specified `LLVM_DIR`, etc. To prevent breaking
anyone's workflow the way #120914 did, this change explicitly introduces
two possible code paths based on variables provided:

1. If `LLVM_DIR`, etc. are defined, the current logic is used as-is.

2. If they are not defined, `find_package()` is called normally to
discover the packages using the standard CMake logic, and the discovered
paths are added

---------

Co-authored-by: Slava Zakharin <szakharin at nvidia.com>


  Commit: 26e13091ea5ac3a53d11b50265a506f88129d6ff
      https://github.com/llvm/llvm-project/commit/26e13091ea5ac3a53d11b50265a506f88129d6ff
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.ceil.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.floor.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/sitofp.f16.ll
    M llvm/test/CodeGen/AMDGPU/uitofp.f16.ll
    M llvm/test/CodeGen/AMDGPU/v_pack.ll

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] true16 codegen pattern for v_pack_b32_f16 (#121988)

true16 codegen pattern for v_pack_b32_f16


  Commit: 092d6283838dea79670750b9415955c5f0cb5178
      https://github.com/llvm/llvm-project/commit/092d6283838dea79670750b9415955c5f0cb5178
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/div-possibly-extended-with-poisons.ll

  Log Message:
  -----------
  [SLP]Check for div/rem instructions before extending with poisons

Need to check if the instructions can be safely extended with poison
before actually doing this to avoid incorrect transformations.

Fixes #122691


  Commit: 1a7d46fac8aa5ff4a96db01937cdb3b106253ac6
      https://github.com/llvm/llvm-project/commit/1a7d46fac8aa5ff4a96db01937cdb3b106253ac6
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Instrumentation/BoundsChecking.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
    M llvm/test/Instrumentation/BoundsChecking/runtimes.ll

  Log Message:
  -----------
  [BoundsChecking]  Add guard= pass parameter (#122575)

And use that as an argument for
allow_ubsan_check when needed.

Other ubsan checks use SanitizerKind,
but those are known to the clang only.

So make it a parameter in LLVM.


  Commit: a8d16135a8c3ca3c894c86e55a41f4a794538913
      https://github.com/llvm/llvm-project/commit/a8d16135a8c3ca3c894c86e55a41f4a794538913
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-01-13 (Mon, 13 Jan 2025)

  Changed paths:
    M .ci/generate_test_report.py
    M .ci/metrics/metrics.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    M .github/workflows/spirv-tests.yml
    M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.h
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/clang-tidy/ClangTidyOptions.h
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/IncorrectEnableSharedFromThisCheck.h
    M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/incorrect-enable-shared-from-this.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/use-std-min-max.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/code.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/Inputs/normalized-path/error-config/.clang-tidy
    A clang-tools-extra/test/clang-tidy/infrastructure/normalized-path.test
    M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
    M clang/docs/LanguageExtensions.rst
    M clang/docs/Modules.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/UsersManual.rst
    A clang/docs/analyzer/images/example_attribute_nonnull.png
    A clang/docs/analyzer/images/example_cf_returns_retained.png
    A clang/docs/analyzer/images/example_custom_assert.png
    A clang/docs/analyzer/images/example_ns_returns_retained.png
    A clang/docs/analyzer/images/example_null_pointer.png
    A clang/docs/analyzer/images/example_use_assert.png
    M clang/docs/analyzer/user-docs.rst
    A clang/docs/analyzer/user-docs/Annotations.rst
    M clang/docs/analyzer/user-docs/FAQ.rst
    M clang/examples/Attribute/Attribute.cpp
    M clang/examples/CallSuperAttribute/CallSuperAttrInfo.cpp
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTImporterLookupTable.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltinBitCast.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/ItaniumMangle.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/Randstruct.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGRecordLayoutBuilder.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/Targets/LoongArch.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/CodeGen/Targets/XCore.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaARM.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/SemaDeclObjC.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaSwift.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/Core/RegionStore.cpp
    M clang/test/CXX/drs/cwg1xx.cpp
    M clang/test/CodeGen/AArch64/fmv-dependencies.c
    M clang/test/CodeGen/AArch64/fp8-intrinsics/acle_sve2_fp8_fdot.c
    M clang/test/CodeGen/AArch64/sme-intrinsics/aarch64-sme-attrs.cpp
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fdot.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_fp8_fvdot.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bdep.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bext.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_bgrp.c
    M clang/test/CodeGen/AArch64/targetattr.c
    M clang/test/CodeGenCXX/aarch64-mangle-sme-atts.cpp
    M clang/test/Driver/aarch64-implied-sme-features.c
    M clang/test/Driver/aarch64-implied-sve-features.c
    M clang/test/Driver/cuda-arch-translation.cu
    M clang/test/Driver/fsanitize.c
    M clang/test/Driver/hip-code-object-version.hip
    M clang/test/Driver/hip-target-id.hip
    M clang/test/Driver/hipspv-toolchain.hip
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/modules-print-library-module-manifest-path.cpp
    M clang/test/Driver/print-enabled-extensions/aarch64-fujitsu-monaka.c
    M clang/test/Driver/print-multi-selection-flags.c
    M clang/test/Driver/print-supported-extensions-aarch64.c
    M clang/test/Driver/print-supported-extensions-riscv.c
    M clang/test/Frontend/dependency-gen-symlink.c
    M clang/test/Frontend/dependency-gen-windows-duplicates.c
    M clang/test/Frontend/ftime-report-template-decl.cpp
    M clang/test/LibClang/symbols.test
    R clang/test/OpenMP/allocate_allocator_modifier_ast_print.cpp
    R clang/test/OpenMP/allocate_allocator_modifier_codegen.cpp
    R clang/test/OpenMP/allocate_allocator_modifier_messages.cpp
    A clang/test/OpenMP/allocate_modifiers_ast_print.cpp
    A clang/test/OpenMP/allocate_modifiers_codegen.cpp
    A clang/test/OpenMP/allocate_modifiers_messages.cpp
    A clang/test/OpenMP/masked_taskloop_codegen.c
    A clang/test/OpenMP/masked_taskloop_simd_codegen.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Sema/aarch64-fp8-intrinsics/acle_sme2_fp8_imm.c
    M clang/test/Sema/aarch64-sme-func-attrs.c
    M clang/test/Sema/aarch64-sve2-intrinsics/acle_sve2_aes_bitperm_sha3_sm4.cpp
    A clang/test/SemaCXX/crash-GH121274.cpp
    M clang/test/VFS/external-names.c
    M clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c
    M clang/test/utils/update_cc_test_checks/Inputs/c-symbol-mangling.c.expected
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/driver/cc1_main.cpp
    M clang/tools/libclang/CXType.cpp
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/www/analyzer/annotations.html
    R clang/www/analyzer/images/example_attribute_nonnull.png
    R clang/www/analyzer/images/example_cf_returns_retained.png
    R clang/www/analyzer/images/example_custom_assert.png
    R clang/www/analyzer/images/example_ns_returns_retained.png
    R clang/www/analyzer/images/example_null_pointer.png
    R clang/www/analyzer/images/example_use_assert.png
    R clang/www/analyzer/images/scan_build_cmd.png
    M clang/www/cxx_dr_status.html
    M compiler-rt/lib/interception/interception_win.cpp
    M compiler-rt/lib/interception/tests/interception_win_test.cpp
    M compiler-rt/lib/tysan/tysan.cpp
    A compiler-rt/test/tysan/struct-offset-different-base.cpp
    M cross-project-tests/debuginfo-tests/dexter/dex/command/ParseCommand.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ConditionalController.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DebuggerControllers/ControllerHelpers.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/Debuggers.py
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
    M cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
    M cross-project-tests/lit.cfg.py
    M flang/CMakeLists.txt
    M flang/include/flang/Optimizer/CodeGen/TypeConverter.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/lib/Lower/ConvertType.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/lib/Semantics/compute-offsets.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-devptr.cuf
    A flang/test/Lower/CUDA/cuda-intrinsic.cuf
    M flang/test/Lower/HLFIR/bindc-value-derived.f90
    M flang/test/Lower/OpenACC/acc-data-operands.f90
    M flang/test/Lower/OpenACC/acc-data.f90
    M flang/test/Lower/OpenACC/acc-declare-globals.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-kernels.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Lower/OpenMP/Todo/omp-declarative-allocate-align.f90
    R flang/test/Lower/OpenMP/Todo/reduction-teams.f90
    M flang/test/Lower/OpenMP/copyin.f90
    M flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    A flang/test/Lower/OpenMP/reduction-teams.f90
    M flang/test/Lower/OpenMP/simd.f90
    A flang/test/Lower/derived-types-bindc.f90
    M flang/test/Lower/intentout-deallocate.f90
    A flang/test/Semantics/offsets04.f90
    M flang/test/Transforms/omp-map-info-finalization.fir
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/index.rst
    M libc/include/llvm-libc-types/cfloat128.h
    M libc/include/math.yaml
    M libc/src/math/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sincosf16_utils.h
    A libc/src/math/generic/tanf16.cpp
    M libc/src/math/generic/tanpif16.cpp
    A libc/src/math/tanf16.h
    M libc/test/include/CMakeLists.txt
    A libc/test/include/header-test-template.c
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/cosf16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/tanf16_test.cpp
    A libc/test/src/math/tanf16_test.cpp
    M libcxx/docs/ReleaseNotes/20.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__flat_map/flat_map.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/locale_base_api.h
    R libcxx/include/__locale_dir/locale_base_api/fuchsia.h
    A libcxx/include/__locale_dir/support/fuchsia.h
    A libcxx/include/__locale_dir/support/no_locale/characters.h
    A libcxx/include/__locale_dir/support/no_locale/strtonum.h
    M libcxx/include/__memory/allocator.h
    R libcxx/include/__memory/builtin_new_allocator.h
    M libcxx/include/__memory/unique_temporary_buffer.h
    M libcxx/include/__new/allocate.h
    M libcxx/include/__string/constexpr_c_functions.h
    A libcxx/include/__utility/element_count.h
    M libcxx/include/__utility/small_buffer.h
    M libcxx/include/future
    M libcxx/include/module.modulemap
    M libcxx/src/experimental/tzdb.cpp
    M libcxx/src/memory_resource.cpp
    M libcxx/src/shared_mutex.cpp
    R libcxx/test/libcxx/containers/containers.adaptors/flat.map/container_stability.pass.cpp
    M libcxx/test/libcxx/language.support/support.dynamic/libcpp_deallocate.sh.cpp
    A libcxx/test/libcxx/thread/futures/futures.task/type.depr.verify.cpp
    M libcxx/test/libcxx/thread/futures/futures.task/types.pass.cpp
    M libcxx/test/libcxx/time/time.zone/time.zone.db/rules.pass.cpp
    M libcxx/test/libcxx/time/time.zone/time.zone.db/version.pass.cpp
    R libcxx/test/std/containers/container.adaptors/flat.map/flat.map.cons/iter_iter_stability.pass.cpp
    R libcxx/test/std/containers/container.adaptors/flat.map/flat.map.modifiers/insert_range_stability.pass.cpp
    M lld/ELF/Arch/ARM.cpp
    M lld/ELF/LinkerScript.cpp
    M lld/ELF/LinkerScript.h
    M lld/test/ELF/linkerscript/filename-spec.s
    M lld/test/ELF/lto/new-pass-manager.ll
    M lld/wasm/SymbolTable.cpp
    M lldb/source/Plugins/SymbolLocator/Debuginfod/SymbolLocatorDebuginfod.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/no_unique_address-with-bitfields.cpp
    M llvm/docs/DirectX/DXILResources.rst
    M llvm/docs/LangRef.rst
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/Analysis/TargetTransformInfo.h
    M llvm/include/llvm/Analysis/TargetTransformInfoImpl.h
    M llvm/include/llvm/AsmParser/LLParser.h
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/Bitcode/LLVMBitCodes.h
    M llvm/include/llvm/CodeGen/MIRYamlMapping.h
    M llvm/include/llvm/CodeGen/MachineFunction.h
    M llvm/include/llvm/CodeGen/SDPatternMatch.h
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/Spiller.h
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/include/llvm/Debuginfod/Debuginfod.h
    M llvm/include/llvm/IR/Attributes.h
    M llvm/include/llvm/IR/Attributes.td
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/IR/Instructions.h
    M llvm/include/llvm/IR/IntrinsicInst.h
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/include/llvm/MC/MCObjectFileInfo.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWinCOFFObjectWriter.h
    M llvm/include/llvm/MC/MCWinCOFFStreamer.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/include/llvm/SandboxIR/Instruction.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/include/llvm/Support/Timer.h
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/lib/Analysis/TargetTransformInfo.cpp
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/Bitcode/Reader/BitcodeReader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/InlineSpiller.cpp
    M llvm/lib/CodeGen/MIRParser/MIRParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocPBQP.cpp
    M llvm/lib/CodeGen/ScheduleDAGInstrs.cpp
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/ScheduleDAGSDNodes.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/Debuginfod/Debuginfod.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AttributeImpl.h
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/IR/PassTimingInfo.cpp
    M llvm/lib/LTO/LTOBackend.cpp
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/COFFAsmParser.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/MC/WinCOFFObjectWriter.cpp
    M llvm/lib/Support/ModRef.cpp
    M llvm/lib/Support/Timer.cpp
    M llvm/lib/TableGen/TGLexer.cpp
    M llvm/lib/TableGen/TGLexer.h
    M llvm/lib/Target/AArch64/AArch64.td
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/AArch64SystemOperands.td
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUIGroupLP.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.cpp
    A llvm/lib/Target/AMDGPU/AMDGPUOpenCLEnqueuedBlockLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.cpp
    A llvm/lib/Target/AMDGPU/AMDGPURemoveIncompatibleFunctions.h
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/ARM/ARMSystemRegister.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/DirectX/DXILOpLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoXqci.td
    M llvm/lib/Target/SPIRV/Analysis/SPIRVConvergenceRegionAnalysis.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/TargetParser/AArch64TargetParser.cpp
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineAddSub.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/lib/Transforms/Instrumentation/TypeSanitizer.cpp
    M llvm/lib/Transforms/Scalar/NewGVN.cpp
    M llvm/lib/Transforms/Utils/CodeExtractor.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
    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/Analysis/LoopAccessAnalysis/depend_diff_types.ll
    M llvm/test/Analysis/ValueTracking/implied-condition-samesign.ll
    A llvm/test/Assembler/captures-errors.ll
    A llvm/test/Assembler/captures.ll
    M llvm/test/Bitcode/attributes.ll
    A llvm/test/CodeGen/AArch64/csel-cmp-cse.ll
    M llvm/test/CodeGen/AArch64/fp8-sve-fdot.ll
    M llvm/test/CodeGen/AArch64/sme-agnostic-za.ll
    A llvm/test/CodeGen/AArch64/win-import-call-optimization-nocalls.ll
    A llvm/test/CodeGen/AArch64/win-import-call-optimization.ll
    M llvm/test/CodeGen/AMDGPU/enqueue-kernel.ll
    A llvm/test/CodeGen/AMDGPU/invalid-cast-load-i1.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.exp.small.mir
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.iglp.opt.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ceil.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.floor.f16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-functions.ll
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-s-time.ll
    M llvm/test/CodeGen/AMDGPU/remove-incompatible-wave32-feature.ll
    M llvm/test/CodeGen/AMDGPU/scalar_to_vector.ll
    M llvm/test/CodeGen/AMDGPU/sched-barrier-pre-RA.mir
    M llvm/test/CodeGen/AMDGPU/sitofp.f16.ll
    M llvm/test/CodeGen/AMDGPU/uitofp.f16.ll
    M llvm/test/CodeGen/AMDGPU/v_pack.ll
    A llvm/test/CodeGen/ARM/scalarize-assert-zext.ll
    A llvm/test/CodeGen/DirectX/BufferStore-sm61.ll
    A llvm/test/CodeGen/DirectX/RawBufferStore-error64.ll
    A llvm/test/CodeGen/DirectX/RawBufferStore.ll
    A llvm/test/CodeGen/MIR/AArch64/called-globals.mir
    M llvm/test/CodeGen/MIR/X86/call-site-info-error1.mir
    M llvm/test/CodeGen/MIR/X86/call-site-info-error2.mir
    M llvm/test/CodeGen/NVPTX/convert-sm89.ll
    A llvm/test/CodeGen/NVPTX/convert-sm90.ll
    M llvm/test/CodeGen/RISCV/attributes.ll
    M llvm/test/CodeGen/RISCV/memcpy.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/avx512-build-vector.ll
    M llvm/test/CodeGen/X86/avx512-mask-op.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/partial_permute.ll
    M llvm/test/CodeGen/X86/avx512-shuffles/permute.ll
    M llvm/test/CodeGen/X86/avx512vl-intrinsics.ll
    M llvm/test/CodeGen/X86/combine-or.ll
    M llvm/test/CodeGen/X86/combine-sub-usat.ll
    M llvm/test/CodeGen/X86/expand-vp-cast-intrinsics.ll
    M llvm/test/CodeGen/X86/extract-concat.ll
    M llvm/test/CodeGen/X86/insert-into-constant-vector.ll
    M llvm/test/CodeGen/X86/isel-buildvector-avx.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/nontemporal-4.ll
    A llvm/test/CodeGen/X86/pr122580.ll
    M llvm/test/CodeGen/X86/pr29112.ll
    M llvm/test/CodeGen/X86/pr46532.ll
    M llvm/test/CodeGen/X86/pr78109.ll
    M llvm/test/CodeGen/X86/pr97968.ll
    M llvm/test/CodeGen/X86/shuffle-strided-with-offset-512.ll
    M llvm/test/CodeGen/X86/shuffle-vs-trunc-512.ll
    M llvm/test/CodeGen/X86/sse41-intrinsics-x86.ll
    M llvm/test/CodeGen/X86/subvectorwise-store-of-vector-splat.ll
    M llvm/test/CodeGen/X86/vec_fp_to_int.ll
    M llvm/test/CodeGen/X86/vec_minmax_sint.ll
    M llvm/test/CodeGen/X86/vec_minmax_uint.ll
    M llvm/test/CodeGen/X86/vector-compress.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i16-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-8.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i64-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-3.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-4.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-5.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-2.ll
    M llvm/test/CodeGen/X86/vector-interleaved-store-i64-stride-3.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-128.ll
    M llvm/test/CodeGen/X86/vector-lzcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-128.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-256.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512-ult-ugt.ll
    M llvm/test/CodeGen/X86/vector-popcnt-512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v16.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v64.ll
    M llvm/test/CodeGen/X86/vector-shuffle-512-v8.ll
    M llvm/test/CodeGen/X86/vector-shuffle-avx512.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx2.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx512f.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-128.ll
    M llvm/test/CodeGen/X86/vector-tzcnt-256.ll
    M llvm/test/CodeGen/X86/vselect-avx.ll
    M llvm/test/CodeGen/X86/widen_fadd.ll
    M llvm/test/CodeGen/X86/widen_fdiv.ll
    M llvm/test/CodeGen/X86/widen_fmul.ll
    M llvm/test/CodeGen/X86/widen_fsub.ll
    M llvm/test/CodeGen/X86/x86-interleaved-access.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/Feature/load_plugin_error.ll
    M llvm/test/Instrumentation/TypeSanitizer/basic.ll
    M llvm/test/MC/AArch64/SVE2/bdep-diagnostics.s
    M llvm/test/MC/AArch64/SVE2/bdep.s
    M llvm/test/MC/AArch64/SVE2/bext.s
    M llvm/test/MC/AArch64/SVE2/bgrp.s
    M llvm/test/MC/AArch64/SVE2/directive-arch-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-arch.s
    M llvm/test/MC/AArch64/SVE2/directive-arch_extension-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-arch_extension.s
    M llvm/test/MC/AArch64/SVE2/directive-cpu-negative.s
    M llvm/test/MC/AArch64/SVE2/directive-cpu.s
    A llvm/test/MC/AArch64/win-import-call-optimization.s
    A llvm/test/MC/COFF/bad-parse.s
    M llvm/test/MC/M68k/Data/Classes/MxMoveSR.s
    A llvm/test/MC/RISCV/xqciint-invalid.s
    A llvm/test/MC/RISCV/xqciint-valid.s
    M llvm/test/MC/X86/avx512pf-64-att.s
    M llvm/test/Other/X86/lto-hot-cold-split.ll
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-value.ll
    A llvm/test/Transforms/InstCombine/add-sext-icmp.ll
    M llvm/test/Transforms/InstCombine/cttz.ll
    M llvm/test/Transforms/InstCombine/div-shift.ll
    M llvm/test/Transforms/InstCombine/fsh.ll
    M llvm/test/Transforms/InstSimplify/call.ll
    A llvm/test/Transforms/InstSimplify/subnuw-with-xor.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-no-dotprod.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/vplan-printing.ll
    A llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/X86/gep-use-outside-loop.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform-phi.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/iv_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll
    A llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/vectorizable-selects-uniform-cmps.ll
    A llvm/test/Transforms/SLPVectorizer/X86/div-possibly-extended-with-poisons.ll
    A llvm/test/Transforms/SLPVectorizer/X86/full-matched-bv-with-subvectors.ll
    A llvm/test/tools/gold/X86/Inputs/merge-functions-foo.ll
    A llvm/test/tools/gold/X86/Inputs/unified-lto-foo.ll
    A llvm/test/tools/gold/X86/merge-functions.ll
    A llvm/test/tools/gold/X86/unified-lto.ll
    M llvm/test/tools/llvm-objdump/ELF/pt-gnu-property.test
    M llvm/tools/gold/gold-plugin.cpp
    M llvm/tools/llvm-objdump/ELFDump.cpp
    M llvm/unittests/CodeGen/SelectionDAGPatternMatchTest.cpp
    M llvm/unittests/Debuginfod/DebuginfodTests.cpp
    M llvm/unittests/IR/AttributesTest.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp
    M llvm/utils/TableGen/Common/CodeGenSchedule.cpp
    M llvm/utils/UpdateTestChecks/common.py
    M llvm/utils/gn/secondary/clang-tools-extra/clang-tidy/bugprone/BUILD.gn
    M llvm/utils/gn/secondary/libcxx/include/BUILD.gn
    M llvm/utils/update_cc_test_checks.py
    M mlir/cmake/modules/AddMLIRPython.cmake
    M mlir/docs/Bindings/Python.md
    M mlir/examples/transform-opt/mlir-transform-opt.cpp
    M mlir/include/mlir/Analysis/DataFlow/SparseAnalysis.h
    M mlir/include/mlir/Dialect/Async/IR/AsyncOps.td
    M mlir/include/mlir/Dialect/EmitC/IR/EmitC.td
    M mlir/include/mlir/Dialect/Func/IR/FuncOps.td
    M mlir/include/mlir/Dialect/LLVMIR/LLVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.h
    M mlir/include/mlir/Dialect/Transform/IR/TransformOps.td
    M mlir/include/mlir/IR/Matchers.h
    M mlir/include/mlir/IR/OpDefinition.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/include/mlir/Interfaces/DataLayoutInterfaces.td
    M mlir/include/mlir/Pass/AnalysisManager.h
    M mlir/include/mlir/Target/LLVMIR/Import.h
    M mlir/lib/Analysis/DataFlowFramework.cpp
    M mlir/lib/AsmParser/Parser.cpp
    M mlir/lib/Bindings/Python/Globals.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRModule.cpp
    M mlir/lib/Bindings/Python/IRModule.h
    M mlir/lib/Bindings/Python/MainModule.cpp
    M mlir/lib/Bytecode/Writer/IRNumbering.h
    M mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp
    M mlir/lib/Dialect/Affine/IR/AffineOps.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorGather.cpp
    M mlir/lib/TableGen/Operator.cpp
    M mlir/lib/TableGen/Pattern.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Tools/mlir-pdll-lsp-server/PDLLServer.cpp
    M mlir/lib/Tools/tblgen-lsp-server/TableGenServer.cpp
    M mlir/lib/Transforms/Utils/FoldUtils.cpp
    M mlir/lib/Transforms/Utils/GreedyPatternRewriteDriver.cpp
    M mlir/python/requirements.txt
    M mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
    M mlir/test/Conversion/FuncToLLVM/func-to-llvm.mlir
    A mlir/test/Dialect/LLVMIR/inlining-nvvm.mlir
    M mlir/test/Dialect/LLVMIR/inlining.mlir
    M mlir/test/Dialect/LLVMIR/nvvm.mlir
    M mlir/test/Dialect/Linalg/transform-op-decompose.mlir
    M mlir/test/Dialect/Vector/vector-gather-lowering.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir
    A mlir/test/Target/LLVMIR/openmp-simd-private.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir
    M mlir/test/lib/Dialect/Affine/TestReifyValueBounds.cpp
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td
    M mlir/test/lib/Dialect/Test/TestTypes.cpp
    M mlir/test/mlir-tblgen/op-result.td
    A mlir/test/python/multithreaded_tests.py
    M polly/test/lit.site.cfg.in
    M polly/test/update_check.py
    M polly/utils/pyscop/isl.py
    M utils/bazel/llvm-project-overlay/clang/BUILD.bazel

  Log Message:
  -----------
  rebase

Created using spr 1.3.4


Compare: https://github.com/llvm/llvm-project/compare/8e788526045c...a8d16135a8c3

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