[all-commits] [llvm/llvm-project] 7a8779: [Offload] Stop the RPC server faiilng with more th...

Zhaoxin Yang via All-commits all-commits at lists.llvm.org
Fri Feb 14 17:54:54 PST 2025


  Branch: refs/heads/users/ylzsx/r-call36
  Home:   https://github.com/llvm/llvm-project
  Commit: 7a8779422dad058f11cd473d409f42e32859788d
      https://github.com/llvm/llvm-project/commit/7a8779422dad058f11cd473d409f42e32859788d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M offload/plugins-nextgen/common/src/PluginInterface.cpp

  Log Message:
  -----------
  [Offload] Stop the RPC server faiilng with more than one GPU (#125982)

Summary:
Pretty dumb mistake of me, forgot that this is run per-device and
per-plugin, which fell through the cracks with my testing because I have
two GPUs that use different plugins.


  Commit: e223485c9b38a5579991b8cebb6a200153eee245
      https://github.com/llvm/llvm-project/commit/e223485c9b38a5579991b8cebb6a200153eee245
  Author: Scott Constable <scott.d.constable at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/ControlFlowIntegrity.rst
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    A clang/test/CodeGen/kcfi-arity.c
    M llvm/lib/Target/X86/X86AsmPrinter.cpp
    A llvm/test/CodeGen/X86/kcfi-arity.ll

  Log Message:
  -----------
  [X86] Extend kCFI with a 3-bit arity indicator (#121070)

Kernel Control Flow Integrity (kCFI) is a feature that hardens indirect
calls by comparing a 32-bit hash of the function pointer's type against
a hash of the target function's type. If the hashes do not match, the
kernel may panic (or log the hash check failure, depending on the
kernel's configuration). These hashes are computed at compile time by
applying the xxHash64 algorithm to each mangled canonical function (or
function pointer) type, then truncating the result to 32 bits. This hash
is written into each indirect-callable function header by encoding it as
the 32-bit immediate operand to a `MOVri` instruction, e.g.:
```
__cfi_foo:
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	nop
	movl	$199571451, %eax                # hash of foo's type = 0xBE537FB
foo:
        ...
```

This PR extends x86-based kCFI with a 3-bit arity indicator encoded in
the `MOVri` instruction's register (reg) field as follows:

| Arity Indicator | Description | Encoding in reg field |
| --------------- | --------------- | --------------- |
| 0 | 0 parameters | EAX |
| 1 | 1 parameter in RDI | ECX |
| 2 | 2 parameters in RDI and RSI | EDX |
| 3 | 3 parameters in RDI, RSI, and RDX | EBX |
| 4 | 4 parameters in RDI, RSI, RDX, and RCX | ESP |
| 5 | 5 parameters in RDI, RSI, RDX, RCX, and R8 | EBP |
| 6 | 6 parameters in RDI, RSI, RDX, RCX, R8, and R9 | ESI |
| 7 | At least one parameter may be passed on the stack | EDI |

For example, if `foo` takes 3 register arguments and no stack arguments
then the `MOVri` instruction in its kCFI header would instead be written
as:
```
	movl	$199571451, %ebx                # hash of foo's type = 0xBE537FB
```

This PR will benefit other CFI approaches that build on kCFI, such as
FineIBT. For example, this proposed enhancement to FineIBT must be able
to infer (at kernel init time) which registers are live at an indirect
call target: https://lkml.org/lkml/2024/9/27/982. If the arity bits are
available in the kCFI function header, then this information is trivial
to infer.

Note that there is another existing PR proposal that includes the 3-bit
arity within the existing 32-bit immediate field, which introduces
different security properties:
https://github.com/llvm/llvm-project/pull/117121.


  Commit: 6410bddc2720d703a20ccc046eaaf46f9b99b903
      https://github.com/llvm/llvm-project/commit/6410bddc2720d703a20ccc046eaaf46f9b99b903
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/xor-icmps.ll

  Log Message:
  -----------
  [InstCombine] Extend #125676 to handle variable power of 2 (#125855)

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


  Commit: 8c222c122f1a8edb1be96e482511ad547f7db7b3
      https://github.com/llvm/llvm-project/commit/8c222c122f1a8edb1be96e482511ad547f7db7b3
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/lrint-conv-i64.ll

  Log Message:
  -----------
  [X86] Do not combine LRINT and TRUNC (#125848)

Per to discussions in #125324, most participants are opposed to this
optimization. So remove the combination to address the concerns.

Fixes #125324


  Commit: 3d0061cd2a9e886152a817c4348414a987775153
      https://github.com/llvm/llvm-project/commit/3d0061cd2a9e886152a817c4348414a987775153
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vadd.ll

  Log Message:
  -----------
  [msan][NFCI] Add more Arm NEON vector add tests (#125820)

Handled heuristically but incorrectly:
- llvm.aarch64.neon.{addp, faddp}

Unknown instructions handled by visitInstruction:
- llvm.aarch64.neon.{addhn, raddhn}
- llvm.aarch64.neon.{saddlp, uaddlp}

Forked from llvm/test/CodeGen/AArch64/arm64-vadd.ll


  Commit: 1db60556c89a2b61e2624718579bb3b96c9fedda
      https://github.com/llvm/llvm-project/commit/1db60556c89a2b61e2624718579bb3b96c9fedda
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [X86] Silence an unused-variable warning (NFC)

/llvm-project/llvm/lib/Target/X86/X86AsmPrinter.cpp:188:17:
 error: unused variable 'Triple' [-Werror,-Wunused-variable]
    const auto &Triple = MF.getTarget().getTargetTriple();
                ^
1 error generated.


  Commit: accfbd4cb327411ad66c0109ba1841482b871967
      https://github.com/llvm/llvm-project/commit/accfbd4cb327411ad66c0109ba1841482b871967
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M libcxx/include/__type_traits/is_trivially_relocatable.h
    M libcxx/test/libcxx/type_traits/is_trivially_relocatable.compile.pass.cpp
    A libcxx/test/std/containers/sequences/vector/trivial_relocation.pass.cpp

  Log Message:
  -----------
  [libc++] Replace __is_trivially_relocatable by is_trivially_copyable (#124970)

The __is_trivially_relocatable builtin has semantics that do not
correspond to any current or future notion of trivial relocation.
Furthermore, it currently leads to incorrect optimizations for some
types on supported compilers:
- Clang on Windows where types with non-trivial destructors get
  incorrectly optimized
- AppleClang where types with non-trivial move constructors get
  incorrectly optimized

Until there is an agreed upon and bugfree implementation of what it
means to be trivially relocatable, it is safer to simply use trivially
copyable instead. This doesn't leave a lot of types behind and is
definitely correct.


  Commit: 4a2a8ed70da7ec44f0aa9092595e5b0f81a7e841
      https://github.com/llvm/llvm-project/commit/4a2a8ed70da7ec44f0aa9092595e5b0f81a7e841
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/JITLink.h
    M llvm/lib/ExecutionEngine/JITLink/COFF_x86_64.cpp
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/JITLink.cpp
    M llvm/lib/ExecutionEngine/JITLink/JITLinkGeneric.h
    M llvm/lib/ExecutionEngine/JITLink/aarch32.cpp
    M llvm/lib/ExecutionEngine/Orc/Debugging/PerfSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/Debugging/VTuneSupportPlugin.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/unittests/ExecutionEngine/JITLink/LinkGraphTests.cpp

  Log Message:
  -----------
  [JITLink] Add a jitlink::Symbol::getSection() convenience method.

`Sym.getSection()` is equivalent to `Sym.getBlock().getSection()`.


  Commit: efa287dd8a0920b20c3fe69253d8438ec8944383
      https://github.com/llvm/llvm-project/commit/efa287dd8a0920b20c3fe69253d8438ec8944383
  Author: Peng Liu <winner245 at hotmail.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M libcxx/include/__vector/vector_bool.h
    A libcxx/test/std/containers/sequences/vector.bool/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/max_size.pass.cpp

  Log Message:
  -----------
  [libc++] Slightly simplify max_size and add new tests for vector (#119990)

This PR slightly simplifies the implementation of `vector<bool>::max_size`
and adds extensive tests for the `max_size()` function for both `vector<bool>`
and `vector<T>`. The main purposes of the new tests include:

- Verify correctness of `max_size()` under various `size_type` and
  `difference_type` definitions: check that `max_size()` works properly
  with allocators that have custom `size_type` and `difference_type`. This
  is particularly useful for `vector<bool>`, as different `size_type` lead
  to different `__storage_type` of different word lengths, resulting in
  varying `max_size()` values for `vector<bool>`. Additionally, different
  `difference_type` also sets different upper limit of `max_size()` for
  both `vector<bool>` and `std::vector`. These tests were previously
  missing.

- Eliminate incorrect implementations: Special tests are added to identify and
  reject incorrect implementations of `vector<bool>::max_size` that unconditionally
  return `std::min<size_type>(size-max, __internal_cap_to_external(allocator-max-size))`.
  This can cause overflow in the `__internal_cap_to_external()` call and lead
  to incorrect results. The new tests ensure that such incorrect
  implementations are identified.


  Commit: de5f6432efa2cf4dde6b85cbdea1db50c79758c2
      https://github.com/llvm/llvm-project/commit/de5f6432efa2cf4dde6b85cbdea1db50c79758c2
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/unrecognized-sm1x.ll

  Log Message:
  -----------
  [NVPTX] Remove `sm_1x` / non-ABI compilation support (#125977)

@Artem-B, I believe you said we don't intend to support `sm_1x`.
Assuming that's correct, this PR will remove all remaining support I
could find for `sm_1x`.


  Commit: c9446ff8a3d9535854404aef771da362856a5f02
      https://github.com/llvm/llvm-project/commit/c9446ff8a3d9535854404aef771da362856a5f02
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-fminv.ll

  Log Message:
  -----------
  [msan] Handle Arm NEON floating-point min/max (vector) (#125778)

Apply handleVectorReduceIntrinsic() to Intrinsic::aarch64_neon_f{min,max}(mn)?v. Previously, these intrinsics were handled correctly (by maybeHandleSimpleNomemIntrinsic) if each parameter's type was the same as the return type; otherwise, they were handled suboptimally by visitInstruction().

Updates the tests from https://github.com/llvm/llvm-project/pull/125729.


  Commit: 9d88ffe7f7b4a46d3bcb7bbdf0d7eb037ab5ba04
      https://github.com/llvm/llvm-project/commit/9d88ffe7f7b4a46d3bcb7bbdf0d7eb037ab5ba04
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/CompactUnwindSupport.h
    M llvm/lib/ExecutionEngine/JITLink/MachO_arm64.cpp
    M llvm/lib/ExecutionEngine/JITLink/MachO_x86_64.cpp
    R llvm/test/ExecutionEngine/Orc/minimal-throw-catch.ll
    A llvm/test/ExecutionEngine/Orc/throw-catch-minimal.ll

  Log Message:
  -----------
  [JITLink] Handle compact-unwind records that depend on DWARF FDEs.

Compact-unwind encodings are more limited than DWARF frame descriptions. For
functions whose frame layout cannot be described by a compact unwind encoding,
the encoding for the function will specify "use DWARF", and the corresponding
unwind-info record will use the low bits of the encoding to point to the FDE
for the function.

We test this with a frame-pointer=none function, since these frame layouts
always triger a fall-back to DWARF on arm64.


  Commit: 52fc6ffcda0895c0c7b976ad1f5cb5a282b571d2
      https://github.com/llvm/llvm-project/commit/52fc6ffcda0895c0c7b976ad1f5cb5a282b571d2
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Symbols.cpp
    M lld/ELF/SyntheticSections.cpp
    M lld/ELF/Writer.cpp
    M lld/test/ELF/executable-undefined-ignoreall.s
    M lld/test/ELF/ppc32-weak-undef-call.s
    M lld/test/ELF/ppc64-undefined-weak.s
    M lld/test/ELF/riscv-gp.s
    M lld/test/ELF/weak-undef-lib.s
    M lld/test/ELF/weak-undef-no-dynamic-linker.s
    M lld/test/ELF/weak-undef-rw.s

  Log Message:
  -----------
  [ELF] Refine isExported/isPreemptible condition

Reland 994cea3f0a2d0caf4d66321ad5a06ab330144d89 after bolt tests no
longer rely on -pie --unresolved-symbols=ignore-all with no input DSO
generating PLT entries.

---

Commit f10441ad003236ef3b9e5415a571d2be0c0ce5ce , while dropping a
special case for isUndefWeak and --no-dynamic-linking, made
--export-dynamic ineffective when -pie is used without any input DSO.

This change restores --export-dynamic and unifies -pie and -pie
--no-dynamic-linker when there is no input DSO.

* -pie with no input DSO suppresses undefined symbols in .dynsym.
  Previously this only appied to -pie --no-dynamic-linker.
* As a side effect, -pie with no input DSO suppresses PLT.


  Commit: 7a213e70eb24e621042f2fda043622048cb1f1df
      https://github.com/llvm/llvm-project/commit/7a213e70eb24e621042f2fda043622048cb1f1df
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    A llvm/test/ExecutionEngine/Orc/throw-catch-no-frame-pointer.ll

  Log Message:
  -----------
  [JITLink] Add missing testcase for compact-unwind-needs-dwarf.

This testcase was accidentally left out of 9d88ffe7f7b.


  Commit: 7e0bef35c23321c57b556ee24c66e3c18194d4f3
      https://github.com/llvm/llvm-project/commit/7e0bef35c23321c57b556ee24c66e3c18194d4f3
  Author: Alex Sepkowski <5620315+alsepkow at users.noreply.github.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

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

  Log Message:
  -----------
  [HLSL][NFC] Fix typo in comment in SemaHLSL.cpp  (#125992)

Fix a comment typo.


  Commit: e00f824e9a5ea73830bd346115968fa9ace84cbf
      https://github.com/llvm/llvm-project/commit/e00f824e9a5ea73830bd346115968fa9ace84cbf
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/test/orc/TestCases/Darwin/Generic/exceptions-stress-test-tower.cpp

  Log Message:
  -----------
  [ORC-RT] Use templates to express deeply nested function calls in testcase.

Makes this test smaller and more readable.


  Commit: 137c3781e69061fcb9ae97bff00ed0abbab4f9a3
      https://github.com/llvm/llvm-project/commit/137c3781e69061fcb9ae97bff00ed0abbab4f9a3
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2025-02-05 (Wed, 05 Feb 2025)

  Changed paths:
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    A bolt/test/AArch64/data-in-code.s

  Log Message:
  -----------
  [BOLT][AArch64] Include constant islands in disassembly (#125961)

When printing disassembly of a function with constant islands, include
the island info in the dump.

At the moment, only print islands in pre-CFG state. Include islands that
are interleaved with instructions.


  Commit: 6d81a148737712bd525fe7acb6e2f9434fda380c
      https://github.com/llvm/llvm-project/commit/6d81a148737712bd525fe7acb6e2f9434fda380c
  Author: William Moses <gh at wsmoses.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/test/Dialect/LLVMIR/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][LLVM] Fold extract of extract (#125980)

Co-authored-by: Ivan R. Ivanov <ivanov.i.aa at m.titech.ac.jp>


  Commit: 6567122a057ab2992b9a68b674e14f073a3c9e59
      https://github.com/llvm/llvm-project/commit/6567122a057ab2992b9a68b674e14f073a3c9e59
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/openbsd.c

  Log Message:
  -----------
  [PAC][Driver] Enable BTI and PAC by default on OpenBSD/aarch64 (#125392)


  Commit: 15fbe08f7c01763332f40f2018fcd70ecbf80e91
      https://github.com/llvm/llvm-project/commit/15fbe08f7c01763332f40f2018fcd70ecbf80e91
  Author: Nicolai Hähnle <nicolai.haehnle at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/CFGPrinter.h
    M llvm/lib/Analysis/CFGPrinter.cpp

  Log Message:
  -----------
  CFGPrinter: fix accidentally quadratic behavior (#125396)

Initialize a ModuleStateTracker at most once per BasicBlock instead of
once per Instruction. When the CFG info is provided, it is initialized
once per function.


  Commit: c4f54632105b4dfb7d176c0292064eff3b918d42
      https://github.com/llvm/llvm-project/commit/c4f54632105b4dfb7d176c0292064eff3b918d42
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/openbsd.c

  Log Message:
  -----------
  [Driver] Enable IBT by default on OpenBSD/amd64 (#125395)


  Commit: 6e402f5121e87e82fa686046c867ef67d4b4b851
      https://github.com/llvm/llvm-project/commit/6e402f5121e87e82fa686046c867ef67d4b4b851
  Author: Дмитрий Изволов <dmitriy at izvolov.ru>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/include/__algorithm/radix_sort.h
    M libcxx/include/__algorithm/stable_sort.h
    M libcxx/test/std/algorithms/alg.sorting/alg.sort/stable.sort/stable_sort.pass.cpp

  Log Message:
  -----------
  [libc++] Support `constexpr` for `std::stable_sort` in radix sort branch (#125284)

`std::stable_sort` is `constexpr` since PR
https://github.com/llvm/llvm-project/pull/110320
But `radix_sort` branch is still non-`constexpr`.
This PR fixes it.

#119394
#105360


  Commit: feb5a77d700f46d6638f073d411cbe0d8a924fdf
      https://github.com/llvm/llvm-project/commit/feb5a77d700f46d6638f073d411cbe0d8a924fdf
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/SymbolContext.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Plugins/DynamicLoader/Hexagon-DYLD/DynamicLoaderHexagonDYLD.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
    M lldb/source/Plugins/Process/Utility/InferiorCallPOSIX.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
    M lldb/source/Symbol/SymbolContext.cpp

  Log Message:
  -----------
  [lldb] Add SymbolContext::GetFunctionOrSymbolAddress (#123340)

Many uses of SC::GetAddressRange were not interested in the range, but
in the address of the function/symbol contained inside the symbol
context. They were getting that by calling the GetBaseAddress on the
returned range, which worked well enough so far, but isn't compatible
with discontinuous functions, whose address (entry point) may not be the
lowest address in the range.

To resolve this problem, this PR creates a new function whose purpose is
return the address of the function or symbol inside the symbol context.
It also changes all of the callers of GetAddressRange which do not
actually care about the range to call this function instead.


  Commit: 0cfb98f871b6bc82691b5aa85b20703de1621875
      https://github.com/llvm/llvm-project/commit/0cfb98f871b6bc82691b5aa85b20703de1621875
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/source/API/SBFunction.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/SourceManager.cpp

  Log Message:
  -----------
  [lldb] s/GetAddressRange().GetBaseAddress()/GetAddress() (#125847)

Three more cases where it's obvious that the code is looking for the
address of the function entry point.


  Commit: 3115278c4e079c7ba85dc4233100de68ca5f711b
      https://github.com/llvm/llvm-project/commit/3115278c4e079c7ba85dc4233100de68ca5f711b
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M bolt/lib/Core/BinaryFunction.cpp

  Log Message:
  -----------
  [BOLT] Fixup for commit 137c378/#125961


  Commit: f82902fef4a004a7f26d49448e66b2dbeed4d692
      https://github.com/llvm/llvm-project/commit/f82902fef4a004a7f26d49448e66b2dbeed4d692
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/bfloat.ll
    M llvm/test/CodeGen/X86/canonicalize-vars-f16-type.ll
    M llvm/test/CodeGen/X86/fminimumnum-fmaximumnum.ll
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/fp-round.ll
    M llvm/test/CodeGen/X86/fp-roundeven.ll
    M llvm/test/CodeGen/X86/fp-strict-scalar-fp16.ll
    M llvm/test/CodeGen/X86/fp-strict-scalar-inttofp-fp16.ll
    M llvm/test/CodeGen/X86/fp-strict-scalar-round-fp16.ll
    M llvm/test/CodeGen/X86/half.ll
    M llvm/test/CodeGen/X86/pr31088.ll
    M llvm/test/CodeGen/X86/select-narrow-int-to-fp.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll

  Log Message:
  -----------
  [X86] Fold (f16 bitcast extract_vectorelt(v,0)) to (extract_vectorelt (v8f16 bitcast(v,0))) (#125877)

Also handles possible truncations from i32 to i16.

Cleans up some of the poor codegen identified in #98630


  Commit: 4562efc674a5b5e052abdfc40047e82a359d0df0
      https://github.com/llvm/llvm-project/commit/4562efc674a5b5e052abdfc40047e82a359d0df0
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/include/string
    M libcxx/test/std/strings/basic.string/string.capacity/reserve_size.pass.cpp

  Log Message:
  -----------
  Reapply "[libc++] Simplify the implementation of reserve() and shrink_to_fit() (#113453)" (#125888)

The capacity is now passed correctly and a test for this path is added.

Since we changed the implementation of `reserve(size_type)` to only ever
extend,
it doesn't make a ton of sense anymore to have `__shrink_or_extend`,
since the code
paths of `reserve` and `shrink_to_fit` are now almost completely
separate.

This patch splits up `__shrink_or_extend` so that the individual parts
are in `reserve`
and `shrink_to_fit` depending on where they are needed.

This reverts commit 59f57be94f38758616b1339b293b43af845571af.


  Commit: c7dc836bbe3658a9210a944b850450f5ae7b50a4
      https://github.com/llvm/llvm-project/commit/c7dc836bbe3658a9210a944b850450f5ae7b50a4
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/test/SemaCXX/warn-base-type-qualifiers.cpp

  Log Message:
  -----------
  [Clang] fix diagnostic to correctly handle singular and plural cases for redundant qualifiers on base class type (#125943)

Fixes #125942


  Commit: 5eed019080a53af5a5be915a5cf411466b77bf4b
      https://github.com/llvm/llvm-project/commit/5eed019080a53af5a5be915a5cf411466b77bf4b
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Use std::copy instead of a manual copy loop. NFC


  Commit: eb8901bda11fd55deeecd067fc4c9dcc0fb89984
      https://github.com/llvm/llvm-project/commit/eb8901bda11fd55deeecd067fc4c9dcc0fb89984
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/AsmParser/LLToken.h
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/include/llvm/BinaryFormat/Dwarf.h
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/include/llvm/IR/DebugInfoMetadata.h
    M llvm/lib/AsmParser/LLLexer.cpp
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/BinaryFormat/Dwarf.cpp
    M llvm/lib/Bitcode/Reader/MetadataLoader.cpp
    M llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/lib/IR/AsmWriter.cpp
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfoMetadata.cpp
    A llvm/test/DebugInfo/AArch64/DW_AT_APPLE_enum_kind.ll
    A llvm/test/tools/llvm-dwarfdump/AArch64/DW_AT_APPLE_enum_kind.s
    M llvm/unittests/IR/DebugTypeODRUniquingTest.cpp
    M llvm/unittests/IR/MetadataTest.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp
    M mlir/lib/Target/LLVMIR/DebugTranslation.cpp

  Log Message:
  -----------
  [llvm][DebugInfo] Add new DW_AT_APPLE_enum_kind to encode enum_extensibility (#124752)

When creating `EnumDecl`s from DWARF for Objective-C `NS_ENUM`s, the
Swift compiler tries to figure out if it should perform "swiftification"
of that enum (which involves renaming the enumerator cases, etc.). The
heuristics by which it determines whether we want to swiftify an enum is
by checking the `enum_extensibility` attribute (because that's what
`NS_ENUM` pretty much are). Currently LLDB fails to attach the
`EnumExtensibilityAttr` to `EnumDecl`s it creates (because there's not
enough info in DWARF to derive it), which means we have to fall back to
re-building Swift modules on-the-fly, slowing down expression evaluation
substantially. This happens around
https://github.com/swiftlang/swift/blob/4b3931c8ce437b3f13f245e6423f95c94a5876ac/lib/ClangImporter/ImportEnumInfo.cpp#L37-L59

To speed up Swift exression evaluation, this patch proposes encoding the
C/C++/Objective-C `enum_extensibility` attribute in DWARF via a new
`DW_AT_APPLE_ENUM_KIND`. This would currently be only used from the LLDB
Swift plugin. But may be of interest to other language plugins as well
(though I haven't come up with a concrete use-case for it outside of
Swift).

I'm open to naming suggestions of the various new attributes/attribute
constants proposed here. I tried to be as generic as possible if we
wanted to extend it to other kinds of enum properties (e.g., flag
enums).

The new attribute would look as follows:
```
DW_TAG_enumeration_type
  DW_AT_type      (0x0000003a "unsigned int")
  DW_AT_APPLE_enum_kind   (DW_APPLE_ENUM_KIND_Closed)
  DW_AT_name      ("ClosedEnum")
  DW_AT_byte_size (0x04)
  DW_AT_decl_file ("enum.c")
  DW_AT_decl_line (23)

DW_TAG_enumeration_type
  DW_AT_type      (0x0000003a "unsigned int")
  DW_AT_APPLE_enum_kind   (DW_APPLE_ENUM_KIND_Open)
  DW_AT_name      ("OpenEnum")
  DW_AT_byte_size (0x04)
  DW_AT_decl_file ("enum.c")
  DW_AT_decl_line (27)
```
Absence of the attribute means the extensibility of the enum is unknown
and abides by whatever the language rules of that CU dictate.

This does feel like a big hammer for quite a specific use-case, so I'm
happy to discuss alternatives.

Alternatives considered:
* Re-using an existing DWARF attribute to express extensibility. E.g., a
`DW_TAG_enumeration_type` could have a `DW_AT_count` or
`DW_AT_upper_bound` indicating the number of enumerators, which could
imply closed-ness. I felt like a dedicated attribute (which could be
generalized further) seemed more applicable. But I'm open to re-using
existing attributes.
* Encoding the entire attribute string (i.e., `DW_TAG_LLVM_annotation
("enum_extensibility((open))")`) on the `DW_TAG_enumeration_type`. Then
in LLDB somehow parse that out into a `EnumExtensibilityAttr`. I haven't
found a great API in Clang to parse arbitrary strings into AST nodes
(the ones I've found required fully formed C++ constructs). Though if
someone knows of a good way to do this, happy to consider that too.


  Commit: a6abd0a13d2748977dd1409a34948cd392a1cb21
      https://github.com/llvm/llvm-project/commit/a6abd0a13d2748977dd1409a34948cd392a1cb21
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/docs/ConvergenceAndUniformity.rst

  Log Message:
  -----------
  [Docs] Remove outdated reference to "future work" in convergence.


  Commit: df22bbe2beb57687c76402bc0cfdf7901a31cf29
      https://github.com/llvm/llvm-project/commit/df22bbe2beb57687c76402bc0cfdf7901a31cf29
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    A clang/test/Driver/warning-suppression-mappings-not-parsed.cpp
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [clang] Stop parsing warning suppression mappings in driver (#125722)

This gets rid of some extra IO from driver startup, and possiblity of
emitting warnings twice.


  Commit: d4144ca27da174da3f8e7e3472e788b4246fd04e
      https://github.com/llvm/llvm-project/commit/d4144ca27da174da3f8e7e3472e788b4246fd04e
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libclc/generic/lib/math/clc_fmod.cl
    M libclc/generic/lib/math/clc_remainder.cl

  Log Message:
  -----------
  [libclc][NFC] Clang-format two files

Pre-commit changes to avoid noise in an upcoming PR.


  Commit: 7ef33e609c45515de9db1b5222fe6e05edd76c94
      https://github.com/llvm/llvm-project/commit/7ef33e609c45515de9db1b5222fe6e05edd76c94
  Author: Simon Tatham <simon.tatham at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/integer_to_string.h
    M libc/src/stdio/printf_core/float_dec_converter_limited.h

  Log Message:
  -----------
  [libc] Fix recently introduced integer-type warnings (#125864)

These warnings all come up in code modified by one of my two recent
commits c06d0ff806b72b1 and b53da77c505a2d3, and all relate to implicit
integer type conversion. In a build of ours with strict compile options
two of them became errors. Even without that problem, it's worth fixing
them to reduce noise that might hide a more serious warning.


  Commit: d2b45ce100d641a8f1690e30843bb9c5ea71ab86
      https://github.com/llvm/llvm-project/commit/d2b45ce100d641a8f1690e30843bb9c5ea71ab86
  Author: leijurv <leijurv at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/ContinuationIndenter.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add BreakBeforeTemplateCloser option (#118046)

In clang-format, multiline templates have the `>` on the same line as
the last parameter:

```c++
template <
    typename Foo,
    typename Bar>
void foo() {
```

I would like to add an option to put the `>` on the next line, like
this:

```c++
template <
    typename Foo,
    typename Bar
>
void foo() {
```

An example of a large project that uses this style is NVIDIA's CUTLASS,
here is an example:


https://github.com/NVIDIA/cutlass/blob/main/include/cutlass/epilogue/dispatch_policy.hpp#L149-L156

My reasoning is that it reminds me of this style of braces:

```c++
if (foo()) {
    bar();
    baz();}
```

Most people agree this is better:

```c++
if (foo()) {
    bar();
    baz();
}
```

---------

Co-authored-by: Owen Pan <owenpiano at gmail.com>


  Commit: 80fd902573f860001af08d75f15d8f92005bae90
      https://github.com/llvm/llvm-project/commit/80fd902573f860001af08d75f15d8f92005bae90
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tensor/IR/Tensor.h
    A mlir/include/mlir/Dialect/Tensor/IR/TensorInterfaces.td
    M mlir/include/mlir/Dialect/Tensor/IR/TensorOps.td
    M mlir/lib/Dialect/Tensor/IR/CMakeLists.txt
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp

  Log Message:
  -----------
  [mlir][tensor] Introduce `TensorRelayoutOpInterface` (#125823)

The newly introduced `TensorRelayoutOpInterface` is created specifically
for `tensor.pack` + `tensor.unpack`. Although the interface is
currently empty, it enables us to refactor the logic in
`FoldTensorCastProducerOp` within the Tensor dialect as follows:

```cpp
// OLD
// Reject tensor::PackOp - there's dedicated pattern for that instead.
if (!foldTensorCastPrecondition(op) ||
    isa<tensor::PackOp, tensor::UnPackOp>(*op))
  return failure();
```

is replaced with:

```cpp
// NEW
// Reject tensor::PackOp - there's dedicated pattern for that instead.
if (!foldTensorCastPrecondition(op) ||
    isa<tensor::RelayoutOpInterface>(*op))
  return failure();
```

This will be crucial once `tensor.pack` + `tensor.pack` are replaced
with `linalg.pack` + `linalg.unpack` (i.e. moved to Linalg):
  * https://github.com/llvm/llvm-project/pull/123902,
  * https://discourse.llvm.org/t/rfc-move-tensor-pack-and-tensor-unpack-into-linalg/.

Note that the interface itself will later be moved to the Linalg
dialect. This decoupling ensures that the Tensor dialect does not
require an understanding of Linalg ops, thus keeping the dependency
lightweight.

This PR is effectively a preparatory step for moving PackOp and UnpackOp
to Linalg. Once that's completed, most CMake changes from this PR will
be effectively reverted.


  Commit: ecb016a87d89aed36b8f5d8102e15d8eb0e57108
      https://github.com/llvm/llvm-project/commit/ecb016a87d89aed36b8f5d8102e15d8eb0e57108
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Basic/Warnings.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp

  Log Message:
  -----------
  [clang] Parse warning-suppression-mapping after setting up diagengine (#125714)

We can emit diagnostics while parsing warning-suppression-mapping, make
sure command line flags take affect when emitting those.


  Commit: 78f690bba7846d3e9795bc27a5e27627a4a1ea28
      https://github.com/llvm/llvm-project/commit/78f690bba7846d3e9795bc27a5e27627a4a1ea28
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp

  Log Message:
  -----------
  [mlir][Vector] Update VectorEmulateNarrowType.cpp (2/N) (#123527)

This is PR 2 in a series of N patches aimed at improving
"VectorEmulateNarrowType.cpp". This is mainly minor refactoring, no
major functional changes are made/added.

**CHANGE 1** 

Renames the variable "scale". Note, "scale" could mean either:

  * "container-elements-per-emulated-type", or
  * "emulated-elements-per-container-type".

While from the context it is clear that it's always the former (original
type is always a sub-byte type and the emulated type is usually `i8`),
this PR reduces the cognitive load by making this clear.

**CHANGE 2** 

Replaces `isUnalignedEmulation` with `isFullyAligned`

Note, `isUnalignedEmulation` is always computed following a
"per-element-alignment" condition:
```cpp
// Check per-element alignment.
if (containerBits % emulatedBits != 0) {
  return rewriter.notifyMatchFailure(
    op, "impossible to pack emulated elements into container elements "
    "(bit-wise misalignment)");
}

// (...)

bool isUnalignedEmulation = origElements % emulatedPerContainerElem != 0;
```

Given that `isUnalignedEmulation` captures only one of two conditions
required for "full alignment", it should be re-named as
`isPartiallyUnalignedEmulation`. Instead, I've flipped the condition and
renamed it as `isFullyAligned`:

```cpp
bool isFullyAligned = origElements % emulatedPerContainerElem == 0;
```

**CHANGE 3**
  * Unifies various comments throughout the file (for consistency).
* Adds new comments throughout the file and adds TODOs where high-level
    comments are missing.
    
    
**GitHub issue to track this work**:
https://github.com/llvm/llvm-project/issues/123630


  Commit: d1de75acea0da55316cd7827563e064105868f0f
      https://github.com/llvm/llvm-project/commit/d1de75acea0da55316cd7827563e064105868f0f
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M flang/test/Driver/linker-flags.f90

  Log Message:
  -----------
  [flang][Driver] When linking with the Fortran runtime also link with libexecinfo (#125998)

Also link with libexecinfo on FreeBSD, NetBSD, OpenBSD and DragonFly
for the backtrace functions.


  Commit: 8c2b4aa5a0f495592f906b1b9d1a859d3c1062da
      https://github.com/llvm/llvm-project/commit/8c2b4aa5a0f495592f906b1b9d1a859d3c1062da
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [mlir][LLVM][NFC] Fix description of `LLVMFixedVectorType` (#126031)


  Commit: 112490ce04edeb0b34ab2079b649e907c62fd47e
      https://github.com/llvm/llvm-project/commit/112490ce04edeb0b34ab2079b649e907c62fd47e
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp

  Log Message:
  -----------
  [analyzer] Use getFileName and do not use realpath names (#126039)

The real paths resolves symlinks and makes the tests fail when the
filesystem is a symlink tree over a content-addressable storage (our
internal environment).


  Commit: 4daf30709982fac07c7519032a9586323e276f4b
      https://github.com/llvm/llvm-project/commit/4daf30709982fac07c7519032a9586323e276f4b
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp

  Log Message:
  -----------
  [flang][Lower][OpenMP][NFC] tidy up PrivateReductionUtils (#125867)

First part of a series of patches to improve private/reduction init and
cleanup region generation.

This commit is NFC. I factored out processing for each datatype into its
own method so that it is easier to keep track of what is being handled
where (I found the old gigantic init region generation function
difficult to navigate). The methods all share context in a helper class
to avoid having to pass a very large number of arguments.

I also removed the conflation between the mold argument and the mold
argument after loading. This should make it easier to avoid generating
dead uses of the mold argument in a later non-nfc patch.


  Commit: 8c1dbac304d2f3d9e9685c1f4fd8b3e133360893
      https://github.com/llvm/llvm-project/commit/8c1dbac304d2f3d9e9685c1f4fd8b3e133360893
  Author: hanbeom <kese111 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/X86/extract-insert-poison.ll
    A llvm/test/Transforms/VectorCombine/X86/extract-insert.ll
    M llvm/test/Transforms/VectorCombine/X86/load-inseltpoison.ll

  Log Message:
  -----------
  [VectorCombine] Allow shuffling between vectors the same type but different element sizes (#121216)

`foldInsExtVectorToShuffle` function combines the extract/insert of a vector into a vector through a shuffle. However, we only supported coupling between vectors of the same size.

This commit allows combining extract/insert for vectors of the same type but with different sizes by converting the length of the vectors.

Proof: https://alive2.llvm.org/ce/z/ELNLr7
Fixed https://github.com/llvm/llvm-project/issues/120772


  Commit: ceaec56fbc94d41a49f56d8e966528e00a46641e
      https://github.com/llvm/llvm-project/commit/ceaec56fbc94d41a49f56d8e966528e00a46641e
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [bazel] Port for eb8901bda11fd55deeecd067fc4c9dcc0fb89984


  Commit: 39be2d0266f1aa229a79c47d81b004c8c2079362
      https://github.com/llvm/llvm-project/commit/39be2d0266f1aa229a79c47d81b004c8c2079362
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Semantics/check-omp-structure.cpp
    A flang/test/Semantics/OpenMP/reduction-derived-component.f90

  Log Message:
  -----------
  [flang][OpenMP][Semantics] Don't allow reduction of derived type components (#125480)

Before this patch, reduction of derived type components crashed the
compiler when trying to create the omp.declare_reduction.

In OpenMP 3.1 the standard says "a list item that appears in a reduction
clause must be a named variable of intrinsic type" (page 106). As I
understand it, a derived type component is not a variable.

OpenMP 4.0 added declare reduction, partly so that users could define
their own reductions on derived types. The above wording was removed
from the standard but derived type components were never explicitly
allowed.

OpenMP 5.0 added "A variable that is part of another variable, with the
exception of array elements, cannot appear in17 a reduction clause".

All standard versions also require the reduction argument to be
"definable", which roughly means that it is a variable. A
derived type component is more like an expression.

Fixes #125445


  Commit: 84c3b05e5e2776af51a2791bccfaa954bc8e2bcd
      https://github.com/llvm/llvm-project/commit/84c3b05e5e2776af51a2791bccfaa954bc8e2bcd
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-firstprivate.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm.mlir
    M mlir/test/Target/LLVMIR/openmp-private.mlir
    M mlir/test/Target/LLVMIR/openmp-wsloop-private-cond_br.mlir

  Log Message:
  -----------
  [OpenMP][flang][MLIR] Decouple alloc, init, and copy regions for `omp.private|declare_reduction` ops (#125699)

This PR changes the emitted block structure of alloc, init, and copy
regions for `omp.private` and `omp.declare_reduction` ops a little bit.
In particular, this decouples init and copy regions from the alloca
insertion-point. The main motivation is fix "Instruction does not
dominate all uses!" errors that happen specially when an init region
uses a value from the OpenMP region it is being inlined into. The issue
happens because, previous to this PR, we inline the init region right
after the latest alloc block (since we used the alloca IP); which in
some cases (see exmaple below), is too early and causes the use
dominance issue.

Example that would break without this PR (when delayed privatization is
enabled for `omp.wsloop`s):
```fortran
subroutine test2 (xyz)
  integer :: i
  integer :: xyz(:)

  !$omp target map(from:xyz)
    !$omp do private(xyz)
      do i = 1, 10
        xyz(i) = i
      end do
  !$omp end target
end subroutine
```


  Commit: 7ebacf3a999fc9766c3f0ec4979e3ed08344c348
      https://github.com/llvm/llvm-project/commit/7ebacf3a999fc9766c3f0ec4979e3ed08344c348
  Author: Alexander Belyaev <pifon at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [mlir][tensor] Fix bazel build after 80fd902573f860001af08d75f15d8f92005bae90.


  Commit: d0f472c246911e35656bf24fd282f80d7482211a
      https://github.com/llvm/llvm-project/commit/d0f472c246911e35656bf24fd282f80d7482211a
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyIndVar.cpp
    A llvm/test/Transforms/IndVarSimplify/iv-ext-samesign.ll
    R llvm/test/Transforms/IndVarSimplify/iv-zext-samesign-datalayout.ll

  Log Message:
  -----------
  SimplifyIndVar: teach widenLoopCompare about samesign (#125851)

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


  Commit: 2464f4ba6e0e50bb30c31b6526fa0bdd5a531217
      https://github.com/llvm/llvm-project/commit/2464f4ba6e0e50bb30c31b6526fa0bdd5a531217
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Support/Error.h
    M llvm/unittests/Support/ErrorTest.cpp

  Log Message:
  -----------
  [LLVM][Support] Add new CreateFileError functions (#125906)

Add new CreateFileError functions to create a StringError with the
specified error code and prepend the file path to it

Needed for: #125345


  Commit: 03478d6f2d0032615b4633927c6e8f5c9c5e4909
      https://github.com/llvm/llvm-project/commit/03478d6f2d0032615b4633927c6e8f5c9c5e4909
  Author: Pierre van Houtryve <pierre.vanhoutryve at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/Common/GlobalISel/GlobalISelMatchTable.cpp

  Log Message:
  -----------
  [GlobalISel] Prefix MatchTable Lines with their Index (#125845)

I tried to keep it readable by making the width of the column with the
index always enough to contain the largest number.
That way things don't shift to the right every time a new digit appears,
it remains consistent.

Tests don't break because this only affects the beginning of the line
and FileCheck doesn't care about what comes before for the most part.

Example of the new output:
```
     /* 758359 */   // Label 9988: @758359
     /* 758359 */   GIM_Try, /*On fail goto*//*Label 9989*/ GIMT_Encode4(758435), // Rule ID 6715 //
     /* 758364 */     GIM_CheckConstantInt8, /*MI*/0, /*Op*/2, 0,
     /* 758368 */     // MIs[0] offset
```

Fixes #119177


  Commit: ee3bccab34f57387bdf33853cdd5f214fef349a2
      https://github.com/llvm/llvm-project/commit/ee3bccab34f57387bdf33853cdd5f214fef349a2
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/include/string
    R libcxx/test/libcxx/strings/basic.string/string.modifiers/clear_and_shrink.pass.cpp

  Log Message:
  -----------
  [libc++] Remove basic_string::__clear_and_shrink (#126050)

`__clear_and_shrink` is only used in a single place and does more work
than actually required.


  Commit: 7c695e4906300a11208d7979c470d63b0d037bb2
      https://github.com/llvm/llvm-project/commit/7c695e4906300a11208d7979c470d63b0d037bb2
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/unittests/Frontend/CMakeLists.txt

  Log Message:
  -----------
  [flang] Use clang_target_link_libraries() for clang dependency (#126037)

This dependency is part of libclang-cpp, so it should use
clang_target_link_libraries.


  Commit: c9d0a464c9f3a0a66f35d0ca28f36a96efc6961b
      https://github.com/llvm/llvm-project/commit/c9d0a464c9f3a0a66f35d0ca28f36a96efc6961b
  Author: Han-Chung Wang <hanhan0912 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
    M mlir/test/Dialect/Math/expand-math.mlir
    M mlir/test/mlir-runner/test-expand-math-approx.mlir

  Log Message:
  -----------
  Revert "[mlir][math]Update `convertPowfOp` `ExpandPatterns.cpp`" (#126063)

Reverts llvm/llvm-project#124402

It breaks an integration test in downstream project (i.e., IREE), which
produces NANs. Talked to the author @ita9naiwa, and we agree to reland
the PR after we find the issue.


  Commit: b74176a3a26ae26b8671bcf3cc261353c23c88d0
      https://github.com/llvm/llvm-project/commit/b74176a3a26ae26b8671bcf3cc261353c23c88d0
  Author: Graham Hunter <graham.hunter at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Target/TargetSelectionDAG.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll

  Log Message:
  -----------
  [AArch64][SelectionDAG] Generate clastb for extract.last.active (#112738)

This patch improves SVE codegen for the vector extract last active
intrinsic, using either the lastb instruction (if the passthru value was
poison or undef), or the clastb instruction.


  Commit: 9598f74133a358588ab7e38ec6b5e39a4143bdd0
      https://github.com/llvm/llvm-project/commit/9598f74133a358588ab7e38ec6b5e39a4143bdd0
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/TokenKinds.def
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/test/SemaCXX/type-traits.cpp

  Log Message:
  -----------
  [Clang] Remove __is_referenceable builtin (#123078)

`__is_referenceable` is almost unused in the wild, and the few cases I
was able to find had checks around them. Since the places in the
standard library where `__is_referenceable` is used have bespoke
builtins, it doesn't make a ton of sense to keep this builtin around.

`__is_referenceable` has been documented as deprecated in Clang 20.


  Commit: e833e5276cab9a678b830dd46e87bfba3c700ca9
      https://github.com/llvm/llvm-project/commit/e833e5276cab9a678b830dd46e87bfba3c700ca9
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_read.c
    M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_write.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_revd.c

  Log Message:
  -----------
  [AArch64][Clang] Update untyped sme intrinsics with fp8 variants (#124543)

This patch adds fp8 variants to the following untyped SME intrinsics
based on
[ACLE](https://github.com/ARM-software/acle/blob/main/main/acle.md):

```
SVREVD
SVSEL_X2
SVSEL_X4
SVZIP_X2
SVZIPQ_X2
SVZIP_X4
SVZIPQ_X4
SVUZP_X2
SVUZPQ_X2
SVUZP_X4
SVUZPQ_X4
SVREAD_ZA8_H
SVREAD_ZA8_V
SVREAD_ZA128
SVWRITE_ZA8_H
SVWRITE_ZA8_V
SVWRITE_ZA128
SVREAD_ZA8_VG2_H
SVREAD_ZA8_VG2_V
SVREAD_ZA8_VG4_H
SVREAD_ZA8_VG4_V
SVREAD_ZA8_VG1x2
SVREAD_ZA8_VG1x4
SVWRITE_ZA8_VG2_H
SVWRITE_ZA8_VG2_V
SVWRITE_ZA8_VG4_H
SVWRITE_ZA8_VG4_V
SVWRITE_ZA8_VG1x2
SVWRITE_ZA8_VG1x4
SVLUTI2_LANE_ZT_X4
SVLUTI2_LANE_ZT
SVLUTI4_LANE_ZT
SVLUTI2_LANE_ZT_X2
SVLUTI4_LANE_ZT_X2
SVREADZ_ZA8_X2_H
SVREADZ_ZA8_X2_V
SVREADZ_ZA8_X4_H
SVREADZ_ZA8_X4_V
SVREADZ_ZA8_H
SVREADZ_ZA8_V
SVREADZ_VG2_B
SVREADZ_VG4_B
```


  Commit: f1e917d07bd16b7d3e27ddd37d76f75f9ac97f96
      https://github.com/llvm/llvm-project/commit/f1e917d07bd16b7d3e27ddd37d76f75f9ac97f96
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/test/CodeGenCUDA/offloading-entries.cu
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/OpenMP/declare_target_link_codegen.cpp
    M clang/test/OpenMP/nvptx_target_requires_unified_shared_memory.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/Utility.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir
    M offload/src/PluginManager.cpp

  Log Message:
  -----------
  [Offload] Unify offloading entries into a single section (#125731)

Summary:
This patch unifies the existing offloading entires into a single section
called `llvm_offload_entires`. This lets us use a more unified
offloading infrastructure so that all targets share the same handling.
The effect is that people in the runtimes now need to check if the kind
is what they expect, but the expectation is that you can combine
multiple potential providers into a compile job. Doesn't fully work
yet because of other runtime issues, but some day. Mostly this helps the
future of liboffload where we want to handle different languages than
OpenMP.


  Commit: 8609e27a58b94cc5e9daf87cb2609c9b3760bd03
      https://github.com/llvm/llvm-project/commit/8609e27a58b94cc5e9daf87cb2609c9b3760bd03
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVImageOps.td
    M mlir/lib/Dialect/SPIRV/IR/SPIRVOps.cpp
    M mlir/test/Dialect/SPIRV/IR/image-ops.mlir
    M mlir/test/Target/SPIRV/image-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add definition for ImageWriteOp (#124124)

This Pull Request adds OpImageWrite as defined in section 3.52.10.
(Image Instructions). The tests in
`mlir/test/Target/SPIRV/image-ops.mlir` are also updated (and extended
with the new op), so they now pass validation with `spirv-val` after
serialization into SPIR-V. The test was missing `ImageQuery` capability
and entry points. For entry points dummy `main` functions were added.


  Commit: d5c60724bebc2adb91372279711b7ea9511d1428
      https://github.com/llvm/llvm-project/commit/d5c60724bebc2adb91372279711b7ea9511d1428
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
    M flang/test/Lower/OpenMP/delayed-privatization-pointer.f90

  Log Message:
  -----------
  [flang][Lower][OpenMP] try to avoid using init mold argument (#125900)

Unfortunately we still have a lot of cases like
!fir.box<!fir.array<10xi32>> where we read dimensions from the mold in
case there are non-default lower bounds stored inside the box. I will
address this in the next patch.


  Commit: f48d9e95d4ccd6ad2a7f53eb9db3e439c40c9dbf
      https://github.com/llvm/llvm-project/commit/f48d9e95d4ccd6ad2a7f53eb9db3e439c40c9dbf
  Author: natanelh-mobileye <natanelh at mobileye.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ADT/StableHashing.h

  Log Message:
  -----------
  [nfc] Ignoring unused values (#125695)

trying to avoid `unused variable` warning under gcc7


  Commit: b815a3942a0b0a9e7aab6b269ffdb0e93abc4368
      https://github.com/llvm/llvm-project/commit/b815a3942a0b0a9e7aab6b269ffdb0e93abc4368
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    R flang/include/flang/Common/Fortran-features.h
    R flang/include/flang/Common/Fortran.h
    A flang/include/flang/Common/ISO_Fortran_binding_wrapper.h
    R flang/include/flang/Common/LangOptions.def
    R flang/include/flang/Common/LangOptions.h
    R flang/include/flang/Common/MathOptionsBase.def
    R flang/include/flang/Common/MathOptionsBase.h
    R flang/include/flang/Common/OpenMP-features.h
    R flang/include/flang/Common/OpenMP-utils.h
    R flang/include/flang/Common/Version.h
    R flang/include/flang/Common/default-kinds.h
    M flang/include/flang/Common/erfc-scaled.h
    M flang/include/flang/Common/fast-int-set.h
    M flang/include/flang/Common/format.h
    M flang/include/flang/Common/optional.h
    M flang/include/flang/Common/real.h
    M flang/include/flang/Common/reference-wrapper.h
    M flang/include/flang/Common/restorer.h
    M flang/include/flang/Common/target-rounding.h
    M flang/include/flang/Common/template.h
    M flang/include/flang/Common/uint128.h
    M flang/include/flang/Common/visit.h
    M flang/include/flang/Evaluate/call.h
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/common.h
    M flang/include/flang/Evaluate/constant.h
    M flang/include/flang/Evaluate/expression.h
    M flang/include/flang/Evaluate/intrinsics.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CompilerInvocation.h
    M flang/include/flang/Frontend/FrontendOptions.h
    M flang/include/flang/ISO_Fortran_binding.h
    R flang/include/flang/ISO_Fortran_binding_wrapper.h
    M flang/include/flang/Lower/AbstractConverter.h
    M flang/include/flang/Lower/Bridge.h
    M flang/include/flang/Lower/ConvertType.h
    M flang/include/flang/Lower/LoweringOptions.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/CodeGen/DescriptorModel.h
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    M flang/include/flang/Optimizer/Support/TypeCode.h
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/message.h
    M flang/include/flang/Parser/parse-state.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/parsing.h
    M flang/include/flang/Parser/user-state.h
    M flang/include/flang/Runtime/descriptor-consts.h
    M flang/include/flang/Runtime/descriptor.h
    M flang/include/flang/Runtime/random.h
    M flang/include/flang/Runtime/support.h
    M flang/include/flang/Runtime/type-code.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/scope.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Semantics/type.h
    A flang/include/flang/Support/Fortran-features.h
    A flang/include/flang/Support/Fortran.h
    A flang/include/flang/Support/LangOptions.def
    A flang/include/flang/Support/LangOptions.h
    A flang/include/flang/Support/MathOptionsBase.def
    A flang/include/flang/Support/MathOptionsBase.h
    A flang/include/flang/Support/OpenMP-features.h
    A flang/include/flang/Support/OpenMP-utils.h
    A flang/include/flang/Support/Version.h
    A flang/include/flang/Support/default-kinds.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/lib/CMakeLists.txt
    R flang/lib/Common/CMakeLists.txt
    R flang/lib/Common/Fortran-features.cpp
    R flang/lib/Common/Fortran.cpp
    R flang/lib/Common/LangOptions.cpp
    R flang/lib/Common/OpenMP-utils.cpp
    R flang/lib/Common/Version.cpp
    R flang/lib/Common/default-kinds.cpp
    R flang/lib/Common/idioms.cpp
    M flang/lib/Decimal/CMakeLists.txt
    M flang/lib/Evaluate/CMakeLists.txt
    M flang/lib/Evaluate/call.cpp
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CMakeLists.txt
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
    M flang/lib/Optimizer/Passes/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/lib/Optimizer/Transforms/VScaleAttr.cpp
    M flang/lib/Parser/CMakeLists.txt
    M flang/lib/Parser/basic-parsers.h
    M flang/lib/Parser/prescan.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/CMakeLists.txt
    M flang/lib/Semantics/check-return.cpp
    M flang/lib/Semantics/check-select-rank.cpp
    M flang/lib/Semantics/check-stop.cpp
    M flang/lib/Semantics/data-to-inits.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/CMakeLists.txt
    A flang/lib/Support/Fortran-features.cpp
    A flang/lib/Support/Fortran.cpp
    A flang/lib/Support/LangOptions.cpp
    A flang/lib/Support/OpenMP-utils.cpp
    A flang/lib/Support/Version.cpp
    A flang/lib/Support/default-kinds.cpp
    A flang/lib/Support/idioms.cpp
    M flang/runtime/CUDA/allocator.cpp
    M flang/runtime/ISO_Fortran_binding.cpp
    M flang/runtime/ISO_Fortran_util.h
    M flang/runtime/allocatable.cpp
    M flang/runtime/stat.h
    M flang/runtime/temporary-stack.cpp
    M flang/tools/bbc/CMakeLists.txt
    M flang/tools/bbc/bbc.cpp
    M flang/tools/f18-parse-demo/CMakeLists.txt
    M flang/tools/f18-parse-demo/f18-parse-demo.cpp
    M flang/tools/tco/CMakeLists.txt
    M flang/unittests/Evaluate/CMakeLists.txt
    M flang/unittests/Evaluate/ISO-Fortran-binding.cpp
    M flang/unittests/Frontend/CMakeLists.txt
    M flang/unittests/Runtime/CUDA/Allocatable.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M flang/unittests/Runtime/CUDA/Memory.cpp
    M flang/unittests/Runtime/TemporaryStack.cpp

  Log Message:
  -----------
  [Flang] Move non-common headers to FortranSupport (#124416)

Move non-common files from FortranCommon to FortranSupport (analogous to
LLVMSupport) such that

* declarations and definitions that are only used by the Flang compiler,
but not by the runtime, are moved to FortranSupport

* declarations and definitions that are used by both ("common"), the
compiler and the runtime, remain in FortranCommon

* generic STL-like/ADT/utility classes and algorithms remain in
FortranCommon

This allows a for cleaner separation between compiler and runtime
components, which are compiled differently. For instance, runtime
sources must not use STL's `<optional>` which causes problems with CUDA
support. Instead, the surrogate header `flang/Common/optional.h` must be
used. This PR fixes this for `fast-int-sel.h`.

Declarations in include/Runtime are also used by both, but are
header-only. `ISO_Fortran_binding_wrapper.h`, a header used by compiler
and runtime, is also moved into FortranCommon.


  Commit: e470dcae8d2c4138a89974ceeb413b1568d3a112
      https://github.com/llvm/llvm-project/commit/e470dcae8d2c4138a89974ceeb413b1568d3a112
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/test/CodeGen/AArch64/spill-fill-zpr-predicates.mir

  Log Message:
  -----------
  [AArch64][SME] Reduce ptrue count when filling p-regs from z-regs (#125523)

Currently, each expansion of `FILL_PPR_FROM_ZPR_SLOT_PSEUDO` creates a
new ptrue instruction. This patch adds a simple method to reuse a
previous ptrue instruction when expanding back-to-back fill pseudos.


  Commit: 0bfcb76be1018f7a5aec5cf968bdb5a8a46ba62c
      https://github.com/llvm/llvm-project/commit/0bfcb76be1018f7a5aec5cf968bdb5a8a46ba62c
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll

  Log Message:
  -----------
  [FunctionAttrs] Add additional tests for captures inference (NFC)


  Commit: 60d8e6f5286002dc8fe836aa6229a83cd84ff51c
      https://github.com/llvm/llvm-project/commit/60d8e6f5286002dc8fe836aa6229a83cd84ff51c
  Author: Matt <MattPD at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    A clang/test/OpenMP/simd_conservative_ordered.c

  Log Message:
  -----------
  [OpenMP][SIMD][FIX] Use conservative "omp simd ordered" lowering (#123867)

A proposed fix for #95611 [OpenMP][SIMD] ordered has no effect in a loop
SIMD region as of LLVM 18.1.0

Changes:

- Implement new lowering behavior: Conservatively serialize "omp simd"
loops that have `omp simd ordered` directive to prevent incorrect
vectorization (which results in incorrect execution behavior of the
miscompiled program).

Implementation outline:

- We start with the optimistic default initial value of
`LoopStack.setParallel(/Enable=/true);` in
`CodeGenFunction::EmitOMPSimdInit(const OMPLoopDirective &D)`.
- We only disable the loop parallel memory access assumption with `if
(HasOrderedDirective) LoopStack.setParallel(/Enable=/false);` using the
`HasOrderedDirective` (which tests for the presence of an
`OMPOrderedDirective`).
- This results in no longer incorrectly vectorizing the loop when the
`omp simd ordered` directive is present.

Motivation: We'd like to prevent incorrect vectorization of the loops
marked with the `#pragma omp ordered simd` directive which has
previously resulted in miscompiled code.

At the same time, we'd like the usage outside of the `#pragma omp
ordered simd` context to remain unaffected: Note that in the test
"clang/test/OpenMP/ordered_codegen.cpp" we only "lose" the
`!llvm.access.group` metadata in `foo_simd` alone.

This is conservative, in that it's possible some of the loops would be
possible to vectorize, but we prefer to avoid miscompilation of the
loops that are currently illegal to vectorize.

A concrete example follows:

```cpp
// "test.c"
#include <float.h>
#include <math.h>
#include <omp.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int compare_float(float x1, float x2, float scalar) {
    const float diff = fabsf(x1 - x2);
    x1 = fabsf(x1);
    x2 = fabsf(x2);
    const float l = (x2 > x1) ? x2 : x1;
    if (diff <= l * scalar * FLT_EPSILON)
        return 1;
    else
        return 0;
}

#define ARRAY_SIZE 256

__attribute__((noinline)) void initialization_loop(
    float X[ARRAY_SIZE][ARRAY_SIZE], float Y[ARRAY_SIZE][ARRAY_SIZE]) {
    const float max = 1000.0;
    srand(time(NULL));
    for (int r = 0; r < ARRAY_SIZE; r++) {
        for (int c = 0; c < ARRAY_SIZE; c++) {
            X[r][c] = ((float)rand() / (float)(RAND_MAX)) * max;
            Y[r][c] = X[r][c];
        }
    }
}

__attribute__((noinline)) void omp_simd_loop(float X[ARRAY_SIZE][ARRAY_SIZE]) {
    for (int r = 1; r < ARRAY_SIZE; ++r) {
        for (int c = 1; c < ARRAY_SIZE; ++c) {
#pragma omp simd
            for (int k = 2; k < ARRAY_SIZE; ++k) {
#pragma omp ordered simd
                X[r][k] = X[r][k - 2] + sinf((float)(r / c));
            }
        }
    }
}

__attribute__((noinline)) int comparison_loop(float X[ARRAY_SIZE][ARRAY_SIZE],
                                              float Y[ARRAY_SIZE][ARRAY_SIZE]) {
    int totalErrors_simd = 0;
    const float scalar = 1.0;
    for (int r = 1; r < ARRAY_SIZE; ++r) {
        for (int c = 1; c < ARRAY_SIZE; ++c) {
            for (int k = 2; k < ARRAY_SIZE; ++k) {
                Y[r][k] = Y[r][k - 2] + sinf((float)(r / c));
            }
        }
        // check row for simd update
        for (int k = 0; k < ARRAY_SIZE; ++k) {
            if (!compare_float(X[r][k], Y[r][k], scalar)) {
                ++totalErrors_simd;
            }
        }
    }
    return totalErrors_simd;
}

int main(void) {
    float X[ARRAY_SIZE][ARRAY_SIZE];
    float Y[ARRAY_SIZE][ARRAY_SIZE];

    initialization_loop(X, Y);
    omp_simd_loop(X);
    const int totalErrors_simd = comparison_loop(X, Y);

    if (totalErrors_simd) {
        fprintf(stdout, "totalErrors_simd: %d \n", totalErrors_simd);
        fprintf(stdout, "%s : %d - FAIL: error in ordered simd computation.\n",
                __FILE__, __LINE__);
    } else {
        fprintf(stdout, "Success!\n");
    }

    return totalErrors_simd;
}
```

Before:

```
$ clang -fopenmp-simd -O3 -ffast-math -lm test.c -o test && ./test
totalErrors_simd: 15408
test.c : 76 - FAIL: error in ordered simd computation.
```

clang 19.1.0: https://godbolt.org/z/6EvhxqEhe

After:

```
$ clang -fopenmp-simd -O3 -ffast-math test.c -o test && ./test
Success!
```

Co-authored-by: Matt P. Dziubinski <matt-p.dziubinski at hpe.com>


  Commit: 3041dd5c2065d6fa98546babf7525fc5ed4532be
      https://github.com/llvm/llvm-project/commit/3041dd5c2065d6fa98546babf7525fc5ed4532be
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    R clang/test/OpenMP/simd_conservative_ordered.c

  Log Message:
  -----------
  Revert "[OpenMP][SIMD][FIX] Use conservative "omp simd ordered" lowering" (#126079)

Reverts llvm/llvm-project#123867 to fix the test failures
https://lab.llvm.org/buildbot/#/builders/144/builds/17521


  Commit: f5c4f271abe757ae49ca97475b7b77de56d24f69
      https://github.com/llvm/llvm-project/commit/f5c4f271abe757ae49ca97475b7b77de56d24f69
  Author: Arseniy Zaostrovnykh <necto.ne at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    A clang/test/Analysis/ftime-trace-bind.cpp
    A clang/test/Analysis/ftime-trace-removeDead.cpp

  Log Message:
  -----------
  [analyzer] Add -ftime-trace scopes for region-store bindings and removeDead (#125884)

>From investigation of a few slow analysis cases, I discovered that
`RegionStoreManager::bind*` and `ExprEngine::removeDead` are often the
slowest actions. This change adds explicit scope to the time trace
generated by `-ftime-trace` to enable easy diagnostics of the cases when
these functions are the slowdown culprits.

--
CPP-6109


  Commit: f2ac265c22e5eb50f11e9f8c224fd0bdffb33b72
      https://github.com/llvm/llvm-project/commit/f2ac265c22e5eb50f11e9f8c224fd0bdffb33b72
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll

  Log Message:
  -----------
  [RISCV] Reduce the LMUL for a vrgather operation if legal (#125768)

If we're lowering a shuffle to a vrgather (or vcompress), and we know
that a prefix of the operation can be done while producing the same
(defined) lanes, do the operation with a narrower LMUL.


  Commit: e225677b1f6fe9f8e928836276f1d43b0591e9de
      https://github.com/llvm/llvm-project/commit/e225677b1f6fe9f8e928836276f1d43b0591e9de
  Author: Valery Chernov <vchernov at nvidia.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/setmaxnreg-sm100a.ll

  Log Message:
  -----------
  [NVPTX] Update setmaxnreg intrinsic lowering (#125846)

The setmaxnreg PTX instruction is supported on all arch-conditionals,
known up-to cuda-12.8, from sm90 onwards. This patch
updates the predicate checks to handle this. The feature is additionally
tested in setmaxnreg-sm100a.ll


  Commit: 88b1d16c4a040cc3d919be13f0baf44f30a5aa13
      https://github.com/llvm/llvm-project/commit/88b1d16c4a040cc3d919be13f0baf44f30a5aa13
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/test/CodeGen/Mips/dins.ll

  Log Message:
  -----------
  [Mips] Use getSignedConstant() in or combine

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


  Commit: 553f8e71dd87ad7675e9edaeffdb9619b63a7cf9
      https://github.com/llvm/llvm-project/commit/553f8e71dd87ad7675e9edaeffdb9619b63a7cf9
  Author: hanbeom <kese111 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/icmp-of-xor-x.ll

  Log Message:
  -----------
  [InstCombine] simplify `icmp pred x, ~x` (#73990)

simplify compare between specific variable `X` and  `NOT(X)`

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

Fixed https://github.com/llvm/llvm-project/issues/57532.


  Commit: f7b3559ce07c83625bbe81a30a4da8ccef9ab53f
      https://github.com/llvm/llvm-project/commit/f7b3559ce07c83625bbe81a30a4da8ccef9ab53f
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    A clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/Tooling/lit.local.cfg
    M clang/test/lit.site.cfg.py.in
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M llvm/include/llvm/Frontend/Offloading/Utility.h
    M llvm/lib/Frontend/Offloading/CMakeLists.txt
    M llvm/lib/Frontend/Offloading/Utility.cpp

  Log Message:
  -----------
  [clang-linker-wrapper] Add ELF packaging for spirv64-intel OpenMP images (#125737)

Add manual ELF packaging for `spirv64-intel` images as there is no
SPIR-V linker available. This format will be expected by the runtime
plugin we will submit in the future and is compatible with the format we
already use downstream.

---------

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: c268a3f0934c625238a1391f6da55c10fecda9de
      https://github.com/llvm/llvm-project/commit/c268a3f0934c625238a1391f6da55c10fecda9de
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    A llvm/test/CodeGen/ARM/pr122670-regression.ll

  Log Message:
  -----------
  DAG: Fix extract of load combine with mismatched vector element type

Fix the case where the vector element type of the loaded extractelement
input does not match the result type of the extract.

This fixes a regression reported after
c55a7659b38946350315ac4a18d9805deb1f0a54


  Commit: b9e4bde804bee256879d5018dd7ece874e2388c1
      https://github.com/llvm/llvm-project/commit/b9e4bde804bee256879d5018dd7ece874e2388c1
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    A llvm/test/ThinLTO/X86/memprof-icp-recursive.ll
    M llvm/test/ThinLTO/X86/memprof-recursive.ll
    M llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll

  Log Message:
  -----------
  [MemProf] Re-enable cloning of callsites in recursive cycles with fixes (#125947)

This change addresses a number of issues with the support added by
PR121985 which were exposed through more exhaustive testing,
specifically places that needed updates to perform correct graph updates
in the presence of cycles.

A new test case is added that reproduces these issues, and the default
is flipped back to enabling this handling.


  Commit: 2f7d3ec02349d4503e1fa8c54665025eb4f8e173
      https://github.com/llvm/llvm-project/commit/2f7d3ec02349d4503e1fa8c54665025eb4f8e173
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/icmp-of-xor-x.ll

  Log Message:
  -----------
  [InstCombine] Regenerate test checks

The output changes in the meantime.


  Commit: 17952b3d161dd00d2cab9390672ff0556d63e6da
      https://github.com/llvm/llvm-project/commit/17952b3d161dd00d2cab9390672ff0556d63e6da
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [bazel] Port for f7b3559ce07c83625bbe81a30a4da8ccef9ab53f


  Commit: 2e18c94ad17e53d4c594baaf6bfd40460ceebc1e
      https://github.com/llvm/llvm-project/commit/2e18c94ad17e53d4c594baaf6bfd40460ceebc1e
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/openmp-offload.c

  Log Message:
  -----------
  [Clang] Forward arguments to the device compiler better (#125957)

Summary:
Currently we have a subset of arguments that are handled specially to
keep them consistent between host and device compiles, however, this is
extremely hacky as it only works on a few predetermined options. This is
a holdover from the days before the linker wrapper shuttled all of its
arguments through `clang`. Now that we just use clang, all we need to do
is just use the `--device-compiler=` option to forward it there and let
the normal toolchain handle it.

For example,
```console
clang -fopenmp --offload-arch=gfx1030,sm_89 -Xarch_nvptx64 -O3 -foffload-lto
```
will forward the `-O3` to the LTO compilation only for the NVPTX
compilation.


  Commit: 6e17ed9b04e5523cc910bf171c3122dcc64b86db
      https://github.com/llvm/llvm-project/commit/6e17ed9b04e5523cc910bf171c3122dcc64b86db
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/docs/analyzer/checkers.rst
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    R clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    R clang/test/Analysis/array-bound-v2-constraint-check.c
    M clang/test/Analysis/index-type.c
    M clang/test/Analysis/misc-ps-region-store.m
    M clang/test/Analysis/no-outofbounds.c
    A clang/test/Analysis/out-of-bounds-constraint-check.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/out-of-bounds-new.cpp
    M clang/test/Analysis/out-of-bounds-notes.c
    M clang/test/Analysis/out-of-bounds.c
    M clang/test/Analysis/outofbound-notwork.c
    M clang/test/Analysis/outofbound.c
    R clang/test/Analysis/rdar-6541136-region.c
    M clang/test/Analysis/runtime-regression.c
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/Analysis/taint-generic.cpp
    M clang/www/analyzer/open_projects.html
    M clang/www/analyzer/potential_checkers.html
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer] Consolidate array bound checkers (#125534)

Before this commit, there were two alpha checkers that used different
algorithms/logic for detecting out of bounds memory access: the old
`alpha.security.ArrayBound` and the experimental, more complex
`alpha.security.ArrayBoundV2`.

After lots of quality improvement commits ArrayBoundV2 is now stable
enough to be moved out of the alpha stage. As indexing (and dereference)
are common operations, it still produces a significant amount of false
positives, but not much more than e.g. `core.NullDereference` or
`core.UndefinedBinaryOperatorResult`, so it should be acceptable as a
non-`core` checker.

At this point `alpha.security.ArrayBound` became obsolete (there is a
better tool for the same task), so I'm removing it from the codebase.
With this I can eliminate the ugly "V2" version mark almost everywhere
and rename `alpha.security.ArrayBoundV2` to `security.ArrayBound`.

(The version mark is preserved in the filename "ArrayBoundCheckerV2", to
ensure a clear git history. I'll rename it to "ArrayBoundChecker.cpp" in
a separate commit.)

This commit adapts the unit tests of `alpha.security.ArrayBound` to
testing the new `security.ArrayBound` (= old ArrayBoundV2). Currently
the names of the test files are very haphazard, I'll probably create a
separate followup commit that consolidates this.


  Commit: ead88c787c4eba28b2148a5aaf190186bdb40820
      https://github.com/llvm/llvm-project/commit/ead88c787c4eba28b2148a5aaf190186bdb40820
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [RISCV] Prefer (select (x < 0), y, z)  -> x >> (XLEN - 1) & (y - z) + z even with Zicond. (#125772)

The Zicond version of this requires an li instruction and an
additional register.

Without Zicond we match this in a DAGCombine on RISCVISD::SELECT_CC.

This PR has 2 commits. I'll pre-commit the test change if this looks
good.


  Commit: aca829de13ecdf57318acbb040d533d4e6ea9f50
      https://github.com/llvm/llvm-project/commit/aca829de13ecdf57318acbb040d533d4e6ea9f50
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/ostream.h
    A libcxx/include/__chrono/tai_clock.h
    M libcxx/include/chrono
    M libcxx/include/module.modulemap
    M libcxx/modules/std/chrono.inc
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp
    A libcxx/test/libcxx/time/time.clock/time.clock.tai/time.clock.tai.members/assert.from_utc.pass.cpp
    A libcxx/test/libcxx/time/time.clock/time.clock.tai/time.clock.tai.members/assert.to_utc.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.tai/tai_time.ostream.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.tai/time.clock.tai.members/from_utc.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.tai/time.clock.tai.members/now.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.tai/time.clock.tai.members/to_utc.pass.cpp
    A libcxx/test/std/time/time.clock/time.clock.tai/types.compile.pass.cpp
    A libcxx/test/std/time/time.syn/formatter.tai_time.pass.cpp
    M libcxx/test/support/concat_macros.h

  Log Message:
  -----------
  [libc++][chrono] implements TAI clock. (#125550)

Implements parts of:
- P0355 Extending <chrono> to Calendars and Time Zones
- P1361 Integration of chrono with text formatting
- LWG3359 <chrono> leap second support should allow for negative leap
seconds


  Commit: 73a1c7b8d6183c9776c42094c2724f810b72c3d8
      https://github.com/llvm/llvm-project/commit/73a1c7b8d6183c9776c42094c2724f810b72c3d8
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vaddlv.ll

  Log Message:
  -----------
  [msan] Handle Arm NEON sum long across vector (#125784)

Apply handleVectorReduceIntrinsic() to llvm.aarch64.neon.[su]addlv.
Previously, these were unknown intrinsics handled suboptimally by
visitInstruction.

Updates the tests from https://github.com/llvm/llvm-project/pull/125761


  Commit: d5666294e965db2e14c0baafd4e84b57dab2060e
      https://github.com/llvm/llvm-project/commit/d5666294e965db2e14c0baafd4e84b57dab2060e
  Author: Luke Quinn <quic_lquinn at quicinc.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/test/CodeGen/RISCV/GlobalISel/combine.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/div-by-constant.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/rotl-rotr.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb-zbkb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbkb.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/shifts.ll
    A llvm/test/CodeGen/RISCV/GlobalISel/wide-scalar-shift-by-byte-multiple-legalization.ll

  Log Message:
  -----------
  [RISCV] Porting hasAllNBitUsers to RISCV GISel for instruction select  (#125795)

Ported hasAllNBitUsers to RISCV GISel side. Add GISelPredicate code to
each of the 16,32, and 64 bit words. It allows for generation of
optimized packw sequences along with other transparent narrowing
operations. Included a few new .ll files to expand testing and limited
the OptW pass Optimization to fewer options until GISel is ready for
more code generation paths

---------

Signed-off-by: Luke Quinn <quic_lquinn at quicinc.com>


  Commit: 7ac4e46b5ca97a15d63ec86ec7eac6cdca1010e7
      https://github.com/llvm/llvm-project/commit/7ac4e46b5ca97a15d63ec86ec7eac6cdca1010e7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [Clang] Fix multiple spellings of 'save-temps'

Summary:
Apparently the driver will expand `save-temps` to the EQ form sometimes,
which made this not work all the time.


  Commit: 875e014471badfd0535f33551256b2fe24b4654e
      https://github.com/llvm/llvm-project/commit/875e014471badfd0535f33551256b2fe24b4654e
  Author: Virginia Cangelosi <virginia.cangelosi at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/fprcvt-cvtf.ll

  Log Message:
  -----------
  [AArch64] Codegen for new SCVTF/UCVTF variants (FEAT_FPRCVT) (#123767)

Adds patterns of new SCVTF/UCVTF instructions to tablegen, with
associated test .ll file.


  Commit: cc0d4a5188f9e41dd8e00048d17b87529e28b694
      https://github.com/llvm/llvm-project/commit/cc0d4a5188f9e41dd8e00048d17b87529e28b694
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64] Update feature dep. for Armv9.6 extensions (#125874)

These features FEAT_FAMINMAX, FEAT_LUT and FEAT_FP8 depends on
FEAT_NEON.

Update dependency from FEAT_FP8DOT4 and FEAT_FP8DOT2. Now depends
indirectly on FEAT_NEON through FEAT_FP8


  Commit: 18bd11889386a653edb1ef5eb501c6af0094478f
      https://github.com/llvm/llvm-project/commit/18bd11889386a653edb1ef5eb501c6af0094478f
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/bindings/interface/SBFrameDocstrings.i
    M lldb/bindings/interface/SBFrameExtensions.i

  Log Message:
  -----------
  [lldb][NFC] Add documentation for SBFrame::GetRegisters (#125969)

SBFrame::GetRegisters() (and the .registers / .regs extensions in
Python) returns an array of register-set's, not registers like you might
expect from the API name. Document this.

---------

Co-authored-by: Will Hawkins <whh8b at obs.cr>


  Commit: bddc815c616aff64d70d494982f348ea365d4b3e
      https://github.com/llvm/llvm-project/commit/bddc815c616aff64d70d494982f348ea365d4b3e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  Revert "[RISCV] Prefer (select (x < 0), y, z)  -> x >> (XLEN - 1) & (y - z) + z even with Zicond. (#125772)"

This reverts commit ead88c787c4eba28b2148a5aaf190186bdb40820.

I seem to have lost the test updates when rebasing.


  Commit: 11c3f52bbbb5efa724fd1a4d518566d7180e3c31
      https://github.com/llvm/llvm-project/commit/11c3f52bbbb5efa724fd1a4d518566d7180e3c31
  Author: David Green <david.green at arm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-vadd.ll

  Log Message:
  -----------
  [AArch64] Add test for subhn xor pattern. NFC


  Commit: 5812d0bf8e920ec9a2f14b60237a07f74a9e7d6b
      https://github.com/llvm/llvm-project/commit/5812d0bf8e920ec9a2f14b60237a07f74a9e7d6b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M offload/plugins-nextgen/common/include/RPC.h
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/plugins-nextgen/common/src/RPC.cpp

  Log Message:
  -----------
  [Offload] Make only a single thread handle the RPC server thread (#126067)

Summary:
This patch just changes the interface to make starting the thread
multiple times permissable since it will only be done the first time.
Note that this does not refcount it or anything, so it's onto the user
to make sure that they don't shut down the thread before everyone is
done using it. That is the case today because the shutDown portion is
run by a single thread in the destructor phase.

Another question is if we should make this thread truly global state,
because currently it will be private to each plugin instance, so if you
have an AMD and NVIDIA image there will be two, similarly if you have
those inside of a shared library.


  Commit: efd0a7f446e9428a4e9f0067eb79f17aa328f2ac
      https://github.com/llvm/llvm-project/commit/efd0a7f446e9428a4e9f0067eb79f17aa328f2ac
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir
    M mlir/test/Dialect/LLVMIR/rocdl.mlir
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [mlir][ROCDL][~NFC] Migrate to LLVM dialect default builders (#125609)

There were a bunch of spots in ROCDL.td where we were defining our own
llvmBuilder call which could have been generated using the default
built-in one on LLVM_IntrOpBase.

This commit cleans up such usages in the interests of potentinally
enabling ROCDL import in the future and of making best practices more
obvious.

The one breaking change is renaming WaitcntOp to SWaitcntOp, which
should have minimal impact.


  Commit: 6575154b6eca80097d77db69ce1ee60c72854ee6
      https://github.com/llvm/llvm-project/commit/6575154b6eca80097d77db69ce1ee60c72854ee6
  Author: funsafe-ptr <funsafe-ptr at proton.me>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp

  Log Message:
  -----------
   [compiler-rt] Fixed Android 8.1 `getauxval(AT_PAGESZ)` crashes if called from `.preinit_array`. (#113427) (#116121)

Signed-off-by: funsafe-ptr <funsafe-ptr at proton.me>


  Commit: eb2b453eb73dfe0b8cf516dfb4d568c0b858d1fa
      https://github.com/llvm/llvm-project/commit/eb2b453eb73dfe0b8cf516dfb4d568c0b858d1fa
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/extract-insert-poison.ll
    M llvm/test/Transforms/VectorCombine/X86/extract-insert.ll
    M llvm/test/Transforms/VectorCombine/X86/load.ll
    A llvm/test/Transforms/VectorCombine/X86/pr126085.ll

  Log Message:
  -----------
  [VectorCombine] foldInsExtVectorToShuffle - ensure we call getShuffleCost with the input operand type, not the result

Typo in #121216

Fixes #126085


  Commit: 4717babaf91d151d66229c025f21e3aec685e6e0
      https://github.com/llvm/llvm-project/commit/4717babaf91d151d66229c025f21e3aec685e6e0
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [clang-linker-wrapper][lit] Fix SPIR-V OpenMP ELF test (#126098)

Fix for lit fail from https://github.com/llvm/llvm-project/pull/125737

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 8d5f280559c7d17e1e54afe3df738f65f6051386
      https://github.com/llvm/llvm-project/commit/8d5f280559c7d17e1e54afe3df738f65f6051386
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/test/Analysis/AliasAnalysis/alias-analysis-2.fir

  Log Message:
  -----------
  [flang] Adding a couple of tests to the alias analysis (#125917)

To establish a baseline for new tests mentioned in
https://github.com/llvm/llvm-project/pull/117785, adding them here
independently.


  Commit: 2feee52457086d164b0dfe7e7ede8dd20a9a4545
      https://github.com/llvm/llvm-project/commit/2feee52457086d164b0dfe7e7ede8dd20a9a4545
  Author: SunilKuravinakop <98882378+SunilKuravinakop at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  Claiming "threadset clause" for implementation. (#126023)

threadset clause is part of free-agent threads. But, free-agent threads
also involves runtime implementation. So, added an separate entry for
threadset clause and claimed it for clang.

---------

Co-authored-by: Sunil Kuravinakop <kuravina at pe31.hpc.amslabs.hpecorp.net>


  Commit: b884be86406ef1430af1609fc1b6033936afaf18
      https://github.com/llvm/llvm-project/commit/b884be86406ef1430af1609fc1b6033936afaf18
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M bolt/lib/Core/BinaryContext.cpp

  Log Message:
  -----------
  [BOLT] Exit with error code on missing DWO CU (#125976)

If BOLT fails to locate DWO CU when using split DWARF, this signifies an
issue with the input (missing .dwo) rather than an internal assertion.


  Commit: f497fe464bad8743b8a87ba04a5c53579a03711a
      https://github.com/llvm/llvm-project/commit/f497fe464bad8743b8a87ba04a5c53579a03711a
  Author: Andrea Faulds <andrea.faulds at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/lib/Conversion/UBToSPIRV/UBToSPIRV.cpp
    M mlir/lib/Conversion/VectorToSPIRV/CMakeLists.txt
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRVPass.cpp
    M mlir/test/Conversion/UBToSPIRV/ub-to-spirv.mlir
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][spirv] Fix some issues related to converting ub.poison to SPIR-V (#125905)

This is a follow-up to 5df62bdc9be9c258c5ac45c8093b71e23777fa0e. That
commit should not have needed to make the vector.insert and
vector.extract conversions to SPIR-V directly handle the static poison
index case, as there is a fold from those to ub.poison, and a conversion
pattern from ub.poison to spirv.Undef, however:

- The ub.poison fold result could not be materialized by the vector
dialect (fixed as of d13940ee263ff50b7a71e21424913cc0266bf9d4).
- The conversion pattern wasn't being populated in VectorToSPIRVPass,
which is used by the tests. This commit changes this.
- The ub.poison to spirv.Undef pattern rejected non-scalar types, which
prevented its use for vector results. It is unclear why this restriction
existed; a remark in D156163 said this was to avoid converting "user
types", but it is not obvious why these shouldn't be permitted (the
SPIR-V specification allows OpUndef for all types except OpTypeVoid).
This commit removes this restriction.

With these fixed, this commit removes the redundant static poison index
handling, and updates the tests.


  Commit: 34624d89c0424b4edcfb4b3e0ae67678b5ce3344
      https://github.com/llvm/llvm-project/commit/34624d89c0424b4edcfb4b3e0ae67678b5ce3344
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/IndVarSimplify/rewrite-loop-exit-values-phi.ll

  Log Message:
  -----------
  IndVarSimplify: improve a test, stripping undef (#126069)


  Commit: ff049e07a55f03916f18b10cdba1456cd3022b14
      https://github.com/llvm/llvm-project/commit/ff049e07a55f03916f18b10cdba1456cd3022b14
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/test/Driver/hip-sanitize-options.hip

  Log Message:
  -----------
  [AMDGPU] Do not enable GPU sanitizers by default (#126090)

Summary:
This probably wasn't the intended result, but the code here causes
OpenMP to always link in `ockl.bc` which was intentionally not linked.
This results in the OCKL definitions conflicting with the OpenMP ones
and also prevents them from being optimized out (Might be fixed with
newer ROCm that actually builds the visibility correctly).

I'm pretty sure the only reason this didn't break the tests is because
we're smart and pass `-nogpulib` there to keep the environment from
being poisoned with stuff like this.


  Commit: dcb124e820b2bf9dda60f66151591155a385580e
      https://github.com/llvm/llvm-project/commit/dcb124e820b2bf9dda60f66151591155a385580e
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
    M flang/test/Lower/OpenMP/Todo/omp-default-clause-inner-loop.f90
    M flang/test/Lower/OpenMP/associate.f90
    M flang/test/Lower/OpenMP/copyin.f90
    M flang/test/Lower/OpenMP/critical.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/default-clause.f90
    M flang/test/Lower/OpenMP/delayed-privatization-lastprivate-of-private.f90
    M flang/test/Lower/OpenMP/hlfir-wsloop.f90
    M flang/test/Lower/OpenMP/lastprivate-allocatable.f90
    M flang/test/Lower/OpenMP/lastprivate-commonblock.f90
    M flang/test/Lower/OpenMP/lastprivate-iv.f90
    M flang/test/Lower/OpenMP/location.f90
    M flang/test/Lower/OpenMP/order-clause.f90
    M flang/test/Lower/OpenMP/parallel-lastprivate-clause-scalar.f90
    M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
    M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
    M flang/test/Lower/OpenMP/parallel-reduction3.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-firstpriv.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-lastpriv.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction-byref.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-reduction.f90
    M flang/test/Lower/OpenMP/parallel-wsloop.f90
    M flang/test/Lower/OpenMP/scan.f90
    M flang/test/Lower/OpenMP/stop-stmt-in-region.f90
    M flang/test/Lower/OpenMP/target.f90
    M flang/test/Lower/OpenMP/unstructured.f90
    M flang/test/Lower/OpenMP/wsloop-chunks.f90
    M flang/test/Lower/OpenMP/wsloop-collapse.f90
    M flang/test/Lower/OpenMP/wsloop-monotonic.f90
    M flang/test/Lower/OpenMP/wsloop-nonmonotonic.f90
    M flang/test/Lower/OpenMP/wsloop-ordered.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-add.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-allocatable.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array-assumed-shape.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array2.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-iand-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-iand.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ieor-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ieor.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ior-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-ior.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-and.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-eqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-neqv.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-logical-or.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max-2-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max-2.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-max.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-min-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-min.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-min2.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul-byref.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-mul.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multi.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-multiple-clauses.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-pointer.f90
    M flang/test/Lower/OpenMP/wsloop-schedule.f90
    M flang/test/Lower/OpenMP/wsloop-unstructured.f90
    M flang/test/Lower/OpenMP/wsloop-variable.f90
    M flang/test/Lower/OpenMP/wsloop.f90
    A mlir/test/Target/LLVMIR/openmp-target-wsloop-private.mlir

  Log Message:
  -----------
  [flang][OpenMP] Enable delayed privatization by default `omp.wsloop` (#125732)

Reapplies #122471

This is based on https://github.com/llvm/llvm-project/pull/125699, only
the latest commit is relevant.

With changes in this PR and the parent one, the previously reported
failures in the Fujitsu(*) test suite should hopefully be resolved (I
verified all the 14 reported failures and they pass now).

(*) https://linaro.atlassian.net/browse/LLVM-1521


  Commit: f5d24e6cbe07902bad620df291f6172b50a7271e
      https://github.com/llvm/llvm-project/commit/f5d24e6cbe07902bad620df291f6172b50a7271e
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/exit-count-samesign.ll
    M llvm/test/Analysis/ScalarEvolution/implied-via-division.ll
    M llvm/test/Transforms/IndVarSimplify/iv-ext-samesign.ll

  Log Message:
  -----------
  SCEV: teach isImpliedViaOperations about samesign (#124270)

Use CmpPredicate::getMatching in isImpliedCondBalancedTypes to pass
samesign information to isImpliedViaOperations, and teach it to call
CmpPredicate::getPreferredSignedPredicate, effectively making it
optimize with samesign information.


  Commit: 16f7e961c600986de7814822fd118f431e0bb433
      https://github.com/llvm/llvm-project/commit/16f7e961c600986de7814822fd118f431e0bb433
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir

  Log Message:
  -----------
  [AMDGPU] Allow rematerialization of instructions with virtual register uses (#124327)

Remove the restriction that scheduling rematerialization candidates
cannot have virtual reg uses.

Currently, this only allows for virtual reg uses which are already live
at the rematerialization point, so bring in allUsesAvailableAt to check
for this condition. Because of this condition, the uses of the remats
will already be live in to the region, so the remat won't increase
live-in pressure.

Add an expensive check to check this condition.


  Commit: 1117568dadd5519e6f376fe33a074aa1f7382b1b
      https://github.com/llvm/llvm-project/commit/1117568dadd5519e6f376fe33a074aa1f7382b1b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/include/__vector/vector.h
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Remove __default_allocator_type aliases (#126066)

These aliases are never used, so we can ditch them.


  Commit: 2ef2587ae9d97d9325e9ecd11bcf4e3dff02e119
      https://github.com/llvm/llvm-project/commit/2ef2587ae9d97d9325e9ecd11bcf4e3dff02e119
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Inline the simple observer functions into the basic_string definition (#126061)

Having them defined ouf-of-line results in a significant amount of
boilerplate without improving readability, since they're just one or two
lines long anyways.

As a drive-by, add comments between the declarations to make them easier
to distinguish.


  Commit: 932d0ce32540467260bb04f6ee1ecd98a4efa245
      https://github.com/llvm/llvm-project/commit/932d0ce32540467260bb04f6ee1ecd98a4efa245
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/select-const.ll

  Log Message:
  -----------
  Recommit "[RISCV] Prefer (select (x < 0), y, z)  -> x >> (XLEN - 1) & (y - z) + z even with Zicond. (#125772)"

With the test changes.

Original message:

The Zicond version of this requires an li instruction and an
additional register.

Without Zicond we match this in a DAGCombine on RISCVISD::SELECT_CC.

This PR has 2 commits. I'll pre-commit the test change if this looks
good.


  Commit: 5c3d1463ed5c37fcf3a0bd2128e357e7332267f4
      https://github.com/llvm/llvm-project/commit/5c3d1463ed5c37fcf3a0bd2128e357e7332267f4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

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


  Commit: 975bba6f4b977efa468a5a07814786cf5da660fc
      https://github.com/llvm/llvm-project/commit/975bba6f4b977efa468a5a07814786cf5da660fc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [AMDGPU] Avoid repeated hash lookups (NFC) (#126001)


  Commit: 91c188b8e901ca1a6fe4463fc3c30cd5fce788cc
      https://github.com/llvm/llvm-project/commit/91c188b8e901ca1a6fe4463fc3c30cd5fce788cc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineRegisterInfo.h

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#126002)


  Commit: ff94b03291206176d55b46a592b0f96c32d571df
      https://github.com/llvm/llvm-project/commit/ff94b03291206176d55b46a592b0f96c32d571df
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [X86] Avoid repeated hash lookups (NFC) (#126006)


  Commit: 337604ee7e838fee937e2b310604b57e3c583ba7
      https://github.com/llvm/llvm-project/commit/337604ee7e838fee937e2b310604b57e3c583ba7
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Adopt `Emitter::OptClass` in InstrInfoEmitter (#125971)

- Use `Emitter::OptClass` to invoke `InstrInfoEmitter::run` and
eliminate the `EmitInstrInfo` function.


  Commit: c32cd5746b1335ed172d1bf58fb6498b479bd8e0
      https://github.com/llvm/llvm-project/commit/c32cd5746b1335ed172d1bf58fb6498b479bd8e0
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/test/tools/llvm-symbolizer/skip-line-zero.s
    M llvm/test/tools/llvm-symbolizer/sym-verbose.test

  Log Message:
  -----------
  Symbolize line zero as if no source info is available (#124846)

Since line zero means "no line information", when symbolizing a location
(an address or an inline frame associated with the address) that has a
line zero location, we shouldn't include other irrelevant data (like
filename) in the result.


  Commit: e41ffd3420d7c00c4c8f241b8f7f9ba210eea68f
      https://github.com/llvm/llvm-project/commit/e41ffd3420d7c00c4c8f241b8f7f9ba210eea68f
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/NaryReassociate.cpp
    M llvm/test/Transforms/NaryReassociate/nary-gep.ll

  Log Message:
  -----------
  [NaryReassociate] Fix crash from pointer width / index width confusion (#125923)

NaryReassociate would crash on expressions like the one in the added
test that involved pointers where the size of the type was greater than
the index width of the pointer, causing calls to SCEV's zext expression
on types that didn't need to be zero-extended.

This commit fixes the issue.


  Commit: f4e3b8783cb9eb9a442b14ec8ce7356fa6853387
      https://github.com/llvm/llvm-project/commit/f4e3b8783cb9eb9a442b14ec8ce7356fa6853387
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
    M mlir/include/mlir/Conversion/LLVMCommon/MemRefBuilder.h
    M mlir/include/mlir/Conversion/LLVMCommon/StructBuilder.h
    M mlir/lib/Conversion/ArmSMEToLLVM/ArmSMEToLLVM.cpp
    M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
    M mlir/lib/Conversion/FuncToLLVM/FuncToLLVM.cpp
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
    M mlir/lib/Conversion/GPUToNVVM/WmmaOpsToNvvm.cpp
    M mlir/lib/Conversion/LLVMCommon/MemRefBuilder.cpp
    M mlir/lib/Conversion/LLVMCommon/Pattern.cpp
    M mlir/lib/Conversion/LLVMCommon/VectorPattern.cpp
    M mlir/lib/Conversion/MemRefToLLVM/MemRefToLLVM.cpp
    M mlir/lib/Conversion/NVGPUToNVVM/NVGPUToNVVM.cpp
    M mlir/lib/Conversion/SPIRVToLLVM/SPIRVToLLVM.cpp
    M mlir/lib/Conversion/VectorToLLVM/ConvertVectorToLLVM.cpp
    M mlir/lib/Dialect/SparseTensor/Transforms/SparseStorageSpecifierToLLVM.cpp
    M mlir/test/Conversion/ArithToLLVM/convert-nd-vector-to-llvmir.mlir
    M mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir
    M mlir/test/Conversion/ComplexToLLVM/full-conversion.mlir
    M mlir/test/Conversion/FuncToLLVM/calling-convention.mlir
    M mlir/test/Conversion/FuncToLLVM/func-memref-return.mlir
    M mlir/test/Conversion/FuncToLLVM/func-to-llvm.mlir
    M mlir/test/Conversion/GPUCommon/memory-attrbution.mlir
    M mlir/test/Conversion/GPUToLLVMSPV/gpu-to-llvm-spv.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    M mlir/test/Conversion/GPUToNVVM/wmma-ops-to-nvvm.mlir
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir
    M mlir/test/Conversion/MemRefToLLVM/convert-dynamic-memref-ops.mlir
    M mlir/test/Conversion/MemRefToLLVM/convert-static-memref-ops.mlir
    M mlir/test/Conversion/MemRefToLLVM/expand-then-convert-to-llvm.mlir
    M mlir/test/Conversion/MemRefToLLVM/memref-to-llvm.mlir
    M mlir/test/Conversion/NVGPUToNVVM/nvgpu-to-nvvm.mlir
    M mlir/test/Conversion/SPIRVToLLVM/bitwise-ops-to-llvm.mlir
    M mlir/test/Conversion/SPIRVToLLVM/misc-ops-to-llvm.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/GPU/dynamic-shared-memory.mlir
    M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-target-tag.mlir
    M mlir/test/Dialect/LLVM/lower-to-llvm-e2e-with-top-level-named-sequence.mlir
    M mlir/test/Dialect/SparseTensor/specifier_to_llvm.mlir
    M mlir/test/Examples/transform/ChH/full.mlir

  Log Message:
  -----------
  [mlir][LLVM] Switch `undef` for `poison` for uninitialized values (#125629)

LLVM itself is generally moving away from using `undef` and towards
using `poison`, to the point of having a lint that caches new uses of
`undef` in tests.

In order to not trip the lint on new patterns and to conform to the
evolution of LLVM
- Rename valious ::undef() methods on StructBuilder subclasses to
::poison()
- Audit the uses of UndefOp in the MLIR libraries and replace almost all
of them with PoisonOp

The remaining uses of `undef` are initializing `uninitialized` memrefs,
explicit conversions to undef from SPIR-V, and a few cases in
AMDGPUToROCDL where usage like

    %v = insertelement <M x iN> undef, iN %v, i32 0
    %arg = bitcast <M x iN> %v to i(M * N)

is used to handle "i32" arguments that are are really packed vectors of
smaller types that won't always be fully initialized.


  Commit: 5492199a9aa4b5d31c38e36928ac153570091d6d
      https://github.com/llvm/llvm-project/commit/5492199a9aa4b5d31c38e36928ac153570091d6d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [llvm][AsmWriter] Don't skip zero-valued DwarfEnum MDField when ShouldSkipZero is not set (#126044)

I ran into this while working on a different patch where I'm emitting a
zero-valued DWARF enum field which shouldn't be skipped.

This patch checks the (currently unused) `ShouldSkipZero` before
deciding to skip printing this field. Based on git history this seems
like an oversight from the initial refactor that introduced this. We
have a similar check in `printInt`.

Wasn't sure how to best test this, but tests in an upcoming patch rely
on this functionality (see
https://github.com/llvm/llvm-project/pull/126045).

Currently the only place `ShouldSkipZero` is set to `false` is when
emitting the `DW_LANG_` enum. But the language codes start at `0x1`. So
it never exercised this codepath (and we should probably just make it
not pass this parameter).


  Commit: a183184e08aab6e4921c7817d117b0f850794d38
      https://github.com/llvm/llvm-project/commit/a183184e08aab6e4921c7817d117b0f850794d38
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp

  Log Message:
  -----------
  [clang-linker-wrapper][lit] Temporarily disable OpenMP SPIR-V ELF test (#126104)

The fix requires more investigation, and it's a test issue so reverting
the product changes should not be necessary.

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: f8e53a93be91299818e761afa8effd8301999336
      https://github.com/llvm/llvm-project/commit/f8e53a93be91299818e761afa8effd8301999336
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang-tools-extra/test/clang-doc/basic-project.test

  Log Message:
  -----------
  [clang-doc] Precommit end-to-end test for `--repository` option (#122565)

We test the `--repository` output in the unit tests, but that option fails to
change the HTML output in the end-to-end tests. Upcoming patches will address
the incorrect behavior.


  Commit: f2bca9e3856bd070320473a016f706bf84a5dd5e
      https://github.com/llvm/llvm-project/commit/f2bca9e3856bd070320473a016f706bf84a5dd5e
  Author: Md Asghar Ahmad Shahid <md.asghar.ahmad.shahid at intel.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgInterfaces.td
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgNamedStructuredOps.yaml
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/lib/Dialect/Linalg/Transforms/BlockPackMatmul.cpp
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
    M mlir/lib/Dialect/Linalg/Transforms/TransposeMatmul.cpp
    M mlir/python/mlir/dialects/linalg/opdsl/ops/core_named_ops.py
    M mlir/test/Dialect/Linalg/generalize-named-ops.mlir
    M mlir/test/Dialect/Linalg/invalid.mlir
    M mlir/test/Dialect/Linalg/named-ops.mlir
    M mlir/test/Dialect/Linalg/rank-reduce-contraction-ops.mlir

  Log Message:
  -----------
  [MLIR][Linalg] Introduce broadcast/transpose semantic to batch_matmul (#122275)

Goals:
1. To add syntax and semantic to 'batch_matmul' without changing any of
the existing syntax expectations for current usage. batch_matmul is
still just batch_matmul.

2. Move the definition of batch_matmul from linalg OpDsl to tablegen ODS
infra.

Scope of this patch:
To expose broadcast and transpose semantics on the 'batch_matmul'.

The broadcast and transpose semantic are as follows:

By default, 'linalg.batch_matmul' behavior will remain as is. Broadcast
and Transpose semantics can be applied by specifying the explicit
attribute 'indexing_maps' as shown below. This is a list attribute, so
the list must include all the maps if specified.

    Example Transpose:
    ```
    linalg.batch_matmul indexing_maps = [
affine_map< (d0, d1, d2, d3) -> (d0, d3, d1)>, //transpose
                   affine_map< (d0, d1, d2, d3) -> (d0, d3, d2)>,
                   affine_map< (d0, d1, d2, d3) -> (d0, d1, d2)>
                   ]
ins (%arg0, %arg1: memref<2x5x3xf32>,memref<2x5x7xf32>)
                   outs (%arg2: memref<2x3x7xf32>)
    ```

    Example Broadcast:
    ```
    linalg.batch_matmul indexing_maps = [
affine_map< (d0, d1, d2, d3) -> (d3)>, //broadcast
                       affine_map< (d0, d1, d2, d3) -> (d0, d3, d2)>,
                       affine_map< (d0, d1, d2, d3) -> (d0, d1, d2)>
                     ]
                     ins (%arg0, %arg1: memref<5xf32>,memref<2x5x7xf32>)
                     outs (%arg2: memref<2x3x7xf32>)
    ```

    Example Broadcast and transpose:
    ```
    linalg.batch_matmul indexing_maps = [
affine_map< (d0, d1, d2, d3) -> (d1, d3)>, //broadcast
affine_map< (d0, d1, d2, d3) -> (d0, d2, d3)>, //transpose
                       affine_map< (d0, d1, d2, d3) -> (d0, d1, d2)>
                     ]
ins (%arg0, %arg1: memref<3x5xf32>, memref<2x7x5xf32>)
                     outs (%arg2: memref<2x3x7xf32>)
    ```

RFCs and related PR:

https://discourse.llvm.org/t/rfc-linalg-opdsl-constant-list-attribute-definition/80149
https://discourse.llvm.org/t/rfc-op-explosion-in-linalg/82863
https://discourse.llvm.org/t/rfc-mlir-linalg-operation-tree/83586
https://github.com/llvm/llvm-project/pull/115319


  Commit: c4d75b1e9b9c22577032ba68b7560481027b4b8a
      https://github.com/llvm/llvm-project/commit/c4d75b1e9b9c22577032ba68b7560481027b4b8a
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h

  Log Message:
  -----------
  [lldb][DWARFASTParser][NFC] Fix doxygen comment


  Commit: e40610d7626a4c8eb760979176f0dce79cba6165
      https://github.com/llvm/llvm-project/commit/e40610d7626a4c8eb760979176f0dce79cba6165
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [bazel] Port for f497fe464bad8743b8a87ba04a5c53579a03711a


  Commit: b2bd3a45ec3f35eaeddf1321c9f8a0295bb125df
      https://github.com/llvm/llvm-project/commit/b2bd3a45ec3f35eaeddf1321c9f8a0295bb125df
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/NVPTX/unrecognized-sm1x.ll

  Log Message:
  -----------
  [NVPTX] Require asserts in `unrecognized-sm1x.ll` (#126105)

Fix clang-with-thin-lto-ubuntu - failed build


  Commit: 14d6e1ebf52c7bb3db8efba840e9b82d22436786
      https://github.com/llvm/llvm-project/commit/14d6e1ebf52c7bb3db8efba840e9b82d22436786
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M offload/test/sanitizer/kernel_trap.c

  Log Message:
  -----------
  Update test for symbolizer fix


  Commit: 1a7e79b85dfbce32ccab6b4fb7fc3b1906f1d997
      https://github.com/llvm/llvm-project/commit/1a7e79b85dfbce32ccab6b4fb7fc3b1906f1d997
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc] Make `--repository` change the HTML output (#122566)

The current check in writeFileDefinition() is incorrect, and prevents us
from ever emitting the URL from the clang-doc tool. The unit tests do
test this, but call the API directly circumventing the check.

This is the first step towards addressing #59814.


  Commit: ec7167bac7c89b43449dbce81e65fb09e5d27cb5
      https://github.com/llvm/llvm-project/commit/ec7167bac7c89b43449dbce81e65fb09e5d27cb5
  Author: PiJoules <6019989+PiJoules at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libc/config/baremetal/config.json

  Log Message:
  -----------
  [libc] Disable fixed point printing for baremetal (#126115)

This follows suite with disabling float printing.


  Commit: 068d0c0f4b8d3c47f2a9c3680d96f91a2a1e1c9c
      https://github.com/llvm/llvm-project/commit/068d0c0f4b8d3c47f2a9c3680d96f91a2a1e1c9c
  Author: Lei Wang <wlei at fb.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/SampleProfile.cpp
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
    M llvm/test/Transforms/SampleProfile/pseudo-probe-callee-profile-mismatch.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-profile-mismatch-thinlto.ll
    M llvm/test/Transforms/SampleProfile/pseudo-probe-profile-mismatch.ll

  Log Message:
  -----------
  [CSSPGO] Turn on call-graph matching by default for CSSPGO (#125938)

Tested call-graph matching on some of Meta's large services, it works to
reuse some renamed function profiles, no negative perf or significant
build speed regression observed. Turned it on by default for CSSPGO
mode.


  Commit: 48da1e22e2d789673066ce51fa648f5f1e6a0887
      https://github.com/llvm/llvm-project/commit/48da1e22e2d789673066ce51fa648f5f1e6a0887
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-cvt.ll
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vcvt.ll

  Log Message:
  -----------
  [msan][NFCI] Add tests for Arm NEON vector convert (#126095)

Suboptimally handled by visitInstruction: llvm.aarch64.neon.
- fcvtas, fcvtau
- fcvtms, fcvtmu
- fcvtns, fcvtnu
- fcvtps, fcvtpu
- fcvtzs, fcvtzu
- fcvtxn
- vcvtfp2fxs, vcvtfp2fxu
- vcvtfxs2fp, vcvtfxu2fp

Forked from llvm/test/CodeGen/AArch64/arm64-{cvt,vcvt}.ll


  Commit: b35749559ddd9b2d4e044ef71d13d888b8a3d8cb
      https://github.com/llvm/llvm-project/commit/b35749559ddd9b2d4e044ef71d13d888b8a3d8cb
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [OpenMP] Fix misspelled symbol name (#126120)

Summary:
This is supposed to be `__llvm_rpc_client` but I screwed it up and
didn't notice at the time. Will need to be backported.


  Commit: 6dc41a639334b913e762f65410fcd14a722b137f
      https://github.com/llvm/llvm-project/commit/6dc41a639334b913e762f65410fcd14a722b137f
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp

  Log Message:
  -----------
  [flang][NFC] Moving alias analysis utilities utilities together. Adding new utility. (#125925)

1. Our static functions are a bit spread out in this file. I am
gathering them in an anonymous namespace
2. Moving the code to get the `target` attribute on a `fir.global` into
its own utility.


  Commit: 788c88e2f6bb028ebb53af52624b93a733d34a2b
      https://github.com/llvm/llvm-project/commit/788c88e2f6bb028ebb53af52624b93a733d34a2b
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DependencyGraph] Fix dependency node iterators (#125616)

This patch fixes a bug in the dependency node iterators that would
incorrectly not skip nodes that are not in the current DAG. This
resulted in iterators returning nullptr when dereferenced.

The fix is to update the existing "skip" function to not only skip
non-instruction values but also to skip instructions not in the DAG.


  Commit: f6162108c06b7c1d38bd53d125a13677d4fa5a19
      https://github.com/llvm/llvm-project/commit/f6162108c06b7c1d38bd53d125a13677d4fa5a19
  Author: Adrian Vogelsgesang <avogelsgesang at salesforce.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package-lock.json
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Update npm dependencies (#125832)

This commit upgrades our npm dependencies to the latest available
version.

I was prompted to this change because `npm run package` failed for me
with an error. The error disappeared after upgrading `@vscode/vsce`. I
also upgraded the other dependencies because I think it's generally
preferable to stay up-to-date.

I did not bump the `@types/vscode` and `@types/node` versions, since
this would effectively make older VS-Code versions unsupported. I also
changed `@types/vscode` to be a precise version match, since we are
claiming compatibility with that version via the `enginges.vscode`
property.


  Commit: b93f8b8a97193e38f393dc07bd7945d331558e23
      https://github.com/llvm/llvm-project/commit/b93f8b8a97193e38f393dc07bd7945d331558e23
  Author: Qiongsi Wu <qiongsiwu at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/module.modulemap

  Log Message:
  -----------
  [Modules] Fix missing module dependency introduced by 7347870 (#126007)

73478708839fad8b02b3cfc84959d64a15ba93ca introduced a textual header but
did not update clang's module map. This PR adds the header to the module
map.


  Commit: a5fc7c3ac153bddab7c9d3464f17037dd5945de6
      https://github.com/llvm/llvm-project/commit/a5fc7c3ac153bddab7c9d3464f17037dd5945de6
  Author: David Pagan <dave.pagan at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/StmtProfile.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
    M clang/test/OpenMP/assume_lambda.cpp
    M clang/test/OpenMP/assume_nesting_tmpl.cpp
    M clang/test/OpenMP/assume_template.cpp
    M clang/test/OpenMP/assumes_codegen.cpp
    M clang/test/OpenMP/assumes_messages.c
    M clang/test/OpenMP/assumes_messages_attr.c
    M clang/test/OpenMP/assumes_print.cpp
    M clang/test/OpenMP/attr-assume.cpp
    M clang/tools/libclang/CIndex.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td
    M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
    M llvm/lib/IR/Assumptions.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/test/Transforms/OpenMP/icv_tracking.ll

  Log Message:
  -----------
  [clang][OpenMP] New OpenMP 6.0 assumption clause, 'no_openmp_constructs' (#125933)

Add initial parsing/sema support for new assumption clause so clause can
be specified. For now, it's ignored, just like the others.

Added support for 'no_openmp_construct' to release notes.

Testing
- Updated appropriate LIT tests.
- Testing: check-all


  Commit: 624dc00e766a1554febea289ec0f3a90f0c8047c
      https://github.com/llvm/llvm-project/commit/624dc00e766a1554febea289ec0f3a90f0c8047c
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll

  Log Message:
  -----------
  [RISCV][NFC] Remove nounwind from push/pop tests (#125939)

These tests are for frame handling code with push/pop. To increase
coverage of CFI/Unwind info, this removes the `nounwind` annotations and
regenerates the checks for this test.


  Commit: 02fa340711d9b990b50a0daf65eb850404884137
      https://github.com/llvm/llvm-project/commit/02fa340711d9b990b50a0daf65eb850404884137
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    A flang/include/flang/Testing/fp-testing.h
    A flang/include/flang/Testing/testing.h
    M flang/lib/CMakeLists.txt
    A flang/lib/Testing/CMakeLists.txt
    A flang/lib/Testing/fp-testing.cpp
    A flang/lib/Testing/testing.cpp
    M flang/unittests/Evaluate/CMakeLists.txt
    M flang/unittests/Evaluate/ISO-Fortran-binding.cpp
    M flang/unittests/Evaluate/bit-population-count.cpp
    M flang/unittests/Evaluate/expression.cpp
    M flang/unittests/Evaluate/folding.cpp
    R flang/unittests/Evaluate/fp-testing.cpp
    R flang/unittests/Evaluate/fp-testing.h
    M flang/unittests/Evaluate/integer.cpp
    M flang/unittests/Evaluate/intrinsics.cpp
    M flang/unittests/Evaluate/leading-zero-bit-count.cpp
    M flang/unittests/Evaluate/logical.cpp
    M flang/unittests/Evaluate/real.cpp
    M flang/unittests/Evaluate/reshape.cpp
    R flang/unittests/Evaluate/testing.cpp
    R flang/unittests/Evaluate/testing.h
    M flang/unittests/Evaluate/uint128.cpp

  Log Message:
  -----------
  [Flang] Promote FortranEvaluateTesting library (#124417)

The non-GTest library will be shared by unittests of Flang and Flang-RT.
Promote it as a regular library for use by both projects.

In the long term, we may want to convert these to regular GTest checks
to avoid having multiple testing frameworks.


  Commit: 4c8acbded152326ad138e1af340c0dbd5e31bbb7
      https://github.com/llvm/llvm-project/commit/4c8acbded152326ad138e1af340c0dbd5e31bbb7
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libc/test/src/stdio/fileop_test.cpp

  Log Message:
  -----------
  [libc][minor] Fix assertion in LlvmLibcFILETest.SimpleFileOperations (#126109)

The file descriptor of the first opened file is not necessarily 3, so we
change the assertion so that it's >= 0 (i.e. not an error.)

Fixes #126106


  Commit: 049aa179dc37341c3f17d3e078231c9a886bcf51
      https://github.com/llvm/llvm-project/commit/049aa179dc37341c3f17d3e078231c9a886bcf51
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h

  Log Message:
  -----------
  [VPlan] Simplify operand tuple matching in VPlanPatternMatch (NFC).

Remove some indirection when matching recipe and matcher operands by
directly using fold over parameter pack.


  Commit: da053415d214d6a66ff5f8c69eb35b2c9ada9caf
      https://github.com/llvm/llvm-project/commit/da053415d214d6a66ff5f8c69eb35b2c9ada9caf
  Author: Sinkevich Artem <artsin666 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/docs/SourceBasedCodeCoverage.rst
    M clang/docs/UsersManual.rst
    M compiler-rt/lib/profile/InstrProfilingFile.c
    A compiler-rt/test/profile/Linux/binary-id-path.c

  Log Message:
  -----------
  [profile] Add `%b` `LLVM_PROFILE_FILE` option for binary ID (#123963)

Add support for expanding `%b` in `LLVM_PROFILE_FILE` to the binary ID
(build ID). It can be used with `%m` to avoid its signature collisions.

This is supported on all platforms where writing binary IDs into
profiles is implemented, as the `__llvm_write_binary_ids` function is
used.

Fixes #51560.


  Commit: d905c7e316b941afcef32e28073b3e77c536407c
      https://github.com/llvm/llvm-project/commit/d905c7e316b941afcef32e28073b3e77c536407c
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/lib/xray/xray_tsc.h

  Log Message:
  -----------
  [XRay][SystemZ] Use stckf for non-clang compilers (#125289)

Turns out there are users who use gcc to compile compiler-rt. Using the
clang-specific builtin function `__builtin_readcyclecounter()` does not
work in this case.
Solution is to use inline assembly using the stckf instruction in case
the compiler is not clang.


  Commit: 1d319dfe7d1ea39354ff61c5568bfecad3ce3d15
      https://github.com/llvm/llvm-project/commit/1d319dfe7d1ea39354ff61c5568bfecad3ce3d15
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libcxx/test/benchmarks/GenerateInput.h
    A libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h
    A libcxx/test/benchmarks/containers/associative/flat_map.bench.cpp
    A libcxx/test/benchmarks/containers/associative/flat_multimap.bench.cpp
    A libcxx/test/benchmarks/containers/associative/map.bench.cpp
    A libcxx/test/benchmarks/containers/associative/multimap.bench.cpp
    A libcxx/test/benchmarks/containers/associative/multiset.bench.cpp
    A libcxx/test/benchmarks/containers/associative/set.bench.cpp
    A libcxx/test/benchmarks/containers/associative/unordered_map.bench.cpp
    A libcxx/test/benchmarks/containers/associative/unordered_multimap.bench.cpp
    A libcxx/test/benchmarks/containers/associative/unordered_multiset.bench.cpp
    A libcxx/test/benchmarks/containers/associative/unordered_set.bench.cpp
    R libcxx/test/benchmarks/containers/map.bench.cpp
    R libcxx/test/benchmarks/containers/ordered_set.bench.cpp
    R libcxx/test/benchmarks/containers/unordered_set.bench.cpp

  Log Message:
  -----------
  [libc++] Implement generic associative container benchmarks (#123663)

This patch implements generic associative container benchmarks for
containers with unique keys. In doing so, it replaces the existing
std::map benchmarks which were based on the cartesian product
infrastructure and were too slow to execute.

These new benchmarks aim to strike a balance between exhaustive coverage
of all operations in the most interesting case, while executing fairly
rapidly (~40s on my machine).

This bumps the requirement for the map benchmarks from C++17 to C++20
because the common header that provides associative container benchmarks
requires support for C++20 concepts.


  Commit: 98752ef893eba2bfda99ba99cc07026f00c8273f
      https://github.com/llvm/llvm-project/commit/98752ef893eba2bfda99ba99cc07026f00c8273f
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/module/cudadevice.f90

  Log Message:
  -----------
  [flang][cuda] Add interface for sinpi, cospi and sincospi (#126123)

Add interface for `sinpi`, `cospi` and `sincospi` and also expose
`sincosf`


  Commit: 74c2e9a82aa51c574c92f4c53bbe065cf8fc7a12
      https://github.com/llvm/llvm-project/commit/74c2e9a82aa51c574c92f4c53bbe065cf8fc7a12
  Author: Alex Prabhat Bara <alexpbara at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt

  Log Message:
  -----------
  [libc] generate sys/wait.h for aarch64 (#125171)

Fixes: #125102


  Commit: 1dbfbb5ce60794a5e986df706ea8e7a058115e26
      https://github.com/llvm/llvm-project/commit/1dbfbb5ce60794a5e986df706ea8e7a058115e26
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

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

  Log Message:
  -----------
  [MemProf] Stop cloning traversal on single allocation type (#126131)

We were previously checking this after recursing on all callers, but if
we already have a single allocation type there is no need to even look
at any callers. Didn't show a significant improvement overall, but it
does reduce the count of times we enter the identifyClones and do other
checks.


  Commit: da083e282cc1704c85b1724ae9b9f9d1b4cf5668
      https://github.com/llvm/llvm-project/commit/da083e282cc1704c85b1724ae9b9f9d1b4cf5668
  Author: Chandler Carruth <chandlerc at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    R clang/include/clang/Basic/BuiltinsSME.def
    R clang/include/clang/Basic/BuiltinsSVE.def
    M clang/include/module.modulemap

  Log Message:
  -----------
  [StrTable] Fix modules build and clean up stale files (#125979)

I missed a few places to tidy up from before using the tablengen files
directly for the builtins. I didn't remove all of the modulemap entries
and there were two small `.def` files left lingering. This should clean
all of that up. I went through to cross check the list of files and it
looks correct now.


  Commit: f0e1857c84186263ab3bd8b9420b54c8c5810136
      https://github.com/llvm/llvm-project/commit/f0e1857c84186263ab3bd8b9420b54c8c5810136
  Author: Alan Li <me at alanli.org>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/VectorRewritePatterns.h
    M mlir/lib/Dialect/Vector/Transforms/VectorEmulateNarrowType.cpp
    A mlir/test/Dialect/Vector/vector-emulate-narrow-type-unaligned-non-atomic.mlir
    M mlir/test/Dialect/Vector/vector-emulate-narrow-type-unaligned.mlir
    M mlir/test/lib/Dialect/MemRef/TestEmulateNarrowType.cpp

  Log Message:
  -----------
  [MLIR] Support non-atomic RMW option for emulated vector stores (#124887)

This patch is a followup of the previous one: #115922, It adds an option
to turn on emitting non-atomic rmw code sequence instead of atomic rmw.


  Commit: f7294776570e125b94bb5625905cbc57a4956760
      https://github.com/llvm/llvm-project/commit/f7294776570e125b94bb5625905cbc57a4956760
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/MinGW.cpp
    M lld/COFF/MinGW.h
    A lld/test/COFF/arm64x-export-all.s

  Log Message:
  -----------
  [LLD][COFF] Add support for MinGW auto-export on ARM64X (#125862)

Export all symbols from both EC and native symbol tables. If an explicit
export is present in either symbol table, auto-export is disabled for
both.


  Commit: b40ef2ce46480a501e530cf7ee0d434b2b8f910f
      https://github.com/llvm/llvm-project/commit/b40ef2ce46480a501e530cf7ee0d434b2b8f910f
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/MC/MCDisassembler/MCDisassembler.cpp
    M llvm/lib/Target/RISCV/Disassembler/RISCVDisassembler.cpp

  Log Message:
  -----------
  [RISCV][Disassemble] Ensure the comment stream of the disassembler is set. (#125962)


  Commit: 166b2e88378bae4d74f9bdc56f1521150162fbf1
      https://github.com/llvm/llvm-project/commit/166b2e88378bae4d74f9bdc56f1521150162fbf1
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Interval.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/IntervalTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Update DAG when a new instruction is created (#126124)

The DAG will now receive a callback whenever a new instruction is
created and will update itself accordingly.


  Commit: 8d925a1c72600807199894b5852bd8a032eca795
      https://github.com/llvm/llvm-project/commit/8d925a1c72600807199894b5852bd8a032eca795
  Author: Zequan Wu <zequanwu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/test/profile/Linux/binary-id-path.c

  Log Message:
  -----------
  [compiler-rt] Fix binary-id-path.c after da053415d214d6a66ff5f8c69eb35b2c9ada9caf


  Commit: 6e2f08b2f86aa6a2d1cb3cb3e88f0813877a3ced
      https://github.com/llvm/llvm-project/commit/6e2f08b2f86aa6a2d1cb3cb3e88f0813877a3ced
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/clang/Driver/Driver.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cuda.h

  Log Message:
  -----------
  [Clang][NFC] Clean up fetching the offloading toolchain (#125095)

Summary:
This patch cleans up how we query the offloading toolchain. We create a
single that is more similar to the existing `getToolChain` driver
function and make all the offloading handlers use it.


  Commit: fe58eee60200c91b5b4131e9dc73a5e870b3cf4d
      https://github.com/llvm/llvm-project/commit/fe58eee60200c91b5b4131e9dc73a5e870b3cf4d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChain.cpp
    M clang/test/Driver/Xarch.c

  Log Message:
  -----------
  [Clang] Only allow `clang` arguments to `-Xarch` (#126101)

Summary:
Currently the `-Xarch` argument needs to re-parse the option, which goes
through every single registered argument. This causes errors when trying
to pass `-O1` through it because it thinks it's a DXC option. This patch
changes the behavior to only allow `clang` options. Concievably we could
detect the driver mode to make this more robust, but I don't know if
there are other users for this.

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


  Commit: 01072e546fd6243b889c6cfc109e9ad761e1b17c
      https://github.com/llvm/llvm-project/commit/01072e546fd6243b889c6cfc109e9ad761e1b17c
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    A clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCast-errors.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCasts.hlsl

  Log Message:
  -----------
  [HLSL] Implement HLSL Flat casting (excluding splat cases) (#118842)

Implement HLSLElementwiseCast excluding support for splat cases
Do not support casting types that contain bitfields.
Partly closes #100609 and partly closes #100619


  Commit: 97b08b8ee06b8a822a3b0013d19aac64f4f0c3d2
      https://github.com/llvm/llvm-project/commit/97b08b8ee06b8a822a3b0013d19aac64f4f0c3d2
  Author: Prashant Kumar <pk5561 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Conversion/ArithToAMDGPU/ArithToAMDGPU.cpp
    M mlir/test/Conversion/ArithToAMDGPU/8-bit-floats.mlir

  Log Message:
  -----------
  [mlir][amdgpu] Support for 8bit extf for 0d vector type (#126102)

For 0d vector type the rewrite crashes.


  Commit: 8b65411b006cbe302dea7d00ff79abddd1403061
      https://github.com/llvm/llvm-project/commit/8b65411b006cbe302dea7d00ff79abddd1403061
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/test/API/commands/register/register/register_command/TestRegisters.py
    M lldb/test/API/commands/watchpoints/unaligned-watchpoint/TestUnalignedWatchpoint.py
    M lldb/test/API/functionalities/breakpoint/hardware_breakpoints/hardware_breakpoint_on_multiple_threads/TestHWBreakMultiThread.py
    M lldb/test/API/functionalities/scripted_process/TestStackCoreScriptedProcess.py
    M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyBreakpoints.py
    M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyCrash.py
    M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManySignals.py
    M lldb/test/API/functionalities/thread/concurrent_events/TestConcurrentManyWatchpoints.py
    M lldb/test/API/functionalities/watchpoint/large-watchpoint/TestLargeWatchpoint.py
    M lldb/test/API/functionalities/watchpoint/unaligned-spanning-two-dwords/TestUnalignedSpanningDwords.py
    M lldb/test/API/macosx/corefile-exception-reason/TestCorefileExceptionReason.py
    M lldb/test/API/macosx/debugserver-exit-code/TestDebugServerExitCode.py
    M lldb/test/API/macosx/early-process-launch/TestEarlyProcessLaunch.py
    M lldb/test/API/macosx/ignore_exceptions/TestIgnoredExceptions.py
    M lldb/test/API/macosx/profile_vrs_detach/TestDetachVrsProfile.py
    M lldb/test/API/macosx/simulator/TestSimulatorPlatform.py
    M lldb/test/API/macosx/skinny-corefile/TestSkinnyCorefile.py
    M lldb/test/API/macosx/stack-corefile/TestStackCorefile.py
    M lldb/test/API/macosx/unregistered-macho/TestUnregisteredMacho.py
    M lldb/test/API/tools/lldb-server/register-reading/TestGdbRemoteGPacket.py

  Log Message:
  -----------
  [lldb][NFC] Remove old skipIfOutOfTreeDebugserver's (#126144)

When a test depends on a new debugserver feature/fix, the API test must
be marked @skipIfOutOfTreeDebugserver because the macOS CI bots test
using the latest Xcode release debugserver. But over time all of these
fixes & new features are picked up in the Xcode debugserver and these
skips can be removed.

We may see unexpected test failures from removing all of these 1+ year
old skips, but that's likely a separate reason the test is failing that
is being papered over by this skip.


  Commit: 5399782508e9573b0d2f184b151997375a1dfdeb
      https://github.com/llvm/llvm-project/commit/5399782508e9573b0d2f184b151997375a1dfdeb
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/IR/Function.h
    M llvm/include/llvm/IR/GlobalObject.h
    M llvm/include/llvm/IR/MDBuilder.h
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/IR/Function.cpp
    M llvm/lib/IR/Globals.cpp
    M llvm/lib/IR/MDBuilder.cpp
    A llvm/test/CodeGen/X86/data-section-prefix.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/section-samplepgo.ll
    M llvm/test/Transforms/CodeGenPrepare/X86/section.ll
    M llvm/test/Transforms/HotColdSplit/coldentrycount.ll
    M llvm/test/Transforms/SampleProfile/section-accurate-samplepgo.ll

  Log Message:
  -----------
  [IR] Generalize Function's {set,get}SectionPrefix to GlobalObjects, the base class of {Function, GlobalVariable, IFunc} (#125757)

This is a split of https://github.com/llvm/llvm-project/pull/125756


  Commit: 8fb1b3f4b23ecc2fc39f1a1c07244304565cfb21
      https://github.com/llvm/llvm-project/commit/8fb1b3f4b23ecc2fc39f1a1c07244304565cfb21
  Author: David Pagan <dave.pagan at amd.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Semantics/check-omp-structure.cpp
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h

  Log Message:
  -----------
  [flang][OpenMP] 'no_openmp_constructs' added to clang broke flang build (#126145)

Adding 'no_openmp_constructs' assumption clause to clang broke the flang
build. Adding to flang so it builds.

Testing
- Build
- Testing: check-all


  Commit: 163ccfac33201948eb430db6fac38d265958cfaa
      https://github.com/llvm/llvm-project/commit/163ccfac33201948eb430db6fac38d265958cfaa
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/bindings/interface/SBFrameDocstrings.i

  Log Message:
  -----------
  [lldb][NFC] whitespace reflow


  Commit: 14716f2e4b2d771af0fe9163540a8f08ffe1e5ec
      https://github.com/llvm/llvm-project/commit/14716f2e4b2d771af0fe9163540a8f08ffe1e5ec
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    R clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    R clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    R clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
    R clang/test/SemaHLSL/Language/ElementwiseCast-errors.hlsl
    R clang/test/SemaHLSL/Language/ElementwiseCasts.hlsl

  Log Message:
  -----------
  Revert "[HLSL] Implement HLSL Flat casting (excluding splat cases)" (#126149)

Reverts llvm/llvm-project#118842


  Commit: a15618f18cb000cce59df810c9e75153aa5e0aca
      https://github.com/llvm/llvm-project/commit/a15618f18cb000cce59df810c9e75153aa5e0aca
  Author: Avik Pal <avik.pal.2017 at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir-c/Dialect/Func.h
    M mlir/lib/CAPI/Dialect/Func.cpp

  Log Message:
  -----------
  [mlir] feat: add `mlirFuncSetResultAttr` (#125972)

cc @ftynse @wsmoses


  Commit: 464f65adacd812aead775308ab7f1952fee774db
      https://github.com/llvm/llvm-project/commit/464f65adacd812aead775308ab7f1952fee774db
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/unittests/DebugInfo/DWARF/DWARFDebugLineTest.cpp

  Log Message:
  -----------
  [DebugInfo][DWARF] Utilize DW_AT_LLVM_stmt_sequence attr in line table lookups (#123391)

**Summary**
Add support for filtering line table entries based on
`DW_AT_LLVM_stmt_sequence` attribute when looking up address ranges.
This ensures that line entries are correctly attributed to their
corresponding functions, even when multiple functions share the same
address range due to optimizations.

**Background**
In https://github.com/llvm/llvm-project/pull/110192 we added support to
clang to generate the `DW_AT_LLVM_stmt_sequence` attribute for
`DW_TAG_subprogram`'s. Corresponding RFC: [New DWARF Attribute for
Symbolication of Merged
Functions](https://discourse.llvm.org/t/rfc-new-dwarf-attribute-for-symbolication-of-merged-functions/79434)

The `DW_AT_LLVM_stmt_sequence` attribute allows accurate attribution of
line number information to their corresponding functions, even in
scenarios where functions are merged or share the same address space due
to optimizations like Identical Code Folding (ICF) in the linker.

**Implementation Details**
The patch modifies `DWARFDebugLine::lookupAddressRange` to accept an
optional DWARFDie parameter. When provided, the function checks if the
`DIE` has a `DW_AT_LLVM_stmt_sequence` attribute. This attribute
contains an offset into the line table that marks where the line entries
for this DIE's function begin.

If the attribute is present, the function filters the results to only
include line entries from the sequence that starts at the specified
offset. This ensures that even when multiple functions share the same
address range, we return only the line entries that actually belong to
the function represented by the DIE.

The implementation:
- Adds an optional DWARFDie parameter to lookupAddressRange
- Extracts the `DW_AT_LLVM_stmt_sequence` offset if present
- Modifies the address range lookup logic to filter sequences based on
their offset
- Returns only line entries from the matching sequence


  Commit: a0d86b23c0c81d0900c9d361035f02989e2647a4
      https://github.com/llvm/llvm-project/commit/a0d86b23c0c81d0900c9d361035f02989e2647a4
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
    A llvm/test/Transforms/SandboxVectorizer/scheduler.ll
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp

  Log Message:
  -----------
  [SandboxVec][Scheduler] Notify scheduler about instruction creation (#126141)

This patch implements the vectorizer's callback for getting notified
about new instructions being created. This updates the scheduler state,
which may involve removing dependent instructions from the ready list
and update the "scheduled" flag.
Since we need to remove elements from the ready list, this patch also
implements the `remove()` operation.


  Commit: b8002933e92f89600521be420376ec111ad367f1
      https://github.com/llvm/llvm-project/commit/b8002933e92f89600521be420376ec111ad367f1
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Utility/ThreadMemory.h
    M lldb/test/API/functionalities/plugins/python_os_plugin/TestPythonOSPlugin.py

  Log Message:
  -----------
  [lldb] Add missing return statements in ThreadMemory (#126128)

These prevented ThreadMemory from correctly returning the
Name/Queue/Info of the backing thread.

Note about testing: this test only finds regressions if the system sets
a name or queue for the backing thread. While this may not be true
everywhere, it still provides coverage in some systems, e.g. in Apple
platforms.


  Commit: b7279ed5b3ae3e7b0fd61e0f08c86fb1958f0b6f
      https://github.com/llvm/llvm-project/commit/b7279ed5b3ae3e7b0fd61e0f08c86fb1958f0b6f
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/lib/xray/CMakeLists.txt
    M compiler-rt/lib/xray/xray_tsc.h

  Log Message:
  -----------
  [SystemZ][XRay] Make xray work with gcc (#126154)

It seems that depending on the platform, gcc acceptts or does not accept
`-mvx` without specifying an architecture actually having vector
instructions. The solution which seems to work across different versions
of gcc and clang is to specify the least architecture which has vector
instructions.

In addition, initialization of the unused variable CPU prevents a
compiler warning from gcc.


  Commit: 778861742d6dd1c5c11fa4d361fdc9cd69131e0a
      https://github.com/llvm/llvm-project/commit/778861742d6dd1c5c11fa4d361fdc9cd69131e0a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++][NFC] Replace typedefs with using aliases in <string> (#126070)


  Commit: 5a056f91be33df87485a6d1608128305f834e0eb
      https://github.com/llvm/llvm-project/commit/5a056f91be33df87485a6d1608128305f834e0eb
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp

  Log Message:
  -----------
  [SystemZ] Avoid repeated hash lookups (NFC) (#126005)

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


  Commit: 4590f755cf585284df68e9e5a4276540a5fbae1e
      https://github.com/llvm/llvm-project/commit/4590f755cf585284df68e9e5a4276540a5fbae1e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126011)


  Commit: d0f122b9c5a5c6d26971d7ed57aeed8606da1ade
      https://github.com/llvm/llvm-project/commit/d0f122b9c5a5c6d26971d7ed57aeed8606da1ade
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanUtils.h
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp

  Log Message:
  -----------
  [LV] Update incoming blocks in VPWidenPHIRecipe in reassociateBlocks (#125481)

This is extracted from #118638

After c7ebe4f we will crash in fixNonInductionPHIs if we use a
VPWidenPHIRecipe with the vector preheader as an incoming block, because
the phi will reference the old non-IRBB vector preheader.

This fixes this by updating VPBlockUtils::reassociateBlocks to update
any VPWidenPHIRecipes's incoming blocks.

This assumes that if the VPWidenPHIRecipe is in a VPRegionBlock, it's in
the entry block, and that we are replacing a VPBasicBlock with another
VPBasicBlock.


  Commit: 7f7605d3856432023a4acbd62fd3474c29da54fe
      https://github.com/llvm/llvm-project/commit/7f7605d3856432023a4acbd62fd3474c29da54fe
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/test/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Frontend/Offloading/BUILD.gn

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


  Commit: 3d35246c50ee67a71552ead70a6b0b15d7358ec5
      https://github.com/llvm/llvm-project/commit/3d35246c50ee67a71552ead70a6b0b15d7358ec5
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/allocator_config.def
    M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp

  Log Message:
  -----------
  [scudo] Make guard pages optional in the secondary (#125960)

Add an optional flag for the secondary allocator called
`EnableGuardPages` to enable/disable the use of guard pages. By default,
this option is enabled.


  Commit: f5b41318b0feb042d51c4e8b66812423ed34b80f
      https://github.com/llvm/llvm-project/commit/f5b41318b0feb042d51c4e8b66812423ed34b80f
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

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


  Commit: 6807164500e9920638e2ab0cdb4bf8321d24f8eb
      https://github.com/llvm/llvm-project/commit/6807164500e9920638e2ab0cdb4bf8321d24f8eb
  Author: c8ef <c8ef at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/CMakeLists.txt
    M libc/docs/headers/index.rst
    M libc/include/CMakeLists.txt
    A libc/include/endian.h.def
    A libc/include/endian.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/endian-macros.h
    A libc/utils/docgen/endian.yaml

  Log Message:
  -----------
  [libc] Add the `<endian.h>` header. (#125168)

Closes [#124631](https://github.com/llvm/llvm-project/issues/124631).
ref:
https://pubs.opengroup.org/onlinepubs/9799919799/basedefs/endian.h.html

This patch adds the implementation of `endian.h`, which includes the
header itself and three related macros. These macros in the header rely
on the compiler preprocessor, similar to how
https://github.com/llvm/llvm-project/blob/main/libc/src/__support/endian_internal.h
does. Hopefully this will meet the requirements for compiling llvm with
llvm-libc.


  Commit: d8e0b130bd7b2dd168642a82056b8eca21c49f9f
      https://github.com/llvm/llvm-project/commit/d8e0b130bd7b2dd168642a82056b8eca21c49f9f
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Target/Process.h

  Log Message:
  -----------
  [lldb][NFC] Small comment fix in Process.h


  Commit: 6f508492d13944edd0e7e70a3cc34eb29caeb8e9
      https://github.com/llvm/llvm-project/commit/6f508492d13944edd0e7e70a3cc34eb29caeb8e9
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp

  Log Message:
  -----------
  [webkit.UncountedLambdaCapturesChecker] Fix a regression that [[noescape]] on a member function no longer works. (#126016)


  Commit: 0cbc4983adcdbbd85ccb38b2dfbfe5985367b1b2
      https://github.com/llvm/llvm-project/commit/0cbc4983adcdbbd85ccb38b2dfbfe5985367b1b2
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Target/LanguageRuntime.h
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/CPlusPlus/ItaniumABI/ItaniumABILanguageRuntime.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV1.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.h
    M lldb/source/Plugins/LanguageRuntime/ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/GNUstepObjCRuntime/GNUstepObjCRuntime.h
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/source/ValueObject/ValueObjectDynamicValue.cpp
    M lldb/unittests/TestingSupport/Symbol/ClangTestUtils.h
    M lldb/unittests/ValueObject/CMakeLists.txt
    A lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp

  Log Message:
  -----------
  [lldb] Make ValueObjectDynamicValue::UpdateValue() point to  a host b… (#125143)

…uffer

ValueObjectDynamicValue::UpdateValue() assumes that the dynamic type
found by GetDynamicTypeAndAddress() would return an address in the
inferior. This commit makes it so it can deal with being passed a host
address instead.

This is needed downstream by the Swift fork.

rdar://143357274


  Commit: 003a2bf95415afef74d2c3d4a44c3f2ad1fe582d
      https://github.com/llvm/llvm-project/commit/003a2bf95415afef74d2c3d4a44c3f2ad1fe582d
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp

  Log Message:
  -----------
  [lldb][Darwin] Change DynamicLoaderDarwin to default to new SPI (#126171)

In Sep 2016 and newer Darwin releases, debugserver uses libdyld SPI to
gather information about the binaries loaded in a process. Before Sep
2016, lldb would inspect the dyld internal data structures directly
itself to find this information.

DynamicLoaderDarwin::UseDYLDSPI currently defaults to the old
inspect-dyld-internal-structures method for binaries
(DynamicLoaderMacOSXDYLD). If it detects that the Process' host OS
version is new enough, it enables the newer libdyld SPI methods in
debugserver (DynamicLoaderMacOS).

This patch changes the default to use the new libdyld SPI interfaces. If
the Process has a HostOS and it is one of the four specific OSes that
existed in 2015 (Mac OS X, iOS, tvOS, watchOS) with an old version
number, then we will enable the old DynamicLoader plugin.

If this debug session is a corefile, we will always use the old
DynamicLoader plugin -- the libdyld SPI cannot run against a corefile,
lldb must read metadata or the dyld internal data structures in the
corefile to find the loaded binaries.


  Commit: 01ac6fc9099f814517cf8ab405f3f6b646ca09d1
      https://github.com/llvm/llvm-project/commit/01ac6fc9099f814517cf8ab405f3f6b646ca09d1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Use range-based for loops. NFC


  Commit: 50ae1c7bf40ba50aaf3132fa869eda8f06648155
      https://github.com/llvm/llvm-project/commit/50ae1c7bf40ba50aaf3132fa869eda8f06648155
  Author: Tiezhu Yang <yangtiezhu at loongson.cn>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp

  Log Message:
  -----------
  [LLDB][LoongArch] Fix build errors about NT_LOONGARCH_HW_{BREAK,WATCH} (#126020)

On some OS distros such as LoongArch Fedora 38 mate-5 [1], there are
no macro definitions NT_LOONGARCH_HW_BREAK and NT_LOONGARCH_HW_WATCH
in the system header, then there exist some errors when building LLDB
on LoongArch.

(1) Description of Problem:

```
llvm-project/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp:529:16:
error: 'NT_LOONGARCH_HW_WATCH' was not declared in this scope; did you mean 'NT_LOONGARCH_LBT'?
  529 |   int regset = NT_LOONGARCH_HW_WATCH;
      |                ^~~~~~~~~~~~~~~~~~~~~
      |                NT_LOONGARCH_LBT
llvm-project/lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp:543:12:
error: 'NT_LOONGARCH_HW_BREAK' was not declared in this scope; did you mean 'NT_LOONGARCH_CSR'?
  543 |   regset = NT_LOONGARCH_HW_BREAK;
      |            ^~~~~~~~~~~~~~~~~~~~~
      |            NT_LOONGARCH_CSR
```

(2) Steps to Reproduce:

```
git clone https://github.com/llvm/llvm-project.git
mkdir -p llvm-project/llvm/build && cd llvm-project/llvm/build
cmake .. -G "Ninja" \
         -DCMAKE_BUILD_TYPE=Release \
         -DLLVM_BUILD_RUNTIME=OFF \
         -DLLVM_ENABLE_PROJECTS="clang;lldb" \
         -DCMAKE_INSTALL_PREFIX=/usr/local/llvm \
         -DLLVM_TARGETS_TO_BUILD="LoongArch" \
         -DLLVM_HOST_TRIPLE=loongarch64-redhat-linux
ninja
```

(3) Additional Info:

Maybe there are no problems on the OS distros with newer glibc devel
library, so this issue is related with OS distros.

(4) Root Cause Analysis:

This is because the related Linux kernel commit [2] was merged in
2023-02-25 and the glibc devel library has some delay with kernel,
the glibc version of specified OS distros is not updated in time.

(5) Final Solution:

One way is to ask the maintainer of OS distros to update glibc devel
library, but it is better to not depend on the glibc version.

In order to avoid the build errors, just define NT_LOONGARCH_HW_BREAK
and NT_LOONGARCH_HW_WATCH in LLDB if there are no these definitions in
the system header.

By the way, in order to fit within 80 columns, use C++-style comments
for the new added NT_LOONGARCH_HW_BREAK and NT_LOONGARCH_HW_WATCH.

While at it, for consistency, just modify the current NT_LOONGARCH_LSX
and NT_LOONGARCH_LASX to C++-style comments too.

[1]
https://mirrors.wsyu.edu.cn/fedora/linux/development/rawhide/Everything/loongarch64/iso/livecd-fedora-mate-5.loongarch64.iso
[2]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=1a69f7a161a7

Signed-off-by: Tiezhu Yang <yangtiezhu at loongson.cn>


  Commit: 7811c20bcd9d5b117a9543d74c71448fe9970fe6
      https://github.com/llvm/llvm-project/commit/7811c20bcd9d5b117a9543d74c71448fe9970fe6
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp

  Log Message:
  -----------
  [ORC] Add a FIXME. NFC.


  Commit: d9500f5032312776c69e4bf41722d62ef9c76e49
      https://github.com/llvm/llvm-project/commit/d9500f5032312776c69e4bf41722d62ef9c76e49
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Transforms/IPO/OpenMPOpt.cpp
    M llvm/test/Transforms/OpenMP/spmdization.ll

  Log Message:
  -----------
  [OpenMP] Fix the OpenMPOpt pass incorrectly optimizing if definition was missing

Summary:
This code is intended to block transformations if the call isn't
present, however the way it's coded it silently lets it pass if the
definition doesn't exist at all. This previously was always valid since
we included the runtime as one giant blob so everything was always
there, but now that we want to move towards separate ones, it's not
quite correct.


  Commit: b00b193728aef6f8a9685d0802c4382801d9efca
      https://github.com/llvm/llvm-project/commit/b00b193728aef6f8a9685d0802c4382801d9efca
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/lib/Semantics/check-declarations.cpp
    M flang/test/Semantics/cuf03.cuf

  Log Message:
  -----------
  [flang][cuda] Allow POINTER component to have device attribute (#126116)


  Commit: 070c88829251defc268fbfe1c1fe18d2066bdce2
      https://github.com/llvm/llvm-project/commit/070c88829251defc268fbfe1c1fe18d2066bdce2
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Lower syncwarp to NVVM intrinsic (#126164)


  Commit: 50cdf6cbc5035345507bb4d23fcb0292272754eb
      https://github.com/llvm/llvm-project/commit/50cdf6cbc5035345507bb4d23fcb0292272754eb
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/rvv/rv32-spill-vector-csr.ll
    M llvm/test/CodeGen/RISCV/zcmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/zcmp-with-float.ll

  Log Message:
  -----------
  [RISCV] Allow spilling to unused Zcmp Stack (#125959)

This is a tiny change that can save up to 16 bytes of stack allocation,
which is more beneficial on RV32 than RV64.

cm.push allocates multiples of 16 bytes, but only uses a subset of those
bytes for pushing callee-saved registers. Up to 12 (rv32) or 8 (rv64)
bytes are left unused, depending on how many registers are pushed.
Before this change, we told LLVM that the entire allocation was used, by
creating a fixed stack object which covered the whole allocation.

This change instead gives an accurate extent to the fixed stack object,
to only cover the registers that have been pushed. This allows the
PrologEpilogInserter to use any unused bytes for spills. Potentially
this saves an extra move of the stack pointer after the push, because
the push can allocate up to 48 more bytes than it needs for registers.

We cannot do the same change for save/restore, because the restore
routines restore in batches of `stackalign/(xlen/8)` registers, and we
don't want to clobber the saved values of registers that we didn't tell
the compiler we were saving/restoring - for instance `__riscv_restore_0`
is used by the compiler when it only wants to save `ra`, but will end up
restoring `ra` and `s0`.


  Commit: 9cd83d6ea238d7aaba0c040f1bfbf6ba64fcc208
      https://github.com/llvm/llvm-project/commit/9cd83d6ea238d7aaba0c040f1bfbf6ba64fcc208
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/sign-test-and-or.ll

  Log Message:
  -----------
  [InstCombine] Drop samesign in `foldLogOpOfMaskedICmps` (#125829)

Alive2: https://alive2.llvm.org/ce/z/6zLAYp

Note: We can also apply this fix to the logic below (`if (Mask &
AMask_NotAllOnes)`), but it seems unreachable.


  Commit: 99099cd63516bd87665a5199547f6daa9f8d6ce3
      https://github.com/llvm/llvm-project/commit/99099cd63516bd87665a5199547f6daa9f8d6ce3
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp

  Log Message:
  -----------
  [lldb] Use Lambda to simplify repeptitive code in DynamicLoaderDarwin (NFC) (#126175)

I suggested using a lambda in #126171 but @jasonmolenda missed it.


  Commit: 4d3148d92681c154de51379a0cf393f9af8e1d75
      https://github.com/llvm/llvm-project/commit/4d3148d92681c154de51379a0cf393f9af8e1d75
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-reduction.ll

  Log Message:
  -----------
  [LV][EVL] Fix the check for legality of folding with EVL. (#125678)

The current legality check for folding with EVL has incomplete
verification for VF.
This patch fixes the VF check, ensuring that tail folding with EVL is
enabled only when a scalable VF is available. This allows loops that
prefer tail folding with EVL but cannot use scalable VF vectorization to
still be vectorized using a fixed VF, rather than abandoning
vectorization entirely.


  Commit: 7fa57cd430f5811beed8cfc862768238fc5d06bb
      https://github.com/llvm/llvm-project/commit/7fa57cd430f5811beed8cfc862768238fc5d06bb
  Author: Karim Nosseir <44206880+karimnosseir at users.noreply.github.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Bytecode/BytecodeWriter.h
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp

  Log Message:
  -----------
  [MLIR] Add move constructor to BytecodeWriterConfig (#126130)

The config is currently not movable and because there are constructors
the default move won't be generated, which prevents it from being moved.
Also, it is not copyable because of the unique_ptr. This PR adds move
constructor to allow moving it.


  Commit: d21fc58aeeaa7f0369a24dbe70a0360e0edbf76f
      https://github.com/llvm/llvm-project/commit/d21fc58aeeaa7f0369a24dbe70a0360e0edbf76f
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
    M llvm/lib/Target/AMDGPU/SIRegisterInfo.h
    M llvm/test/CodeGen/AMDGPU/copy-illegal-type.ll
    M llvm/test/CodeGen/AMDGPU/ctpop64.ll
    M llvm/test/CodeGen/AMDGPU/idot2.ll
    M llvm/test/CodeGen/AMDGPU/load-global-i32.ll
    M llvm/test/CodeGen/AMDGPU/peephole-opt-fold-reg-sequence-subreg.mir
    M llvm/test/CodeGen/AMDGPU/peephole-opt-regseq-removal.mir
    M llvm/test/CodeGen/AMDGPU/spill-scavenge-offset.ll

  Log Message:
  -----------
  AMDGPU: Use default shouldRewriteCopySrc (#125535)

This was ultimately working around bugs in subregister handling
in peephole-opt. In the common case, it would give up on folding
anything into a subregister extract copy.


  Commit: a1984ec5eab09f9b49c232eb00827c3718f5940f
      https://github.com/llvm/llvm-project/commit/a1984ec5eab09f9b49c232eb00827c3718f5940f
  Author: Ming-Yi Lai <ming-yi.lai at mediatek.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    A llvm/test/tools/llvm-readobj/ELF/RISCV/note-gnu-property.yaml
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [llvm-readobj][ELF][RISCV] Dump .note.gnu.property section contents (#125642)

RISCV Zicfilp/Zicfiss extensions uses the `.note.gnu.property` section
to store flags indicating the adoption of features based on these
extensions. This patch enables the llvm-readobj/llvm-readelf tools to
dump these flags with the `--note` flag.


  Commit: 63bb4ba84a22279c1cdd4953f0c19269b23a9d32
      https://github.com/llvm/llvm-project/commit/63bb4ba84a22279c1cdd4953f0c19269b23a9d32
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h

  Log Message:
  -----------
  [ORC] Add ExecutionSession convenience methods to access bootstrap values.

The getBootstrapMap, getBootstrapMapValue, getBootstrapSymbolsMap, and
getBootstrapSymbols methods forward to their respective counterparts in
ExecutorProcessControl, similar to the callWrapper functions.

These methods will be used to simplify an upcoming patch that accesses
the bootstrap values.


  Commit: e2eaf8ded78507100513a17e8193e2c4b094f8da
      https://github.com/llvm/llvm-project/commit/e2eaf8ded78507100513a17e8193e2c4b094f8da
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/MachOPlatform.h
    A llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/DefaultHostBootstrapValues.h
    M llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/MachOPlatform.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt
    A llvm/lib/ExecutionEngine/Orc/TargetProcess/DefaultHostBootstrapValues.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/OrcRTBootstrap.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp

  Log Message:
  -----------
  [ORC] Force eh-frame use for older Darwins on x86-64 in MachOPlatform, LLJIT.

The system libunwind on older Darwins does not support JIT registration of
compact-unwind. Since the CompactUnwindManager utility discards redundant
eh-frame FDEs by default we need to remove the compact-unwind section first
when targeting older libunwinds in order to preserve eh-frames.

While LLJIT was already doing this as of eae6d6d18bd, MachOPlatform was not.
This was causing buildbot failures in the ORC runtime (e.g. in
https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-RA/3479/).

This patch updates both LLJIT and MachOPlatform to check a bootstrap value,
"darwin-use-ehframes-only", to determine whether to forcibly preserve
eh-frame sections. If this value is present and set to true then compact-unwind
sections will be discarded, causing eh-frames to be preserved. If the value is
absent or set to false then compact-unwind will be used and redundant FDEs in
eh-frames discarded (FDEs that are needed by the compact-unwind section are
always preserved).

rdar://143895614


  Commit: 083686daf9feb5b5acadaef22e60b10a8b781f8a
      https://github.com/llvm/llvm-project/commit/083686daf9feb5b5acadaef22e60b10a8b781f8a
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/TargetProcess/BUILD.gn

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


  Commit: 9b8297bc7ea8f217a3f701afedd2c953a4ad7867
      https://github.com/llvm/llvm-project/commit/9b8297bc7ea8f217a3f701afedd2c953a4ad7867
  Author: Jameson Nash <vtjnash at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Analysis/CFG.cpp
    M clang/test/Analysis/NewDelete-checker-test.cpp
    A clang/test/Analysis/dtor-union.cpp

  Log Message:
  -----------
  [analyzer] Do not destruct fields of unions (#122330)

The C++ standard prohibits this implicit destructor call, leading to
incorrect reports from clang-analyzer. This causes projects that use
std::option (including llvm) to fail the cplusplus.NewDelete test
incorrectly when run through the analyzer.

Fixes #119415


  Commit: 35afd022ee5735c746c39b5b2cd24872333012fd
      https://github.com/llvm/llvm-project/commit/35afd022ee5735c746c39b5b2cd24872333012fd
  Author: Mahesh-Attarde <mahesh.attarde at intel.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/GISel/X86RegisterBankInfo.cpp
    A llvm/test/CodeGen/X86/GlobalISel/isel-fcmp-i686.mir
    A llvm/test/CodeGen/X86/isel-fcmp-x87.ll
    A llvm/test/CodeGen/X86/isel-fcmp.ll

  Log Message:
  -----------
  [X86][GlobalISel] Support G_FCMP for scalar cases (#123598)

With this patch, we are enabling comparisons for Long double (80) types
on X87 stack. It lowers G_FCMP.

---------

Co-authored-by: mattarde <mattarde at intel.com>


  Commit: b7feccb31dba8f512c97f89cd413625016f34cf3
      https://github.com/llvm/llvm-project/commit/b7feccb31dba8f512c97f89cd413625016f34cf3
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-06 (Thu, 06 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemProfiler.cpp
    A llvm/test/Transforms/PGOProfile/memprof-dump-matched-call-sites.ll
    M llvm/test/Transforms/PGOProfile/memprof.ll

  Log Message:
  -----------
  [memprof] Dump call site matching information (#125130)

MemProfiler.cpp annotates the IR with the memory profile so that we
can later duplicate context. This patch dumps the entire inline call
stack
for each call site match.


  Commit: 74192e57f7208926ab15502cc6ac31e4d8b98ba3
      https://github.com/llvm/llvm-project/commit/74192e57f7208926ab15502cc6ac31e4d8b98ba3
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp

  Log Message:
  -----------
  [X86] Silence an unused-variable warning (NFC)

/llvm-project/llvm/lib/Target/X86/GISel/X86InstructionSelector.cpp:1054:9:
 error: unused variable 'RhsBank' [-Werror,-Wunused-variable]
  auto *RhsBank = RBI.getRegBank(RhsReg, MRI, TRI);
        ^
1 error generated.


  Commit: 6b902efdf63c61be72feff94707bcfb1a92347fe
      https://github.com/llvm/llvm-project/commit/6b902efdf63c61be72feff94707bcfb1a92347fe
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/Vectorization.cpp
    M mlir/test/Dialect/Linalg/vectorization-unsupported.mlir
    M mlir/test/Dialect/Linalg/vectorization.mlir

  Log Message:
  -----------
  [mlir][linalg] Add support for masked vectorization of `tensor.insert_slice` (2/N) (#123031)

For context, recall that `tensor.insert_slice` is vectorised using the
`vector.transfer_read` + `vector.transfer_write` pair. An unmasked
example is shown below:

```mlir
// BEFORE VECTORIZATION
%res = tensor.insert_slice
  %slice into %dest[0, %c2]
  [5, 1] [1, 1] : tensor<5x1xi32> into tensor<5x3xi32>

// AFTER VECTORIZATION
%read = vector.transfer_read %source[%c0, %c0], %pad
  : tensor<5x1xi32>, vector<8x1xi32>
%res = vector.transfer_write %read, %dest[%c0, %c2]
  : vector<8x1xi32>, tensor<5x3xi32>
```

This PR extends `vectorizeAsInsertSliceOp` to add masking support for
the `vector.transfer_write` operation. This complements the changes
in #122927, which introduced masking for the `vector.transfer_read`.


  Commit: ac640a2d626e65cd4c35a4442f40a23da4d8cbfd
      https://github.com/llvm/llvm-project/commit/ac640a2d626e65cd4c35a4442f40a23da4d8cbfd
  Author: Malavika Samak <malavika.samak at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp

  Log Message:
  -----------
  [Wunsafe-buffer-usage] Add additional tests to esnure safe accesses to const sized array are not warned (#125483)

Add more tests, where the index of the const array access evaluates to a
constant and depends on a template argument.

rdar://143759014

Co-authored-by: MalavikaSamak <malavika2 at apple.com>


  Commit: e346d4752f73d7e943cd7c270f2f470e47e58c56
      https://github.com/llvm/llvm-project/commit/e346d4752f73d7e943cd7c270f2f470e47e58c56
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir

  Log Message:
  -----------
  [mlir][vector] Categorize Vector-to-LLVM conversion tests (nfc) (#125918)

Following https://github.com/llvm/llvm-project/issues/124308, this patch
reorganizes the `vector-to-llvm.mlir` tests by splitting them into two
categories:

- **Basic conversion tests**: Tests that only require
  `populateVectorToLLVMConversionPatterns`, focusing on the minimal
  conversion from Vector to LLVM. These have been moved to
  `vector-to-llvm-interface.mlir`.
- **Full pass tests**: Tests that require the complete
  `ConvertVectorToLLVMPass`, which includes
  `populateVectorToLLVMConversionPatterns` along with additional
  patterns. These remain in `vector-to-llvm.mlir`.

This reorganization clarifies test coverage and helps avoid unnecessary
duplication.

NOTE: This is merely moving tests around between two files and adds
some comments.


  Commit: 83783e8bec0eb25e06eff57a22b0419cdc2bce2c
      https://github.com/llvm/llvm-project/commit/83783e8bec0eb25e06eff57a22b0419cdc2bce2c
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/GISel/RISCVInstructionSelector.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMatInt.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVGatherScatterLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVIndirectBranchTracking.cpp
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInsertWriteVXRM.cpp
    M llvm/lib/Target/RISCV/RISCVInstrFormats.td
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVSchedSiFive7.td
    M llvm/lib/Target/RISCV/RISCVScheduleV.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVVectorMaskDAGMutation.cpp

  Log Message:
  -----------
  [RISCV] Fix typos discovered by codespell (NFC) (#126191)

Found using https://github.com/codespell-project/codespell

```
codespell RISCV --write-changes \
       --ignore-words-list=FPR,fpr,VAs,ORE,WorstCase,hart,sie,MIs,FLE,fle,CarryIn,vor,OLT,VILL,vill,bu,pass-thru 
```


  Commit: 26ecddb05d13c101ccd840a6710eb5f8b82de841
      https://github.com/llvm/llvm-project/commit/26ecddb05d13c101ccd840a6710eb5f8b82de841
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Allow default path when looking for llvm-spirv (#126071)

This is an external tool, so I don't think there is an expectation that
it has to be in the LLVM tools bindir. It may also be in the default
system bindir (which is not necessarily the same).


  Commit: 15e50b1736002b730cbbe1bba74f05dfda4c8aaf
      https://github.com/llvm/llvm-project/commit/15e50b1736002b730cbbe1bba74f05dfda4c8aaf
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/IR/ArithOps.td
    M mlir/include/mlir/Dialect/Polynomial/IR/PolynomialTypes.td
    M mlir/include/mlir/IR/CommonTypeConstraints.td

  Log Message:
  -----------
  [mlir][IR] Clean up type constraints around `ValueSemanticsContainerOf` (#126075)

* Remove duplicate `TypeOrContainer`. There is an identical class with
the same name: `TypeOrValueSemanticsContainer`.
* Remove `TypeOrContainerOfAnyRank` and use
`TypeOrValueSemanticsContainer` instead. `TypeOrContainerOfAnyRank` is
inconsistent with the other classes because it explicitly checks for
`VectorType` and `TensorType` instead of utilizing the value semantics
type trait.
* Remove `SignlessIntegerOrIndexLikeOfAnyRank` etc. and use
`SignlessIntegerOrIndexLike` instead. `SignlessIntegerOrIndexLike` etc.
already allow 0-d vectors, so there is no difference with
`SignlessIntegerOrIndexLikeOfAnyRank`.


  Commit: ac158aa13b5a81552e45e63f534420c38e514484
      https://github.com/llvm/llvm-project/commit/ac158aa13b5a81552e45e63f534420c38e514484
  Author: James Chesterman <James.Chesterman at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-neon.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll

  Log Message:
  -----------
  [LoopVectorizer] Allow partial reductions to be made in predicated loops (#124268)

Does a select on the input rather than the output. This way the mask has
the same number of lanes as the other operand in the select instruction.


  Commit: 4bf97aa818965d86055c762a42f6d518e8e3a21e
      https://github.com/llvm/llvm-project/commit/4bf97aa818965d86055c762a42f6d518e8e3a21e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/llvm.modf.ll
    A llvm/test/CodeGen/AArch64/veclib-llvm.modf.ll

  Log Message:
  -----------
  [IR] Add `llvm.modf` intrinsic (#121948)

This adds the `llvm.modf` intrinsic, legalization, and lowering (mostly
reusing the lowering for sincos and frexp).

The `llvm.modf` intrinsic takes a floating-point value and returns both
the integral and fractional parts (as a struct).

```
declare { float, float }             @llvm.modf.f32(float  %Val)
declare { double, double }           @llvm.modf.f64(double %Val)
declare { x86_fp80, x86_fp80 }       @llvm.modf.f80(x86_fp80  %Val)
declare { fp128, fp128 }             @llvm.modf.f128(fp128 %Val)
declare { ppc_fp128, ppc_fp128 }     @llvm.modf.ppcf128(ppc_fp128  %Val)
declare { <4 x float>, <4 x float> } @llvm.modf.v4f32(<4 x float>  %Val)
```

This corresponds to the libm `modf` function but returns multiple values
in a struct (rather than take output pointers), which makes it easier to
vectorize.


  Commit: 1608fe8d56015719d5bf7abca608adad8a866f43
      https://github.com/llvm/llvm-project/commit/1608fe8d56015719d5bf7abca608adad8a866f43
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/source/Interpreter/OptionArgParser.cpp
    A lldb/test/Shell/Commands/command-breakpoint-by-addr.test

  Log Message:
  -----------
  [lldb][Breakpoint] Allow whitespace in breakpoint address expression (#126053)

Setting a breakpoint on `<symbol> + <offset>` used to work until
`2c76e88e9eb284d17cf409851fb01f1d583bb22a`, where this regex was
reworked. Now we only accept `<symbol>+ <offset>` or
`<symbol>+<offset>`.

This patch fixes the regression by adding yet another `[[:space:]]*`
component to the regex.

One could probably simplify the regex (or even replace the regex by just
calling the relevent `consumeXXX` APIs on `llvm::StringRef`). Though I
left that for the future.

rdar://130780342


  Commit: e00fc80c194b3742cd387b7cc74a5fd7ab775bf0
      https://github.com/llvm/llvm-project/commit/e00fc80c194b3742cd387b7cc74a5fd7ab775bf0
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    A clang/test/CodeGen/debug-info-enum-extensibility.c

  Log Message:
  -----------
  [clang][DebugInfo] Set EnumKind based on enum_extensibility attribute (#126045)

This is the 2nd part to
https://github.com/llvm/llvm-project/pull/124752. Here we make sure to
set the `DICompositeType` `EnumKind` if the enum was declared with
`__attribute__((enum_extensibility(...)))`. In DWARF this will be
rendered as `DW_AT_APPLE_enum_kind` and will be used by LLDB when
creating `clang::EnumDecl`s from debug-info.
 
Depends on https://github.com/llvm/llvm-project/pull/126044


  Commit: 7aeae7379d430404499f2929ffeea9416575a091
      https://github.com/llvm/llvm-project/commit/7aeae7379d430404499f2929ffeea9416575a091
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Fix typo in assertion

This was meant to assert that we have the same number of names as we do
formal parameter types (since callers of this API rely on this being true).


  Commit: 1930524bbde3cd26ff527bbdb5e1f937f484edd6
      https://github.com/llvm/llvm-project/commit/1930524bbde3cd26ff527bbdb5e1f937f484edd6
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll

  Log Message:
  -----------
  [LoopVectorize] Fix cost model assert when vectorising calls (#125716)

The legacy and vplan cost models did not agree because
VPWidenCallRecipe::computeCost only calculates the cost of the
call instruction, whereas
LoopVectorizationCostModel::setVectorizedCallDecision in some
cases adds on the cost of a synthesised mask argument. However,
this mask is always 'splat(i1 true)' which should be hoisted out
of the loop during codegen. In order to synchronise the two cost
models I have two options:

1) Also add the cost of the splat to the vplan model, or
2) Remove the cost of the splat from the legacy model.

I chose 2) because I feel this more closely represents what the
final code will look like. There is an argument that we should
take account of such broadcast costs in the preheader when
deciding if it's profitable to vectorise a loop, however there
isn't currently a mechanism to do this. We currently only take
account of the runtime checks when assessing profitability and
what the minimum trip count should be. However, I don't believe
this work needs doing as part of this PR.


  Commit: 9d83790d170cc0a06179514e2ab739f7ecafb78c
      https://github.com/llvm/llvm-project/commit/9d83790d170cc0a06179514e2ab739f7ecafb78c
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp

  Log Message:
  -----------
  [lldb] Fix build error in ValueObject test

Fixes 0cbc4983adcdbbd85ccb38b2dfbfe5985367b1b2.

llvm-project/lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp(221): error C2065: 'u_int8_t': undeclared identifier


  Commit: 3872e55758a5de035c032a975f244302c3ddacc3
      https://github.com/llvm/llvm-project/commit/3872e55758a5de035c032a975f244302c3ddacc3
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

  Log Message:
  -----------
  [LoopVectorize] Fix build error (#126218)

Fixes issue caused by 1930524bbde3cd26ff527bbdb5e1f937f484edd6

Unused variable UsesMask in LoopVectorize.cpp


  Commit: 6424abcd6c9c6aa8171c79d0fe0369d3a10da3d5
      https://github.com/llvm/llvm-project/commit/6424abcd6c9c6aa8171c79d0fe0369d3a10da3d5
  Author: David Green <david.green at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/Target/AArch64/AArch64Subtarget.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-load-rcpc_immo.ll

  Log Message:
  -----------
  [AArch64] Enable AvoidLDAPUR for cpu=generic between armv8.4 and armv9.3. (#125261)

As added in #124274, CPUs in this range can suffer from performance
issues with ldapur. As the gain from ldar->ldapr is expected to be
greater than the minor gain from ldapr->ldapur, this opts to avoid the
instruction under the default -mcpu=generic when the -march is less that
armv8.8 / armv9.3.

I renamed AArch64Subtarget::Others to AArch64Subtarget::Generic to be
clearer what it means.


  Commit: 52db30ec4154b0ef21db546ed9b5a9bfe47859cd
      https://github.com/llvm/llvm-project/commit/52db30ec4154b0ef21db546ed9b5a9bfe47859cd
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp

  Log Message:
  -----------
  [lldb] Fix compiler error in ValueObject tests

Fixes 0cbc4983adcdbbd85ccb38b2dfbfe5985367b1b2.

error: non-constant-expression cannot be narrowed from type 'uint64_t' (aka 'unsigned long long') to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
   71 |                     in_value.GetLocalBufferSize()};
      |                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Given this is test code, I think a static cast is fine here.

Tiny risk that it's actually a symptom of a bug that would
happen if you did 32-bit to 64-bit debugging. I expect you'd
find a lot more bugs than that though.


  Commit: 612df14c0058572c876f59d41ec56c89710cee15
      https://github.com/llvm/llvm-project/commit/612df14c0058572c876f59d41ec56c89710cee15
  Author: Sjoerd Meijer <smeijer at nvidia.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/Driver/clang_f_opts.c
    M llvm/include/llvm/Passes/PassBuilder.h
    M llvm/lib/Passes/PassBuilderPipelines.cpp

  Log Message:
  -----------
  [Clang][Driver] Add an option to control loop-interchange (#125830)

This introduces options `-floop-interchange` and `-fno-loop-interchange`
to enable/disable the loop-interchange pass. This is part of the work
that tries to get that pass enabled by default (#124911), where it was
remarked that a user facing option to control this would be convenient
to have. The option name is the same as GCC's.


  Commit: 98e118ca435d280ff1c3540eb5e9b4140b44a1b4
      https://github.com/llvm/llvm-project/commit/98e118ca435d280ff1c3540eb5e9b4140b44a1b4
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/FlangDriver.md
    M flang/lib/Decimal/CMakeLists.txt
    M flang/runtime/CMakeLists.txt
    M flang/test/Driver/linker-flags.f90
    M flang/test/Driver/msvc-dependent-lib-flags.f90
    M flang/test/Driver/nostdlib.f90
    M flang/test/Runtime/no-cpp-dep.c
    M flang/test/lit.cfg.py
    M lld/COFF/MinGW.cpp

  Log Message:
  -----------
  [Flang] Don't use FortranDecimal for runtime (#121997)

Avoid using the same library for runtime and compiler. `FortranDecimal`
was used in two ways:

1. As an auxiliary library needed for `libFortranRuntime.a`. This patch
adds the two source files of FortranDecimal directly into
FortranRuntime, so `FortranRuntime` is not used anymore.
 
2. As a library used by the Flang compiler. As the only remaining use of
the library, extra CMake code to make it compatible with the runtime can
be removed.

Before this PR, `enable_cuda_compilation` is applied to `FortranDecimal`
which causes everything that links to it, including flang (the
compiler), to depend on libcudart when CUDA support is enabled.

Having two runtime library just makes everything more complicated while
the user ideally should not be concerned with how the runtime is
structured internally. Some logic was copied for FortranDecimal because
of this, such as the ability to be compiled out-of tree
(b75a3c9f31c1ffdc9856aee32991d8129b372ee7) which is undocumented, the
logic to link against the various versions of Microsofts runtime library
(#70833), and avoiding dependency on the C++ runtime
(7783bba22c7add678d796741d30669c73159b3d8).


  Commit: c269182b13abddc459820e57a4d2065f364b23dc
      https://github.com/llvm/llvm-project/commit/c269182b13abddc459820e57a4d2065f364b23dc
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/DeclTemplate.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Initialize ClassTemplateSpecializationDecl's StrictPackMatch field (#126215)

This addresses the MSAN failure reported
in
https://github.com/llvm/llvm-project/pull/125791#issuecomment-2639183154:
```
==5633==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0 in clang::ASTNodeImporter::CallOverloadedCreateFun<clang::ClassTemplateSpecializationDecl>::operator()
    #1 in bool clang::ASTNodeImporter::GetImportedOrCreateSpecialDecl<...>
...
```

The ASTImporter reads `D->hasStrictPackMatch()` and forwards it to the
constructor of the destination `ClassTemplateSpecializationDecl`. But if
`D` is a decl that LLDB created from debug-info, it would've been
created using `ClassTemplateSpecializationDecl::CreateDeserialized`,
which doesn't initialize the `StrictPackMatch` field.

This patch just initializes the field to a fixed value of `false`, to
preserve previous behaviour and avoid the use-of-uninitialized-value.

An alternative would be to always initialize it in the
`ClassTemplateSpecializationDecl` constructor, but there were
reservations about providing a default value for it because it might
lead to hard-to-diagnose problems down the line.


  Commit: ae08969a2068dd327fbf4d0f606550574fbb9e45
      https://github.com/llvm/llvm-project/commit/ae08969a2068dd327fbf4d0f606550574fbb9e45
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/IndVarSimplify/pr126012.ll

  Log Message:
  -----------
  [IndVars] Add test for #126012 (NFC)


  Commit: 83ba3740bf51347307494d013099e392c310e32b
      https://github.com/llvm/llvm-project/commit/83ba3740bf51347307494d013099e392c310e32b
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Symbol/UnwindTable.h
    M lldb/source/Commands/CommandObjectTarget.cpp
    M lldb/source/Commands/Options.td
    M lldb/source/Symbol/UnwindTable.cpp
    R lldb/test/Shell/SymbolFile/Inputs/target-symbols-add-unwind.c
    M lldb/test/Shell/SymbolFile/target-symbols-add-unwind.test

  Log Message:
  -----------
  [lldb] Clear cached unwind plans when adding symbols (#125839)

PR #86603 broke unwinding in for unwind info added via "target symbols
add". #86770 attempted to fix this, but the fix was only partial -- it
accepted new sources of unwind information, but didn't take into account
that the symbol file can alter what lldb percieves as function
boundaries.

A stripped file will not contain information about private
(non-exported) symbols, which will make the public symbols appear very
large. If lldb tries to unwind from such a function before symbols are
added, then the cached unwind plan will prevent new (correct) unwind
plans from being created.

target-symbols-add-unwind.test might have caught this, were it not for
the fact that the "image show-unwind" command does *not* use cached
unwind information (it recomputes it from scratch).

The changes in this patch come in three pieces:
- Clear cached unwind plans when adding symbols. Since the symbol
boundaries can change, we cannot trust anything we've computed
previously.
- Add a flag to "image show-unwind" to display the cached unwind
information (mainly for the use in the test, but I think it's also
generally useful).
- Rewrite the test to better and more reliably simulate the real-world
scenario: I've swapped the running process for a core (minidump) file so
it can run anywhere; used the caching version of the show-unwind
command; and swapped C for assembly to better control the placement of
symbols


  Commit: 191d7d64e5bc9c66fcb17a4c752a55129d33fd44
      https://github.com/llvm/llvm-project/commit/191d7d64e5bc9c66fcb17a4c752a55129d33fd44
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_trap.c
    M offload/test/sanitizer/kernel_trap.cpp
    M offload/test/sanitizer/kernel_trap_many.c

  Log Message:
  -----------
  [Offload] Fix assumptions on symbols after #124846 (#126238)

In #124846 the symbolizer was changed to ignore 0-column entries, which
lead to a slightly different representation in the stack traces. This
patch addresses these differences.

Not sure if the difference in kernel_trap.c is also a result of this
change or not.
Can be tracked separate from this, after the bots are back to green.


  Commit: 60cc48d900d16d895096cfd598938cf00b05ec0f
      https://github.com/llvm/llvm-project/commit/60cc48d900d16d895096cfd598938cf00b05ec0f
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/char_string.pass.cpp
    M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/pointer_string.pass.cpp
    M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/string_char.pass.cpp
    M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/string_pointer.pass.cpp
    M libcxx/test/std/strings/basic.string/string.nonmembers/string_op+/string_string.pass.cpp

  Log Message:
  -----------
  [libc++] Refactor strings operator+ tests

This avoids duplicating the test data for all the different tests.


  Commit: 52b59476cdd251fec2404cc843b7b95c1cb4afeb
      https://github.com/llvm/llvm-project/commit/52b59476cdd251fec2404cc843b7b95c1cb4afeb
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/test/Analysis/ScalarEvolution/infer-via-ranges.ll
    A llvm/test/Transforms/IndVarSimplify/infer-via-ranges.ll

  Log Message:
  -----------
  SCEV: re-org a test, regen via UTC (#126237)


  Commit: 1454fc9dbfd13d75b9a06e604683a7440df3b757
      https://github.com/llvm/llvm-project/commit/1454fc9dbfd13d75b9a06e604683a7440df3b757
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVNonUniformOps.td
    M mlir/test/Dialect/SPIRV/IR/group-ops.mlir
    M mlir/test/Target/SPIRV/group-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add definition for OpGroupNonUniformBallotBitCount (#126055)

A new constraint is also added to restrict attributes values for SPIR-V
attributes. Ideally this should use `ConfinedAttr` with a custom
constraint directly on the operand, however it seems TableGen does not
allow using that with SPIR-V attributes. I suspect it is because SPIR-V
attributes do not derive from the generic MLIR attribute class -
TableGen complains about missing enum field.


  Commit: a69975d8349c1e0dcb86814df67d7160395b468e
      https://github.com/llvm/llvm-project/commit/a69975d8349c1e0dcb86814df67d7160395b468e
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp

  Log Message:
  -----------
  [clang][bytecode] Remove unnecessary if statement (#126223)

This doesn't seem to do any good and breaks a few libc++ tests. Remove
the special case.


  Commit: 7f21c77024e562f55f7de0d36a9c9e747a5e9ff5
      https://github.com/llvm/llvm-project/commit/7f21c77024e562f55f7de0d36a9c9e747a5e9ff5
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  ValueTracking: modernize isKnownInversion (NFC) (#126234)


  Commit: 2a6cfbd98516d902267a39e26ecbbff8c8121b01
      https://github.com/llvm/llvm-project/commit/2a6cfbd98516d902267a39e26ecbbff8c8121b01
  Author: Martin Storsjö <martin at martin.st>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/test/SemaCXX/unique_object_duplication.cpp

  Log Message:
  -----------
  [clang] [test] Adjust XFAILs for windows in unique_object_duplication.cpp (#126139)

This test does succeed in MinGW configurations.


  Commit: 3fdb3482439b2957abc176ae10522df3df322709
      https://github.com/llvm/llvm-project/commit/3fdb3482439b2957abc176ae10522df3df322709
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [LangRef] Fix some formatting issues (NFC) (#126224)

Fixes codeblock and inline code formatting for the `llvm.modf.*`
intrinsic.


  Commit: 991123f2fbe1e85e315049d4ed84b9bdbebff474
      https://github.com/llvm/llvm-project/commit/991123f2fbe1e85e315049d4ed84b9bdbebff474
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll

  Log Message:
  -----------
  [X86] Add test where storing return addr clobbers argument stack slot.

Currently for the test the return address is written to the stack before
loading the argument from an aliasing stack slot.


  Commit: b51fc2ac60418316c3e308cff43a9fb9711d7b25
      https://github.com/llvm/llvm-project/commit/b51fc2ac60418316c3e308cff43a9fb9711d7b25
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Tools/TargetSetup.h

  Log Message:
  -----------
  [flang] Modifications to ieee_support_standard (#125967)

The result of a call to ieee_support_halting is one of the components
that affect the result of a call to ieee_support_standard.


  Commit: cfd8980fe79872feb9ed81959aa018681c7b3354
      https://github.com/llvm/llvm-project/commit/cfd8980fe79872feb9ed81959aa018681c7b3354
  Author: Steven Perron <stevenperron at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/test/CodeGen/SPIRV/hlsl-resources/BufferLoadStore.ll

  Log Message:
  -----------
  [SPIRV] Handle vector load/store for RWBuffer (#125581)

The type inference for `spv_resource_getpointer` must look at the uses
of the intrinsic. The type of the handle will be a scalar type, but it
can still be read or written as a vector of that type.

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


  Commit: a361de6d13183111e942d9f5c6345ed3e8964b2b
      https://github.com/llvm/llvm-project/commit/a361de6d13183111e942d9f5c6345ed3e8964b2b
  Author: Yashas Andaluri <quic_yandalur at quicinc.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/RDFGraph.h
    M llvm/lib/CodeGen/RDFGraph.cpp
    A llvm/test/CodeGen/Hexagon/rdf-copy-clobber.mir
    A llvm/test/CodeGen/Hexagon/rdf-phi-clobber.mir

  Log Message:
  -----------
  [RDF] Create phi nodes for clobbering defs (#123694)

When a def in a block A reaches another block B that is in A's iterated
dominance frontier, a phi node is added to B for the def register.

A clobbering def can be created at a call instruction, for a register
clobbered by a call.
However, phi nodes are not created for a register, when one of the
reaching defs of the register is a clobbering def.

This patch adds phi nodes for registers that have a clobbering reaching
def. These additional phis help in checking reaching defs for an
instruction in RDF based copy propagation and addressing mode
optimizations.


  Commit: 1f2c36a879a604683da646a44f73bd6d90b61040
      https://github.com/llvm/llvm-project/commit/1f2c36a879a604683da646a44f73bd6d90b61040
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    A llvm/test/MC/ARM/vcvt-fixed-point-errors.s
    M llvm/test/tools/llvm-mca/ARM/m55-fp.s
    M llvm/test/tools/llvm-mca/ARM/m7-fp.s
    M llvm/test/tools/llvm-mca/ARM/m85-fp.s

  Log Message:
  -----------
  [ARM] Reject fixed-point VCVT with different registers (#126232)

These instructions only have one register field in their encoding, so
both registers in the assembly must be the same.

Previously, we were accepting these instructions, but ignoring the
second register operand.

Fixes #126227


  Commit: b284a849d51b320004bc3e656c428aefab156dac
      https://github.com/llvm/llvm-project/commit/b284a849d51b320004bc3e656c428aefab156dac
  Author: Guray Ozen <guray.ozen at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

  Log Message:
  -----------
  [MLIR][NVVM] Add default constructor for `nvvm.barrier` [NFC] (#126225)

This PR adds a default constructor to `nvvm.barrier`, making it more
convenient to build the OP.


  Commit: 0227396417d4625bc93affdd8957ff8d90c76299
      https://github.com/llvm/llvm-project/commit/0227396417d4625bc93affdd8957ff8d90c76299
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libcxx/include/__type_traits/conjunction.h

  Log Message:
  -----------
  Revert "[libc++] Reduce std::conjunction overhead (#124259)"

It turns out that the new implementation takes significantly more stack
memory for some reason.

This reverts commit 2696e4fb9567d23ce065a067e7f4909b310daf50.


  Commit: c8b2ba722f760087a9c8f058c26e656213d76d2c
      https://github.com/llvm/llvm-project/commit/c8b2ba722f760087a9c8f058c26e656213d76d2c
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lld/test/COFF/arm64ec-patchable-thunks.test

  Log Message:
  -----------
  [LLD][COFF] Add test for hybrid patchable thunks on ARM64X (NFC) (#126135)


  Commit: abd31b48e3a8b1fe3cb01d37e35c80aa7cab9fc0
      https://github.com/llvm/llvm-project/commit/abd31b48e3a8b1fe3cb01d37e35c80aa7cab9fc0
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lld/COFF/MinGW.cpp
    M lld/test/COFF/arm64x-export-all.s

  Log Message:
  -----------
  [LLD][MinGW] Exclude load config symbols from auto-export (#126134)


  Commit: 2b43543afb83d0c67b4cabfaec84b16cf522786d
      https://github.com/llvm/llvm-project/commit/2b43543afb83d0c67b4cabfaec84b16cf522786d
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.alignbyte.ll
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_dpp8.txt

  Log Message:
  -----------
  [AMDGPU][True16][MC][CodeGen] true16 for v_alignbyte_b32 (#125706)

Support true16 format for v_alignbyte_b32 in MC and CodeGen


  Commit: 79e9887a0f408a50f5781aa5079ae71731e18c23
      https://github.com/llvm/llvm-project/commit/79e9887a0f408a50f5781aa5079ae71731e18c23
  Author: vdonaldson <37090318+vdonaldson at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M flang/test/Evaluate/fold-ieee.f90
    M flang/test/Evaluate/folding18.f90

  Log Message:
  -----------
  [flang] test fix (#126251)


  Commit: 27598aba49a7bbb6751fff5c8dc455edf701e1aa
      https://github.com/llvm/llvm-project/commit/27598aba49a7bbb6751fff5c8dc455edf701e1aa
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    R libcxx/test/benchmarks/containers/container_benchmarks.h
    R libcxx/test/benchmarks/containers/deque.bench.cpp
    R libcxx/test/benchmarks/containers/list.bench.cpp
    A libcxx/test/benchmarks/containers/sequence/deque.bench.cpp
    A libcxx/test/benchmarks/containers/sequence/list.bench.cpp
    A libcxx/test/benchmarks/containers/sequence/sequence_container_benchmarks.h
    A libcxx/test/benchmarks/containers/sequence/vector.bench.cpp
    R libcxx/test/benchmarks/containers/vector.bench.cpp

  Log Message:
  -----------
  [libc++] Further refactor sequence container benchmarks (#126129)

This patch does not significantly change how the sequence container
benchmarks are done, but it adopts the same style as the associative
container benchmarks.

This commit does adjust how we were benchmarking push_back, where we
never really measured the overhead of the slow path of push_back (when
we need to reallocate).


  Commit: 1611059f5d57ed1ceffb1367327957f10f8658ff
      https://github.com/llvm/llvm-project/commit/1611059f5d57ed1ceffb1367327957f10f8658ff
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/X86/CostModel/vpinstruction-cost.ll

  Log Message:
  -----------
  [VPlan] Compute cost for binary op VPInstruction with underlying values. (#125434)

As exposed by https://github.com/llvm/llvm-project/pull/125094, we are
missing cost computation for some binary VPInstructions we created based
on original IR instructions. Their cost should be considered.

PR: https://github.com/llvm/llvm-project/pull/125434


  Commit: 1f67070a3f6ca8d0bf5fdca90ceb6b607422c899
      https://github.com/llvm/llvm-project/commit/1f67070a3f6ca8d0bf5fdca90ceb6b607422c899
  Author: Eric Hein <ehein6 at gatech.edu>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Transforms/ViewOpGraph.cpp
    M mlir/test/Transforms/print-op-graph-back-edges.mlir
    M mlir/test/Transforms/print-op-graph-cycles.mlir
    M mlir/test/Transforms/print-op-graph.mlir

  Log Message:
  -----------
  [ViewOpGraph] Improve GraphViz output (#125509)

This patch improves the GraphViz output of ViewOpGraph
(--view-op-graph).

- Switch to rectangular record-based nodes, inspired by a similar
visualization in [Glow](https://github.com/pytorch/glow). Rectangles
make more efficient use of space when printing text.
- Add input and output ports for each operand and result, and remove
edge labels.
- Switch to a muted color palette to reduce eye strain.


  Commit: 289b17635958d986b74683c932df6b1d12f37b70
      https://github.com/llvm/llvm-project/commit/289b17635958d986b74683c932df6b1d12f37b70
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

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

This patch fixes:

  llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp:749:13: error: unused
  variable 'ImageType' [-Werror,-Wunused-variable]


  Commit: 46f5662ebc461c897d7aa59b182e4cce29af7368
      https://github.com/llvm/llvm-project/commit/46f5662ebc461c897d7aa59b182e4cce29af7368
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonMachineFunctionInfo.h

  Log Message:
  -----------
  [Hexagon] Avoid repeated map lookups (NFC) (#126185)


  Commit: dbb20fc07326926d53adb95d01323a353074aae1
      https://github.com/llvm/llvm-project/commit/dbb20fc07326926d53adb95d01323a353074aae1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/ObjectYAML/DWARFEmitter.cpp

  Log Message:
  -----------
  [ObjectYAML] Avoid repeated hash lookups (NFC) (#126187)


  Commit: 80a471820071c1913e0159eaf932a6547fc9c42f
      https://github.com/llvm/llvm-project/commit/80a471820071c1913e0159eaf932a6547fc9c42f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Scalar/GVNHoist.cpp

  Log Message:
  -----------
  [GVNHoist] Avoid repeated hash lookups (NFC) (#126189)


  Commit: 0afbefa282add55ca2dc2389e6b75b864b37c196
      https://github.com/llvm/llvm-project/commit/0afbefa282add55ca2dc2389e6b75b864b37c196
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/AsmWriterEmitter.cpp

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


  Commit: d0170424b7250bf5cda0e6253ec62112a6e1c92a
      https://github.com/llvm/llvm-project/commit/d0170424b7250bf5cda0e6253ec62112a6e1c92a
  Author: Ron Gut <65685404+gutron at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/tools/clang-format/clang-format.el

  Log Message:
  -----------
  [emacs][clang-format] Suppress reference to free variable errors (#126254)

vc-git-program is referenced but not defined -- vc-git provides the
definition.


  Commit: 247430e9c41c61b66e2ee95c29a05de3e24c19b9
      https://github.com/llvm/llvm-project/commit/247430e9c41c61b66e2ee95c29a05de3e24c19b9
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

  Log Message:
  -----------
  [bazel] Temporarily disable a broken LookupAddressRangeWithStmtSequenceOffset debug info test


  Commit: 4c7cbb947814ed373f49b4a666206ccec8c9b63f
      https://github.com/llvm/llvm-project/commit/4c7cbb947814ed373f49b4a666206ccec8c9b63f
  Author: Kelvin Li <kkwli at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M flang/test/Lower/PowerPC/ppc-vec-load-elem-order.f90
    M flang/test/Lower/PowerPC/ppc-vec-load.f90
    M flang/test/Lower/PowerPC/ppc-vec-splat-elem-order.f90
    M flang/test/Lower/PowerPC/ppc-vec-splat.f90

  Log Message:
  -----------
  [flang] update PPC vector tests (NFC) (#126256)

Replace 'undef' with 'poison' based on commit f4e3b87


  Commit: 2c43479683651f0eb208c97bf12e49bacbea4e6f
      https://github.com/llvm/llvm-project/commit/2c43479683651f0eb208c97bf12e49bacbea4e6f
  Author: David Green <david.green at arm.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/zext-shuffle.ll

  Log Message:
  -----------
  [AArch64] Fix op mask detection in performZExtDeinterleaveShuffleCombine (#126054)

Given a zext from an extract vector, with a shuffle mask like <4, 0, 0, 4> we
would previously recognize the top half as a deinterleave. In order to convert
into a uzp we should have been checking that the bottom half is also poison.

Fixes #125989


  Commit: f3040498f0bdcd6c61cf9df4ba41d2913118915e
      https://github.com/llvm/llvm-project/commit/f3040498f0bdcd6c61cf9df4ba41d2913118915e
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/tcgen05-commit.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-fence.ll

  Log Message:
  -----------
  [NVPTX] Add tcgen05 wait/fence/commit intrinsics (#126091)

This patch adds intrinsics for tcgen05 wait,
fence and commit PTX instructions.

lit tests are added and verified with a
ptxas-12.8 executable.

Docs are updated in the NVPTXUsage.rst file.

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


  Commit: 1438c8d68ddaacba4a95a02b66ffbae2ea586993
      https://github.com/llvm/llvm-project/commit/1438c8d68ddaacba4a95a02b66ffbae2ea586993
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    A clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
    M clang/cmake/caches/Fuchsia.cmake

  Log Message:
  -----------
  [Fuchsia] Support PGO (#120323)

Enable 2-stage builds with PGO.


  Commit: 4d7192a5ecabb36263a2cacd4e9243b958424805
      https://github.com/llvm/llvm-project/commit/4d7192a5ecabb36263a2cacd4e9243b958424805
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/include/clang/ASTMatchers/ASTMatchers.h

  Log Message:
  -----------
  [clang][doc] Provide documentation for FixedPointLiteral matcher (#125122)

Provide a documentation for FixedPointLiteral explaining which literals
will be matched and which are not. This documentation is compatible with
https://github.com/llvm/llvm-project/commit/53e92e48d0c03a2475e8517dd4c28968d84fc217
change.

Co-authored-by: Vladislav Aranov <vladislav.aranov at ericsson.com>


  Commit: 3f8e2802069aabe4384ecd4575d50fd4457dae51
      https://github.com/llvm/llvm-project/commit/3f8e2802069aabe4384ecd4575d50fd4457dae51
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    A clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCast-errors.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCasts.hlsl

  Log Message:
  -----------
  [HLSL] Implement HLSL Elementwise casting (excluding splat cases); Re-land #118842 (#126258)

Implement HLSLElementwiseCast excluding support for splat cases
Do not support casting types that contain bitfields.
Partly closes https://github.com/llvm/llvm-project/issues/100609 and
partly closes https://github.com/llvm/llvm-project/issues/100619
Re-land #118842 after fixing warning as an error, found by a buildbot.


  Commit: c4c22a5377f41f3bcbca10a70a663b804659d2a2
      https://github.com/llvm/llvm-project/commit/c4c22a5377f41f3bcbca10a70a663b804659d2a2
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/utils/TableGen/MveEmitter.cpp

  Log Message:
  -----------
  [Clang][TableGen] Use PointerType::get(Context) in MVE TableGen emitter (NFC) (#124782)

Follow-up to #123569

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


  Commit: 92eeff4f592018cde3fbc311412b07e028493668
      https://github.com/llvm/llvm-project/commit/92eeff4f592018cde3fbc311412b07e028493668
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/offload-Xarch.c

  Log Message:
  -----------
  [Clang] Forward `-Xarch_<arch> -Wl,foo` for GPU toolchains (#126248)

Summary:
This patch handles the use of `-Xarch_<arch> -Wl,foo` to send an
argument to the linker for the embedded offloading jobs in the linker
wrapper. This makes it equivalent to `-Xoffload-linker foo`.


  Commit: 51759ffc4408e9eb5c2d40c9489ce3b98de233d5
      https://github.com/llvm/llvm-project/commit/51759ffc4408e9eb5c2d40c9489ce3b98de233d5
  Author: s.vgys <83276820+samvangysegem at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  fix: removes invalid token from LLVM_VERSION_SUFFIX in LIBC namespace (#126193)

Resolves #125831


  Commit: 7eaaa4e9415fc7533e688a9ed877aff75b7dfce4
      https://github.com/llvm/llvm-project/commit/7eaaa4e9415fc7533e688a9ed877aff75b7dfce4
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/docs/BoundsSafety.rst

  Log Message:
  -----------
  [BoundsSafety][doc] Fix formatting (#126245)


  Commit: bfba6215cec20bee308a4637298a590057004ff8
      https://github.com/llvm/llvm-project/commit/bfba6215cec20bee308a4637298a590057004ff8
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/lit.site.cfg.py.in
    M llvm/utils/gn/secondary/clang/test/BUILD.gn

  Log Message:
  -----------
  [clang-linker-wrapper][lit] Fix OpenMP SPIR-V ELF test again (#126142)

I was able to reproduce the issue with the sanitizer buildbot scripts
and confirmed this fixes it.

The issue was the quotes, `"0"` is true in Python so we incorrectly
added the `spirv-tools` feature even when the CMake variable was false.
I don't know why it didn't always fail.

Also add the var to clang's `BUILD.gn` which matches what we do for
other similar variables, however I don't think it has any effect on CI
here.

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 68325148d32edc70d85018364c5cb04432e5bd52
      https://github.com/llvm/llvm-project/commit/68325148d32edc70d85018364c5cb04432e5bd52
  Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTranspose.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorUnroll.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [mlir][Vector] Fold `vector.extract` from poison vector (#126122)

This PR adds a folder for `vector.extract(ub.poison) -> ub.poison`. It
also replaces `create` with `createOrFold` insert/extract ops in vector
unroll and transpose lowering patterns to trigger the poison foldings
introduced recently.


  Commit: 571a98722f5cabfc702aa1d307ffee9ebbef6e48
      https://github.com/llvm/llvm-project/commit/571a98722f5cabfc702aa1d307ffee9ebbef6e48
  Author: TatWai Chong <78814694+tatwaichong at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Conversion/TosaToTensor/TosaToTensor.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeDepthwise.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeTransposeConv.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/lib/Dialect/Tosa/Utils/ConversionUtils.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-invalid.mlir
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/Conversion/TosaToTensor/tosa-to-tensor.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/inlining.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
    M mlir/test/Dialect/Tosa/tosa-decompose-depthwise.mlir
    M mlir/test/Dialect/Tosa/tosa-decompose-transpose-conv.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [mlir][tosa] Change 'shape' of RESHAPE from attribute to input shape … (#125789)

The shape operand is changed to input shape type since V1.0

Change-Id: I508cc1d67e9b017048b3f29fecf202cb7d707110

Co-authored-by: Won Jeon <won.jeon at arm.com>


  Commit: 7aabbf22f0a55370638cf1bcd1004376b0d7dad8
      https://github.com/llvm/llvm-project/commit/7aabbf22f0a55370638cf1bcd1004376b0d7dad8
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/MC/ELFObjectWriter.cpp
    A llvm/test/CodeGen/X86/dwo-stats.ll

  Log Message:
  -----------
  [llvm][ELF] Separate out .dwo bytes written in stats (#126165)

So we can distinguish between debug info sections written to .dwo files
and those written to the object file.


  Commit: 5a0075adbb623c8661862b9af1272b8f430d9e5c
      https://github.com/llvm/llvm-project/commit/5a0075adbb623c8661862b9af1272b8f430d9e5c
  Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorShapeCast.cpp
    M mlir/test/Conversion/ConvertToSPIRV/vector-unroll.mlir
    M mlir/test/Dialect/Vector/vector-contract-to-matrix-intrinsics-transforms.mlir
    M mlir/test/Dialect/Vector/vector-shape-cast-lowering-scalable-vectors.mlir
    M mlir/test/Dialect/Vector/vector-shape-cast-lowering-transforms.mlir

  Log Message:
  -----------
  [mlir][Vector] Generate poison vectors in vector.shape_cast lowering (#125613)

This is the first PR that introduces `ub.poison` vectors as part of a
rewrite/conversion pattern in the Vector dialect. It replaces the
`arith.constant dense<0>` vector initialization for
`vector.insert_slice` ops with a poison vector.

This PR depends on all the previous PRs that introduced support for
poison in Vector operations such as `vector.shuffle`, `vector.extract`,
`vector.insert`, including ODS, canonicalization and lowering support.

This PR may improve end-to-end compilation time through LLVM, depending
on the workloads.


  Commit: e566313a1fac1b290c98454cc52b485ae4f644c5
      https://github.com/llvm/llvm-project/commit/e566313a1fac1b290c98454cc52b485ae4f644c5
  Author: Nick Desaulniers <ndesaulniers at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/hdr/types/CMakeLists.txt
    R libc/hdr/types/sighandler_t.h
    M libc/include/CMakeLists.txt
    M libc/include/llvm-libc-macros/gpu/signal-macros.h
    M libc/include/llvm-libc-macros/linux/signal-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    R libc/include/llvm-libc-types/__sighandler_t.h
    A libc/include/llvm-libc-types/sighandler_t.h
    M libc/include/llvm-libc-types/struct_sigaction.h
    M libc/include/signal.yaml
    M libc/src/signal/linux/CMakeLists.txt
    M libc/src/signal/linux/signal.cpp
    M libc/src/signal/signal.h
    M libc/test/UnitTest/FPExceptMatcher.cpp
    M libc/test/src/signal/CMakeLists.txt
    M libc/test/src/signal/signal_test.cpp

  Log Message:
  -----------
  [libc][signal] clean up usage of sighandler_t (#125745)


`man 3 signal`'s declaration has a face _only a mother could love_.

sighandler_t and __sighandler_t are not defined in the C standard, or POSIX.

They are helpful typedefs provided by glibc and the Linux kernel UAPI headers
respectively since working with function pointers' syntax can be painful. But
we should not rely on them; in C++ we have `auto*` and `using` statements.

Remove the proxy header, and only include a typedef for sighandler_t when
targeting Linux, for compatibility with glibc.

Fixes: #125598


  Commit: 2c4dd89902c3e679607567569651acf8b828360e
      https://github.com/llvm/llvm-project/commit/2c4dd89902c3e679607567569651acf8b828360e
  Author: Diego Caballero <dieg0ca6aller0 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorBitCast.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorBroadcast.cpp
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorTranspose.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm.mlir
    M mlir/test/Dialect/Vector/vector-bitcast-lowering-transforms.mlir
    M mlir/test/Dialect/Vector/vector-broadcast-lowering-transforms.mlir
    M mlir/test/Dialect/Vector/vector-transpose-lowering.mlir

  Log Message:
  -----------
  [mlir][Vector] Introduce poison in LowerVectorBitCast/Broadcast/Transpose (#126180)

This PR continues with the introduction of poison as initialization
vector, in this particular case, in LowerVectorBitCast,
LowerVectorBroadcast and LowerVectorTranspose.


  Commit: f2a1103b323492160d7d27a1575fbda709b49036
      https://github.com/llvm/llvm-project/commit/f2a1103b323492160d7d27a1575fbda709b49036
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/stdfix.rst
    M libc/include/stdfix.yaml
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/countlshk.cpp
    A libc/src/stdfix/countlshk.h
    A libc/src/stdfix/countlshr.cpp
    A libc/src/stdfix/countlshr.h
    A libc/src/stdfix/countlsk.cpp
    A libc/src/stdfix/countlsk.h
    A libc/src/stdfix/countlslk.cpp
    A libc/src/stdfix/countlslk.h
    A libc/src/stdfix/countlslr.cpp
    A libc/src/stdfix/countlslr.h
    A libc/src/stdfix/countlsr.cpp
    A libc/src/stdfix/countlsr.h
    A libc/src/stdfix/countlsuhk.cpp
    A libc/src/stdfix/countlsuhk.h
    A libc/src/stdfix/countlsuhr.cpp
    A libc/src/stdfix/countlsuhr.h
    A libc/src/stdfix/countlsuk.cpp
    A libc/src/stdfix/countlsuk.h
    A libc/src/stdfix/countlsulk.cpp
    A libc/src/stdfix/countlsulk.h
    A libc/src/stdfix/countlsulr.cpp
    A libc/src/stdfix/countlsulr.h
    A libc/src/stdfix/countlsur.cpp
    A libc/src/stdfix/countlsur.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/CountlsTest.h
    A libc/test/src/stdfix/countlshk_test.cpp
    A libc/test/src/stdfix/countlshr_test.cpp
    A libc/test/src/stdfix/countlsk_test.cpp
    A libc/test/src/stdfix/countlslk_test.cpp
    A libc/test/src/stdfix/countlslr_test.cpp
    A libc/test/src/stdfix/countlsr_test.cpp
    A libc/test/src/stdfix/countlsuhk_test.cpp
    A libc/test/src/stdfix/countlsuhr_test.cpp
    A libc/test/src/stdfix/countlsuk_test.cpp
    A libc/test/src/stdfix/countlsulk_test.cpp
    A libc/test/src/stdfix/countlsulr_test.cpp
    A libc/test/src/stdfix/countlsur_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Implement fixed point `countlsfx` functions in llvm-libc (#125356)

fixes #113357


  Commit: 5566bfa51e9baea0fdcd332198408f8cba39c0d0
      https://github.com/llvm/llvm-project/commit/5566bfa51e9baea0fdcd332198408f8cba39c0d0
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp

  Log Message:
  -----------
  [RISCV] Improve RISCVOperand Printing (#126179)

We've gradually added more information to the RISCVOperand structure,
but the debug output has never caught up, which is quite confusing. This
adds printing for many of additional the fields in the structure, where
they are relevant.

In addition to this, we now have quite a lot of internal registers which
share names with each other - e.g. X0_H, X0_W, X0, X0_Pair all have the
same name - so also print the enum value to differentiate these.


  Commit: 501901e8217a09ce788bedc0eb94cd7d54fa9f6f
      https://github.com/llvm/llvm-project/commit/501901e8217a09ce788bedc0eb94cd7d54fa9f6f
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/test/CodeGenHLSL/resource-bindings.hlsl

  Log Message:
  -----------
  [HLSL][NFC] Add test check to make sure the resource handle gets stored in the resource global (#124866)


  Commit: 73f11ac17d50f0585d03a880e756ff13c321bfd0
      https://github.com/llvm/llvm-project/commit/73f11ac17d50f0585d03a880e756ff13c321bfd0
  Author: Scott Todd <scott.todd0 at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/Utils/ConversionUtils.h

  Log Message:
  -----------
  [mlir][tosa] Use explicit namespace for OpTrait. (#126286)

I'm seeing build errors in a downstream project using torch-mlir that
are fixed by this change. See
https://github.com/iree-org/iree/pull/19903#discussion_r1946899561 for
more context. The build error on MSVC is:
```
C:\home\runner\_work\iree\iree\third_party\llvm-project\mlir\include\mlir/Dialect/Tosa/Utils/ConversionUtils.h(148): error C2872: 'OpTrait': ambiguous symbol
C:\home\runner\_work\iree\iree\third_party\llvm-project\mlir\include\mlir/Dialect/Tosa/IR/TosaOps.h(49): note: could be 'mlir::OpTrait'
C:\home\runner\_work\iree\iree\third_party\torch-mlir\include\torch-mlir/Dialect/Torch/IR/TorchTraits.h(23): note: or       'mlir::torch::Torch::OpTrait'
C:\home\runner\_work\iree\iree\third_party\llvm-project\mlir\include\mlir/Dialect/Tosa/Utils/ConversionUtils.h(148): note: the template instantiation context (the oldest one first) is
C:\home\runner\_work\iree\iree\third_party\torch-mlir\lib\Conversion\TorchToTosa\TosaLegalizeCommon.cpp(126): note: see reference to function template instantiation 'TosaOp mlir::tosa::CreateOpAndInfer<mlir::tosa::MulOp,mlir::Value&,mlir::Value&,mlir::Value&>(mlir::PatternRewriter &,mlir::Location,mlir::Type,mlir::Value &,mlir::Value &,mlir::Value &)' being compiled
        with
        [
            TosaOp=mlir::tosa::MulOp
        ]
C:\home\runner\_work\iree\iree\third_party\torch-mlir\include\torch-mlir/Conversion/TorchToTosa/TosaLegalizeUtils.h(83): note: see reference to function template instantiation 'TosaOp mlir::tosa::CreateOpAndInfer<TosaOp,mlir::Value&,mlir::Value&,mlir::Value&>(mlir::ImplicitLocOpBuilder &,mlir::Type,mlir::Value &,mlir::Value &,mlir::Value &)' being compiled
        with
        [
            TosaOp=mlir::tosa::MulOp
        ]
C:\home\runner\_work\iree\iree\third_party\torch-mlir\include\torch-mlir/Conversion/TorchToTosa/TosaLegalizeUtils.h(76): note: see reference to function template instantiation 'TosaOp mlir::tosa::CreateOpAndInferShape<TosaOp,mlir::Value&,mlir::Value&,mlir::Value&>(mlir::ImplicitLocOpBuilder &,mlir::Type,mlir::Value &,mlir::Value &,mlir::Value &)' being compiled
        with
        [
            TosaOp=mlir::tosa::MulOp
        ]
```

I think the torch-mlir code here is causing the issue, but I'm not sure
why builds only started failing now:
https://github.com/llvm/torch-mlir/blob/main/include/torch-mlir/Dialect/Torch/IR/TorchTraits.h.
Given that `mlir::OpTrait` already exists, torch-mlir should not be
creating an ambiguous symbol `mlir::torch::Torch::OpTrait`. So while a
better fix would be to the downstream project, being explicit here
doesn't seem that unreasonable to me.


  Commit: 4df287a171b63514a5028b85272fcc1b89555ee4
      https://github.com/llvm/llvm-project/commit/4df287a171b63514a5028b85272fcc1b89555ee4
  Author: Benjamin Kramer <benny.kra at googlemail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

  Log Message:
  -----------
  [bazel] Add missing dependency for 5a0075adbb623c8661862b9af1272b8f430d9e5c


  Commit: 479ffe851bda03d7707b5aae633f231980b71344
      https://github.com/llvm/llvm-project/commit/479ffe851bda03d7707b5aae633f231980b71344
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/test/Driver/offload-Xarch.c

  Log Message:
  -----------
  [OpenMP] Fix Xarch OpenMP test on Windows

Summary:
We don't support OpenMP offloading on Windows so this produces weird
results.


  Commit: 8a03658d575b5cfd65abb5cd4e80d0ee4163fc11
      https://github.com/llvm/llvm-project/commit/8a03658d575b5cfd65abb5cd4e80d0ee4163fc11
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir

  Log Message:
  -----------
  [mlir][xegpu] Tensor descriptor type verifier (#124548)

Adds XeGPU tensor descriptor type verifier.

The type verifier covers general tensor descriptor invariants w.r.t. Xe
ISA semantics.
Related operation verifiers are updated to account for the new
descriptor checks and avoid duplication.


  Commit: 605a9e37b64b5b5647f1f3e560f7ffe31157841c
      https://github.com/llvm/llvm-project/commit/605a9e37b64b5b5647f1f3e560f7ffe31157841c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/test/OpenMP/declare_target_messages.cpp

  Log Message:
  -----------
  [OpenMP] Fix infinite loop on recursive initializers (#126269)

Summary:
If the user tried to initialize a gobal declare target variable with
itself the compiler will hang forever. Add a visited set to make sure
this stops.

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


  Commit: d705e7e9eb5e6d3c791935f191225118b88ab574
      https://github.com/llvm/llvm-project/commit/d705e7e9eb5e6d3c791935f191225118b88ab574
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/CodeGenMapTable.cpp

  Log Message:
  -----------
  [NFC][TableGen] Code cleanup in CodeGenMapTable `EmitMapTable` (#126157)

- Emit C++17 nested namespaces.
- Shorten the binary search table name to just `Table` since its
declared in the scope of each search function.
- Use `using namespace XXX` in the search function to avoid emitting the
Target Inst Namespace prefix in the table entries.
- Add short-cut handling of `TableSize` == 0 case (verified in Hexagon
target).
- Use `SetVector` in `ColFieldValueMap` to get automatic deduplication
and eliminate manual deduplication code.
- Use range for loops.


  Commit: 7abca756d1434f0e51cd0af8da647d51f38f634e
      https://github.com/llvm/llvm-project/commit/7abca756d1434f0e51cd0af8da647d51f38f634e
  Author: Ben Barham <ben_barham at apple.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/Index/IndexBody.cpp
    A clang/test/Index/index-deduction-guide.cpp

  Log Message:
  -----------
  [Index] Skip adding call relations to deduction guides (#126151)

Deduction guides have no name and we already skip adding occurrences to
them for that reason. Also skip adding any relations to them.


  Commit: bada9220b87e73c0f4a498b82f883e17eda928d1
      https://github.com/llvm/llvm-project/commit/bada9220b87e73c0f4a498b82f883e17eda928d1
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/src/__support/fixed_point/fx_bits.h

  Log Message:
  -----------
  [libc][stdfix] Fix buildbot failure because of a typo. (#126291)

Fix build-bot failure caused by #125356


  Commit: 6ef978b8c41a83378af3de1dceeea434715f80f4
      https://github.com/llvm/llvm-project/commit/6ef978b8c41a83378af3de1dceeea434715f80f4
  Author: QuietMisdreavus <QuietMisdreavus at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    A clang/test/ExtractAPI/typedef_underscore.c

  Log Message:
  -----------
  [clang][ExtractAPI] combine typedef records if the underlying type's name is underscored (#125964)

fixes rdar://137214218

When 'typedef struct' decls are encountered, the records are combined if
the underlying type is either anonymous or has the same name as the
typedef. Extend this behavior to also combine records when the
underlying type has an underscored name that is equivalent to the
typedef name when the leading underscores are removed.


  Commit: 7623d917849daf6d796e497d125e48026b0247cf
      https://github.com/llvm/llvm-project/commit/7623d917849daf6d796e497d125e48026b0247cf
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/stdfix.rst
    M libc/include/stdfix.yaml
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/stdfix/CMakeLists.txt
    R libc/src/stdfix/countlshk.cpp
    R libc/src/stdfix/countlshk.h
    R libc/src/stdfix/countlshr.cpp
    R libc/src/stdfix/countlshr.h
    R libc/src/stdfix/countlsk.cpp
    R libc/src/stdfix/countlsk.h
    R libc/src/stdfix/countlslk.cpp
    R libc/src/stdfix/countlslk.h
    R libc/src/stdfix/countlslr.cpp
    R libc/src/stdfix/countlslr.h
    R libc/src/stdfix/countlsr.cpp
    R libc/src/stdfix/countlsr.h
    R libc/src/stdfix/countlsuhk.cpp
    R libc/src/stdfix/countlsuhk.h
    R libc/src/stdfix/countlsuhr.cpp
    R libc/src/stdfix/countlsuhr.h
    R libc/src/stdfix/countlsuk.cpp
    R libc/src/stdfix/countlsuk.h
    R libc/src/stdfix/countlsulk.cpp
    R libc/src/stdfix/countlsulk.h
    R libc/src/stdfix/countlsulr.cpp
    R libc/src/stdfix/countlsulr.h
    R libc/src/stdfix/countlsur.cpp
    R libc/src/stdfix/countlsur.h
    M libc/test/src/stdfix/CMakeLists.txt
    R libc/test/src/stdfix/CountlsTest.h
    R libc/test/src/stdfix/countlshk_test.cpp
    R libc/test/src/stdfix/countlshr_test.cpp
    R libc/test/src/stdfix/countlsk_test.cpp
    R libc/test/src/stdfix/countlslk_test.cpp
    R libc/test/src/stdfix/countlslr_test.cpp
    R libc/test/src/stdfix/countlsr_test.cpp
    R libc/test/src/stdfix/countlsuhk_test.cpp
    R libc/test/src/stdfix/countlsuhr_test.cpp
    R libc/test/src/stdfix/countlsuk_test.cpp
    R libc/test/src/stdfix/countlsulk_test.cpp
    R libc/test/src/stdfix/countlsulr_test.cpp
    R libc/test/src/stdfix/countlsur_test.cpp

  Log Message:
  -----------
  Revert "[libc][stdfix] Fix buildbot failure because of a typo. (#126291)"

This reverts commit bada9220b87e73c0f4a498b82f883e17eda928d1.

Revert "[libc][stdfix] Implement fixed point `countlsfx` functions in llvm-libc (#125356)"

This reverts commit f2a1103b323492160d7d27a1575fbda709b49036.


  Commit: dee20925e76e9aed50c0fd4ac36a9ee1039a5265
      https://github.com/llvm/llvm-project/commit/dee20925e76e9aed50c0fd4ac36a9ee1039a5265
  Author: Vinay Deshmukh <32487576+vinay-deshmukh at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake

  Log Message:
  -----------
  [libc][test] `-Wimplicit-fallthrough`, `-Wwrite-strings` and non-GCC warnings (#124036)


* Enabled `-Wimplicit-fallthrough`
* Enabled `-Wwrite-strings`
* Enabled non-GCC warnings
* Fix non-GCC to mean `clang`
* Move `-Wstrict-prototypes` to common section

See:
https://github.com/llvm/llvm-project/pull/122835#discussion_r1924109264

Relates to #119281


  Commit: cea799afc632879f7d08157108a60c67317829a2
      https://github.com/llvm/llvm-project/commit/cea799afc632879f7d08157108a60c67317829a2
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/strict-fadd-interleave-only.ll

  Log Message:
  -----------
  [LV] Add ordered reduction test with live-in.

Extra test for https://github.com/llvm/llvm-project/pull/124644.


  Commit: fb1216e82979511a3dfc931e693b575c225c5224
      https://github.com/llvm/llvm-project/commit/fb1216e82979511a3dfc931e693b575c225c5224
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/GlobalISel/LegalizerInfo.h

  Log Message:
  -----------
  [NFC][GlobalISel] Minor cleanup in LegalityQuery constructors (#126285)

- Remove a redundant LegalityQuery constructor by using a default value
for `MMODescrs` and remove const for ArrayRef arguments.
- Use a delegating constructor for `MemDesc` constructor that takes
`MachineMemOperand`.


  Commit: 6e5988863177e1d53e7a7abb7a3db2b85376f0f5
      https://github.com/llvm/llvm-project/commit/6e5988863177e1d53e7a7abb7a3db2b85376f0f5
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  workflows/premerge: Move concurrency definition to workflow level (#126308)

Prior workflow runs were not being cancelled when the pull request was
closed, and I think this was why. Also, there is no advantage to having
the definitions at the job level.


  Commit: 2e0c0931bc891e76effaeb9c82fa08749e61f9b3
      https://github.com/llvm/llvm-project/commit/2e0c0931bc891e76effaeb9c82fa08749e61f9b3
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/test/BUILD.gn

  Log Message:
  -----------
  [gn] fix bug in bfba6215cec2


  Commit: 8b12acd2a4a030ad0be76295b98815f93b2631d8
      https://github.com/llvm/llvm-project/commit/8b12acd2a4a030ad0be76295b98815f93b2631d8
  Author: Md Abdullah Shahneous Bari <98356296+mshahneo at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M mlir/lib/Conversion/VectorToSPIRV/VectorToSPIRV.cpp
    M mlir/test/Conversion/VectorToSPIRV/vector-to-spirv.mlir

  Log Message:
  -----------
  [mlir][vector][spirv] Handle 1-element vector.{load|store} lowering. (#126294)

Add support for single element vector{load|store} lowering to SPIR-V.
Since, SPIR-V converts single element vector to scalars, it needs
special attention for vector{load|store} lowering to spirv{load|store}.


  Commit: 427b24a40879d512802ca4c04d18b0f124e2a684
      https://github.com/llvm/llvm-project/commit/427b24a40879d512802ca4c04d18b0f124e2a684
  Author: David CARLIER <devnexen at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp

  Log Message:
  -----------
  [compiler-rt][rtsan] adding readlink(at) interception (#126262)


  Commit: 6dbe5422907ff342fd5971a88892aee8f75a25ca
      https://github.com/llvm/llvm-project/commit/6dbe5422907ff342fd5971a88892aee8f75a25ca
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/src/math/generic/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/exhaustive/CMakeLists.txt
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/stdfix/CMakeLists.txt
    M libc/utils/MPFRWrapper/CMakeLists.txt

  Log Message:
  -----------
  [libc] Use `${libc_opt_high_flag}` instead of `-O3` (#123233)

This is preferable since `${libc_opt_high_flag}` will be set correctly
for the compiler used.


  Commit: addbb4448487717283d334e48c63868d6f8553be
      https://github.com/llvm/llvm-project/commit/addbb4448487717283d334e48c63868d6f8553be
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/openmp-offload.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  [LinkerWrapper] Clean up options after proper forwarding (#126297)

Summary:
Recent changes made a lot of this stuff redundant or unused, clean it up
a bit.

Also snuck in a change to pass the CUDA path since we still use it for
`fatbinary` internally.


  Commit: 76985fd7cafddec5254c15caeeeabc80e5a8c2f9
      https://github.com/llvm/llvm-project/commit/76985fd7cafddec5254c15caeeeabc80e5a8c2f9
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/BinaryFormat/DXContainerConstants.def
    A llvm/include/llvm/MC/DXContainerRootSignature.h
    M llvm/include/llvm/Object/DXContainer.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/lib/MC/CMakeLists.txt
    A llvm/lib/MC/DXContainerRootSignature.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    A llvm/test/ObjectYAML/DXContainer/RootSignature-Flags.yaml
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
    M llvm/unittests/Object/DXContainerTest.cpp
    M llvm/unittests/ObjectYAML/DXContainerYAMLTest.cpp

  Log Message:
  -----------
  [DXIL] Adding support to RootSignatureFlags in obj2yaml (#122396)

This PR adds:
- `RootSignatureFlags` extraction from DXContainer using `obj2yaml`


This PR is part of: #121493

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>


  Commit: 756dab4c25c30743a1bdcae8a8e8b8d22f1873b1
      https://github.com/llvm/llvm-project/commit/756dab4c25c30743a1bdcae8a8e8b8d22f1873b1
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/MC/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 76985fd7cafd


  Commit: 170cdadf7d1fa254d5a77648b65c4c72e78c8b75
      https://github.com/llvm/llvm-project/commit/170cdadf7d1fa254d5a77648b65c4c72e78c8b75
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libc-overlay-tests.yml

  Log Message:
  -----------
  [libc] Exercise all CMake build types in GitHub Action workflows (#126315)

We want to test libc in all build configurations: Debug, Release and
MinSizeRel which correspond to -O0, -O3 and -Os optimization flags.


  Commit: 898112e529eae3f4c2210d9b03b14b71869ebc9e
      https://github.com/llvm/llvm-project/commit/898112e529eae3f4c2210d9b03b14b71869ebc9e
  Author: David Pagan <dave.pagan at amd.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/docs/OpenMPSupport.rst

  Log Message:
  -----------
  [OpenMP][Docs] Update OpenMP supported features table (#126292)

Updated status to 'done' for OpenMP 6.0 features:
  - OpenMP directives in concurrent loop regions
  - atomics constructs on concurrent loop regions
  - Lift nesting restriction on concurrent loop

Removed duplicate OpenMP 6.0 feature per Michael Klemm:
  - atomic constructs in loop region


  Commit: 51e7dc8627e636ff69ee8bcb0bf599b7a3a4957f
      https://github.com/llvm/llvm-project/commit/51e7dc8627e636ff69ee8bcb0bf599b7a3a4957f
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/unittests/Object/DXContainerTest.cpp

  Log Message:
  -----------
  Use explicit unsigned literals to fix mixed sign comparisons


  Commit: 343bbda140d5a15cd7d7fbfc6041a7506da5cdae
      https://github.com/llvm/llvm-project/commit/343bbda140d5a15cd7d7fbfc6041a7506da5cdae
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp

  Log Message:
  -----------
  Use a stable sort to handle overlapping/duplicate line sequences

This can occur due to linker ICF and stable sort will ensure the results
are stable.

No explicit/new test coverage, because nondeterminism is non-testable.

It should already be covered by the DWARFDebugLineTest that was failing
some internal testing on an ARM machine which might've been what changed
the sort order. But `llvm::sort` also deliberately randomizes the
contents (under EXPENSIVE_CHECKS) so I'd have expected failures to show
up in any EXPENSIVE_CHECKS Build...


  Commit: e6e8ac59ba45e03da92aebec1f4561c1fa970df1
      https://github.com/llvm/llvm-project/commit/e6e8ac59ba45e03da92aebec1f4561c1fa970df1
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M flang/CMakeLists.txt
    M flang/examples/CMakeLists.txt
    M flang/test/CMakeLists.txt
    M flang/test/Driver/ctofortran.f90
    M flang/test/Driver/exec.f90
    M flang/test/Runtime/no-cpp-dep.c
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in
    M flang/tools/f18/CMakeLists.txt
    M flang/unittests/CMakeLists.txt
    M flang/unittests/Evaluate/CMakeLists.txt

  Log Message:
  -----------
  [Flang] Optionally do not compile the runtime in-tree (#122336)

Introduce the CMake switch FLANG_INCLUDE_RUNTIME. When set to off, do
not add build instructions for the runtime.

This is required for Flang-RT (#110217) and the current runtime CMake
code to co-exist. When using `LLVM_ENABLE_RUNTIME=flang-rt`, the in-tree
build instructions are in conflict and must be disabled.


  Commit: 3e2afe5f019b7a1c60e23cb2743018bd2d0417b1
      https://github.com/llvm/llvm-project/commit/3e2afe5f019b7a1c60e23cb2743018bd2d0417b1
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    R clang/cmake/caches/Fuchsia-stage2-instrumented.cmake
    M clang/cmake/caches/Fuchsia.cmake

  Log Message:
  -----------
  Revert "[Fuchsia] Support PGO" (#126293)

Reverts llvm/llvm-project#120323

This breaks some internal Fuchsia builders. We can reland again later,
once that is addresed.


  Commit: 7464dc8c7618aeb5a01998576bbcc4c88f0dde1d
      https://github.com/llvm/llvm-project/commit/7464dc8c7618aeb5a01998576bbcc4c88f0dde1d
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.h

  Log Message:
  -----------
  [RISCV] Include RISCVGenSearchTable.inc in RISCVISelDAGToDAG.h (#126326)

This line was previously removed when
12d47247e5046b959af180e12f648c54e2c5e863 moved it to RISCVInstrInfo.h.
But we probably don't want to have dangling `#define *_DECL`
(RISCVGenSearchableTables.inc will `#undef` these macros) and I think
there is no harm putting declarations of those search table functions in
RISCVISelDAGToDAG.h.


  Commit: 51ba9819b40e04ef0ddbe141d3d30c32a295a0bc
      https://github.com/llvm/llvm-project/commit/51ba9819b40e04ef0ddbe141d3d30c32a295a0bc
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M libcxx/test/support/MinSequenceContainer.h
    M libcxx/test/support/min_allocator.h

  Log Message:
  -----------
  [libc++][test] Fix `size_type` issues with `MinSequenceContainer` and `min_allocator` (#126267)

`MinSequenceContainer::size` can be narrowing on 64-bit platforms, and
MSVC complains about such implicit conversion. This PR changes the
implicit conversion to explicit `static_cast`.

`min_allocator::allocate` and `min_allocator::deallocate` have
`ptrdiff_t` as the parameter type, which seems weird, because the
underlying `std::allocator`'s member functions take `size_t`. It seems
better to use `size_t` consistently.


  Commit: 12a154a94a9c2f6f0690adc7302da9c9e47ec806
      https://github.com/llvm/llvm-project/commit/12a154a94a9c2f6f0690adc7302da9c9e47ec806
  Author: Ami-zhang <zhanglimin at loongson.cn>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M libunwind/src/UnwindCursor.hpp
    M libunwind/test/signal_unwind.pass.cpp
    M libunwind/test/unwind_leaffunction.pass.cpp

  Log Message:
  -----------
  [libunwind] Unwind through loongarch64/Linux sigreturn frame (#123682)

Similar to D90898 (Linux AArch64), D124765 (SystemZ), and D148499
(RISCV).

In this commit, I enabled two test cases, while zhuqizheng supported
with the source code development.

Co-Authored-By: zhuqizheng <zhuqizheng at loongson.cn>

Co-authored-by: zhuqizheng <zhuqizheng at loongson.cn>


  Commit: ff79d83caeeea8457f69406f38801fe8893bbfd8
      https://github.com/llvm/llvm-project/commit/ff79d83caeeea8457f69406f38801fe8893bbfd8
  Author: Tiezhu Yang <yangtiezhu at loongson.cn>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/Process/Linux/NativeRegisterContextLinux_loongarch64.cpp

  Log Message:
  -----------
  [LLDB][LoongArch] Extend the maximum number of watchpoints (#126204)

The maximum number of load/store watchpoints and fetch instruction
watchpoints is 14 each according to LoongArch Reference Manual [1],
so extend the maximum number of watchpoints from 8 to 14 for ptrace.

A new struct user_watch_state_v2 was added into uapi in the related
kernel commit 531936dee53e ("LoongArch: Extend the maximum number of
watchpoints") [2], but there may be no struct user_watch_state_v2 in
the system header in time.

In order to avoid undefined or redefined error, just add a new struct
loongarch_user_watch_state in LLDB which is same with the uapi struct
user_watch_state_v2, then replace the current user_watch_state with
loongarch_user_watch_state.

As far as I can tell, the only users for this struct in the userspace
are GDB and LLDB, there are no any problems of software compatibility
between the application and kernel according to the analysis.

The compatibility problem has been considered while developing and
testing. When the applications in the userspace get watchpoint state,
the length will be specified which is no bigger than the sizeof struct
user_watch_state or user_watch_state_v2, the actual length is assigned
as the minimal value of the application and kernel in the generic code
of ptrace:

```
kernel/ptrace.c: ptrace_regset():

	kiov->iov_len = min(kiov->iov_len,
                            (__kernel_size_t) (regset->n * regset->size));

	if (req == PTRACE_GETREGSET)
                return copy_regset_to_user(task, view, regset_no, 0,
                                           kiov->iov_len, kiov->iov_base);
	else
                return copy_regset_from_user(task, view, regset_no, 0,
                                             kiov->iov_len, kiov->iov_base);
```

For example, there are four kind of combinations, all of them work well.

(1) "older kernel + older app", the actual length is 8+(8+8+4+4)*8=200;
(2) "newer kernel + newer app", the actual length is 8+(8+8+4+4)*14=344;
(3) "older kernel + newer app", the actual length is 8+(8+8+4+4)*8=200;
(4) "newer kernel + older app", the actual length is 8+(8+8+4+4)*8=200.

[1]
https://loongson.github.io/LoongArch-Documentation/LoongArch-Vol1-EN.html#control-and-status-registers-related-to-watchpoints
[2]
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=531936dee53e

Signed-off-by: Tiezhu Yang <yangtiezhu at loongson.cn>


  Commit: b850ce41db1e90cb2573ab5880da1d05de7828fd
      https://github.com/llvm/llvm-project/commit/b850ce41db1e90cb2573ab5880da1d05de7828fd
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Analysis/Utils.h
    M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix private memref creation bug in affine fusion (#126028)

Fix private memref creation bug in affine fusion exposed in the case of
the same memref being loaded from/stored to in producer nest. Make the
private memref replacement sound.

Change affine fusion debug string to affine-fusion - more compact.

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


  Commit: 9d5edc9a0dd35049017aad2a9d3f4a4a2746fec9
      https://github.com/llvm/llvm-project/commit/9d5edc9a0dd35049017aad2a9d3f4a4a2746fec9
  Author: Augusto Noronha <anoronha at apple.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M lldb/include/lldb/ValueObject/ValueObject.h
    M lldb/source/ValueObject/ValueObject.cpp
    M lldb/source/ValueObject/ValueObjectDynamicValue.cpp
    M lldb/unittests/ValueObject/DynamicValueObjectLocalBuffer.cpp

  Log Message:
  -----------
  [lldb][NFC] Replace GetLocalBufferSize() with GetLocalBuffer() (#126333)


  Commit: de12bf508970ef9c0612c3950410530c4b822e6e
      https://github.com/llvm/llvm-project/commit/de12bf508970ef9c0612c3950410530c4b822e6e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

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

  Log Message:
  -----------
  [RISCV] Refactor tablegen classes to push common values down to VPseudoBinaryM. NFC (#126339)

Move VPseudoBinaryM ajacent to its only users.


  Commit: e0a21e23a7aa6acf3e07b866c3c599db5eb4b67f
      https://github.com/llvm/llvm-project/commit/e0a21e23a7aa6acf3e07b866c3c599db5eb4b67f
  Author: Gedare Bloom <gedare at rtems.org>
  Date:   2025-02-07 (Fri, 07 Feb 2025)

  Changed paths:
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Format/Format.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Add BinPackLongBracedList style option (#112482)

The use of Cpp11BracedListStyle with BinPackArguments=False avoids bin
packing until reaching a hard-coded limit of 20 items. This is an
arbitrary choice. Introduce a new style option to allow disabling this
limit.


  Commit: 6f241e36831927e3aea113cfc017c34fdeda340a
      https://github.com/llvm/llvm-project/commit/6f241e36831927e3aea113cfc017c34fdeda340a
  Author: Yanzuo Liu <zwuis at outlook.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/cxx1z-decomposition.cpp

  Log Message:
  -----------
  [Clang][Sema] Fix wrong initialization kind when handling initializing structured bindings from an array with direct-list-initialization (#124793)

In 377257f063c, elements of structured bindings are copy-initialized.
They should be direct-initialized because the form of the initializer of
the whole structured bindings is a direct-list-initialization.

> [dcl.struct.bind]/1:
> ... and each element is copy-initialized or direct-initialized from
the corresponding element of the assignment-expression as specified by
the form of the initializer. ...

For example,

```cpp
  int arr[2]{};
  // elements of `[a, b]` should be direct-initialized
  auto [a, b]{arr};
```


  Commit: 1c497c4837e82e23589b29e3ce0aedd3f461018b
      https://github.com/llvm/llvm-project/commit/1c497c4837e82e23589b29e3ce0aedd3f461018b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#126343)


  Commit: dbe812220c3100ece253feb72d65172780ef723b
      https://github.com/llvm/llvm-project/commit/dbe812220c3100ece253feb72d65172780ef723b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/X86InstrMappingEmitter.cpp

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


  Commit: 5901bda5a0ed31e024abc8a7af52b272400daa08
      https://github.com/llvm/llvm-project/commit/5901bda5a0ed31e024abc8a7af52b272400daa08
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [Vectorize] Avoid repeated hash lookups (NFC) (#126345)


  Commit: 95922d83341f3476bdc2eccd524a02d9a4ab80da
      https://github.com/llvm/llvm-project/commit/95922d83341f3476bdc2eccd524a02d9a4ab80da
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/tools/dsymutil/BinaryHolder.cpp

  Log Message:
  -----------
  [dsymutil] Avoid repeated hash lookups (NFC) (#126190) (#126346)


  Commit: 027aa70ea44502280779c3887c72886326785c6b
      https://github.com/llvm/llvm-project/commit/027aa70ea44502280779c3887c72886326785c6b
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [TOSA] Fix negate maxValue computation (#126295)

getInput1Zp() returns an unsigned value which means in case of negative
zero point value the max intermediate value computation currently goes
wrong. Use getInput1ZpAttr() instead which returns an APInt and allows
easy sign extension to int64_t.


  Commit: 564b9b7f4db05b5ce3558041b164f21dfe051a91
      https://github.com/llvm/llvm-project/commit/564b9b7f4db05b5ce3558041b164f21dfe051a91
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AArch64/a55-fuse-address.mir
    M llvm/test/CodeGen/AArch64/ampere1-sched-add.mir
    M llvm/test/CodeGen/AArch64/cluster-frame-index.mir
    M llvm/test/CodeGen/AArch64/dump-reserved-cycles.mir
    M llvm/test/CodeGen/AArch64/dump-schedule-trace.mir
    M llvm/test/CodeGen/AArch64/force-enable-intervals.mir
    M llvm/test/CodeGen/AArch64/machine-scheduler.mir
    M llvm/test/CodeGen/AArch64/macro-fusion-addsub-2reg-const1.mir
    M llvm/test/CodeGen/AArch64/macro-fusion-last.mir
    M llvm/test/CodeGen/AArch64/misched-branch-targets.mir
    M llvm/test/CodeGen/AArch64/misched-bundle.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-02.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-arith-logic.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-cmp.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-crypto-eor.mir
    M llvm/test/CodeGen/AArch64/misched-move-imm.mir
    M llvm/test/CodeGen/AArch64/misched-predicate-virtreg.mir
    M llvm/test/CodeGen/AArch64/misched-sort-resource-in-trace.mir
    M llvm/test/CodeGen/AArch64/sched-postidxalias.mir
    M llvm/test/CodeGen/AArch64/sched-print-cycle.mir
    M llvm/test/CodeGen/AArch64/scheduledag-constreg.mir
    M llvm/test/CodeGen/AArch64/sve-aliasing.mir
    M llvm/test/CodeGen/AMDGPU/at-least-one-def-value-assert.mir
    M llvm/test/CodeGen/AMDGPU/cluster-flat-loads.mir
    M llvm/test/CodeGen/AMDGPU/dbg-value-ends-sched-region.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler-crash.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler-liveins.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler.mir
    M llvm/test/CodeGen/AMDGPU/flat-load-clustering.mir
    M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-debug.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
    M llvm/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-onlydbg-value-empty-region.mir
    M llvm/test/CodeGen/AMDGPU/sched-barrier-hang-weak-dep.mir
    M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-subreg-def-across-subreg-def.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-fpmode.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier.mir
    M llvm/test/CodeGen/AMDGPU/sreg-xnull-regclass-bitwidth.mir
    M llvm/test/CodeGen/ARM/cortex-m7-wideops.mir
    M llvm/test/CodeGen/ARM/misched-branch-targets.mir
    M llvm/test/CodeGen/PowerPC/topdepthreduce-postra.mir
    M llvm/test/CodeGen/RISCV/misched-postra-direction.mir

  Log Message:
  -----------
  Revert "CodeGen][NewPM] Port MachineScheduler to NPM. (#125703)" (#126268)

This reverts commit 5aa4979c47255770cac7b557f3e4a980d0131d69 while I
investigate what's causing the compile-time regression.


  Commit: 16df836a527e4a04d2cbdb52365c81ff80e3e757
      https://github.com/llvm/llvm-project/commit/16df836a527e4a04d2cbdb52365c81ff80e3e757
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [VPlan] Mark hasVF & hasScalableVF as const (NFC).


  Commit: 0cdb467c7da731bb83abc75480cbf66ad64aa014
      https://github.com/llvm/llvm-project/commit/0cdb467c7da731bb83abc75480cbf66ad64aa014
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.cpp
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFASTParserClang.h
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.h
    A lldb/test/Shell/Expr/TestEnumExtensibility.m

  Log Message:
  -----------
  [lldb][TypeSystemClang] Create EnumExtensibilityAttr from DW_AT_APPLE_enum_kind (#126221)

This patch consumes the `DW_AT_APPLE_enum_kind` attribute added in
https://github.com/llvm/llvm-project/pull/124752 and turns it into a
Clang attribute in the AST. This will currently be used by the Swift
language plugin when it creates `EnumDecl`s from debug-info and passes
it to Swift compiler, which expects these attributes


  Commit: ee806646ad893fcb0d19a75cebcc1f0e0bccabf1
      https://github.com/llvm/llvm-project/commit/ee806646ad893fcb0d19a75cebcc1f0e0bccabf1
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [VPlan] Consistently use hasScalarVFOnly (NFC).

Consistently use hasScalarVFOnly instead of using
hasVF(ElementCount::getFixed(1)). Also add an assert to ensure all cases
are covered by hasScalarVFOnly.


  Commit: 66bea0df75ccdd5ffed41d06c7301a116d11abcb
      https://github.com/llvm/llvm-project/commit/66bea0df75ccdd5ffed41d06c7301a116d11abcb
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/lib/ObjCopy/ELF/ELFObjcopy.cpp
    M llvm/lib/ObjCopy/MachO/MachOObjcopy.cpp
    M llvm/lib/ObjCopy/wasm/WasmObjcopy.cpp
    M llvm/test/tools/llvm-objcopy/ELF/dump-section.test
    M llvm/test/tools/llvm-objcopy/MachO/dump-section.test
    M llvm/test/tools/llvm-objcopy/wasm/dump-section.test

  Log Message:
  -----------
  [llvm-objcopy] Fix prints wrong path when dump-section output path doesn't exist (#125345)

Fix printing the correct file path in the error message when the output
file specified by `--dump-section` cannot be opened

Fixes: #125113 on ELF, MachO, Wasm


  Commit: ef23ba7da34ca1285f10603cc4aa6441ab4530e6
      https://github.com/llvm/llvm-project/commit/ef23ba7da34ca1285f10603cc4aa6441ab4530e6
  Author: Guy David <49722543+guy-david at users.noreply.github.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/lib/Support/Unix/Signals.inc

  Log Message:
  -----------
  [Support] Re-raise external signals (#125854)

Otherwise, the handler "swallows" the signal and the process continues
to execute. While this use case is peculiar, ignoring these signals
entirely seems more odd.


  Commit: 4e29148cca3fac0f1ffb1fbfbe3bbbd489859897
      https://github.com/llvm/llvm-project/commit/4e29148cca3fac0f1ffb1fbfbe3bbbd489859897
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/XCore.cpp

  Log Message:
  -----------
  [CodeGen][XCore] Replace PointerType::getUnqual(Type) with opaque version (NFC) (#126279)

Follow-up to #123569


  Commit: 54e0c2bbe2b36b08772ca6e5e3f176d7caf116bd
      https://github.com/llvm/llvm-project/commit/54e0c2bbe2b36b08772ca6e5e3f176d7caf116bd
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/SystemZ.cpp

  Log Message:
  -----------
  [CodeGen][SystemZ] Replace PointerType::getUnqual(Type) with opaque version (NFC) (#126280)

Follow-up to #126278


  Commit: df2e8ee7ae349364967a1a2d09f17b249a38c04d
      https://github.com/llvm/llvm-project/commit/df2e8ee7ae349364967a1a2d09f17b249a38c04d
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/AArch64.cpp

  Log Message:
  -----------
  [CodeGen][AArch64] Replace PointerType::getUnqual(Type) with opaque version (NFC) (#126278)

Follow-up to #123569


  Commit: 6ff8a06de9ce125023e117014ce4dca8fcc391d7
      https://github.com/llvm/llvm-project/commit/6ff8a06de9ce125023e117014ce4dca8fcc391d7
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [VPlan] Run recipe removal and simplification after optimizeForVFAndUF. (#125926)

Run recipe simplification and dead recipe removal after VPlan-based
unrolling and optimizeForVFAndUF, to clean up any redundant or dead
recipes introduced by them. Currently this is NFC, as it removes the
corresponding removeDeadRecipes run in optimizeForVFAndUF and no
additional simplifications kick in after unrolling yet. That is changing
with https://github.com/llvm/llvm-project/pull/123655.

Note that with this change, pattern-matching is now applied after
EVL-based recipes have been introduced.

Trying to match VPWidenEVLRecipe when not explicitly requested might
apply a pattern with 2 operands to one with 3 due to the extra EVL
operand and VPWidenEVLRecipe being a subclass of VPWidenRecipe.

To prevent this, update Recipe_match::match to only match
VPWidenEVLRecipe if it is in the requested recipe types (RecipeTy).

PR: https://github.com/llvm/llvm-project/pull/125926


  Commit: e0fee55a5549e04bb14d45fba6267bd69285ce77
      https://github.com/llvm/llvm-project/commit/e0fee55a5549e04bb14d45fba6267bd69285ce77
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Address.h
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CodeGenModule.cpp

  Log Message:
  -----------
  [CodeGen] Replace of PointerType::get(Type) with opaque version (NFC) (#124771)

Follow-up to https://github.com/llvm/llvm-project/issues/123569


  Commit: a07928c3ce9da62b82a796ef26f5f7aaa0311d37
      https://github.com/llvm/llvm-project/commit/a07928c3ce9da62b82a796ef26f5f7aaa0311d37
  Author: Mats Jun Larsen <mats at jun.codes>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/Hexagon.cpp

  Log Message:
  -----------
  [CodeGen][Hexagon] Replace PointerType::getUnqual(Type) with opaque version (NFC) (#126274)

Follow-up to https://github.com/llvm/llvm-project/issues/123569

The obsolete bitcasts on the LoadInsts are also removed.


  Commit: 101b3ff7af8fabe4ec5c06219a70094c1d901c49
      https://github.com/llvm/llvm-project/commit/101b3ff7af8fabe4ec5c06219a70094c1d901c49
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoXCV.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZc.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZfa.td

  Log Message:
  -----------
  [RISCV][NFC] Adopt DiagnosticString interface (#126290)


  Commit: 2feced1df0aa01f78501720b98faa985bcec846a
      https://github.com/llvm/llvm-project/commit/2feced1df0aa01f78501720b98faa985bcec846a
  Author: Durgadoss R <durgadossr at nvidia.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    A mlir/test/Target/LLVMIR/nvvm/tcgen05-barriers.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Add tcgen05 wait/fence Ops (#126265)

PR #126091 adds intrinsics for tcgen05
wait/fence/commit operations. This patch
adds NVVM Dialect Ops for them.

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


  Commit: 69b8cf4f0621b359b487ad41887c20984be53a34
      https://github.com/llvm/llvm-project/commit/69b8cf4f0621b359b487ad41887c20984be53a34
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Tracker.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.h
    A llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAlwaysAccept.h
    M llvm/lib/SandboxIR/Tracker.cpp
    M llvm/lib/Transforms/Vectorize/CMakeLists.txt
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/PassRegistry.def
    A llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/TransactionAcceptOrRevert.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizer.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/SandboxVectorizerPassBuilder.cpp
    A llvm/test/Transforms/SandboxVectorizer/X86/simple_cost_test.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
    M llvm/test/Transforms/SandboxVectorizer/cross_bbs.ll
    M llvm/test/Transforms/SandboxVectorizer/default_pass_pipeline.ll
    M llvm/test/Transforms/SandboxVectorizer/pack.ll
    M llvm/test/Transforms/SandboxVectorizer/repeated_instrs.ll
    M llvm/test/Transforms/SandboxVectorizer/scheduler.ll
    M llvm/test/Transforms/SandboxVectorizer/special_opcodes.ll
    M llvm/unittests/SandboxIR/TrackerTest.cpp

  Log Message:
  -----------
  [SandboxVec][BottomUpVec] Add cost estimation and tr-accept-or-revert pass (#126325)

The TransactionAcceptOrRevert pass is the final pass in the Sandbox
Vectorizer's default pass pipeline. It's job is to check the cost
before/after vectorization and accept or revert the IR to its original
state.

Since we are now starting the transaction in BottomUpVec, tests that run
a custom pipeline need to accept the transaction. This is done with the
help of the TransactionAlwaysAccept pass (tr-accept).


  Commit: 40ce8fd8436d7b52b31cb8174fe442c9c1cae7a0
      https://github.com/llvm/llvm-project/commit/40ce8fd8436d7b52b31cb8174fe442c9c1cae7a0
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/Vectorize/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 69b8cf4f0621


  Commit: 5c8c2b3db54395073e3183f89167156df29dff61
      https://github.com/llvm/llvm-project/commit/5c8c2b3db54395073e3183f89167156df29dff61
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/CMakeLists.txt
    M flang/cmake/modules/AddFlang.cmake
    M flang/docs/FlangDriver.md
    M flang/docs/GettingStarted.md
    M flang/docs/OpenACC-descriptor-management.md
    M flang/docs/Real16MathSupport.md
    M flang/docs/ReleaseNotes.md
    M flang/examples/ExternalHelloWorld/CMakeLists.txt
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/runtime/CMakeLists.txt
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/time-intrinsic.cpp
    M flang/runtime/tools.h
    M flang/test/CMakeLists.txt
    M flang/test/Driver/gcc-toolchain-install-dir.f90
    M flang/test/Driver/linker-flags.f90
    M flang/test/Driver/msvc-dependent-lib-flags.f90
    M flang/test/Driver/nostdlib.f90
    M flang/test/Runtime/no-cpp-dep.c
    M flang/test/lit.cfg.py
    M flang/tools/f18/CMakeLists.txt
    M flang/unittests/CMakeLists.txt
    M flang/unittests/Evaluate/CMakeLists.txt
    M flang/unittests/Runtime/CMakeLists.txt
    M flang/unittests/Runtime/CUDA/CMakeLists.txt
    M lld/COFF/MinGW.cpp

  Log Message:
  -----------
  [Flang] Rename libFortranRuntime.a to libflang_rt.runtime.a (#122341)

Following the conclusion of the
[RFC](https://discourse.llvm.org/t/rfc-names-for-flang-rt-libraries/84321),
rename Flang's runtime libraries as follows:

 * libFortranRuntime.(a|so) to libflang_rt.runtime.(a|so)
 * libFortranFloat128Math.a to libflang_rt.quadmath.a
* libCufRuntime_cuda_${CUDAToolkit_VERSION_MAJOR}.(a|so) to
libflang_rt.cuda_${CUDAToolkit_VERSION_MAJOR}.(a|so)

This follows the same naming scheme as Compiler-RT libraries
(`libclang_rt.${component}.(a|so)`). It provides some consistency
between Flang's runtime libraries for current and potential future
library components.


  Commit: 7f2f905361558b9137855b00debfdcc5eb057729
      https://github.com/llvm/llvm-project/commit/7f2f905361558b9137855b00debfdcc5eb057729
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/SandboxVectorizer/X86/lit.local.cfg

  Log Message:
  -----------
  [SandboxVec] Fix: Add missing lit.local.cfg for target test


  Commit: 9266b48c5b28d4633cf7671c10c2aa52e22d4d65
      https://github.com/llvm/llvm-project/commit/9266b48c5b28d4633cf7671c10c2aa52e22d4d65
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/outer-loop-wide-phis.ll

  Log Message:
  -----------
  [VPlan] Add outer loop tests with wide phis in inner loop.

Add test coverage with phis outside a header block with multiple
incoming values.


  Commit: ca9c0486cccba08dc6a3489176cbd7f38bad8e63
      https://github.com/llvm/llvm-project/commit/ca9c0486cccba08dc6a3489176cbd7f38bad8e63
  Author: David Green <david.green at arm.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/lib/Target/ARM/MCTargetDesc/ARMAsmBackend.cpp

  Log Message:
  -----------
  [ARM] Silence "enumerated and non-enumerated type in conditional expression" warning. NFC

Fixes #125543


  Commit: 451007173abaeff7de70d6d7fb0135b7858d093d
      https://github.com/llvm/llvm-project/commit/451007173abaeff7de70d6d7fb0135b7858d093d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/Analysis/UninitializedValues.cpp

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126378)


  Commit: 2fee5ef2356b514dda30e89f39125a390c0d928e
      https://github.com/llvm/llvm-project/commit/2fee5ef2356b514dda30e89f39125a390c0d928e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp

  Log Message:
  -----------
  [ByteCode] Avoid repeated hash lookups (NFC) (#126379)


  Commit: 7628fcf3d43eb20c292ab0dd25ba3f52dba248a6
      https://github.com/llvm/llvm-project/commit/7628fcf3d43eb20c292ab0dd25ba3f52dba248a6
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/lib/CrossTU/CrossTranslationUnit.cpp

  Log Message:
  -----------
  [CrossTU] Avoid repeated hash lookups (NFC) (#126380)


  Commit: cf5947be13e7af67219379e07bc0128f1f1e7f88
      https://github.com/llvm/llvm-project/commit/cf5947be13e7af67219379e07bc0128f1f1e7f88
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp

  Log Message:
  -----------
  [TableGen] Avoid repeated map lookups (NFC) (#126381)


  Commit: 1e0a48967102780a3caad09e874539869d04110d
      https://github.com/llvm/llvm-project/commit/1e0a48967102780a3caad09e874539869d04110d
  Author: YongKang Zhu <yongzhu at fb.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp

  Log Message:
  -----------
  [BOLT] Resolve symlink for library lookup (#126386)


  Commit: 8e61aae4a8ce938f42604b10123c3b21d4adc0b8
      https://github.com/llvm/llvm-project/commit/8e61aae4a8ce938f42604b10123c3b21d4adc0b8
  Author: Wael Yehia <wmyehia2001 at yahoo.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M clang/docs/UsersManual.rst
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Driver/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/CodeGen/profile-continuous.c
    A clang/test/Driver/fprofile-continuous.c

  Log Message:
  -----------
  [profile] Add a clang option -fprofile-continuous that enables continuous instrumentation profiling mode (#124353)

In Continuous instrumentation profiling mode, profile or coverage data
collected via compiler instrumentation is continuously synced to the
profile file. This feature has existed for a while, and is documented
here:

https://clang.llvm.org/docs/SourceBasedCodeCoverage.html#running-the-instrumented-program
This PR creates a user facing option to enable the feature.

---------

Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>


  Commit: fec6d168bbdf5116d2f7aaa52f0f429916af4f2d
      https://github.com/llvm/llvm-project/commit/fec6d168bbdf5116d2f7aaa52f0f429916af4f2d
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/ABI/X86/ABISysV_x86_64.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServerCommon.cpp
    M lldb/tools/debugserver/source/RNBRemote.cpp

  Log Message:
  -----------
  [lldb] Upstream a few remaining Triple::XROS patches (#126335)

Recognize the visionOS Triple::OSType::XROS os type. Some of these have
already been landed on main, but I reviewed the downstream sources and
there were a few that still needed to be landed upstream.


  Commit: f9250401ef120a4605ad67bb43d3b25500900498
      https://github.com/llvm/llvm-project/commit/f9250401ef120a4605ad67bb43d3b25500900498
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Move formation of MoveSiblingMatcher earlier in ContractNodes. NFC

ContractNodes recursively walks forward through a linked list. During
this recursion, Matchers are combined into other Matchers.

Previously the formation of MoveSiblingMatcher was after the
recursive call so it occurred as we were unwinding. If a
MoveSiblingMatcher was formed, we would recursively walk forward
to the end of the linked list again which isn't efficient.

To make this more efficient, move the formation of MoveSiblingMatcher
to the forward pass. Add additional rules to unfold MoveSiblingMatcher
if it would be more efficient to use CheckChildType, CheckChildInteger,
CheckChildSame, etc.

As an added benefit, this makes the function tail recursive which
the compiler can better optimize.


  Commit: 4aa71f0d4cccf1b06949c5a3c5ceb2e19250c7df
      https://github.com/llvm/llvm-project/commit/4aa71f0d4cccf1b06949c5a3c5ceb2e19250c7df
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Fix an unused variable warning. NFC


  Commit: c40877d095eaa03d64e614723a69f1d68717f32a
      https://github.com/llvm/llvm-project/commit/c40877d095eaa03d64e614723a69f1d68717f32a
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    A llvm/test/CodeGen/RISCV/postra-copy-expand.mir

  Log Message:
  -----------
  [RISCV] Attach an implicit source operand on vector copies (#126155)

Somtimes when we're breaking up a large vector copy into several smaller
ones, not every single smaller source registers are initialized at the
time when the original COPY happens, and the verifier will not be
pleased when seeing the smaller copies reading from an undef register.
This patch is a workaround for the said issue by attaching an implicit
read of the source operand on the newly generated copies.

This is tested by llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll which
would have crashed the compiler without this fix when
LLVM_EXPENSIVE_CHECK is enabled. Original context:
https://github.com/llvm/llvm-project/pull/124825#issuecomment-2639097531

---------

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 10ed0e406589604bf8ea5edd571a6f72dd8a6721
      https://github.com/llvm/llvm-project/commit/10ed0e406589604bf8ea5edd571a6f72dd8a6721
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M lld/ELF/Driver.cpp
    M lld/test/ELF/target-specific-options.s

  Log Message:
  -----------
  [ELF] Reorder target-specific error messaes


  Commit: c89735d289f341985ca2ea74486b96bc611b3c64
      https://github.com/llvm/llvm-project/commit/c89735d289f341985ca2ea74486b96bc611b3c64
  Author: Michael Kenzel <michael.kenzel at gmail.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Support/Threading.h

  Log Message:
  -----------
  Remove dependence on <ciso646> (#73273)

C++23 removed `<ciso646>` from the standard library. The header is used
in two places: Once in order to pull in standard library macros. Since
this file also includes `<optional>`, that use of `<ciso646>` is
technically redundant, but should probably be left in in case a future
change ever removes the include of `<optional>`. A second use of
`<ciso646>` appears to have been introduced in
da650094b187ee3c8017d74f63c885663faca1d8, but seems unnecessary (the
file doesn't seem to use anything from that header, and it seems to
build just fine on MSVC here without it). The new `<version>` header
should be supported by all supported implementations. This change
replaces uses of `<ciso646>` with the `<version>` header, or removes
them entirely where unnecessary.


  Commit: 7c60725fcf1038f6c84df396496cf52d67ab5b43
      https://github.com/llvm/llvm-project/commit/7c60725fcf1038f6c84df396496cf52d67ab5b43
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Support/Threading.h

  Log Message:
  -----------
  Revert "Remove dependence on <ciso646>" (#126399)

Reverts llvm/llvm-project#73273


  Commit: 59cbe2ff591d91e8375cfb4f4ba59dff49a82f4f
      https://github.com/llvm/llvm-project/commit/59cbe2ff591d91e8375cfb4f4ba59dff49a82f4f
  Author: Michael Park <mcypark at gmail.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

  Changed paths:
    A clang/test/Modules/pr120277-2.cpp

  Log Message:
  -----------
  [C++20][Modules][Serialization] Add an additional test case for #120277. (#126349)

https://github.com/llvm/llvm-project/commit/4b35dd57b88a59b169c3471cbc398113d3bf98e8
was shipped to address https://github.com/llvm/llvm-project/issues/120277 .

It was thought to be a regression in 19.x according to this comment:
https://github.com/llvm/llvm-project/issues/120277#issuecomment-2558991129

This is a test case that fails even in 17.x but nevertheless is also
fixed by: https://github.com/llvm/llvm-project/commit/4b35dd57b88a59b169c3471cbc398113d3bf98e8


  Commit: 66c31f5d024f3ec9f9afa74c340ba0a4e0776823
      https://github.com/llvm/llvm-project/commit/66c31f5d024f3ec9f9afa74c340ba0a4e0776823
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [AMDGPU] Avoid repeated hash lookups (NFC) (#126401)

This patch just cleans up the "if" condition.  Further cleanups are
left to subsequent patches.


  Commit: 8d373ceaec1f1b27c9e682cfaf71aae19ea48d98
      https://github.com/llvm/llvm-project/commit/8d373ceaec1f1b27c9e682cfaf71aae19ea48d98
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-02-08 (Sat, 08 Feb 2025)

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

  Log Message:
  -----------
  [clang-format] Handle C-style cast of member function pointer type (#126340)

Fixes #125012.


  Commit: 7b348f9bfdb319fe9497c881311eaa0aa40fed88
      https://github.com/llvm/llvm-project/commit/7b348f9bfdb319fe9497c881311eaa0aa40fed88
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

  Log Message:
  -----------
  [MIR][NFC] Use `std::move` to avoid copying (#125930)


  Commit: 5ecc86bbcaebea5e7e480a3b2a5c4327f204bf3b
      https://github.com/llvm/llvm-project/commit/5ecc86bbcaebea5e7e480a3b2a5c4327f204bf3b
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] test trunc to i1 as condition in dominating condition. (NFC)


  Commit: 32c4493d5f8164ebe9d3d3e01ca744e6c3afcf17
      https://github.com/llvm/llvm-project/commit/32c4493d5f8164ebe9d3d3e01ca744e6c3afcf17
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/deterministic-type-shrinkage.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-factors.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilog-vectorization-widen-inductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/force-target-instruction-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleave-allocsize-not-equal-typesize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-load-store.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/interleaving-reduction.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/loop-vectorization-factors.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/store-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-inloop-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect-strict-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-epilog-vect.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt-too-many-deps.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-hoist-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/exit-branch-cost.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/blocks-with-dead-instructions.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/type-info-cache-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-force-tail-with-evl-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vf-will-not-generate-any-vector-insts.ll
    M llvm/test/Transforms/LoopVectorize/X86/conversion-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-model.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LoopVectorize/X86/gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/X86/illegal-parallel-loop-uniform-write.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/interleave-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/intrinsiccost.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-load-gather.ll
    M llvm/test/Transforms/LoopVectorize/X86/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/limit-vf-by-tripcount.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked-store-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/masked_load_store.ll
    M llvm/test/Transforms/LoopVectorize/X86/multi-exit-cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr23997.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr35432.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr36524.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr47437.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr54634.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr56319-vector-exit-cond-optimization-epilogue-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/X86/pr72969.ll
    M llvm/test/Transforms/LoopVectorize/X86/scatter_crash.ll
    M llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
    M llvm/test/Transforms/LoopVectorize/X86/vect.omp.force.small-tc.ll
    M llvm/test/Transforms/LoopVectorize/X86/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/dead_instructions.ll
    M llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-any-of-reductions.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-trunc-induction-steps.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-complex.ll
    M llvm/test/Transforms/LoopVectorize/fpsat.ll
    M llvm/test/Transforms/LoopVectorize/if-conversion-nest.ll
    M llvm/test/Transforms/LoopVectorize/if-pred-non-void.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses-3.ll
    M llvm/test/Transforms/LoopVectorize/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization-2.ll
    M llvm/test/Transforms/LoopVectorize/invariant-store-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/multiple-strides-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/no-fold-tail-by-masking-iv-external-uses.ll
    M llvm/test/Transforms/LoopVectorize/no_outside_user.ll
    M llvm/test/Transforms/LoopVectorize/opaque-ptr.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization-liveout.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/optsize.ll
    M llvm/test/Transforms/LoopVectorize/pointer-select-runtime-checks.ll
    M llvm/test/Transforms/LoopVectorize/pr30654-phiscev-sext-trunc.ll
    M llvm/test/Transforms/LoopVectorize/pr37248.ll
    M llvm/test/Transforms/LoopVectorize/pr45259.ll
    M llvm/test/Transforms/LoopVectorize/pr47343-expander-lcssa-after-cfg-update.ll
    M llvm/test/Transforms/LoopVectorize/pr50686.ll
    M llvm/test/Transforms/LoopVectorize/pr59319-loop-access-info-invalidation.ll
    M llvm/test/Transforms/LoopVectorize/reduction-align.ll
    M llvm/test/Transforms/LoopVectorize/reverse_induction.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-needed-but-empty.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check-small-clamped-bounds.ll
    M llvm/test/Transforms/LoopVectorize/runtime-check.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-difference-simplifications.ll
    M llvm/test/Transforms/LoopVectorize/runtime-checks-hoist.ll
    M llvm/test/Transforms/LoopVectorize/scev-exit-phi-invalidation.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    M llvm/test/Transforms/LoopVectorize/select-cmp-multiuse.ll
    M llvm/test/Transforms/LoopVectorize/single_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/skeleton-lcssa-crash.ll
    M llvm/test/Transforms/LoopVectorize/version-stride-with-integer-casts.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/indvars-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
    M llvm/test/Transforms/PhaseOrdering/X86/pr48844-br-to-switch-vectorization.ll
    M llvm/test/Transforms/PhaseOrdering/X86/vdiv.ll

  Log Message:
  -----------
  [VPlan] Add incoming values for all predecessor to ResumePHI (NFCI).

Follow-up as discussed when using VPInstruction::ResumePhi for all resume
values (#112147). This patch explicitly adds incoming values for each
predecessor in VPlan. This simplifies codegen and allows transformations
adjusting the predecessors of blocks with

NFC modulo incoming block order in phis.


  Commit: 09a500b3db5e99db4b5c7d5ac95c3aa99c191adf
      https://github.com/llvm/llvm-project/commit/09a500b3db5e99db4b5c7d5ac95c3aa99c191adf
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] more test of trunc to i1 as condition in dominating condition. (NFC)


  Commit: 4c470d0c933cee57843052e0783f6f11a20bd820
      https://github.com/llvm/llvm-project/commit/4c470d0c933cee57843052e0783f6f11a20bd820
  Author: Ritanya-B-Bharadwaj <ritanya.b.bharadwaj at gmail.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPContext.cpp

  Log Message:
  -----------
  This commit fixes the build failure due to OMP_TRAIT_PROPERTY macro r… (#126222)

…edefinition - https://github.com/llvm/llvm-project/issues/126043


  Commit: a32efd8edc6ec5f80ffa16b3d4e52e6407d5fe99
      https://github.com/llvm/llvm-project/commit/a32efd8edc6ec5f80ffa16b3d4e52e6407d5fe99
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M clang/test/Driver/offload-Xarch.c

  Log Message:
  -----------
  [Clang] Disable failing offload test on darwin

Summary:
We don't support offloading on Darwin. This fails because there's some
handling missing somewhere else that likely won't ever be added.


  Commit: b1a267e1b9e9b50ba5b99de014ed056bf201b762
      https://github.com/llvm/llvm-project/commit/b1a267e1b9e9b50ba5b99de014ed056bf201b762
  Author: Andrzej Warzynski <andrzej.warzynski at arm.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/Transforms/LoweringPatterns.h

  Log Message:
  -----------
  [mlir][vector] Remove references to non-existing patterns (nfc)

Delete references to:
  * `VectorLoadToMemrefLoadLowering`,
  * `VectorStoreToMemrefStoreLowering`.

These patters were removed in #121454.


  Commit: 8a4707bf1de659f569558ab32d4c7cf5029acd3f
      https://github.com/llvm/llvm-project/commit/8a4707bf1de659f569558ab32d4c7cf5029acd3f
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M libcxx/include/chrono

  Log Message:
  -----------
  [NFC][libc++] Fixes minor issues in the synopsis.


  Commit: cb1b51f4ff4e2a179dddf492e3310343f53a9ba1
      https://github.com/llvm/llvm-project/commit/cb1b51f4ff4e2a179dddf492e3310343f53a9ba1
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M libcxx/docs/Status/FormatPaper.csv

  Log Message:
  -----------
  [libc++][doc] Updates format status.


  Commit: 70906f0514826b5e64bd9354210ae836740c2053
      https://github.com/llvm/llvm-project/commit/70906f0514826b5e64bd9354210ae836740c2053
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-f32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i16-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-2-indices-0u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3-indices-01u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3-indices-0uu.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-012u.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4-indices-0uuu.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-load-i8-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-f64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i16-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i32-stride-8.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i64-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-2.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-3.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-4.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-5.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-6.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-7.ll
    M llvm/test/Transforms/LoopVectorize/X86/CostModel/interleaved-store-i8-stride-8.ll

  Log Message:
  -----------
  [LV][X86] Regenerate interleaved load/store costs. NFC.

update_analyze_test_checks has improved the checks since these were last updated.

Reduce noise diffs in future patches.


  Commit: ed9107f2d71804f6bedff6cd05b1f1a4750eb112
      https://github.com/llvm/llvm-project/commit/ed9107f2d71804f6bedff6cd05b1f1a4750eb112
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M offload/DeviceRTL/include/DeviceTypes.h
    M offload/DeviceRTL/include/State.h
    M offload/DeviceRTL/src/Configuration.cpp
    M offload/DeviceRTL/src/Mapping.cpp
    M offload/DeviceRTL/src/Reduction.cpp
    M offload/DeviceRTL/src/State.cpp
    M offload/DeviceRTL/src/Synchronization.cpp
    M offload/DeviceRTL/src/Workshare.cpp

  Log Message:
  -----------
  [OpenMP] Replace use of target address space with <gpuintrin.h> local (#126119)

Summary:
This definition is more portable since it defines the correct value for
the target. I got rid of the helper mostly because I think it's easy
enough to use now that it's a type and being explicit about what's
`undef` or `poison` is good.


  Commit: 6444ed53658354efb8fc126f93281bc13f1d6300
      https://github.com/llvm/llvm-project/commit/6444ed53658354efb8fc126f93281bc13f1d6300
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

  Log Message:
  -----------
  [AST] Avoid repeated hash lookups (NFC) (#126400)


  Commit: c741cf1617c22d18316fd98af1c30dc244eab22e
      https://github.com/llvm/llvm-project/commit/c741cf1617c22d18316fd98af1c30dc244eab22e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#126403)


  Commit: db348c8e8b2472563a8db363b18d2604968ae43b
      https://github.com/llvm/llvm-project/commit/db348c8e8b2472563a8db363b18d2604968ae43b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Passes/DroppedVariableStats.h

  Log Message:
  -----------
  [Passes] Avoid repeated hash lookups (NFC) (#126404)


  Commit: 87ae9547ea0f590f8adbbdfaeca28ef999ddffa8
      https://github.com/llvm/llvm-project/commit/87ae9547ea0f590f8adbbdfaeca28ef999ddffa8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/PseudoLoweringEmitter.cpp

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


  Commit: 4972722f90deddf45c29958070bb1beb509e72ac
      https://github.com/llvm/llvm-project/commit/4972722f90deddf45c29958070bb1beb509e72ac
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/copy-low-subvec-elt-to-high-subvec-elt.ll
    M llvm/test/CodeGen/X86/horizontal-sum.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll

  Log Message:
  -----------
  [X86] lowerV4F64Shuffle - prefer lowerShuffleAsDecomposedShuffleMerge if we're blending inplace/splatable shuffle inputs on AVX2 targets (#126420)

More aggressively use broadcast instructions where possible

Fixes #50315


  Commit: 3d140004c70e2bc79416825e43207e8b711c56d9
      https://github.com/llvm/llvm-project/commit/3d140004c70e2bc79416825e43207e8b711c56d9
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] Test for not in dominating condition. (NFC)


  Commit: 472220077383b2dbd9cfcaffcc6030558ba7a744
      https://github.com/llvm/llvm-project/commit/472220077383b2dbd9cfcaffcc6030558ba7a744
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M lldb/test/API/api/command-return-object/TestSBCommandReturnObject.py
    R lldb/test/API/python_api/commandreturnobject/TestSBCommandReturnObject.py

  Log Message:
  -----------
  [lldb] Merge TestSBCommandReturnObject tests

In #125132, Michael pointed out that there are now two tests with the
same name:

./lldb/test/API/api/command-return-object/TestSBCommandReturnObject.py
./lldb/test/API/python_api/commandreturnobject/TestSBCommandReturnObject.py


  Commit: e9a20f77ee2117b4a6eb40826b7280e29ad29e1e
      https://github.com/llvm/llvm-project/commit/e9a20f77ee2117b4a6eb40826b7280e29ad29e1e
  Author: Hassnaa Hamdi <hassnaa.hamdi at arm.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-masked-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
    A llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll

  Log Message:
  -----------
  Reland "[LV]: Teach LV to recursively (de)interleave." (#125094)

This patch relands the changes from "[LV]: Teach LV to recursively
(de)interleave.#122989"
    Reason for revert:
- The patch exposed an assert in the vectorizer related to VF difference
between
legacy cost model and VPlan-based cost model because of uncalculated
cost for
VPInstruction which is created by VPlanTransforms as a replacement to
'or disjoint'
       instruction.
VPlanTransforms do that instructions change when there are memory
interleaving and
predicated blocks, but that change didn't cause problems because at most
cases the cost
      difference between legacy/new models is not noticeable.
    - Issue is fixed by #125434

Original patch: https://github.com/llvm/llvm-project/pull/89018
Reviewed-by: paulwalker-arm, Mel-Chen


  Commit: d2047242e6d0f0deb7634ff22ab164354c520c79
      https://github.com/llvm/llvm-project/commit/d2047242e6d0f0deb7634ff22ab164354c520c79
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/csky-toolchain.c

  Log Message:
  -----------
  [CSKY] Default to unsigned char

This matches the ABI document found at
https://github.com/c-sky/csky-doc/blob/master/C-SKY_V2_CPU_Applications_Binary_Interface_Standards_Manual.pdf

Partially addresses https://github.com/llvm/llvm-project/issues/115957

Reviewed By: zixuan-wu

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


  Commit: 3ce96b9ee961e0dc1f27fbb96339c6253f0196bc
      https://github.com/llvm/llvm-project/commit/3ce96b9ee961e0dc1f27fbb96339c6253f0196bc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/DependenceGraphBuilder.cpp

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126402)


  Commit: f6f052625e77632bb672c5ea40d414f0f33fd5b1
      https://github.com/llvm/llvm-project/commit/f6f052625e77632bb672c5ea40d414f0f33fd5b1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

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


  Commit: b48b422c08e85e6afd39aea7341fdf08d07d3e08
      https://github.com/llvm/llvm-project/commit/b48b422c08e85e6afd39aea7341fdf08d07d3e08
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

  Log Message:
  -----------
  [Serialization] Avoid repeated hash lookups (NFC) (#126429)


  Commit: aa066e36f8c421a64e098601b226f0ecd85500c5
      https://github.com/llvm/llvm-project/commit/aa066e36f8c421a64e098601b226f0ecd85500c5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

  Log Message:
  -----------
  [AMDGPU] Avoid repeated hash lookups (NFC) (#126430)


  Commit: d1af9ca9fdb0db6ecea00e58b713e43fc1b9fa1c
      https://github.com/llvm/llvm-project/commit/d1af9ca9fdb0db6ecea00e58b713e43fc1b9fa1c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DbgEntityHistoryCalculator.cpp

  Log Message:
  -----------
  [AsmPrinter] Avoid repeated map lookups (NFC) (#126431)


  Commit: df25511f0e13e8292de485c2c4d7b58941c77afb
      https://github.com/llvm/llvm-project/commit/df25511f0e13e8292de485c2c4d7b58941c77afb
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp

  Log Message:
  -----------
  [Coroutines] Avoid repeated hash lookups (NFC) (#126432)


  Commit: af6c6992cfda195e84cbe8a0710fd3bc02082104
      https://github.com/llvm/llvm-project/commit/af6c6992cfda195e84cbe8a0710fd3bc02082104
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

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

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


  Commit: 04e5ea5237da5c49d05cd9499a5f0eb325638cf9
      https://github.com/llvm/llvm-project/commit/04e5ea5237da5c49d05cd9499a5f0eb325638cf9
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Remove recursive walk of linked list from ContractNodes. NFC

After f9250401ef120a4605ad67bb43d3b25500900498, this function is
tail recursive so it was straightforward to convert this to iteratively
walk the linkd list.


  Commit: 560cea61abc68a9278d0ada26b3e7071e7b97bfe
      https://github.com/llvm/llvm-project/commit/560cea61abc68a9278d0ada26b3e7071e7b97bfe
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-load-lse2.ll
    A llvm/test/CodeGen/AArch64/v8.4-atomic.ll

  Log Message:
  -----------
  [NFC][AArch64] move AArch64 non auto-generated tests to static file (#126312)

Move AArch64 non auto-generated test code into a static file, since the
script `./llvm/test/CodeGen/AArch64/Atomics/generate-tests.py` will overwrite
these tests when re-run. (Test code was originally added in change
465bc5e729fd755880b9a288de42a37ad1206301)


  Commit: 2e3729bf40040ac960153e893d670c58f94eac62
      https://github.com/llvm/llvm-project/commit/2e3729bf40040ac960153e893d670c58f94eac62
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/remark-reductions.ll

  Log Message:
  -----------
  [LV] Prevent query the computeCost() when VF=1 in emitInvalidCostRemarks(). (#117288)

We should only query the computeCost() when the VF is vector.


  Commit: 967973512b9eba99dd8b04db42dbafcc50d94728
      https://github.com/llvm/llvm-project/commit/967973512b9eba99dd8b04db42dbafcc50d94728
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    A llvm/test/CodeGen/AMDGPU/do-not-unify-divergent-exit-nodes-with-musttail.ll

  Log Message:
  -----------
  [AMDGPU] Don't unify divergent exit nodes with `musttail` calls (#126395)

Fixes SWDEV-512254.


  Commit: 161cfc6f39bef8994eb944687033ebd3570196e8
      https://github.com/llvm/llvm-project/commit/161cfc6f39bef8994eb944687033ebd3570196e8
  Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Headers/avx10_2_512convertintrin.h
    M clang/lib/Headers/avx10_2convertintrin.h
    M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
    M clang/test/CodeGen/X86/avx10_2convert-builtins.c

  Log Message:
  -----------
  [AVX10.2] Fix wrong intrinsic names after rename  (#126390)

In my previous PR (#123656) to update the names of AVX10.2 intrinsics
and mnemonics, I have erroneously deleted `_ph` from few intrinsics.
This PR corrects this.


  Commit: 55632404bd0b6f2b6c09426ed492e9351c9706ed
      https://github.com/llvm/llvm-project/commit/55632404bd0b6f2b6c09426ed492e9351c9706ed
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M third-party/benchmark/src/sysinfo.cc

  Log Message:
  -----------
  [benchmark] Sync a few commits from upstream to help with CPU count (#126410)

Try to use the _SC_NPROCESSORS_ONLN sysconf elsewhere
(cherry picked from commit edb1e76d8cb080a396c7c992e5d4023e1a777bd1)

Replace usage of deprecated sysctl on macOS
(cherry picked from commit faaa266d33ff203e28b31dd31be9f90c29f28d04)

Retrieve the number of online CPUs on OpenBSD and NetBSD
(cherry picked from commit 41e81b1ca4bbb41d234f2d0f2c56591db78ebb83)

Update error message now that /proc/cpuinfo is no longer in use
(cherry picked from commit c35af58b61daa111c93924e0e7b65022871fadac)

Fix runtime crash when parsing /proc/cpuinfo fails
(cherry picked from commit 39be87d3004ff9ff4cdf736651af80c3d15e2497)

another reversal of something that breaks on wasm
(cherry picked from commit 44507bc91ff9a23ad8ad4120cfc6b0d9bd27e2ca)


  Commit: 70fdd9f0a24154b63169c66aff1ddc4507db6034
      https://github.com/llvm/llvm-project/commit/70fdd9f0a24154b63169c66aff1ddc4507db6034
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
    A llvm/test/CodeGen/AMDGPU/GlobalISel/no-ctlz-from-umul-to-lshr-in-postlegalizer.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/no-ctlz-from-umul-to-lshr-in-postlegalizer.mir

  Log Message:
  -----------
  [GlobalISel] Check whether `G_CTLZ` is legal in `matchUMulHToLShr` (#126457)

We need to check `G_CTLZ` because the combine uses `G_CTLZ` to get log
base 2,
and it is not always legal for on a target.

Fixes SWDEV-512440.


  Commit: aebe6c5d7f88a05a29ef6c643482ca7eaf994b19
      https://github.com/llvm/llvm-project/commit/aebe6c5d7f88a05a29ef6c643482ca7eaf994b19
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-09 (Sun, 09 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    R llvm/test/MC/RISCV/rv32zicfiss-invalid.s
    R llvm/test/MC/RISCV/rv64zicfiss-invalid.s
    A llvm/test/MC/RISCV/zicfiss-invalid.s

  Log Message:
  -----------
  [RISCV] Improve Errors for X1/X5/X1X5 Reg Classes (#126184)

LLVM has functionality for producing a register-class-specific error
message in the assembly parser, rather than just emitting the generic
"invalid operand for instruction" error.

This starts the gradual adoption of this functionality for RISC-V, with
some lesser-used shadow-stack register classes:
- GPRX1 (only contains `ra`)
- GPRX5 (only contains `t0`)
- GPRX1X5 (only contains `ra` and `t0`)

LLVM is reasonably conservative about when these errors are used, in
particular you have to have all the features for the relevant mnemonic
enabled before it will do, hence the test updates.

This also merges a pair of almost identical rv32/rv64 test files into a
single file with one run line.


  Commit: 3a66ebae06d72d500c52413b9b189e95762e01b3
      https://github.com/llvm/llvm-project/commit/3a66ebae06d72d500c52413b9b189e95762e01b3
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/docs/BoundsSafety.rst
    M clang/docs/BoundsSafetyImplPlans.rst

  Log Message:
  -----------
  [BoundsSafety][doc] Fix a typo (#126247)


  Commit: 30e7c101465d5fa4e9266b9ae3b238eb8cf4533b
      https://github.com/llvm/llvm-project/commit/30e7c101465d5fa4e9266b9ae3b238eb8cf4533b
  Author: David Stuttard <david.stuttard at amd.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h

  Log Message:
  -----------
  [AMDGPU] - Fix non-deterministic compile issue (#126271)

4ce1f9079d4d3 [AMDGPU] Allow rematerialization of instructions with
virtual register uses (#124327)
made changes that require an ordered traversal of a DenseMap. Changing
it to MapVector which
respects insertion order.


  Commit: 67b7a2590f39ad9ff5413adb9af162220972833e
      https://github.com/llvm/llvm-project/commit/67b7a2590f39ad9ff5413adb9af162220972833e
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/include/mlir-c/IR.h
    M mlir/include/mlir/Bindings/Python/Nanobind.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/test/python/ir/module.py

  Log Message:
  -----------
  Revert "[mlir] Python: Parse ModuleOp from file path" (#126482)

Reverts llvm/llvm-project#125736

The gcc7 Bot is broken at the moment.


  Commit: 5f84b6edd97153f1e5ec00ce110108ba8f6048bd
      https://github.com/llvm/llvm-project/commit/5f84b6edd97153f1e5ec00ce110108ba8f6048bd
  Author: Ricardo Jesus <rjj at nvidia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopIdiomVectorize.cpp
    A llvm/test/Transforms/LoopIdiom/AArch64/find-first-byte.ll

  Log Message:
  -----------
  [AArch64] Add MATCH loops to LoopIdiomVectorizePass (#101976)

This patch adds a new loop to LoopIdiomVectorizePass, enabling it to
recognise and vectorise loops such as:
```cpp
template<class InputIt, class ForwardIt>
InputIt find_first_of(InputIt first, InputIt last,
                      ForwardIt s_first, ForwardIt s_last)
{
  for (; first != last; ++first)
    for (ForwardIt it = s_first; it != s_last; ++it)
      if (*first == *it)
        return first;
  return last;
}
```

These loops match the C++ standard library function `std::find_first_of`.


  Commit: d9cdf27834de94a7c6f5b66b28c0e6667fec5418
      https://github.com/llvm/llvm-project/commit/d9cdf27834de94a7c6f5b66b28c0e6667fec5418
  Author: Aniket Lal <lalaniket8 at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip

  Log Message:
  -----------
  [Driver][HIP] Do not pass -dependency-file flag for HIP Device offloading (#125646)

When we launch hipcc with multiple offload architectures along with -MF
dep_file flag, the clang compilation invocations for host and device
offloads write to the same dep_file, and can lead to collision during
file IO operations. This can typically happen during large workloads.
This commit provides a fix to generate dep_file only in host
compilation.

---------

Co-authored-by: anikelal <anikelal at amd.com>


  Commit: 91682da4388037489ecc62a5e5c06a290866e018
      https://github.com/llvm/llvm-project/commit/91682da4388037489ecc62a5e5c06a290866e018
  Author: ZhaoQi <zhaoqi01 at loongson.cn>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/LoongArch/merge-base-offset-tlsle.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset.ll

  Log Message:
  -----------
  [LoongArch] Pre-commit tests for tls-le merge base offset. NFC (#122998)

Similar to tests in `merge-base-offset.ll`, except for tests of
blockaddress.

A later commit will optimize this.


  Commit: 52a02b6d1e0c6b492495ff79a3a06ce93e6180b8
      https://github.com/llvm/llvm-project/commit/52a02b6d1e0c6b492495ff79a3a06ce93e6180b8
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M openmp/runtime/src/kmp_platform.h
    M openmp/runtime/src/z_Linux_asm.S

  Log Message:
  -----------
  [openmp] Fix for 32-bit PowerPC (#126412)


  Commit: 7aed53eb1982113e825534f0f66d0a0e46e7a5ed
      https://github.com/llvm/llvm-project/commit/7aed53eb1982113e825534f0f66d0a0e46e7a5ed
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Transforms/IndVarSimplify/pr126012.ll

  Log Message:
  -----------
  [ScalarEvolution] Handle addrec incoming value in isImpliedViaMerge() (#126236)

The code already guards against values coming from a previous iteration
using properlyDominates(). However, addrecs are considered to properly
dominate the loop they are defined in.

Handle this special case separately, by checking for expressions that
have computable loop evolution (this should cover cases like a zext of
an addrec as well).

I considered changing the definition of properlyDominates() instead, but
decided against it. The current definition is useful in other context,
e.g. when deciding whether an expression is safe to expand in a given
block.

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


  Commit: b3e74e307ff813abbc32399af31e69114a058212
      https://github.com/llvm/llvm-project/commit/b3e74e307ff813abbc32399af31e69114a058212
  Author: David Green <david.green at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-vadd.ll

  Log Message:
  -----------
  [AArch64] Add SUBHN patterns for xor variant (#126100)

`xor x, -1` can be treated as `sub -1, x`, add patterns for generating
subhn as opposed to a not.

Fixes #123999


  Commit: 317a644ae6d501f1a1ec54d17ea8559bcdea35c0
      https://github.com/llvm/llvm-project/commit/317a644ae6d501f1a1ec54d17ea8559bcdea35c0
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AArch64/memcpy-f128.ll
    M llvm/test/CodeGen/ARM/memcpy-inline.ll

  Log Message:
  -----------
  [SDAG] Precommit tests for #126207 (NFC) (#126208)

Add missing test coverage for codepaths touched by #126207.


  Commit: 2d31a12dbe2339d20844ede70cbb54dbaf4ceea9
      https://github.com/llvm/llvm-project/commit/2d31a12dbe2339d20844ede70cbb54dbaf4ceea9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/Transforms/Scalar/DeadStoreElimination.cpp
    M llvm/test/Transforms/DeadStoreElimination/inter-procedural.ll

  Log Message:
  -----------
  [DSE] Don't use initializes on byval argument (#126259)

There are two ways we can fix this problem, depending on how the
semantics of byval and initializes should interact:

* Don't infer initializes on byval arguments. initializes on byval
refers to the original caller memory (or having both attributes is made
a verifier error).
* Infer initializes on byval, but don't use it in DSE. initializes on
byval refers to the callee copy. This matches the semantics of readonly
on byval. This is slightly more powerful, for example, we could do a
backend optimization where byval + initializes will allocate the full
size of byval on the stack but not copy over the parts covered by
initializes.

I went with the second variant here, skipping byval + initializes in DSE
(FunctionAttrs already doesn't propagate initializes past byval). I'm
open to going in the other direction though.

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


  Commit: 7090dff6fe1e788517be0c49ee8c87d7cfa54b63
      https://github.com/llvm/llvm-project/commit/7090dff6fe1e788517be0c49ee8c87d7cfa54b63
  Author: Amir Bishara <139038766+amirBish at users.noreply.github.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/SCF/IR/ValueBoundsOpInterfaceImpl.cpp
    M mlir/test/Dialect/SCF/value-bounds-op-interface-impl.mlir

  Log Message:
  -----------
  [mlir][scf]: Add value bound for the computed upper bound of for loop (#126426)

Add additional bound for the induction variable of the `scf.for` such
that:
`%iv <= %lower_bound + (%trip_count - 1) * step`


  Commit: 6fd99de31864a5ef84ae8613b3a9034e05293461
      https://github.com/llvm/llvm-project/commit/6fd99de31864a5ef84ae8613b3a9034e05293461
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/openmp-offload.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td

  Log Message:
  -----------
  Revert "[LinkerWrapper] Clean up options after proper forwarding" (#126495)

Reverts llvm/llvm-project#126297

Broken buildbots
https://lab.llvm.org/staging/#/builders/105/builds/15554
https://lab.llvm.org/buildbot/#/builders/30/builds/15490

Error is
```
# .---command stderr------------
# | FileCheck error: '/work/janplehr/git/llvm-project/bot-tester-builds/cmakecachebuild/runtimes/runtimes-bins/offload/test/amdgcn-amd-amdhsa/offloading/Output/bug51781.c.tmp.custom' is empty.
# | FileCheck command line:  /home/janplehr/git/llvm-project/bot-tester-builds/cmakecachebuild/./bin/FileCheck /work/janplehr/git/llvm-project/offload/test/offloading/bug51781.c -check-prefix=CUSTOM -input-file=/work/janplehr/git/llvm-project/bot-tester-builds/cmakecachebuild/runtimes/runtimes-bins/offload/test/amdgcn-amd-amdhsa/offloading/Output/bug51781.c.tmp.custom
```
The file is empty, while the `CUSTOM` check-target expects to find
```
// CUSTOM: Rewriting generic-mode kernel with a customized state machine.
```


  Commit: 4dec3909e93c23ef1545c934f9715f9be2d7c49b
      https://github.com/llvm/llvm-project/commit/4dec3909e93c23ef1545c934f9715f9be2d7c49b
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libclc/CMakeLists.txt
    M libclc/clc/include/clc/integer/clc_abs.h
    M libclc/clc/include/clc/integer/clc_abs_diff.h
    M libclc/clc/include/clc/relational/clc_all.h
    M libclc/clc/include/clc/relational/clc_any.h
    M libclc/clc/include/clc/relational/clc_isequal.h
    M libclc/clc/include/clc/relational/clc_isfinite.h
    M libclc/clc/include/clc/relational/clc_isgreater.h
    M libclc/clc/include/clc/relational/clc_isgreaterequal.h
    M libclc/clc/include/clc/relational/clc_isinf.h
    M libclc/clc/include/clc/relational/clc_isless.h
    M libclc/clc/include/clc/relational/clc_islessequal.h
    M libclc/clc/include/clc/relational/clc_islessgreater.h
    M libclc/clc/include/clc/relational/clc_isnormal.h
    M libclc/clc/include/clc/relational/clc_isnotequal.h
    M libclc/clc/include/clc/relational/clc_isordered.h
    M libclc/clc/include/clc/relational/clc_isunordered.h
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/include/clc/shared/clc_max.h
    M libclc/clc/include/clc/shared/clc_min.h
    R libclc/clc/lib/clspv/SOURCES
    R libclc/clc/lib/spirv/SOURCES

  Log Message:
  -----------
  [libclc] Have all targets build all CLC functions (#124779)

This removes all remaining SPIR-V workarounds for CLC functions, in an
effort to streamline the CLC implementation and prevent further issues
that #124614 had to fix. This commit fixes the same issue for the SPIR-V
targets.

Target-specific CLC implementations can and will exist, but for now
they're all identical and so the target-specific SOURCES files have been
removed. Target implementations now always include the 'generic' CLC
directory, meaning we can avoid unnecessary duplication of SOURCES
listings.


  Commit: cab893ab8ebdcf63cfc63666009122d9c0e31bdf
      https://github.com/llvm/llvm-project/commit/cab893ab8ebdcf63cfc63666009122d9c0e31bdf
  Author: Aniket Lal <lalaniket8 at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip

  Log Message:
  -----------
  [Clang][Driver][HIP] Do not specify explicit target cpu in host compilation run line (#126488)

This PR fixes the post merge check fails from PR
https://github.com/llvm/llvm-project/pull/125646

Co-authored-by: anikelal <anikelal at amd.com>


  Commit: f845497f3b2e9b8660cfd33177c8e8a2ce1b8fc0
      https://github.com/llvm/llvm-project/commit/f845497f3b2e9b8660cfd33177c8e8a2ce1b8fc0
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/docs/Contributing.rst

  Log Message:
  -----------
  [llvm][Docs] Explain how to handle excessive formatting changes (#126239)

Based on some feedback in Discord about a PR where a reviewer asked the
author to move the formatting changes to a new PR, which appears to
contradict the current form of this document.

I've added an explanation here, before the point where the author would
be committing any of the formatting changes.

There are other ways this can go, for example some projects don't want
the churn of formatting, or you can pre-emptively send a formatting PR,
but I don't think enumerating them all here will help the audience for
this text.

So I've recomended one path that will start them off well, and can
branch off if the reviewers make requests.


  Commit: d9183fd96ef2e87b8c59b26956316a97fece0c84
      https://github.com/llvm/llvm-project/commit/d9183fd96ef2e87b8c59b26956316a97fece0c84
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/fmaxnum.ll
    M llvm/test/CodeGen/X86/fminnum.ll
    M llvm/test/CodeGen/X86/fp-select-cmp-and.ll
    M llvm/test/CodeGen/X86/setcc-combine.ll
    M llvm/test/CodeGen/X86/sse-minmax.ll
    M llvm/test/CodeGen/X86/vec_floor.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmax.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmaximum.ll
    M llvm/test/CodeGen/X86/vector-reduce-fmin.ll
    M llvm/test/CodeGen/X86/vselect-zero.ll

  Log Message:
  -----------
  [X86] LowerSelect - use BLENDV for scalar selection on all SSE41+ targets (#125853)

When we first began (2015) to lower f32/f64 selects to
X86ISD::BLENDV(scalar_to_vector(),scalar_to_vector(),scalar_to_vector()),
we limited it to AVX targets to avoid issues with SSE41's xmm0
constraint for the condition mask.

Since then we've seen general improvements in TwoAddressInstruction and
better handling of condition commutation for X86ISD::BLENDV nodes, which
should address many of the original concerns of using SSE41 BLENDVPD/S.
In most cases we will replace 3 logic instruction with the BLENDV node
and (up to 3) additional moves. Although the BLENDV is often more
expensive on original SSE41 targets, this should still be an improvement
in a majority of cases.

We also have no equivalent restrictions for SSE41 for v2f64/v4f32 vector
selection.

Fixes #105807


  Commit: 65a92544f7716541cdfab99499ce467b26a3ce8e
      https://github.com/llvm/llvm-project/commit/65a92544f7716541cdfab99499ce467b26a3ce8e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

  Log Message:
  -----------
  [X86] canonicalizeShuffleWithOp - pull out repeated flag settings to IsMergeableWithShuffle lambda. NFC.

Prep work before tweaking the flags in a future patch.


  Commit: 7ee56b9afcad456bb662aad941052af334fe3a11
      https://github.com/llvm/llvm-project/commit/7ee56b9afcad456bb662aad941052af334fe3a11
  Author: wldfngrs <wldfngrs at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 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
    A libc/src/math/asinf16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/asinf16.cpp
    M libc/test/src/math/CMakeLists.txt
    A libc/test/src/math/asinf16_test.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    A libc/test/src/math/smoke/asinf16_test.cpp

  Log Message:
  -----------
  [libc][math][c23] Add asinf16() function (#124212)

Co-authored-by: OverMighty <its.overmighty at gmail.com>


  Commit: 738cf5acc68c697dad5611b2424aa6b124b368f2
      https://github.com/llvm/llvm-project/commit/738cf5acc68c697dad5611b2424aa6b124b368f2
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp

  Log Message:
  -----------
  InstSimplify: improve computePointerICmp (NFC) (#126255)

The comment about inbounds protecting only against unsigned wrapping is
incorrect: it also protects against signed wrapping, but the issue is
that it could cross the sign boundary.


  Commit: 0b5c318127b1ed8125bffd5df1c96067c2186878
      https://github.com/llvm/llvm-project/commit/0b5c318127b1ed8125bffd5df1c96067c2186878
  Author: ZhaoQi <zhaoqi01 at loongson.cn>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchMergeBaseOffset.cpp
    M llvm/test/CodeGen/LoongArch/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/LoongArch/merge-base-offset-tlsle.ll

  Log Message:
  -----------
  [LoongArch] Merge base and offset for tls-le code sequence (#122999)

Adapt the merge base offset pass to optimize the tls-le code sequence.


  Commit: 71ee257a1d3a3e09423132e36f526e032c0f3b93
      https://github.com/llvm/llvm-project/commit/71ee257a1d3a3e09423132e36f526e032c0f3b93
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir

  Log Message:
  -----------
  [RISCV][VLOPT] Precommit tests for opt info on passthrus. NFC

Currently we are returning the wrong operand info for passthru
operands.


  Commit: 771f6b9f43039a4701a3ab76ac2456857ddf74ac
      https://github.com/llvm/llvm-project/commit/771f6b9f43039a4701a3ab76ac2456857ddf74ac
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll

  Log Message:
  -----------
  [RISCV][VLOPT] Add support for Widening Floating-Point Fused Multiply-Add Instructions (#126485)

We already had getOperandInfo support, so this marks the instructions as
supported in isCandidate. It also adds support for vfwmaccbf16.v{v,f}
from zvfbfwma


  Commit: f796bc622a7725708b8ffbe0c7a684a8557e77a3
      https://github.com/llvm/llvm-project/commit/f796bc622a7725708b8ffbe0c7a684a8557e77a3
  Author: Rolf Morel <rolf.morel at intel.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/IR/LinalgStructuredOps.td
    M mlir/include/mlir/IR/CommonAttrConstraints.td
    M mlir/lib/Dialect/Linalg/IR/LinalgOps.cpp
    M mlir/python/mlir/dialects/linalg/__init__.py
    M mlir/test/Dialect/Linalg/named-ops.mlir
    M mlir/test/python/dialects/linalg/ops.py
    M mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp
    M mlir/tools/mlir-tblgen/OpFormatGen.cpp
    M mlir/tools/mlir-tblgen/RewriterGen.cpp

  Log Message:
  -----------
  [MLIR][Linalg] Expose linalg.matmul and linalg.contract via Python API (#126377)

Now that linalg.matmul is in tablegen, "hand write" the Python wrapper
that OpDSL used to derive. Similarly, add a Python wrapper for the new
linalg.contract op.

Required following misc. fixes:
1) make linalg.matmul's parsing and printing consistent w.r.t. whether
indexing_maps occurs before or after operands, i.e. per the tests cases
it comes _before_.
2) tablegen for linalg.contract did not state it accepted an optional
cast attr.
3) In ODS's C++-generating code, expand partial support for `$_builder`
access in `Attr::defaultValue` to full support. This enables access to
the current `MlirContext` when constructing the default value (as is
required when the default value consists of affine maps).


  Commit: 729416e586fba71b4f63d71b1b5c765aefbf200b
      https://github.com/llvm/llvm-project/commit/729416e586fba71b4f63d71b1b5c765aefbf200b
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    A clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
    R clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M llvm/utils/gn/secondary/clang/lib/StaticAnalyzer/Checkers/BUILD.gn

  Log Message:
  -----------
  [analyzer][NFC] Remove "V2" from ArrayBoundCheckerV2.cpp (#126094)

Previously commit 6e17ed9b04e5523cc910bf171c3122dcc64b86db deleted the
obsolete checker `alpha.security.ArrayBound` which was implemented in
`ArrayBoundChecker.cpp` and renamed the checker
`alpha.security.ArrayBoundV2` to `security.ArrayBound`.

This commit concludes that consolidation by renaming the source file
`ArrayBoundCheckerV2.cpp` to `ArrayBoundChecker.cpp` (which was "freed
up" by the previous commit).


  Commit: 83fa117f76f9c4c82ce0ca914c4eba268c6c2fa2
      https://github.com/llvm/llvm-project/commit/83fa117f76f9c4c82ce0ca914c4eba268c6c2fa2
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/test/Analysis/CostModel/RISCV/arith-fp.ll

  Log Message:
  -----------
  [RISCV] Add cost model for fma (#126076)

This change builds on PR #125683, which added a cost model for fmuladd.

To ensure completeness, this patch extends the cost model to also cover fma, using the same costing approach as fmuladd.

I plan to send a follow-up patch that includes the cost model vp_fma and vp_fmuladd, and their tests.


  Commit: 121e6abefd9cd0276d04df32df1da3604c044cdf
      https://github.com/llvm/llvm-project/commit/121e6abefd9cd0276d04df32df1da3604c044cdf
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

  Log Message:
  -----------
  [X86] IsElementEquivalent - pull out repeated getValueType calls. NFC.


  Commit: bde8ce6a5c47a3e5719618797cc4143db6f871f5
      https://github.com/llvm/llvm-project/commit/bde8ce6a5c47a3e5719618797cc4143db6f871f5
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AMDGPU/print-pipeline-passes.ll

  Log Message:
  -----------
  [AMDGPU] Only run `AMDGPUPrintfRuntimeBindingPass` at non-prelink phase (#125162)


  Commit: 199c791a1dbf417fdb08fbbb054d51ed398f285a
      https://github.com/llvm/llvm-project/commit/199c791a1dbf417fdb08fbbb054d51ed398f285a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Support partial initializers for CXXNewExprs (#126494)

For `new A[N]{1,2,3}`, we need to allocate N elements of type A, and
initialize the first three with the given InitListExpr elements.
However, if N is larger than 3, we need to initialize the remaining
elements with the InitListExpr array filler.

Similarly, for `new A[N];`, we need to initilize all fields with the
constructor of A. The initializer type is a CXXConstructExpr of
IncompleteArrayType in this case, which we can't generally handle.


  Commit: af2a228e0b5c9fbfa02f37f1be10800b17509617
      https://github.com/llvm/llvm-project/commit/af2a228e0b5c9fbfa02f37f1be10800b17509617
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-op-info.mir

  Log Message:
  -----------
  [RISCV][VLOPT] Fix passthru operand info for mixed-width instructions (#126504)

After #124066 we started allowing users that are passthrus. However for
widening/narrowing instructions we were returning the wrong operand info
for passthru operands since it originally assumed the operand would
never be a passthru. This fixes it by handling it in IsMODef.


  Commit: c6b13a28717455028bf48bcb20f723ad3bbff783
      https://github.com/llvm/llvm-project/commit/c6b13a28717455028bf48bcb20f723ad3bbff783
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/exit-count-samesign.ll
    M llvm/test/Analysis/ScalarEvolution/implied-via-division.ll
    M llvm/test/Transforms/IndVarSimplify/iv-ext-samesign.ll

  Log Message:
  -----------
  Revert "SCEV: teach isImpliedViaOperations about samesign" (#126506)

The commit f5d24e6c is buggy, and following miscompiles have been
reported: #126409 and
https://github.com/llvm/llvm-project/pull/124270#issuecomment-2647222903

Revert it while we investigate.


  Commit: 71adb054024a1e9bd5ed4566beda74dea65362cd
      https://github.com/llvm/llvm-project/commit/71adb054024a1e9bd5ed4566beda74dea65362cd
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/test/Driver/cl-options.c

  Log Message:
  -----------
  [clang] Expose -f(no-)strict-overflow as a clang-cl option (#126512)

Also move the -fno-strict-overflow option definition next to the
-fstrict-overflow one while here.

Also add test coverage for f(no-)wrapv-pointer being a clang-cl option.


  Commit: 4d2a1bf563556d12cccc4cace1c2e225a3c002e4
      https://github.com/llvm/llvm-project/commit/4d2a1bf563556d12cccc4cace1c2e225a3c002e4
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

  Log Message:
  -----------
  [clang] CTAD alias: Respect explicit deduction guides defined after the first use of the alias template. (#125478)

Fixes #103016

This is the last missing piece for the C++20 CTAD alias feature. No
release note being added in this PR yet, I will send out a follow-up
patch to mark this feature done.

(Since the release 20 branch is cut, I think we should target on
clang21).


  Commit: 1aa48af1f86009365524d43966bb40ea246fea47
      https://github.com/llvm/llvm-project/commit/1aa48af1f86009365524d43966bb40ea246fea47
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Discard all CastExprs uniformly (#126511)


  Commit: ec60e1d8e2c265f86f08590b6061eb6f51dc3349
      https://github.com/llvm/llvm-project/commit/ec60e1d8e2c265f86f08590b6061eb6f51dc3349
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/tools/llvm-readobj/XCOFF/symbols.test
    M llvm/test/tools/llvm-readobj/XCOFF/symbols64.test
    M llvm/tools/llvm-readobj/XCOFFDumper.cpp

  Log Message:
  -----------
  [XCOFF][llvm-readobj] Print symbol value kind when dumping symbols (#125861)

llvm-readobj print out symbol value name for xcoff symbol table.

reference doc:
https://www.ibm.com/docs/en/aix/7.2?topic=formats-xcoff-object-file-format#XCOFF__yaa3i18fjbau


  Commit: 3019e49ebfc5d710191712b6d437c56c01e65b87
      https://github.com/llvm/llvm-project/commit/3019e49ebfc5d710191712b6d437c56c01e65b87
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/include/llvm/IR/Instructions.h
    M llvm/lib/Analysis/ScalarEvolution.cpp

  Log Message:
  -----------
  SCEV: thread samesign in isBasicBlockEntryGuardedByCond (NFC) (#125840)

isBasicBlockEntryGuardedByCond inadvertedenly drops samesign information
when calling ICmpInst::getNonStrictPredicate. Fix this.


  Commit: 36530414e3fc49ce9c5a74acf3a68731965ea4d6
      https://github.com/llvm/llvm-project/commit/36530414e3fc49ce9c5a74acf3a68731965ea4d6
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVVLOptimizer.cpp
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt.mir

  Log Message:
  -----------
  [RISCV][VLOPT] Add support for Vector Fixed-Point Arithmetic Instructions (#126483)

This patch adds the remaining support for fixed-point arithmetic
instructions (we previously had support for averaging adds and
subtracts).

For saturating adds/subs/multiplies/clips, we can't change `vl` if
`vxsat` is used, since changing `vl` may change its value. So this patch
checks to see if it's dead before considering it a candidate.


  Commit: 280d2a3035ad362cb9dab9f59aa9bdbb88723e9e
      https://github.com/llvm/llvm-project/commit/280d2a3035ad362cb9dab9f59aa9bdbb88723e9e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

  Log Message:
  -----------
  [AST] Avoid repeated hash lookups (NFC) (#126461)


  Commit: eaedfc0e5299d43dda28346eb2a5b068a8bee58d
      https://github.com/llvm/llvm-project/commit/eaedfc0e5299d43dda28346eb2a5b068a8bee58d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Lex/ModuleMap.cpp

  Log Message:
  -----------
  [Lex] Avoid repeated hash lookups (NFC) (#126462)


  Commit: ba9810e803744974157e85a80854e163818db608
      https://github.com/llvm/llvm-project/commit/ba9810e803744974157e85a80854e163818db608
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/utils/TableGen/MveEmitter.cpp

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


  Commit: de563951b7740b3f2e1b3a07362e7890e09624ec
      https://github.com/llvm/llvm-project/commit/de563951b7740b3f2e1b3a07362e7890e09624ec
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/RegionInfoImpl.h

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126465)


  Commit: 2f88672414b4e9c74c47718c9979c79ba4c40e04
      https://github.com/llvm/llvm-project/commit/2f88672414b4e9c74c47718c9979c79ba4c40e04
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp

  Log Message:
  -----------
  [Coroutines] Avoid repeated hash lookups (NFC) (#126466)


  Commit: 6228379a6c98d90d81db1a7b15f9682b7b01fb90
      https://github.com/llvm/llvm-project/commit/6228379a6c98d90d81db1a7b15f9682b7b01fb90
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/tools/llvm-profgen/MissingFrameInferrer.cpp

  Log Message:
  -----------
  [llvm-profgen] Avoid repeated hash lookups (NFC) (#126467)


  Commit: 783275eb7b3ecde63bdb6ac1316c090bfc568bdd
      https://github.com/llvm/llvm-project/commit/783275eb7b3ecde63bdb6ac1316c090bfc568bdd
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/test/Driver/clang_wrapv_opts.c

  Log Message:
  -----------
  [clang] Handle f(no-)strict-overflow, f(no-)wrapv, f(no-)wrapv-pointer like gcc (#126524)

We now process all 6 options left-to-right and pick whatever is active
at the end.

Fixes #124868.


  Commit: 308d28667c14e7c14d8688cd19201308e07c8721
      https://github.com/llvm/llvm-project/commit/308d28667c14e7c14d8688cd19201308e07c8721
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/docs/GitHub.rst

  Log Message:
  -----------
  [llvm][docs] Tweak backporting instructions a bit (#126519)

* Drop ".Z" in milestone name since we've been doing X.Y releases
instead of X.Y.Z releases since LLVM 18

* Add "LLVM" prefix since that's what release milestones are named

* Use a numbered list to make it clearer that there are two steps
needed, and add some more details to the first step


  Commit: 1c583c19bb7914a2686e245b7e1d14f82fe454eb
      https://github.com/llvm/llvm-project/commit/1c583c19bb7914a2686e245b7e1d14f82fe454eb
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCTypeInterfaces.td
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [acc][mlir] Add functionality for categorizing OpenACC variable types (#126167)

OpenACC specification describes the following type categories: scalar,
array, composite, and aggregate (which includes arrays, composites, and
others such as Fortran pointer/allocatable).

Decision for how to do implicit mapping is dependent on a variable's
category. Since acc dialect's only means of distinguishing between types
is through the interfaces attached, add API to be able to get the type
category.

In addition to defining the new API, attempt to provide a base
implementation for memref which matches what OpenACC spec describes.


  Commit: 0010a3c97ef4df11aa50b381ea801c9ba8dd516f
      https://github.com/llvm/llvm-project/commit/0010a3c97ef4df11aa50b381ea801c9ba8dd516f
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll

  Log Message:
  -----------
  [NFC][LoopVectorize] Add more partial reduction tests (#126525)

* Adds variants of dotp (dotp_i8_to_i64_has_neon_dotprod,
dotp_i16_to_i64_has_neon_dotprod) that show how the loop
vectoriser has generated fixed-width partial reductions
without any matching NEON udot instruction.
* Adds loops that could also benefit from partial
reductions once the work is done to recognise patterns
such as
  %zext = zext i8 %load to i32
  %acc.next = add i32 %acc, %zext
See zext_add_reduc_i8_i32, etc. I intend to follow up with
a patch to add support for vectorising such patterns.


  Commit: 83af335ea47b50037beb46e5d6fb04be89f3b207
      https://github.com/llvm/llvm-project/commit/83af335ea47b50037beb46e5d6fb04be89f3b207
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/utils/lit/tests/xunit-output.py

  Log Message:
  -----------
  [llvm][lit] Update regexes in Xunit test (#126527)

I got a report that downstream this test failed and the cause was that
it took longer than the 1 second we expected to run one of the test
cases.

This test doesn't need to be that specific, so I am updating all the
time regexes to be the same one that allows 0-9 any number of digits,
requires a decimal point, then 0-9 any number of digits for the final
part.


  Commit: c69be3fe4bec916c111eec4eec1def04b16fba8d
      https://github.com/llvm/llvm-project/commit/c69be3fe4bec916c111eec4eec1def04b16fba8d
  Author: Amit Kumar Pandey <137622562+ampandey-1995 at users.noreply.github.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/hip-sanitize-options.hip

  Log Message:
  -----------
  [Driver][ROCm][OpenMP] Fix default ockl linking for OpenMP. (#126186)

ASan gpu runtime (asanrtl.bc) linking is dependent on 'ockl.bc'. Link
'ockl.bc' only when ASan is enabled for openmp amdgpu offloading
application.


  Commit: 71fcc825b4e271b7608b54de27ae69fe70f00fad
      https://github.com/llvm/llvm-project/commit/71fcc825b4e271b7608b54de27ae69fe70f00fad
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/StructurizeCFG/simple-structurizecfg-crash.ll

  Log Message:
  -----------
  [NFC][StructurizeCFG] Add a test that can crash StructurizeCFG pass (#126087)

I tried to fix it in #124051 but failed to do so. This PR adds the test
and
marks it as xfail.


  Commit: 8380b5c7494e5511dfdc944108ff316453a36061
      https://github.com/llvm/llvm-project/commit/8380b5c7494e5511dfdc944108ff316453a36061
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/TableGen/get-operand-type-no-expand.td
    M llvm/test/TableGen/get-operand-type.td
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen][InstrInfo] Cull mapping that have not been enabled/not needed (#126137)

- Detect whether logical operand mapping/named operand mappings have 
  been enabled in a previous pass over instructions and execute the
  relevant emission code only if those mappings are enabled.
- For these mappings, skip the fixed set of predefined instructions as
  they won't have these mappings enabled.
- Emit operand type mappings only for X86 target, as they are only used
  by X86 and look for X86 specific `X86MemOperand`.
- Cleanup `emitOperandTypeMappings` code: remove code to handle empty
  instruction list and use range for loops.


  Commit: f3cd2238383f695c719e7eab6aebec828781ec91
      https://github.com/llvm/llvm-project/commit/f3cd2238383f695c719e7eab6aebec828781ec91
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    A clang/test/OpenMP/spirv_target_codegen_basic.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPGridValues.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp

  Log Message:
  -----------
  [OpenMP][OpenMPIRBuilder] Add initial changes for SPIR-V target frontend support (#125920)

As Intel is working to add support for SPIR-V OpenMP device offloading
in upstream clang/liboffload, we need to modify the OpenMP frontend to
allow SPIR-V as well as generate valid IR for SPIR-V. For example, we
need the frontend to generate code to define and interact with device
globals used in the DeviceRTL.

This is the beginning of what I expect will be (many) other changes, but
let's get started with something simple.

---------

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 6b52fb25b90e575b507343bde0162d3d652ff666
      https://github.com/llvm/llvm-project/commit/6b52fb25b90e575b507343bde0162d3d652ff666
  Author: Asher Mancinelli <ashermancinelli at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M flang/docs/Directives.md
    M flang/lib/Lower/Bridge.cpp
    M flang/test/Integration/unroll.f90

  Log Message:
  -----------
  [flang] Correctly handle `!dir$ unroll` with unrolling factors of 0 and 1 (#126170)

https://github.com/llvm/llvm-project/pull/123331 added support for the
unrolling directive. In the presence of an explicit unrolling factor,
that unrolling factor would be unconditionally passed into the metadata
even when it was 1 or 0. These special cases should instead disable
unrolling. Adding an explicit unrolling factor of 0 triggered this
assertion which is fixed by this patch:

```
unsigned int unrollCountPragmaValue(const llvm::Loop*):
Assertion `Count >= 1 && "Unroll count must be positive."' failed.
```

Updated tests and documentation.


  Commit: 7ae78a6cdb6ce9ad1534ed10519649fb3d47aca9
      https://github.com/llvm/llvm-project/commit/7ae78a6cdb6ce9ad1534ed10519649fb3d47aca9
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir
    M mlir/test/Dialect/Vector/canonicalize.mlir
    M mlir/test/Dialect/Vector/vector-warp-distribute.mlir

  Log Message:
  -----------
  [mlir][vector]add extractInsertFoldConstantOp fold function and apply it to extractOp and insertOp. (#124399)

add extractInsertFoldConstantOp fold function and apply it to extractOp and insertOp.


  Commit: 3706dfef660097f24fb5efbac0d7f14b424492ed
      https://github.com/llvm/llvm-project/commit/3706dfef660097f24fb5efbac0d7f14b424492ed
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    A llvm/test/Transforms/LoopVectorize/invalidate-scev-at-scope-after-vectorization.ll

  Log Message:
  -----------
  [LV] Forget LCSSA phi with new pred before other SCEV invalidation. (#119897)

`forgetLcssaPhiWithNewPredecessor` performs additional invalidation if
there is an existing SCEV for the phi, but earlier
`forgetBlockAndLoopDispositions` or `forgetLoop` may already invalidate
the SCEV for the phi.

Change the order to first call `forgetLcssaPhiWithNewPredecessor` to
ensure it runs before its SCEV gets invalidated too eagerly.

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

PR: https://github.com/llvm/llvm-project/pull/119897


  Commit: 62ae876b1ba2f03bb125174aa24e30b4ebd351a5
      https://github.com/llvm/llvm-project/commit/62ae876b1ba2f03bb125174aa24e30b4ebd351a5
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp

  Log Message:
  -----------
  [mlir][tosa] Fix conv op build functions (#126321)

This patch fixes several issues:
  - buildConvOpWithQuantInfo: 
       call buildConvOpResultTypeInfo to get final output type
  - buildTransConvOpWithQuantInfo:
       add input_zp and weight_zp operands
       remove input_zp/weight_zp attributes
  - createZeroPointTensor:
       add getElementTypeOrSelf to get element type just in case
       remove bad auto-merge lines


Change-Id: Idbf88f500ce57a865da4b7be7b7b8bf2ba194b24

Signed-off-by: Tai Ly <tai.ly at arm.com>


  Commit: 6a8439b5933e71d6dc93d5bdc921340efaa9522f
      https://github.com/llvm/llvm-project/commit/6a8439b5933e71d6dc93d5bdc921340efaa9522f
  Author: Prashanth <TheStarOne01 at proton.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libc/docs/CMakeLists.txt
    M libc/docs/headers/index.rst
    A libc/utils/docgen/sys/statvfs.yaml

  Log Message:
  -----------
  [libc][docs] Add sys/statvfs to documentation and YAML definitions (#126413)

These changes ensure that the sys/statvfs header is documented properly
with respect to the issue (
https://github.com/llvm/llvm-project/issues/122006 ) .


  Commit: 5b9e6c7993359c16b4d645c851bb7fe2fd7b78c7
      https://github.com/llvm/llvm-project/commit/5b9e6c7993359c16b4d645c851bb7fe2fd7b78c7
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libcxx/test/libcxx/feature_test_macro/ftm_metadata.sh.py
    M libcxx/test/libcxx/feature_test_macro/version_header_implementation.sh.py
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Improves type-safety in generator script. (#101880)

This changes the code to use dataclasses instead of dict entries. It
also adds type aliases to use in the typing information and updates the
typing information.


  Commit: 62245aaa6b1983ceae768eaee30aa41c4dd6db51
      https://github.com/llvm/llvm-project/commit/62245aaa6b1983ceae768eaee30aa41c4dd6db51
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/test/MC/RISCV/rv32c-invalid.s
    M llvm/test/MC/RISCV/xwchc-invalid.s

  Log Message:
  -----------
  [RISCV] Improve Errors for GPRNoX0X2/SP Reg Classes (#126394)

More adoption of better diagnostics for RISC-V register classes:
- GPRNoX0X2 (GPRs excluding `zero` and `x2`, used for `c.lui`)
- SP (only contains `sp`)


  Commit: b319dfef21f6c7b0bc6a356d6b9f41a3b3b98ae9
      https://github.com/llvm/llvm-project/commit/b319dfef21f6c7b0bc6a356d6b9f41a3b3b98ae9
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libcxx/utils/ci/Dockerfile
    M libcxx/utils/ci/docker-compose.yml

  Log Message:
  -----------
  [libc++][CI] Updates Clang HEAD version in Docker. (#126419)

This is a preparation to test Clang 21 in the CI,

Drive-by: Updated some outdated documentation.


  Commit: 55015e150b35f69431ce1f906e22a598d5b2f000
      https://github.com/llvm/llvm-project/commit/55015e150b35f69431ce1f906e22a598d5b2f000
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [NFC][TableGen] Delete `getLogicalOperandType` from InstrInfoEmitter (#125951)

Delete `getLogicalOperandType` function from InstrInfoEmitter as no
backend seems to use it.


  Commit: e42fdcb41fdcfe7bf302b40f20afb4e9cda5602d
      https://github.com/llvm/llvm-project/commit/e42fdcb41fdcfe7bf302b40f20afb4e9cda5602d
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/test/CodeGen/RISCV/rvv/vfwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmacc-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwmul-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfwsub-sdnode.ll

  Log Message:
  -----------
  [RISCV] Match widening fp instructions with same fpext used in multiple operands (#125803)

Because the fpext has a single use constraint on it we can't match cases
where it's used for both operands.

Introduce a new PatFrag that allows multiple uses on a single user and
use it for the binary patterns, and some ternary patterns.

(For some of the ternary patterns there is a fneg that counts as a
separate user, we still need to handle these)


  Commit: 9e0077c921ebf505afa117cf520c628ace1a29cf
      https://github.com/llvm/llvm-project/commit/9e0077c921ebf505afa117cf520c628ace1a29cf
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/fpclass-from-dom-cond.ll
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] Handle not in dominating condition. (#126423)

General handling of not in dominating condition.

proof: https://alive2.llvm.org/ce/z/FjJN8q


  Commit: 0a470a926481d370251731cb2dd897531756335f
      https://github.com/llvm/llvm-project/commit/0a470a926481d370251731cb2dd897531756335f
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lld/ELF/Config.h
    M lld/ELF/Driver.cpp
    M lld/ELF/Options.td
    M lld/docs/ld.lld.1
    M lld/test/ELF/package-metadata.s

  Log Message:
  -----------
  [ELF] --package-metadata: support %[0-9a-fA-F][0-9a-fA-F]

(This application-specific option is probably not appropriate as a
linker option (.o file offers more flexibility and decouples JSON
verification from linkers). However, the option has gained some traction
in Linux distributions, with support in GNU ld, gold, and mold.)

GNU ld has supported percent-encoded bytes and extensions like
`%[comma]` since November 2024.  mold supports just percent-encoded
bytes.  To prepare for potential adoption by Ubuntu, let's support
percent-encoded bytes.

Link: https://sourceware.org/bugzilla/show_bug.cgi?id=32003
Link: https://bugs.launchpad.net/ubuntu/+source/dpkg/+bug/2071468

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


  Commit: 5d2e2847e09ae70e24b6c749c08028e705786113
      https://github.com/llvm/llvm-project/commit/5d2e2847e09ae70e24b6c749c08028e705786113
  Author: Jinsong Ji <jinsong.ji at intel.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/MachineCopyPropagation.cpp
    A llvm/test/CodeGen/MIR/X86/pr126107.mir

  Log Message:
  -----------
  MachineCopyPropagation: Do not remove copies preserved by regmask (#125868)

llvm/llvm-project at 9e436c2daa44 tries to handle register masks and
sub-registers, it avoids clobbering RegUnit presreved by regmask. But it
then introduces invalid pointer issues.

We delete the copies without invalidate all the use in the CopyInfo, so
we dereferenced invalid pointers in next interation, causing asserts.

Fixes: #126107

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: ad61e533338771e7aab22e023f656098e61a76f0
      https://github.com/llvm/llvm-project/commit/ad61e533338771e7aab22e023f656098e61a76f0
  Author: Fangrui Song <i at maskray.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCELFStreamer.h
    M llvm/include/llvm/MC/MCObjectStreamer.h
    M llvm/include/llvm/MC/MCStreamer.h
    M llvm/include/llvm/MC/MCWasmStreamer.h
    M llvm/include/llvm/MC/MCWinCOFFStreamer.h
    M llvm/lib/MC/MCAsmStreamer.cpp
    M llvm/lib/MC/MCELFStreamer.cpp
    M llvm/lib/MC/MCMachOStreamer.cpp
    M llvm/lib/MC/MCStreamer.cpp
    M llvm/lib/MC/MCWasmStreamer.cpp
    M llvm/lib/MC/MCWinCOFFStreamer.cpp
    M llvm/lib/Target/ARM/ARMAsmPrinter.cpp
    M llvm/lib/Target/ARM/AsmParser/ARMAsmParser.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMELFStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMCTargetDesc.h
    M llvm/lib/Target/ARM/MCTargetDesc/ARMMachObjectWriter.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMTargetStreamer.cpp
    M llvm/lib/Target/ARM/MCTargetDesc/ARMWinCOFFStreamer.cpp

  Log Message:
  -----------
  [ARM] Move MCStreamer::emitThumbFunc to ARMTargetStreamer

MCStreamer should not declare arch-specific functions. Such functions
should go to MCTargetStreamer.

Move MCMachOStreamer::emitThumbFunc to ARMTargetMachOStreamer, which is
a new subclass of ARMTargetStreamer. (The new class is just placed in
ARMMachObjectWriter.cpp. The conventional split like
ARMELFObjectWriter.cpp/ARMELFObjectWriter.cpp is overkill.)

`emitCFILabel`, called by ARMWinCOFFStreamer.cpp, has to be made public.

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


  Commit: ced23aa5403240f26cba4d99b59bf5d31d6035ac
      https://github.com/llvm/llvm-project/commit/ced23aa5403240f26cba4d99b59bf5d31d6035ac
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Math/Transforms/Passes.h
    M mlir/lib/Dialect/Math/Transforms/PolynomialApproximation.cpp

  Log Message:
  -----------
  [MLIR][Math] Add fine-grained populate-patterns functions for math function rewrites. (#126103)

The existing `mlir::populateMathPolynomialApproximationPatterns` is
coarse-grained and inflexible:
- It populates 2 distinct classes of patterns: (1) polynomial
approximations, (2) expansions of operands to f32.
- It does not offer knobs to select which math functions to apply the
rewrites to.

This PR adds finer-grained populate-patterns functions, which take a
predicate lambda allowing the caller to control which math functions to
apply rewrites to.

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: 1e14edb8981326e18509409be5c95e0c8c740891
      https://github.com/llvm/llvm-project/commit/1e14edb8981326e18509409be5c95e0c8c740891
  Author: earnol <earnol at users.noreply.github.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/redundant-expression.rst
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp

  Log Message:
  -----------
  [clang-tidy] Address false positives in misc-redundant-expression checker (#122841)

This patch addresses situations when misc-redundant-expression checker
provides excessive diagnostics for situations with different macros
having the same value. In particular it addresses situations described
in the initial report of
https://github.com/llvm/llvm-project/issues/118885 are addressed. The
situations which are popped inside discussion like if (A + B == B + A)
for macros are not properly addressed by this patch.
Those changes are also mentioned in Release Notes.
---------

Co-authored-by: Vladislav Aranov <vladislav.aranov at ericsson.com>
Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>


  Commit: 7438a024b66695fd9a22571da901533e6771a617
      https://github.com/llvm/llvm-project/commit/7438a024b66695fd9a22571da901533e6771a617
  Author: Thomas Sepez <tsepez at users.noreply.github.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix assert when constexpr size passed to snprintf() (#119786) (#124022)

EvaluateAsConstExpr() can return an lvalue which is not compatible
with a subsequent getInt() call. Instead, use EvaluateAsInt() which
will use all techniques availble to get an int result compatible
with the subsequent getInt() call.


  Commit: 839002dd2dfc51398248d14052220058ff242143
      https://github.com/llvm/llvm-project/commit/839002dd2dfc51398248d14052220058ff242143
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lld/test/COFF/delayimporttables.yaml
    M lld/test/COFF/export-all.s
    M lld/test/COFF/filename-casing.s
    M lld/test/COFF/guardcf-align.s
    M lld/test/COFF/implib-name.test
    M lld/test/COFF/locally-imported-warn-multiple.s
    M lld/test/COFF/lto-chkstk.ll
    M lld/test/COFF/lto-comdat.ll
    M lld/test/COFF/lto-lazy-reference.ll
    M lld/test/COFF/lto-linker-opts.ll
    M lld/test/COFF/lto.ll
    M lld/test/COFF/map.test
    M lld/test/COFF/out.test
    M lld/test/COFF/precomp-link.test
    M lld/test/COFF/savetemps-colon.ll
    M lld/test/COFF/savetemps.ll
    M lld/test/COFF/thinlto-archives.ll
    M lld/test/COFF/thinlto-mangled.ll
    M lld/test/COFF/thinlto-whole-archives.ll
    M lld/test/COFF/thinlto.ll
    M lld/test/MachO/objc-category-merging-erase-objc-name-test.s
    M lld/test/wasm/shared-weak-undefined.s

  Log Message:
  -----------
  [lld] Remove usage of `%T` in `lld/test` (#126133)

`%T` is not unique and deprecated
[[1](https://llvm.org/docs/CommandGuide/lit.html#substitutions)].

This patch replaces all `%T` in `lld/test` with `%t.dir` (`mkdir` if
necessary)

---------

Signed-off-by: Peter Rong <PeterRong at meta.com>


  Commit: 73114e43eea0a6f0d70272dc203bc520da1c4f6b
      https://github.com/llvm/llvm-project/commit/73114e43eea0a6f0d70272dc203bc520da1c4f6b
  Author: Charlie Barto <chbarto at microsoft.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Windows/coverage-basic.cpp
    M compiler-rt/test/asan/TestCases/Windows/crash_read_write.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_host.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp
    M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/seh.cpp
    R compiler-rt/test/asan/TestCases/Windows/null_deref.cpp
    M compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp
    M compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp
    M compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp
    M compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
    M compiler-rt/test/asan/TestCases/alloca_big_alignment.cpp
    M compiler-rt/test/asan/TestCases/alloca_constant_size.cpp
    M compiler-rt/test/asan/TestCases/alloca_detect_custom_size_.cpp
    M compiler-rt/test/asan/TestCases/alloca_instruments_all_paddings.cpp
    M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp
    M compiler-rt/test/asan/TestCases/alloca_overflow_partial.cpp
    M compiler-rt/test/asan/TestCases/alloca_overflow_right.cpp
    M compiler-rt/test/asan/TestCases/alloca_safe_access.cpp
    M compiler-rt/test/asan/TestCases/alloca_underflow_left.cpp
    M compiler-rt/test/asan/TestCases/alloca_vla_interact.cpp
    M compiler-rt/test/asan/TestCases/contiguous_container.cpp
    M compiler-rt/test/asan/TestCases/coverage-trace-pc.cpp
    M compiler-rt/test/asan/TestCases/debug_locate.cpp
    M compiler-rt/test/asan/TestCases/debug_stacks.cpp
    M compiler-rt/test/asan/TestCases/deep_tail_call.cpp
    M compiler-rt/test/asan/TestCases/default_ignorelist.cpp
    M compiler-rt/test/asan/TestCases/default_options.cpp
    A compiler-rt/test/asan/TestCases/defines.h
    M compiler-rt/test/asan/TestCases/error_report_callback.cpp
    M compiler-rt/test/asan/TestCases/exitcode.cpp
    M compiler-rt/test/asan/TestCases/force_inline_opt0.cpp
    M compiler-rt/test/asan/TestCases/global-location-nodebug.cpp
    M compiler-rt/test/asan/TestCases/global-underflow.cpp
    M compiler-rt/test/asan/TestCases/halt_on_error-1.c
    M compiler-rt/test/asan/TestCases/heavy_uar_test.cpp
    M compiler-rt/test/asan/TestCases/ignorelist.cpp
    M compiler-rt/test/asan/TestCases/ill.cpp
    M compiler-rt/test/asan/TestCases/initialization-bug.cpp
    M compiler-rt/test/asan/TestCases/inline.cpp
    M compiler-rt/test/asan/TestCases/intercept-rethrow-exception.cpp
    M compiler-rt/test/asan/TestCases/interception_failure_test.cpp
    M compiler-rt/test/asan/TestCases/interface_test.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs-compare-errors.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs-subtract-errors.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs.cpp
    M compiler-rt/test/asan/TestCases/large_func_test.cpp
    M compiler-rt/test/asan/TestCases/null_deref.cpp
    M compiler-rt/test/asan/TestCases/pass-struct-byval.cpp
    M compiler-rt/test/asan/TestCases/report_error_summary.cpp
    M compiler-rt/test/asan/TestCases/speculative_load.cpp
    M compiler-rt/test/asan/TestCases/stack-buffer-overflow-with-position.cpp
    M compiler-rt/test/asan/TestCases/stack-oob-frames.cpp
    M compiler-rt/test/asan/TestCases/strcat-overlap.cpp
    M compiler-rt/test/asan/TestCases/strcpy-overlap.cpp
    M compiler-rt/test/asan/TestCases/strncat-overlap.cpp
    M compiler-rt/test/asan/TestCases/strncpy-overflow.cpp
    M compiler-rt/test/asan/TestCases/strncpy-overlap.cpp
    M compiler-rt/test/asan/TestCases/throw_call_test.cpp
    M compiler-rt/test/asan/TestCases/throw_catch.cpp
    M compiler-rt/test/asan/TestCases/throw_invoke_test.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-capture.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-dtor-order.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-inlined.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop-bug.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop-removed.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-temp.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-temp2.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-types.cpp
    M compiler-rt/test/asan/TestCases/vla_chrome_testcase.cpp
    M compiler-rt/test/asan/TestCases/vla_condition_overflow.cpp
    M compiler-rt/test/asan/TestCases/vla_loop_overfow.cpp
    M compiler-rt/test/asan/TestCases/zero_page_pc.cpp
    M compiler-rt/test/asan/lit.cfg.py

  Log Message:
  -----------
  [compiler-rt][windows] Test fixups for MSVC. (#109887)

- add XFAIL/UNSUPPORTED annotations for tests run wtih real MSVC 
- macroify usages of clang-specific attributes in asan tests

- Add substitution for /Oy-/-fno-omit-frame-pointer
  This makes the dll_intercept_memset test work with mingw

These are most of the changes that are required to get things running
with MSVC, however there are some remaining build-flag tweaks.

Nothing in here should be a functional change.


  Commit: 5c42ccd7260da565d947edf60bd8ad4dea0ddf58
      https://github.com/llvm/llvm-project/commit/5c42ccd7260da565d947edf60bd8ad4dea0ddf58
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Lex/PPMacroExpansion.cpp

  Log Message:
  -----------
  [Clang][NFC] clang-format __has_builtin implementation (#126571)

Feedback from https://github.com/llvm/llvm-project/pull/126324

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: f101899ae8582be276758fe44e12cbf723d23b03
      https://github.com/llvm/llvm-project/commit/f101899ae8582be276758fe44e12cbf723d23b03
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M .github/workflows/libcxx-build-containers.yml

  Log Message:
  -----------
  [libc++][Github] Remove workflow-scoped write permissions (#126447)

This patch removes the workflow-scoped package write permissions in the
libcxx-build-containers workflow. The relevant permissions are already
present in the job, so this raises the potential for new jobs being
added to the workflow that do not need the permissions but having them
anyways. Not having workflow-scoped write permissions is security best
practice.

Fixes #126230.


  Commit: 196a1acc7d277d05d4b94ad7745c18bf13ea991f
      https://github.com/llvm/llvm-project/commit/196a1acc7d277d05d4b94ad7745c18bf13ea991f
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    A mlir/test/Target/LLVMIR/omptarget-debug-var-1.mlir
    A mlir/test/Target/LLVMIR/omptarget-debug-var-2.mlir

  Log Message:
  -----------
  [OMPIRBuilder][debug] Fix debug info for variables in target region. (#118314)

When a new function is created to handle OpenMP target region, the
variables used in it are passed as arguments. The scope and the location
of these variable contains still point to te parent function of the
target region. Such variables will fail in Verifier as the scope of the
variables will be different from the containing functions.

Currently, flang is the only user of createOutlinedFunction and it does
not generate any debug data for the the variables in the target region
to avoid this error. When this PR is in, we should be able to remove
this limit in the flang (and anyother client) and have the better debug
experience for the target region.

This PR changes the location and scope of the variables in the target
region to point to correct entities. It is similar to what
fixupDebugInfoPostExtraction does for CodeExtractor. I initially tried
to re-use that function but found quickly that it would require quite a
bit of re-factoring and additions before it could be used. It was much
simpler to make the changes locally.


  Commit: 808b1c11a26ba986a4148e10f30a5ba995766f83
      https://github.com/llvm/llvm-project/commit/808b1c11a26ba986a4148e10f30a5ba995766f83
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Object/ELF.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/unittests/Object/ELFObjectFileTest.cpp

  Log Message:
  -----------
  [ELF] Add support for CREL to getSectionAndRelocations

This patch updates the getSectionAndRelocations function to also support
CREL relocation sections. Unit tests have been added. This patch also
updates consumers to say they explicitly do not support CREL format
relocations. Subsequent patches will make the consumers work with CREL
format relocations and also add in testing support.

Reviewers: red1bluelost, MaskRay, rlavaee

Reviewed By: MaskRay

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


  Commit: 56b760cc472fd2e919e5046575b6c537cb7f3d0b
      https://github.com/llvm/llvm-project/commit/56b760cc472fd2e919e5046575b6c537cb7f3d0b
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Object/ELF.cpp
    M llvm/test/tools/llvm-readobj/ELF/bb-addr-map-relocatable.test

  Log Message:
  -----------
  [ELF] Add support for CREL locations for SHT_LLVM_BB_ADDR_MAP

This patch adds support for properly decoding SHT_LLVM_BB_ADDR_MAP
sections in relocatable object files when the relocation format is CREL.

Reviewers: rlavaee, jh7370, red1bluelost, MaskRay

Reviewed By: MaskRay

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


  Commit: 50317ca13f6ad9b2196f92f8c719f5c31e5d6812
      https://github.com/llvm/llvm-project/commit/50317ca13f6ad9b2196f92f8c719f5c31e5d6812
  Author: Vy Nguyen <vyng at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    A lldb/include/lldb/Core/Telemetry.h
    M lldb/source/Core/CMakeLists.txt
    A lldb/source/Core/Telemetry.cpp

  Log Message:
  -----------
  [lldb][telemetry] Implement LLDB Telemetry (part 1) (#119716)

Details:
- This is a subset of PR/98528.( Pavel's suggestion was to split up the
patch to make reviewing easier)
- This contains only the concrete implementation of the framework to be
used but no usages yet.
- I plan to send a few follow-up patches:
+ part2 : includes changes in the plugin-manager to set up the plugin
stuff (ie., how to create a default vs vendor impl)
  + part3 (all of the following can be done in parallel):
* part 3_a: define DebuggerTelemetryInfo and related methods to collect
data about debugger startup/exit
* part 3_b: define TargetTelemetryInfo and related methods to collect
data about debug target(s)
* part 3_c: define CommandTelemetryInfo and related methods to collect
data about debug-commands
* part 3_d: define ClientTelemtryInfo and related methods to collect
data about lldb-dap/any other client

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>
Co-authored-by: Jonas Devlieghere <jonas at devlieghere.com>


  Commit: 13f63010784d8d55620fa7846ac2192f20f95113
      https://github.com/llvm/llvm-project/commit/13f63010784d8d55620fa7846ac2192f20f95113
  Author: youngd007 <davidayoung at meta.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    A llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness-json-output.s

  Log Message:
  -----------
  Modify dwarfdump verification  to allow sub-category counts (#125062)

It was discovered that BOLT had several distinct issues of missing debug
information by various tags for debug names (119493 & 119023 as
examples), but the verification of a DWARF with llvm-dwarfdump prior to
those fixes only gave one 'missing name' category.
```
{"error-categories":{"Name Index DIE entry missing name":{"count":36355210}},"error-count":36355210}
```
To more easily leverage dwarf verification for debug health, the JSON
output will be improved to allow having detailed counts by a
sub-category when it makes sense.
For now, this is only implemented on the missing tags, but can be
extended to more.
```
{"error-categories":{"Name Index DIE entry missing name":{"count":10,"details":{"DW_TAG_inlined_subroutine":1,"DW_TAG_label":1,"DW_TAG_namespace":2,"DW_TAG_subprogram":2,"DW_TAG_variable":4}}},"error-count":10}
```

This diff also modifies the tests created in pull request 124936 (not
yet landed) to ensure the JSON switches. Ideally this lands after that
but it did not correctly create a stack of pull requests.


  Commit: feb30f25c0d40e928496d2bd17dd74c23e993583
      https://github.com/llvm/llvm-project/commit/feb30f25c0d40e928496d2bd17dd74c23e993583
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M offload/cmake/caches/Offload.cmake

  Log Message:
  -----------
  [Offload] Fix the offload cache file triggering libc++ / libstdc++ mixing (#126313)

Summary:
We originally wanted `-stdlib=libc++` by default so that it could use
offloading support in libc++, however this causes issues with out the
Offloading proejct itself is built. Is the user builds the LLVM libs
with libstdc++ then uses this cache it will enable this option by
default for the ensuing build of the offloading libraries with the newly
build clang. This will cause a lot of linker failured because the C++
library doesn't match.

Long term I think the proper solution to this is to make better use of
clang configuration files, but I don't know a good way to do that by
default. For now just make it build right.


  Commit: a854c266b98468ad4479a7d3c56a3fa76437e30d
      https://github.com/llvm/llvm-project/commit/a854c266b98468ad4479a7d3c56a3fa76437e30d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M offload/CMakeLists.txt
    A offload/libomptarget/CMakeLists.txt
    A offload/libomptarget/DeviceImage.cpp
    A offload/libomptarget/KernelLanguage/API.cpp
    A offload/libomptarget/LegacyAPI.cpp
    A offload/libomptarget/OffloadRTL.cpp
    A offload/libomptarget/OpenMP/API.cpp
    A offload/libomptarget/OpenMP/InteropAPI.cpp
    A offload/libomptarget/OpenMP/Mapping.cpp
    A offload/libomptarget/OpenMP/OMPT/Callback.cpp
    A offload/libomptarget/PluginManager.cpp
    A offload/libomptarget/device.cpp
    A offload/libomptarget/exports
    A offload/libomptarget/interface.cpp
    A offload/libomptarget/omptarget.cpp
    A offload/libomptarget/private.h
    R offload/src/CMakeLists.txt
    R offload/src/DeviceImage.cpp
    R offload/src/KernelLanguage/API.cpp
    R offload/src/LegacyAPI.cpp
    R offload/src/OffloadRTL.cpp
    R offload/src/OpenMP/API.cpp
    R offload/src/OpenMP/InteropAPI.cpp
    R offload/src/OpenMP/Mapping.cpp
    R offload/src/OpenMP/OMPT/Callback.cpp
    R offload/src/PluginManager.cpp
    R offload/src/device.cpp
    R offload/src/exports
    R offload/src/interface.cpp
    R offload/src/omptarget.cpp
    R offload/src/private.h

  Log Message:
  -----------
  [Offload][NFC] Rename `src/` -> `libomptarget/` (#126573)

Summary:
The name `src` is confusing when combined with the plugins and the newly
added `liboffload`.


  Commit: f290fc3df0eb7934d3edeea4f8c5a6c289d7c16b
      https://github.com/llvm/llvm-project/commit/f290fc3df0eb7934d3edeea4f8c5a6c289d7c16b
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/cmake/caches/Fuchsia-stage2.cmake

  Log Message:
  -----------
  [Fuchsia] Disable building runtimes with LTO (#126306)

Temporarily disable LTO'd runtimes, while we investigate an issue
building Fuchsia with LTO.


  Commit: d7fd2a2a3befe451d3cc70612a40e8c90a780caf
      https://github.com/llvm/llvm-project/commit/d7fd2a2a3befe451d3cc70612a40e8c90a780caf
  Author: Thomas Preud'homme <thomas.preudhomme at arm.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h

  Log Message:
  -----------
  [MLIR] Fix LLVMIRTransforms build failure (#125485)

lib/libMLIRLLVMIRTransforms.a fails to build from scratch with the
following error:
In file included from llvm/include/llvm/Frontend/OpenMP/OMPConstants.h:19,
                 from llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h:19,
                 from mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h:26,
                 from mlir/include/mlir/Dialect/LLVMIR/NVVMDialect.h:24,
                 from mlir/lib/Dialect/LLVMIR/Transforms/InlinerInterfaceImpl.cpp:17:
llvm/include/llvm/Frontend/OpenMP/OMP.h:16:10:
fatal error: llvm/Frontend/OpenMP/OMP.h.inc: No such file or directory

Use a forward declaration for OpenMPIRBuilder in ModuleTranslation.h to
avoid pulling OpenMP frontend header that require generated headers.


  Commit: f147d67524d734212eb36f01db453606f70bece5
      https://github.com/llvm/llvm-project/commit/f147d67524d734212eb36f01db453606f70bece5
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLoweringCall.cpp
    M llvm/test/CodeGen/X86/swifttailcc-store-ret-address-aliasing-stack-slot.ll

  Log Message:
  -----------
  [X86] Use StackArgTokenFactor for all stores when setting up tail calls. (#126244)

Before this patch, the stack argument token factor was used if any
outgoing stack slots needed to be written, but not when writing the
return address to a stack slot. Writing the return address stack slot
can also alias a stack slot for an input argument.

Always use StackArgumentTokenFactor, to ensure the store of the return
address will always use it, i.e. happen after all input arguments are
loaded.

PR: https://github.com/llvm/llvm-project/pull/126244


  Commit: 872aaddba92efe8a792673d6e0420966fe773093
      https://github.com/llvm/llvm-project/commit/872aaddba92efe8a792673d6e0420966fe773093
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFVerifier.h
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    R llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify-completeness-json-output.s

  Log Message:
  -----------
  Revert "Modify dwarfdump verification  to allow sub-category counts (#125062)"

This reverts commit 13f63010784d8d55620fa7846ac2192f20f95113.
Breaks check-llvm.


  Commit: f332455dd9a2b2b3ecb20f28349673313c5b440b
      https://github.com/llvm/llvm-project/commit/f332455dd9a2b2b3ecb20f28349673313c5b440b
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__format/buffer.h
    M libcxx/include/__memory/construct_at.h
    A libcxx/include/__memory/destroy.h
    M libcxx/include/__memory/ranges_construct_at.h
    A libcxx/include/__memory/ranges_destroy.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/__pstl/backends/libdispatch.h
    M libcxx/include/memory
    M libcxx/include/module.modulemap

  Log Message:
  -----------
  [libc++] Extract destroy algorithms into separate headers (#126449)

This patch separates the destroy algorithms from the primitive
construct_at and destroy_at operations, which are conceptually not
algorithms. This makes it easier to start using these destroy algorithms
from upcoming relocation facilities.

As part of this, it also implements `std::destroy_at` for arrays without
relying on the `std::destroy` algorithm, which is conceptually a
higher-level facility.


  Commit: 3d9409f5bc413b12acf95b4a6c2a5c8860d95d7c
      https://github.com/llvm/llvm-project/commit/3d9409f5bc413b12acf95b4a6c2a5c8860d95d7c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cuda.h
    M clang/lib/Sema/SemaDeclAttr.cpp
    M clang/test/Driver/cuda-cross-compiling.c
    M clang/test/SemaCUDA/device-var-init.cu
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libcxx/test/configs/nvptx-libc++-shared.cfg.in
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    R llvm/test/CodeGen/NVPTX/global-ctor.ll
    R llvm/test/CodeGen/NVPTX/global-dtor.ll
    M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll

  Log Message:
  -----------
  [NVPTX] Make ctor/dtor lowering always enabled in NVPTX (#126544)

Summary:
Currently we conditionally enable NVPTX lowering depending on the
language (C/C++/OpenMP). Unfortunately this causes problems because this
option is only present if the backend was enabled, which causes this to
error if you try to make LLVM-IR.

This patch instead makes it the only accepted lowering. The reason we
had it as opt-in before is because it is not handled by CUDA. So, this
pach also introduces diagnostics to prevent *all* creation of
device-side global constructors and destructors. We already did this for
variables, now we do it for attributes as well.

This inverts the responsibility of blocking this from the backend to the
langauage like it should be given that support for this is language
dependent.


  Commit: d11b9b7275b01067ff15486caf1e270375e1a97c
      https://github.com/llvm/llvm-project/commit/d11b9b7275b01067ff15486caf1e270375e1a97c
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

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


  Commit: 6536579d805c07ab43dc1ff23999ae85677ed9e2
      https://github.com/llvm/llvm-project/commit/6536579d805c07ab43dc1ff23999ae85677ed9e2
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lld/COFF/Driver.cpp
    A lld/test/COFF/arm64x-includeoptional.s

  Log Message:
  -----------
  [LLD][COFF] Add support for -includeoptional on ARM64X (#126300)

Include symbols from both symbol tables.


  Commit: 83edbd4958feb00db48d35d94d349b4e4d4482c6
      https://github.com/llvm/llvm-project/commit/83edbd4958feb00db48d35d94d349b4e4d4482c6
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.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 mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp

  Log Message:
  -----------
  [flang][acc] Ensure data exit action is generated for present & nocreate (#126560)

The acc.delete operation has semantics of decrementing present counter
and deleting the data when the counter reaches zero. Since both
acc.present and acc.nocreate are both intended to increment present
counter, this matching exit action must be inserted.

This is also what was specified in OpenACC dialect documentation:
https://mlir.llvm.org/docs/Dialects/OpenACCDialect/#operation-categories


  Commit: db1dd876424680c4e57cfb35635c85003d04ee56
      https://github.com/llvm/llvm-project/commit/db1dd876424680c4e57cfb35635c85003d04ee56
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/AST/ASTContext.cpp
    A clang/test/AST/HLSL/TypdefArrayParam.hlsl

  Log Message:
  -----------
  [HLSL] Desugar type when converting from a ConstantArrayType to an ArrayParameterType (#126561)

Desugar type when converting from a ConstantArrayType to an
ArrayParameterType in getArrayParameterType
Closes #125743


  Commit: cd26c112b224180bfc9ff23fbe04deb3322a18d8
      https://github.com/llvm/llvm-project/commit/cd26c112b224180bfc9ff23fbe04deb3322a18d8
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [llvm][GitHub] Move PR project status to Done once backport PR is made (#126374)

It's common to use the /cherry-pick command on a PR to create a backport
request. However, this creates a lot of clutter in the LLVM Release
Status project, because we end up with two items in the project, one for
the original PR and one for the new PR.

This change will set the status of the original PR to Done once the new
PR (for the release branch) is created. This will save release managers
a lot of work of having to manually updated the status for PRs that
contain backport requests.


  Commit: fdded8537d88c71dc3e198dd40bb32acb91132ac
      https://github.com/llvm/llvm-project/commit/fdded8537d88c71dc3e198dd40bb32acb91132ac
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lld/test/COFF/arm64x-includeoptional.s

  Log Message:
  -----------
  [LLD][COFF] Fix a typo in REQUIRES directive (NFC)

Fixes #126300.


  Commit: a80bccc6847be104948f46d313f03ac6b9ccb292
      https://github.com/llvm/llvm-project/commit/a80bccc6847be104948f46d313f03ac6b9ccb292
  Author: youngd007 <davidayoung at meta.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    R llvm/test/tools/llvm-dwarfdump/X86/debug-names-verify--completeness-json-output.s

  Log Message:
  -----------
  Delete erroneously test not updated with dwarf verification JSON change (#126587)

Between a PR (124936) adding a base test for dwarf verification JSON
output and a modification of the same in changing the JSON (125062),
there ended up being two versions of the test. The base one and the
fixed one, when there should be only one copy. The base fails as the
JSON format has changed, so deleting that version.

test:
   ninja check-llvm-tools-llvm-dwarfdump


  Commit: 94d956367ec047526b2ecd7774d6e068ea82fd87
      https://github.com/llvm/llvm-project/commit/94d956367ec047526b2ecd7774d6e068ea82fd87
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/MinGW.cpp
    M lld/COFF/MinGW.h
    M lld/COFF/SymbolTable.h
    A lld/test/COFF/arm64x-wrap.s

  Log Message:
  -----------
  [LLD][MinGW] Add support for wrapped symbols on ARM64X (#126296)

Apply `-wrap` arguments to both symbol tables.


  Commit: b969726901b6e7e5e383f2f47e698efd2cfda364
      https://github.com/llvm/llvm-project/commit/b969726901b6e7e5e383f2f47e698efd2cfda364
  Author: David Blaikie <dblaikie at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

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

  Log Message:
  -----------
  Rough attempt to fix lldb bazel BUILD file


  Commit: 7ba3c55d91dcd7da5a5eb1c58225f648fb38b740
      https://github.com/llvm/llvm-project/commit/7ba3c55d91dcd7da5a5eb1c58225f648fb38b740
  Author: Michael Flanders <flanders.michaelk at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/test/Analysis/copy-elision.cpp
    M clang/test/Analysis/stack-addr-ps.cpp
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/stackaddrleak.cpp

  Log Message:
  -----------
  [analyzer] Remove some false negatives in StackAddrEscapeChecker (#125638)

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

Previously, when the StackAddrEscapeChecker checked return values, it
did not scan into the structure of the return SVal. Now it does, and we
can catch some more false negatives that were already mocked out in the
tests in addition to those mentioned in
https://github.com/llvm/llvm-project/issues/123459.

The warning message at the moment for these newly caught leaks is not
great. I think they would be better if they had a better trace of why
and how the region leaks. If y'all are happy with these changes, I would
try to improve these warnings and work on normalizing this SVal checking
on the `checkEndFunction` side of the checker also.

Two of the stack address leak test cases now have two warnings, one
warning from return expression checking and another from`
checkEndFunction` `iterBindings` checking. For these two cases, I prefer
the warnings from the return expression checking, but I couldn't figure
out a way to drop the `checkEndFunction` without breaking other
`checkEndFunction` warnings that we do want. Thoughts here?


  Commit: 7c269cf0f6daad4a2a91ac87df89c3d134843ecd
      https://github.com/llvm/llvm-project/commit/7c269cf0f6daad4a2a91ac87df89c3d134843ecd
  Author: Chelsea Cassanova <chelsea_cassanova at apple.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/include/lldb/API/SBDefines.h

  Log Message:
  -----------
  [lldb][sbapi] Namespace CommandReturnObjectCallbackResult in SBDefines (#126606)

A new callback was added with the type
CommandReturnObjectCallbackResult, this commit namespaces that type to
match the format of other callback functions that have a non-primitive
return type in the lldb namespace.

rdar://144553496


  Commit: 07f21541424c95b4451292b288e5d69272c8020c
      https://github.com/llvm/llvm-project/commit/07f21541424c95b4451292b288e5d69272c8020c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp

  Log Message:
  -----------
  [NVPTX] Remove unused static functions following #126544


  Commit: 3c6d1dd362009e0aebd91c5197d40f8ce59fcff4
      https://github.com/llvm/llvm-project/commit/3c6d1dd362009e0aebd91c5197d40f8ce59fcff4
  Author: Gábor Horváth <xazax.hun at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/test/Analysis/copy-elision.cpp
    M clang/test/Analysis/stack-addr-ps.cpp
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/stackaddrleak.cpp

  Log Message:
  -----------
  Revert "[analyzer] Remove some false negatives in StackAddrEscapeChec… (#126614)

…ker (#125638)"

This reverts commit 7ba3c55d91dcd7da5a5eb1c58225f648fb38b740.

Co-authored-by: Gabor Horvath <gaborh at apple.com>


  Commit: d81b604656c189a9d4e9f0d14b0f4d52f454deac
      https://github.com/llvm/llvm-project/commit/d81b604656c189a9d4e9f0d14b0f4d52f454deac
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    A lldb/test/API/driver/terminal/TestTerminalDimensions.py

  Log Message:
  -----------
  [lldb] Add a test for terminal dimensions (#126598)

Add a test for the `term-width` and `term-height` settings. I thought I
was hitting bug because in my statusline test I was getting the default
values when running under PExpect. It turned out hat the issue is that
we clear the settings at the start of the test. The Editline tests
aren't affected by this because Editline provides its own functions to
get the terminal dimensions and explicitly does not rely on LLDB's
settings (presumably exactly because of this behavior).


  Commit: d90399603c1db201be830a895f3b1324c4b30d07
      https://github.com/llvm/llvm-project/commit/d90399603c1db201be830a895f3b1324c4b30d07
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderDarwin.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOS.cpp
    M lldb/source/Plugins/DynamicLoader/MacOSX-DYLD/DynamicLoaderMacOSXDYLD.cpp
    M lldb/source/Plugins/Platform/MacOSX/PlatformDarwinKernel.cpp
    M lldb/source/Plugins/SystemRuntime/MacOSX/SystemRuntimeMacOSX.cpp
    M lldb/source/Utility/ArchSpec.cpp
    M lldb/unittests/Utility/ArchSpecTest.cpp

  Log Message:
  -----------
  [lldb] [darwin] Upstream a few DriverKit cases (#126604)

A DriverKit process is a kernel extension that runs in userland, instead
of running in the kernel address space/priv levels, they've been around
a couple of years. From lldb's perspective a DriverKit process is no
different from any other userland level process, but it has a different
Triple so we need to handle those cases in the lldb codebase. Some of
the DriverKit triple handling had been upstreamed to llvm-project, but I
noticed a few cases that had not yet. Cleaning that up.


  Commit: 0f674cce82da851961b3e59b1bd663919e17fb65
      https://github.com/llvm/llvm-project/commit/0f674cce82da851961b3e59b1bd663919e17fb65
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/CodeGen/MachineOperand.h
    R llvm/include/llvm/Target/TargetIntrinsicInfo.h
    M llvm/include/llvm/Target/TargetMachine.h
    M llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MIRPrinter.cpp
    M llvm/lib/CodeGen/MachineInstr.cpp
    M llvm/lib/CodeGen/MachineOperand.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/lib/Target/CMakeLists.txt
    M llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/lib/Target/SPIRV/SPIRVPreLegalizer.cpp
    R llvm/lib/Target/TargetIntrinsicInfo.cpp
    M llvm/unittests/CodeGen/MachineOperandTest.cpp
    M llvm/unittests/MIR/MachineMetadata.cpp
    M llvm/utils/gn/secondary/llvm/lib/Target/BUILD.gn

  Log Message:
  -----------
  [NFC][LLVM] Remove unused `TargetIntrinsicInfo` class (#126003)

Remove `TargetIntrinsicInfo` class as its practically unused (its pure
virtual with no subclasses) and its references in the code.


  Commit: 44fcc5cdacc5ed33e096f50d05e1ab1260a944c0
      https://github.com/llvm/llvm-project/commit/44fcc5cdacc5ed33e096f50d05e1ab1260a944c0
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/test/Analysis/live-stmts.cpp

  Log Message:
  -----------
  [clang] Disaqble test/Analysis/live-stmts.cpp on aarch64

See https://github.com/llvm/llvm-project/issues/126619 and discussion
on https://github.com/llvm/llvm-project/pull/125840


  Commit: fb623a35248ed84cc7c82c696bf92419324720de
      https://github.com/llvm/llvm-project/commit/fb623a35248ed84cc7c82c696bf92419324720de
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/Mach-O/ObjectFileMachO.cpp

  Log Message:
  -----------
  [lldb] Fix two old UUID method calls in ObjectFileMachO

A section of ObjectFileMachO is ifdef compiled only when
building to run on iOS etc natively, so this old method
call rename wasn't detected by normal on-mac building.


  Commit: f451d27b387cdff14f0f45f1b3314090a5008e0c
      https://github.com/llvm/llvm-project/commit/f451d27b387cdff14f0f45f1b3314090a5008e0c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Interpreter/OptionValueSInt64.h
    M lldb/include/lldb/Interpreter/OptionValueUInt64.h

  Log Message:
  -----------
  [lldb] Assert on invalid default {S,U}Int64 (NFC) (#126590)

Both the default value and the min/max value are within LLDB's control,
so an assert is more appropriate than a runtime check.


  Commit: 1932ed040cc95ddfdeda3074bb57144cd2897d56
      https://github.com/llvm/llvm-project/commit/1932ed040cc95ddfdeda3074bb57144cd2897d56
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/OutputRedirector.cpp

  Log Message:
  -----------
  [lldb-dap] Silence Wunused-result warning (#126580)


  Commit: 754d896ca74ff07b2e0983a717963601016eae0b
      https://github.com/llvm/llvm-project/commit/754d896ca74ff07b2e0983a717963601016eae0b
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/test/HLFIR/maxval-elemental.fir
    M flang/test/HLFIR/minval-elemental.fir

  Log Message:
  -----------
  [flang] Propagate fast-math flags to FIROpBuilder. (#126316)

One constructor was missing to propagate fast-math flags
from an operation to the builder. It is fixed now.
And the builder creation in one opt-bufferization case should take
the rewriter, I think.


  Commit: 622b8edfc2485b21802778d1f4ae7aed3bbbb40e
      https://github.com/llvm/llvm-project/commit/622b8edfc2485b21802778d1f4ae7aed3bbbb40e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M lldb/source/Core/Telemetry.cpp

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

This patch fixes:

  lldb/source/Core/Telemetry.cpp:44:20: error: unused function
  'MakeUUID' [-Werror,-Wunused-function]


  Commit: 998f2422a563bb85065bfd1633d10644d9af3f92
      https://github.com/llvm/llvm-project/commit/998f2422a563bb85065bfd1633d10644d9af3f92
  Author: A. Jiang <de34 at live.cn>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libcxx/test/std/containers/Emplaceable.h
    M libcxx/test/std/containers/container.adaptors/flat.map/flat.map.access/at_transparent.pass.cpp

  Log Message:
  -----------
  [libc++][test] Fixes for `hash<Emplaceable>` and value discarding (#126566)

Currently `std::hash<Emplaceable>::operator()` relies implicit
conversion from `int` to `size_t`, which makes MSVC compelling. This PR
switches to use `static_cast`.

In `flat.map/flat.map.access/at_transparent.pass.cpp`, there's one
value-discarding use of `at` that wasn't marked `TEST_IGNORE_NODISCARD`.
This PR adds the missing `TEST_IGNORE_NODISCARD`.


  Commit: 001ba42fe057de10942ac886c3bd82ee54373ddf
      https://github.com/llvm/llvm-project/commit/001ba42fe057de10942ac886c3bd82ee54373ddf
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Analysis/Utils.h
    M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp

  Log Message:
  -----------
  [MLIR][Affine] Make affine fusion MDG API const correct (#125994)

Make affine fusion MDG API const correct. NFC changes otherwise.


  Commit: 0c6c4a99936d4d39015c8d2332483f8db78f69cf
      https://github.com/llvm/llvm-project/commit/0c6c4a99936d4d39015c8d2332483f8db78f69cf
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/hip-sanitize-options.hip

  Log Message:
  -----------
  Revert "[Driver][ROCm][OpenMP] Fix default ockl linking for OpenMP." (#126628)

Reverts llvm/llvm-project#126186

This broke the sanitizer buildbot:
https://lab.llvm.org/buildbot/#/builders/55/builds/6846


  Commit: aeeeeabe5832d683d317a5ed5a87b520aea54368
      https://github.com/llvm/llvm-project/commit/aeeeeabe5832d683d317a5ed5a87b520aea54368
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/test/SemaCXX/attr-cxx0x.cpp

  Log Message:
  -----------
  [Clang] disallow attributes on void parameters (#124920)

Fixes #108819 

--- 

This PR introduces diagnostics to disallow the use of attributes on void
parameters

```cpp
void f([[deprecated]] void) {}
```


  Commit: 15412d9d83e23ce7de23dc7252391ee6403384af
      https://github.com/llvm/llvm-project/commit/15412d9d83e23ce7de23dc7252391ee6403384af
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/StructurizeCFG/simple-structurizecfg-crash.ll

  Log Message:
  -----------
  [FIX] Add `REQUIRES: asserts` to `llvm/test/Transforms/StructurizeCFG/simple-structurizecfg-crash.ll`


  Commit: 9cc7ee16e3bb849fb3c0155a843bfe349a2d2175
      https://github.com/llvm/llvm-project/commit/9cc7ee16e3bb849fb3c0155a843bfe349a2d2175
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    A llvm/test/CodeGen/Mips/readcyclecounter.ll

  Log Message:
  -----------
  [Mips] Support llvm.readcyclecounter intrinsic (#114953)

The llvm.readcyclecounter intrinsic can be implemented via the `rdhwr
$3, $hwr_cc` instruction.
$hwr_cc: High-resolution cycle counter. This register provides read
access to the coprocessor 0 Count Register.

Fix #106318.


  Commit: 0b922d66e510de718cba671331bec3ebe42d0b70
      https://github.com/llvm/llvm-project/commit/0b922d66e510de718cba671331bec3ebe42d0b70
  Author: Baranov Victor <70346889+vbvictor at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/string-constructor.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor.cpp

  Log Message:
  -----------
  [clang-tidy] Added support for 3-argument std::string ctor in bugprone-string-constructor check (#123413)

This PR add diagnostics for 3-parameter `std::basic_string(const char*
t, size_type pos, size_type count)` constructor in
bugprone-string-constructor check:

```cpp
  std::string r1("test", 1, 0); // constructor creating an empty string
  std::string r2("test", 0, -4); // negative value used as length parameter
  // more examples in test file
  ```

Fixes false-positives reported in https://github.com/llvm/llvm-project/issues/123198.


  Commit: ea6827cacfde062c7d9f03266af5298499313176
      https://github.com/llvm/llvm-project/commit/ea6827cacfde062c7d9f03266af5298499313176
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.td
    M llvm/test/MC/RISCV/rv32c-invalid.s
    M llvm/test/MC/RISCV/rv64c-invalid.s
    M llvm/test/MC/RISCV/rvc-hints-invalid.s
    M llvm/test/MC/RISCV/xqcia-invalid.s
    M llvm/test/MC/RISCV/xqciac-invalid.s
    M llvm/test/MC/RISCV/xqcicli-invalid.s
    M llvm/test/MC/RISCV/xqcicm-invalid.s
    M llvm/test/MC/RISCV/xqcics-invalid.s
    M llvm/test/MC/RISCV/xqcicsr-invalid.s
    M llvm/test/MC/RISCV/xqciint-invalid.s
    M llvm/test/MC/RISCV/xqcilsm-invalid.s
    M llvm/test/MC/RISCV/xqcisls-invalid.s
    M llvm/test/MC/RISCV/zicfiss-invalid.s

  Log Message:
  -----------
  [RISCV] Improve Errors for GPRNoX0 Reg Class (#126397)

More adoption of better diagnostics for RISC-V register classes:
- GPRNoX0 (GPRs excluding `zero`)


  Commit: c9f1d2cbf18990311ea1287cc154e3784a10a3b0
      https://github.com/llvm/llvm-project/commit/c9f1d2cbf18990311ea1287cc154e3784a10a3b0
  Author: Jens Reidel <adrian at travitia.xyz>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp

  Log Message:
  -----------
  [compiler-rt][Mips] Fix mips SP register definition (#124493)

The mainline Linux kernel defines EF_R29, not EF_REG29 [1]. Further, the
asm/reg.h header requires `_MIPS_SIM_*` to be defined, which reside in
asm/sgidefs.h [2].

[1]:
https://github.com/torvalds/linux/blob/v6.13/arch/mips/include/uapi/asm/reg.h#L151
[2]:
https://github.com/torvalds/linux/blob/v6.13/arch/mips/include/uapi/asm/sgidefs.h#L33-L35

---------

Signed-off-by: Jens Reidel <adrian at travitia.xyz>


  Commit: 595195e86e221cae547986bd8aada613455721e1
      https://github.com/llvm/llvm-project/commit/595195e86e221cae547986bd8aada613455721e1
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [WebKit checkers] Treat an implicit value initialization as trivial (#126203)

Implicit value initialization is trivial for our purposes.


  Commit: af522c5dd3a38cc5e11e8e62009d7dbe2cde2d86
      https://github.com/llvm/llvm-project/commit/af522c5dd3a38cc5e11e8e62009d7dbe2cde2d86
  Author: Mikołaj Piróg <mikolaj.maciej.pirog at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/Headers/avx10_2convertintrin.h
    M clang/test/CodeGen/X86/avx10_2convert-builtins.c

  Log Message:
  -----------
  [AVX10.2] Fix wrong mask casting in some convert intrinsics (#126627)

Found during work on #120927. This caused the compiler to silently drop
ignore half of the mask in the specific intrinsics.


  Commit: 0c955167c241fd64f3a6737c06fa54de46165cac
      https://github.com/llvm/llvm-project/commit/0c955167c241fd64f3a6737c06fa54de46165cac
  Author: Phoebe Wang <phoebe.wang at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-lrint.ll

  Log Message:
  -----------
  [X86] Generate cvtpd2dq for (v2i32 lrint(v2f64)) (#126508)

Found when addressing comment on #126477


  Commit: 2d66ab5e8ede4f893b272f5ad1231e87504d7235
      https://github.com/llvm/llvm-project/commit/2d66ab5e8ede4f893b272f5ad1231e87504d7235
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libcxx/test/libcxx/containers/associative/map/at.abort.pass.cpp
    M libcxx/test/libcxx/containers/associative/map/at.const.abort.pass.cpp
    M libcxx/test/libcxx/containers/associative/map/find.modules.compile.pass.mm
    M libcxx/test/libcxx/containers/associative/non_const_comparator.incomplete.verify.cpp
    M libcxx/test/libcxx/containers/associative/tree_balance_after_insert.pass.cpp
    M libcxx/test/libcxx/containers/associative/tree_key_value_traits.pass.cpp
    M libcxx/test/libcxx/containers/associative/tree_left_rotate.pass.cpp
    M libcxx/test/libcxx/containers/associative/tree_remove.pass.cpp
    M libcxx/test/libcxx/containers/associative/tree_right_rotate.pass.cpp
    M libcxx/test/libcxx/containers/gnu_cxx/hash_map_name_lookup.pass.cpp
    M libcxx/test/libcxx/containers/sequences/array/triviality.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/asan.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/assert.pop_back.empty.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/incomplete.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/segmented_iterator.compile.pass.cpp
    M libcxx/test/libcxx/containers/sequences/deque/spare_block_handling.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.cons/debug.copy.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.erase_iter.end.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/assert.pop_back.empty.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.emplace.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.erase.iter.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.erase.iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_rvalue.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_size_value.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.modifiers/debug.insert.iter_value.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.ops/debug.splice.pos_list.pass.cpp
    M libcxx/test/libcxx/containers/sequences/list/list.ops/debug.splice.pos_list_iter.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector.bool/trivial_for_purposes_of_call.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/asan.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/asan_throw.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/asan_turning_off.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/assert.pop_back.empty.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/erase.modules.compile.pass.mm
    M libcxx/test/libcxx/containers/sequences/vector/exception_safety_exceptions_disabled.pass.cpp
    M libcxx/test/libcxx/containers/sequences/vector/invalid_allocator.verify.cpp
    M libcxx/test/libcxx/containers/sequences/vector/robust_against_adl.pass.cpp
    M libcxx/test/libcxx/containers/unord/key_value_traits.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_pow2.pass.cpp
    M libcxx/test/libcxx/containers/unord/next_prime.pass.cpp
    M libcxx/test/libcxx/containers/unord/non_const_comparator.incomplete.verify.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/assert.bucket.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/assert.bucket_size.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/assert.max_load_factor.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/at.abort.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/at.const.abort.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/debug.insert.hint_const_lvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/debug.insert.hint_rvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/debug.swap.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/debug.erase.iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.map/unord.map.modifiers/debug.erase.iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/assert.bucket_size.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/assert.max_load_factor.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/debug.insert.hint_const_lvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/debug.insert.hint_rvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/debug.swap.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/debug.erase.iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multimap/unord.multimap.modifiers/debug.erase.iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/assert.bucket_size.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/assert.max_load_factor.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/debug.erase.iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/debug.erase.iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/debug.insert.hint_const_lvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.multiset/debug.swap.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/assert.bucket.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/assert.bucket_size.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/assert.max_load_factor.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/debug.erase.iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/debug.erase.iter_iter.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/debug.insert.hint_const_lvalue.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/debug.swap.pass.cpp
    M libcxx/test/libcxx/containers/unord/unord.set/missing_hash_specialization.verify.cpp
    M libcxx/test/libcxx/containers/views/mdspan/extents/assert.ctor_from_array.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.cons/assert.iter_sent.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.cons/assert.other_span.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.cons/assert.range.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.elem/assert.back.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.elem/assert.front.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.elem/assert.op_idx.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.sub/assert.first.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.sub/assert.last.pass.cpp
    M libcxx/test/libcxx/containers/views/views.span/span.sub/assert.subspan.pass.cpp
    M libcxx/test/std/containers/Copyable.h
    M libcxx/test/std/containers/Emplaceable.h
    M libcxx/test/std/containers/NotConstructible.h
    M libcxx/test/std/containers/associative/from_range_associative_containers.h
    M libcxx/test/std/containers/associative/iterator_types.pass.cpp
    M libcxx/test/std/containers/associative/map/PR28469_undefined_behavior_segfault.sh.cpp
    M libcxx/test/std/containers/associative/map/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/associative/map/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/map/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/map/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/at.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/empty.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/empty.verify.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_rv_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/index_tuple.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/max_size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.access/size.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct.verify.cpp
    M libcxx/test/std/containers/associative/map/map.cons/deduct_const.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/iter_iter_comp_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_and_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/associative/map/map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/associative/map/map.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/key_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.observers/value_comp.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count1.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count2.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count3.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range1.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range2.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range3.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find1.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find2.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/find3.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound1.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound2.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/lower_bound3.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound0.pass.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound1.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound2.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.ops/upper_bound3.compile.fail.cpp
    M libcxx/test/std/containers/associative/map/map.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/map/map.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/map/map.value_compare/invoke.pass.cpp
    M libcxx/test/std/containers/associative/map/map.value_compare/types.pass.cpp
    M libcxx/test/std/containers/associative/map/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/map/types.pass.cpp
    M libcxx/test/std/containers/associative/multimap/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/associative/multimap/empty.pass.cpp
    M libcxx/test/std/containers/associative/multimap/empty.verify.cpp
    M libcxx/test/std/containers/associative/multimap/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/multimap/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/multimap/iterator.pass.cpp
    M libcxx/test/std/containers/associative/multimap/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/multimap/max_size.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/deduct.verify.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/deduct_const.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/iter_iter_comp_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.observers/key_comp.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.observers/value_comp.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count0.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count1.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count2.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count3.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range0.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range1.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range2.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range3.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/find.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/find0.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/find1.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/find2.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/find3.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/lower_bound0.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/lower_bound1.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/lower_bound2.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/lower_bound3.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/upper_bound.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/upper_bound0.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/upper_bound1.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/upper_bound2.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.ops/upper_bound3.compile.fail.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.value_compare/invoke.pass.cpp
    M libcxx/test/std/containers/associative/multimap/multimap.value_compare/types.pass.cpp
    M libcxx/test/std/containers/associative/multimap/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/multimap/scary.pass.cpp
    M libcxx/test/std/containers/associative/multimap/size.pass.cpp
    M libcxx/test/std/containers/associative/multimap/types.pass.cpp
    M libcxx/test/std/containers/associative/multiset/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/associative/multiset/clear.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count.pass.cpp
    M libcxx/test/std/containers/associative/multiset/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace.pass.cpp
    M libcxx/test/std/containers/associative/multiset/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/empty.pass.cpp
    M libcxx/test/std/containers/associative/multiset/empty.verify.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/multiset/find.pass.cpp
    M libcxx/test/std/containers/associative/multiset/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/multiset/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/multiset/iterator.pass.cpp
    M libcxx/test/std/containers/associative/multiset/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/multiset/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/multiset/max_size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/merge.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/deduct.verify.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/multiset/multiset.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/multiset/scary.pass.cpp
    M libcxx/test/std/containers/associative/multiset/size.pass.cpp
    M libcxx/test/std/containers/associative/multiset/types.pass.cpp
    M libcxx/test/std/containers/associative/multiset/upper_bound.pass.cpp
    M libcxx/test/std/containers/associative/set/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/associative/set/clear.pass.cpp
    M libcxx/test/std/containers/associative/set/contains.pass.cpp
    M libcxx/test/std/containers/associative/set/contains_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/count.pass.cpp
    M libcxx/test/std/containers/associative/set/count_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace.pass.cpp
    M libcxx/test/std/containers/associative/set/emplace_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/empty.pass.cpp
    M libcxx/test/std/containers/associative/set/empty.verify.cpp
    M libcxx/test/std/containers/associative/set/equal_range.pass.cpp
    M libcxx/test/std/containers/associative/set/equal_range_transparent.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/erase_key.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/extract_key.pass.cpp
    M libcxx/test/std/containers/associative/set/find.pass.cpp
    M libcxx/test/std/containers/associative/set/get_allocator.pass.cpp
    M libcxx/test/std/containers/associative/set/incomplete_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_and_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_cv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_iter_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/associative/set/insert_rv.pass.cpp
    M libcxx/test/std/containers/associative/set/iterator.pass.cpp
    M libcxx/test/std/containers/associative/set/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/set/lower_bound.pass.cpp
    M libcxx/test/std/containers/associative/set/max_size.pass.cpp
    M libcxx/test/std/containers/associative/set/merge.pass.cpp
    M libcxx/test/std/containers/associative/set/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/copy_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/deduct.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/deduct.verify.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/from_range.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/initializer_list_compare_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/associative/set/set.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/set.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/associative/set/set.nonmember/op_compare.pass.cpp
    M libcxx/test/std/containers/associative/set/set.observers/comp.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/non_member_swap.pass.cpp
    M libcxx/test/std/containers/associative/set/set.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/associative/set/size.pass.cpp
    M libcxx/test/std/containers/associative/set/types.pass.cpp
    M libcxx/test/std/containers/associative/set/upper_bound.pass.cpp
    M libcxx/test/std/containers/check_consecutive.h
    M libcxx/test/std/containers/container.adaptors/flat.map.syn/sorted_unique.pass.cpp
    M libcxx/test/std/containers/container.adaptors/from_range_container_adaptors.h
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_cont_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_comp_rcont_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_copy_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_iter_iter_comp_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_iter_iter_comp_cont_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_iter_iter_comp_rcont_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons.alloc/ctor_move_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/assign_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/assign_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp_container.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_comp_rcontainer.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_default.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_iter_constraint.compile.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_cont.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_iter_iter_comp_rcont.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/ctor_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/deduct.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/deduct.verify.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/from_range.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/move_assign_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/emplace.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/empty.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/empty.verify.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/pop.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/push.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/push_range.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/push_rvalue.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/size.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.members/top.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.special/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/priqueue.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/types.compile.fail.cpp
    M libcxx/test/std/containers/container.adaptors/priority.queue/types.pass.cpp
    M libcxx/test/std/containers/container.adaptors/push_range_container_adaptors.h
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_container_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_queue_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_rcontainer_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons.alloc/ctor_rqueue_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_container.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_default.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_iterators.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/ctor_rcontainer.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/deduct.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/deduct.verify.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/move_assign_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/assign_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/assign_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/back.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/back_const.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/emplace.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/empty.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/empty.verify.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/front.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/front_const.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/pop.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/push.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/push_rv.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/size.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/types.compile.fail.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.defn/types.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.ops/eq.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.ops/lt.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.special/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/queue/queue.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_container_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_copy_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_rcontainer_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons.alloc/ctor_rqueue_alloc.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_container.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_default.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_iterators.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/ctor_rcontainer.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/deduct.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/deduct.verify.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/move_assign_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/assign_copy.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/assign_move.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/emplace.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/empty.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/empty.verify.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/pop.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/push.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/push_rv.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/size.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/top.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/top_const.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/types.compile.fail.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.defn/types.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.ops/eq.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.ops/lt.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.special/swap.pass.cpp
    M libcxx/test/std/containers/container.adaptors/stack/stack.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/container.node/node_handle.nodiscard.verify.cpp
    M libcxx/test/std/containers/container.node/node_handle.pass.cpp
    M libcxx/test/std/containers/container.requirements/associative.reqmts/associative.reqmts.except/nothing_to_do.pass.cpp
    M libcxx/test/std/containers/container.requirements/container.requirements.dataraces/nothing_to_do.pass.cpp
    M libcxx/test/std/containers/container.requirements/container.requirements.general/allocator_move.pass.cpp
    M libcxx/test/std/containers/container.requirements/sequence.reqmts/nothing_to_do.pass.cpp
    M libcxx/test/std/containers/container.requirements/unord.req/unord.req.except/nothing_to_do.pass.cpp
    M libcxx/test/std/containers/containers.general/nothing_to_do.pass.cpp
    M libcxx/test/std/containers/exception_safety_helpers.h
    M libcxx/test/std/containers/from_range_helpers.h
    M libcxx/test/std/containers/insert_range_helpers.h
    M libcxx/test/std/containers/insert_range_maps_sets.h
    M libcxx/test/std/containers/iterator.rel_ops.compile.pass.cpp
    M libcxx/test/std/containers/map_allocator_requirement_test_templates.h
    M libcxx/test/std/containers/sequences/array/aggregate.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.cons/deduct.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.cons/deduct.verify.cpp
    M libcxx/test/std/containers/sequences/array/array.cons/implicit_copy.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.cons/initialization.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.creation/to_array.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.data/data.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.data/data_const.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.fill/fill.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.size/size.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.special/swap.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.swap/swap.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.swap/swap.verify.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/get.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/get.verify.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/get_const.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/get_const_rv.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/get_rv.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/tuple_element.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.tuple/tuple_size.pass.cpp
    M libcxx/test/std/containers/sequences/array/array.zero/tested_elsewhere.pass.cpp
    M libcxx/test/std/containers/sequences/array/at.pass.cpp
    M libcxx/test/std/containers/sequences/array/at_const.pass.cpp
    M libcxx/test/std/containers/sequences/array/contiguous.pass.cpp
    M libcxx/test/std/containers/sequences/array/empty.pass.cpp
    M libcxx/test/std/containers/sequences/array/empty.verify.cpp
    M libcxx/test/std/containers/sequences/array/front_back.pass.cpp
    M libcxx/test/std/containers/sequences/array/front_back_const.pass.cpp
    M libcxx/test/std/containers/sequences/array/indexing.pass.cpp
    M libcxx/test/std/containers/sequences/array/indexing_const.pass.cpp
    M libcxx/test/std/containers/sequences/array/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/array/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/array/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/array/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/array/types.pass.cpp
    M libcxx/test/std/containers/sequences/deque/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/sequences/deque/compare.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/access.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/empty.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/empty.verify.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/resize_size.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/resize_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/shrink_to_fit.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.capacity/size.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/assign_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/assign_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/copy.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/deduct.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/deduct.verify.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/default.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/initializer_list_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move_assign.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/op_equal.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/op_equal_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/size.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/size_value.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.cons/size_value_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.erasure/erase.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/emplace_back.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/emplace_front.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/erase_iter.invalidation.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/erase_iter_iter.invalidation.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/insert_iter_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/insert_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/insert_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/insert_value.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/pop_back.invalidation.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/pop_back.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/pop_front.invalidation.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/pop_front.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_back.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_back_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_back_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_front.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_front_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/push_front_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/copy.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/copy_backward.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/move.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/move_backward.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/swap.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/deque/get_allocator.pass.cpp
    M libcxx/test/std/containers/sequences/deque/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/deque/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/deque/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/deque/types.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/sequences/forwardlist/empty.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/empty.verify.cpp
    M libcxx/test/std/containers/sequences/forwardlist/exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.access/front.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.compile.fail.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_init.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_move.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_op_init.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_range.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/assign_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/deduct.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/deduct.verify.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/default_recursive.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/init_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/range_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.cons/size_value_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/before_begin.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.iter/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_after.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/emplace_front.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_many.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/erase_after_one.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_const.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_init.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_range.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_rv.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_after_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/insert_range_after.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/pop_front.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_const.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/push_front_rv.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/resize_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/merge_rvalue_pred.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/remove_if.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/reverse.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/sort.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/sort_pred.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_flist.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_one.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/splice_after_range.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.ops/unique_pred.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/equal.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/member_swap.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/non_member_swap.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/relational.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.spec/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/get_allocator.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/incomplete.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/types.pass.cpp
    M libcxx/test/std/containers/sequences/from_range_sequence_containers.h
    M libcxx/test/std/containers/sequences/insert_range_sequence_containers.h
    M libcxx/test/std/containers/sequences/list/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/sequences/list/compare.pass.cpp
    M libcxx/test/std/containers/sequences/list/exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/list/get_allocator.pass.cpp
    M libcxx/test/std/containers/sequences/list/incomplete_type.pass.cpp
    M libcxx/test/std/containers/sequences/list/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/list/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/empty.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/empty.verify.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/max_size.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/resize_size.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/resize_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.capacity/size.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/assign_move.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/copy.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/deduct.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/deduct.verify.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/default.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/default_stack_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/dtor.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/from_range.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/initializer_list_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/input_iterator.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/op_equal_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/size_type.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.cons/size_value_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.erasure/erase.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_back.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/emplace_front.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/insert_iter_value.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/pop_back.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/pop_front.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_back.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_back_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_back_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_front.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_front_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/push_front_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/merge.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/merge_comp.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/remove.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/remove_if.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/reverse.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/sort.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/sort_comp.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/splice_pos_list_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/unique.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.ops/unique_pred.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.special/swap.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.special/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/list/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/list/types.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/append_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_move.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/assign_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/capacity.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/compare.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/const_reference.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_default.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/construct_size_value_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/copy_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/default_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/emplace.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/emplace_back.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/empty.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/empty.verify.cpp
    M libcxx/test/std/containers/sequences/vector.bool/enabled_hash.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/erase_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/erase_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/find.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/get_allocator.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/initializer_list_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/insert_iter_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/insert_iter_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/insert_iter_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/insert_iter_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/insert_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move_assign_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/move_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/op_equal_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/push_back.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference.swap.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference/assign_bool.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference/ctor_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference/flip.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reference/operator_bool.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/reserve.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/resize_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/resize_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/size.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/swap.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/types.pass.cpp
    M libcxx/test/std/containers/sequences/vector.bool/vector_bool.pass.cpp
    M libcxx/test/std/containers/sequences/vector/access.pass.cpp
    M libcxx/test/std/containers/sequences/vector/addressof.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/sequences/vector/compare.pass.cpp
    M libcxx/test/std/containers/sequences/vector/contiguous.pass.cpp
    M libcxx/test/std/containers/sequences/vector/get_allocator.pass.cpp
    M libcxx/test/std/containers/sequences/vector/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector/iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/sequences/vector/reverse_iterators.pass.cpp
    M libcxx/test/std/containers/sequences/vector/types.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/capacity.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/empty.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/empty.verify.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/resize_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/resize_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.capacity/swap.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_move.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/assign_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_default.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_iter_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_iter_iter_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_size.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/construct_size_value_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/copy.move_only.verify.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/copy.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/copy_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/deduct.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/default.recursive.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/default_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/initializer_list_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move_alloc.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move_assign_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/move_noexcept.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.cons/op_equal_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.data/data.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.data/data_const.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.erasure/erase.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.erasure/erase_if.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/append_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/assign_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_back.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/emplace_extra.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/erase_iter.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/insert_iter_initializer_list.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/insert_iter_lvalue.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/insert_iter_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/insert_iter_size_value.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/pop_back.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/push_back.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/push_back_exception_safety.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/push_back_rvalue.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/resize_not_move_insertable.verify.cpp
    M libcxx/test/std/containers/sequences/vector/vector.special/swap.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.special/swap_noexcept.compile.pass.cpp
    M libcxx/test/std/containers/set_allocator_requirement_test_templates.h
    M libcxx/test/std/containers/test_compare.h
    M libcxx/test/std/containers/test_hash.h
    M libcxx/test/std/containers/unord/from_range_unordered_containers.h
    M libcxx/test/std/containers/unord/iterator_difference_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/unord/unord.map/bucket.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/bucket_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/compare.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/contains.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/contains.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/count.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/count.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/empty.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/empty.verify.cpp
    M libcxx/test/std/containers/unord/unord.map/eq.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/equal_range.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/equal_range_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/equal_range_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/erase_if.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/find.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/find_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/find_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/get_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/incomplete_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/iterator.operators.addressof.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/local_iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/max_bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/max_load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/max_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/rehash.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/reserve.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/swap_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/types.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/assign_copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/assign_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/assign_move.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/copy_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/deduct.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/deduct.verify.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/deduct_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/default.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/default_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/from_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/hash_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/init_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/iter_iter_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move_alloc.addressof.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/move_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.cnstr/size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.elem/at.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.elem/index.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.elem/index_tuple.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_const_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/erase_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_and_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_hint_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_or_assign.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/insert_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.modifiers/try.emplace.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.swap/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.map/unord.map.swap/swap_non_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/unord/unord.multimap/bucket.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/bucket_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/contains.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/count.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/empty.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/empty.verify.cpp
    M libcxx/test/std/containers/unord/unord.multimap/eq.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/equal_range.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/equal_range_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/equal_range_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/erase_if.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/find.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/find_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/find_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/get_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/incomplete.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multimap/iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/local_iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multimap/local_iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/max_bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/max_load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/max_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/rehash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/reserve.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/scary.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/swap_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/types.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/assign_copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/assign_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/assign_move.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/copy_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/deduct.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/deduct.verify.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/deduct_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/default.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/default_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/from_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/hash_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/init_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/iter_iter_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.addressof.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/move_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.cnstr/size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/clear.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/emplace.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/emplace_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_const_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/erase_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/extract_iterator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/extract_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_hint_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/insert_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.modifiers/merge.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multimap/unord.multimap.swap/swap_non_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/unord/unord.multiset/bucket.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/bucket_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/clear.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/contains.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/count.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/emplace.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/emplace_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/empty.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/empty.verify.cpp
    M libcxx/test/std/containers/unord/unord.multiset/eq.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/equal_range.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/equal_range_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/equal_range_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/erase_const_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/erase_if.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/erase_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/erase_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/extract_iterator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/extract_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/find.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/find_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/find_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/get_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/incomplete.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_hint_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_hint_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/insert_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multiset/iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/local_iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multiset/local_iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/max_bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/max_load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/max_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/merge.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/rehash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/reserve.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/scary.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/swap_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/types.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/assign_copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/assign_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/assign_move.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/copy_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/deduct.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/deduct.verify.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/default.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/default_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/from_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/hash_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/init_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/iter_iter_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/move_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.cnstr/size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.multiset/unord.multiset.swap/swap_non_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/allocator_mismatch.verify.cpp
    M libcxx/test/std/containers/unord/unord.set/bucket.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/bucket_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/clear.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/contains.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/contains.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/count.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/count.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/emplace.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/emplace_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/empty.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/empty.verify.cpp
    M libcxx/test/std/containers/unord/unord.set/eq.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/equal_range.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/equal_range_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/equal_range_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/erase_const_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/erase_if.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/erase_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/erase_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/extract_iterator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/extract_key.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/find.transparent.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/find_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/find_non_const.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/get_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/incomplete.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_and_emplace_allocator_requirements.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_hint_const_lvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_hint_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_node_type.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_node_type_hint.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/insert_rvalue.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/iterator.operators.addressof.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.set/iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/local_iterators.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.set/local_iterators.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/max_bucket_count.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/max_load_factor.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/max_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/merge.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/rehash.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/reserve.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/swap_member.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/types.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/assign_copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/assign_init.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/assign_move.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/compare_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/copy.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/copy_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/deduct.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/deduct.verify.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/default.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/default_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/dtor_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/from_range.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/hash_copy_constructible.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/init_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/iter_iter_size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move_alloc.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/move_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size.compile.fail.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size_hash.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size_hash_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size_hash_equal.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.cnstr/size_hash_equal_allocator.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.swap/swap_noexcept.pass.cpp
    M libcxx/test/std/containers/unord/unord.set/unord.set.swap/swap_non_member.pass.cpp
    M libcxx/test/std/containers/views/mdspan/ConvertibleToIntegral.h
    M libcxx/test/std/containers/views/mdspan/MinimalElementType.h
    M libcxx/test/std/containers/views/mdspan/default_accessor/access.pass.cpp
    M libcxx/test/std/containers/views/mdspan/default_accessor/ctor.conversion.pass.cpp
    M libcxx/test/std/containers/views/mdspan/default_accessor/element_type.verify.cpp
    M libcxx/test/std/containers/views/mdspan/default_accessor/offset.pass.cpp
    M libcxx/test/std/containers/views/mdspan/default_accessor/types.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_left/index_operator.pass.cpp
    M libcxx/test/std/containers/views/mdspan/layout_right/index_operator.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/assign.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/conversion.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/conversion.verify.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.copy.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.default.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_array.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/ctor.dh_span.pass.cpp
    M libcxx/test/std/containers/views/mdspan/mdspan/types.pass.cpp
    M libcxx/test/std/containers/views/views.span/range_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/array.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/assign.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/deduct.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/default.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/iterator_len.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/iterator_sentinel.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/range.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/span.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.cons/stdarray.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.elem/back.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.elem/data.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.elem/front.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.elem/op_idx.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.iterators/begin.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.iterators/end.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.iterators/iterator_concept_conformance.compile.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.iterators/rbegin.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.iterators/rend.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_bytes.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.objectrep/as_writable_bytes.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.obs/empty.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.obs/size.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.obs/size_bytes.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/first.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/first.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/last.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/last.verify.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/subspan.pass.cpp
    M libcxx/test/std/containers/views/views.span/span.sub/subspan.verify.cpp
    M libcxx/test/std/containers/views/views.span/types.pass.cpp

  Log Message:
  -----------
  [libc++][NFC] Run the container tests through clang-format (#126499)

We've been improving these the tests for vector quite a bit and we are
probably not done improving our container tests. Formatting everything
at once will make subsequent reviews easier.


  Commit: 1a0de96c95feaffb3c05159305edce8c7c47057f
      https://github.com/llvm/llvm-project/commit/1a0de96c95feaffb3c05159305edce8c7c47057f
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
    M clang/test/AST/HLSL/cbuffer.hlsl
    M clang/test/AST/HLSL/cbuffer_and_namespaces.hlsl
    M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl

  Log Message:
  -----------
  [HLSL] Constant buffer layout struct update (#124840)

Updates layout struct to be `struct` with public fields instead of
`class` with private fields and chang the name prefix to `__cblayout_`.
Also adds Packed attribute to prevent struct padding and filters
additional types from the layout that were missed previously (arrays of
resources and groupshared declarations).


  Commit: 3293bff5d2672f21655a9840b39b7c8512fc17ee
      https://github.com/llvm/llvm-project/commit/3293bff5d2672f21655a9840b39b7c8512fc17ee
  Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.cpp
    A llvm/lib/Target/AMDGPU/GCNPreRAOptimizations.h
    M llvm/test/CodeGen/AMDGPU/agpr-to-agpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/combine-sreg64-inits.mir

  Log Message:
  -----------
  [AMDGPU][NewPM] Port "GCNPreRAOptimizations" pass to NPM (#126040)


  Commit: 9d134f26ea83cd53e7b38220c2b95d6f20ba3221
      https://github.com/llvm/llvm-project/commit/9d134f26ea83cd53e7b38220c2b95d6f20ba3221
  Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [LLVM][CMake][MSVC] Install PDBs alongside executables (#120683)

* When building on Windows hosts, PDBs aren't installed to the
`CMAKE_INSTALL_PREFIX`.

* This PR addresses it solely for `llvm-*` executables. 
* Similar changes are required in `AddClang.cmake`, `AddLLD.cmake`, etc.
I'd be happy to queue those PRs after this one.


  Commit: 27c034a9c69a659a2c1fa645f5cf1b50ecf61834
      https://github.com/llvm/llvm-project/commit/27c034a9c69a659a2c1fa645f5cf1b50ecf61834
  Author: Sudharsan Veeravalli <quic_svs at quicinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Hexagon/AsmParser/HexagonAsmParser.cpp
    M llvm/lib/Target/Hexagon/HexagonBitSimplify.cpp
    M llvm/lib/Target/Hexagon/HexagonConstExtenders.cpp
    M llvm/lib/Target/Hexagon/HexagonConstPropagation.cpp
    M llvm/lib/Target/Hexagon/HexagonCopyToCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonExpandCondsets.cpp
    M llvm/lib/Target/Hexagon/HexagonHardwareLoops.cpp
    M llvm/lib/Target/Hexagon/HexagonISelDAGToDAGHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonLoopAlign.cpp
    M llvm/lib/Target/Hexagon/HexagonNewValueJump.cpp
    M llvm/lib/Target/Hexagon/HexagonOptAddrMode.cpp
    M llvm/lib/Target/Hexagon/HexagonPeephole.cpp
    M llvm/lib/Target/Hexagon/HexagonPseudo.td
    M llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
    M llvm/lib/Target/Hexagon/HexagonTfrCleanup.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.cpp
    M llvm/lib/Target/Hexagon/HexagonVLIWPacketizer.h
    M llvm/lib/Target/Hexagon/HexagonVectorCombine.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.cpp
    M llvm/lib/Target/Hexagon/HexagonVectorLoopCarriedReuse.h
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCCompound.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCInstrInfo.cpp
    M llvm/lib/Target/Hexagon/MCTargetDesc/HexagonMCTargetDesc.cpp

  Log Message:
  -----------
  [Hexagon] Fix typos discovered by codespell (NFC) (#126233)

Found using https://github.com/codespell-project/codespell

```
codespell Hexagon --write-changes \
     --ignore-words-list=CarryIn,CreateOr,ORE,COPYs,ArchVer,predicable,UE,MIs,isNT,Vor,CountR,DUM,GEs,AddD,ToI, \
     CopyIn,TheI,TotalIn,vor,MOne,contigious,Contigious 
```


  Commit: 170b9caf335eb99cdecba0fb6cdf45728bcac11d
      https://github.com/llvm/llvm-project/commit/170b9caf335eb99cdecba0fb6cdf45728bcac11d
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaAVR.cpp
    M clang/lib/Sema/SemaMIPS.cpp
    M clang/lib/Sema/SemaMSP430.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    A clang/test/Sema/avr-interript-signal-attr.c
    R clang/test/Sema/avr-interrupt-attr.c
    R clang/test/Sema/avr-signal-attr.c

  Log Message:
  -----------
  [clang][Sema] Emit warnings about incorrect AVR interrupt/signal handlers (#125997)

1. interrupt/signal handlers can not have parameters
2. interrupt/signal handlers must be 'void' type


  Commit: 569e94f8f1c3e6998860e2b2ff577870433bdac9
      https://github.com/llvm/llvm-project/commit/569e94f8f1c3e6998860e2b2ff577870433bdac9
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    A clang/test/Modules/pr126373.cppm

  Log Message:
  -----------
  [C++20] [Modules] Don't diagnose duplicated declarations in different modules which is not in file scope

Close https://github.com/llvm/llvm-project/issues/126373

Although the root problems should be we shouldn't place the friend
declaration to the incorrect module, let's avoid bleeding the edge by
stoping diagnosing declarations not in file scope.


  Commit: 1d6b31f7705541a9fb7d79bebe2cdbc3de7d9fb6
      https://github.com/llvm/llvm-project/commit/1d6b31f7705541a9fb7d79bebe2cdbc3de7d9fb6
  Author: Amir Bishara <139038766+amirBish at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/test/Interfaces/TilingInterface/tile-and-fuse-consumer.mlir

  Log Message:
  -----------
  [mlir]linalg][NFC]-Add lit test for tile and fuse transformation (#126216)

Add coverage for the fuse consumer transform for
`linalg.generic` operation with projected permutation indexing maps.


  Commit: 0d8d354b0c2e9b11605290af3323ac63652e1abd
      https://github.com/llvm/llvm-project/commit/0d8d354b0c2e9b11605290af3323ac63652e1abd
  Author: YunQiang Su <syq at debian.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Mips/MipsISelLowering.cpp
    M llvm/lib/Target/Mips/MipsISelLowering.h
    R llvm/test/CodeGen/Mips/readcyclecounter.ll

  Log Message:
  -----------
  Revert "[Mips] Support llvm.readcyclecounter intrinsic (#114953)"

This reverts commit 9cc7ee16e3bb849fb3c0155a843bfe349a2d2175.


  Commit: be354cf3818222a114a098ed3637a67f8004b21f
      https://github.com/llvm/llvm-project/commit/be354cf3818222a114a098ed3637a67f8004b21f
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir][transforms] Process RegionBranchOp with empty region  (#123895)

This PR adds process for RegionBranchOp with empty region, such as
'else' region of `scf.if`. Fixes #123246.


  Commit: 90192e8872cc90b4d292b180a49babf72d17e579
      https://github.com/llvm/llvm-project/commit/90192e8872cc90b4d292b180a49babf72d17e579
  Author: higher-performance <higher.performance.github at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/Sema/SemaInit.cpp
    M clang/test/SemaCXX/uninitialized.cpp

  Log Message:
  -----------
  Fix false positive of [[clang::require_explicit_initialization]] on copy/move constructors (#126553)

Fixes #126490


  Commit: 2cd8207b26ea4269630feba661f68554d7ae3c15
      https://github.com/llvm/llvm-project/commit/2cd8207b26ea4269630feba661f68554d7ae3c15
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M compiler-rt/lib/builtins/cpu_model/riscv.c

  Log Message:
  -----------
  [RISCV][compiler-rt] drop __riscv_vendor_feature_bits (#126460)

Address https://github.com/riscv-non-isa/riscv-c-api-doc/pull/101


  Commit: dfbd764a551bf1a0c72bd3e76ac86297221448c0
      https://github.com/llvm/llvm-project/commit/dfbd764a551bf1a0c72bd3e76ac86297221448c0
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/test/AST/ByteCode/builtin-functions.cpp

  Log Message:
  -----------
  [clang][bytecode][NFC] Add failing memmove testcase (#126682)

Reduced from
libcxx/test/std/strings/char.traits/char.traits.specializations/char.traits.specializations.char32_t/move.pass.cpp


  Commit: 7af4ab4f072ee6de9d347f9955683d4a49645f1c
      https://github.com/llvm/llvm-project/commit/7af4ab4f072ee6de9d347f9955683d4a49645f1c
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-10 (Mon, 10 Feb 2025)

  Changed paths:
    M libc/src/complex/generic/CMakeLists.txt
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/stdfix/CMakeLists.txt

  Log Message:
  -----------
  [libc] Don't manually override the optimization level for math (#126322)

This was originally done for testing purposes, but after #126315 we now
do testing through GitHub Actions and should be instead using the
optimization setting chosen by the user.


  Commit: a0587414cbb1520cfd7e886de1d18c408539ac9f
      https://github.com/llvm/llvm-project/commit/a0587414cbb1520cfd7e886de1d18c408539ac9f
  Author: Rainer Orth <ro at gcc.gnu.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp

  Log Message:
  -----------
  [sanitizer_common][test] Remove second SanitizerCommon.ReportFile tem… (#126509)

…p file

The `SanitizerCommon.ReportFile` test leaves a temp file behind on every
run. While this is not a problem for manual builds, on buildbots those
files accumulate over time, interfering with other bots on the same
system.

The files in question are named like
`sanitizer_common.reportfile.tmp.XXXXXX.<pid>`. The issue can be seen in
Solaris `truss` output:
```
22633:	fstatat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0xFEFFBAD0, AT_SYMLINK_NOFOLLOW) Err#2 ENOENT
22633:	openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", O_RDWR|O_CREAT|O_EXCL, 0600) = 3
22633:	openat64(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja.22633", O_WRONLY|O_CREAT|O_TRUNC, 0660) = 4
22633:	unlinkat(AT_FDCWD, "/tmp/sanitizer_common.reportfile.tmp.rzVEja", 0) = 0
```
The first temp file, created by `temp_file_name`, is removed at the end
of the test, the second one, created in `ReportFile::GetReportPath`
using `OpenFile`, is not.

This patch fixes this, simply removing the file.

Tested on `amd64-pc-solaris2.11` and `x86_64-pc-linux-gnu`.


  Commit: d78b5ceb1661c5953563bf860f93b65f85fc4be0
      https://github.com/llvm/llvm-project/commit/d78b5ceb1661c5953563bf860f93b65f85fc4be0
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

  Log Message:
  -----------
  [clang][HeuristicResolver] Additional hardening against an infinite loop in simplifyType() (#126690)


  Commit: 99e1308c41b24e2422324d68be28e5370196e5d6
      https://github.com/llvm/llvm-project/commit/99e1308c41b24e2422324d68be28e5370196e5d6
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/IR/InstrTypes.h
    M mlir/include/mlir/Target/LLVMIR/ModuleImport.h
    M mlir/include/mlir/Target/LLVMIR/ModuleTranslation.h
    M mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/LLVMIR/LLVMToLLVMIRTranslation.cpp
    M mlir/lib/Target/LLVMIR/ModuleImport.cpp
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Dialect/LLVMIR/invalid.mlir
    M mlir/test/Dialect/LLVMIR/roundtrip.mlir
    A mlir/test/Target/LLVMIR/Import/call-argument-attributes.ll
    A mlir/test/Target/LLVMIR/Import/invoke-argument-attributes.ll
    A mlir/test/Target/LLVMIR/call-argument-attributes.mlir
    A mlir/test/Target/LLVMIR/invoke-argument-attributes.mlir

  Log Message:
  -----------
  [mlir][LLVM] handle argument and result attributes in llvm.call and llvm.invoke (#123177)

Update llvm.call/llvm.invoke pretty printer/parser and the llvm ir import/export
to deal with the argument and result attributes.

This patch is made on top of PR 123176 that modified the
CallOpInterface and added the argument and result attributes to
llvm.call and llvm.invoke without doing anything with them.

RFC: https://discourse.llvm.org/t/mlir-rfc-adding-argument-and-result-attributes-to-llvm-call/84107


  Commit: 6a961dc03d802fb1f34b2b0cd8d09f427382dbdb
      https://github.com/llvm/llvm-project/commit/6a961dc03d802fb1f34b2b0cd8d09f427382dbdb
  Author: Abhilash Majumder <30946547+abhilash1910 at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/prefetch.ll

  Log Message:
  -----------
  [NVPTX] Add intrinsics for prefetch.* (#125887)

\[NVPTX\] Add Prefetch intrinsics

This PR adds prefetch intrinsics with the relevant eviction priorities.
* Lit tests are added as part of prefetch.ll
* The generated PTX is verified with a 12.3 ptxas executable.
* Added docs for these intrinsics in NVPTXUsage.rst.

For more information, refer PTX ISA
`<https://docs.nvidia.com/cuda/parallel-thread-execution/#data-movement-and-conversion-instructions-prefetch-prefetchu>`_.

---------

Co-authored-by: abmajumder <abmajumder at nvidia.com>


  Commit: 701223ac20a45d23b9b01c8a514294eb16219d79
      https://github.com/llvm/llvm-project/commit/701223ac20a45d23b9b01c8a514294eb16219d79
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/include/llvm/IR/RuntimeLibcalls.def
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGDumper.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    A llvm/test/CodeGen/AArch64/llvm.sincospi.ll
    A llvm/test/CodeGen/AArch64/veclib-llvm.sincospi.ll

  Log Message:
  -----------
  [IR] Add llvm.sincospi intrinsic (#125873)

This adds the `llvm.sincospi` intrinsic, legalization, and lowering
(mostly reusing the lowering for sincos and frexp).

The `llvm.sincospi` intrinsic takes a floating-point value and returns
both the sine and cosine of the value multiplied by pi. It computes the
result more accurately than the naive approach of doing the
multiplication ahead of time, especially for large input values.

```
declare { float, float }          @llvm.sincospi.f32(float  %Val)
declare { double, double }        @llvm.sincospi.f64(double %Val)
declare { x86_fp80, x86_fp80 }    @llvm.sincospi.f80(x86_fp80  %Val)
declare { fp128, fp128 }          @llvm.sincospi.f128(fp128 %Val)
declare { ppc_fp128, ppc_fp128 }  @llvm.sincospi.ppcf128(ppc_fp128  %Val)
declare { <4 x float>, <4 x float> } @llvm.sincospi.v4f32(<4 x float>  %Val)
```

Currently, the default lowering of this intrinsic relies on the
`sincospi[f|l]` functions being available in the target's runtime (e.g.
libc).


  Commit: 67f59a642f96cdb0b73b991b96b5ca05b988e50d
      https://github.com/llvm/llvm-project/commit/67f59a642f96cdb0b73b991b96b5ca05b988e50d
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUAttrs.td
    M mlir/include/mlir/Dialect/XeGPU/IR/XeGPUTypes.td
    M mlir/lib/Dialect/XeGPU/IR/XeGPUDialect.cpp
    M mlir/lib/Dialect/XeGPU/IR/XeGPUOps.cpp
    M mlir/test/Dialect/XeGPU/XeGPUOps.mlir
    M mlir/test/Dialect/XeGPU/invalid.mlir

  Log Message:
  -----------
  [mlir][xegpu] Improve scatter attribute definition (#126540)

Refactors XeGPU scatter attribute introducing following:
  - improved docs formatting
  - default initialized parameters
  - invariant checks in attribute verifier
  - removal of additional parsing error
 
The attribute's getters now provide default values simplifying their
usage and scattered tensor descriptor handling.
Related descriptor verifier is updated to avoid check duplication.


  Commit: dd369c771e215ebf7bf2d09e874643788e49d334
      https://github.com/llvm/llvm-project/commit/dd369c771e215ebf7bf2d09e874643788e49d334
  Author: Victor Campos <victor.campos at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c
    M compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c
    M compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c

  Log Message:
  -----------
  [compiler-rt] Fix tests of __aeabi_(idivmod|uidivmod|uldivmod) to support big endian (#126277)

This patch makes these functions' tests work in big endian mode:
 - `__aeabi_idivmod`.
 - `__aeabi_uidivmod`.
 -  `__aeabi_uldivmod`.

The three functions return a struct containing two fields, quotient and
remainder, via *value in regs* calling convention. They differ in the
integer type of each field.

In the tests of the first two, a 64-bit integer is used as the return
type of the call. And as consequence of the ABI rules for structs
(Composite Types), the quotient resides in `r0` and the remainder in
`r1` regardless of endianness. So, in order to access each component
from the 64-bit integer in the caller code, care must be taken to access
the correct bits as they do depend on endianness in this case.

In the test of the third one, the caller code has inline assembly to
access the components. This assembly code assumed little endian, so it
had to be made flexible for big endian as well.

`_YUGA_BIG_ENDIAN` is defined in `int_endianness.h`. It's a macro
internal to compiler-rt that's in theory compatible with more toolchains
than gcc and clang.


  Commit: 19fc8e384680eca405b0f1cda9da5f5b2d1f91ab
      https://github.com/llvm/llvm-project/commit/19fc8e384680eca405b0f1cda9da5f5b2d1f91ab
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [GitHub] Correct word in commit access request greeting


  Commit: 9fdb0633051121af24dfa00e8a762df10138ecc3
      https://github.com/llvm/llvm-project/commit/9fdb0633051121af24dfa00e8a762df10138ecc3
  Author: Ben Shi <2283975856 at qq.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h

  Log Message:
  -----------
  [clang][analyzer][NFC] Fix typos in comments (#126676)


  Commit: 06f4fe331727d66187db9672629545755caa24db
      https://github.com/llvm/llvm-project/commit/06f4fe331727d66187db9672629545755caa24db
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M flang/test/Evaluate/rewrite-out_of_range.F90

  Log Message:
  -----------
  [flang][NFC] fix rewrite-out_of_range.F90 tests (#126699)

There was a typo in the target, and REAL(16) parts needed to be
protected too.


  Commit: 1a8d2a40167ea752366fa718a98cafdccce002a5
      https://github.com/llvm/llvm-project/commit/1a8d2a40167ea752366fa718a98cafdccce002a5
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [mlir][tosa] Use generic QuantizedType in Conv verifiers  (#126275)

Replace UniformQuantizedType by the more generic QuantizedType in Conv verifiers.

Change-Id: Ie1961af931864f801914a62976bc988881ee075e

Signed-off-by: Tai Ly <tai.ly at arm.com>
Co-authored-by: Thibaut Goetghebuer-Planchon <thibaut.goetghebuer-planchon at arm.com>


  Commit: 64735ad63975c1126f84dbf7921ce4341dfa2419
      https://github.com/llvm/llvm-project/commit/64735ad63975c1126f84dbf7921ce4341dfa2419
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libclc/CMakeLists.txt
    A libclc/clc/include/clc/common/clc_sign.h
    M libclc/clc/include/clc/math/gentype.inc
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/common/clc_sign.cl
    A libclc/clc/lib/generic/common/clc_sign.inc
    M libclc/generic/include/clc/float/definitions.h
    M libclc/generic/lib/common/sign.cl

  Log Message:
  -----------
  [libclc] Move sign to the CLC builtins library (#115699)

This commit moves the sign builtin's implementation to the CLC library.
It simultaneously optimizes it (for vector types) by removing
control-flow from the implementation.

The __CLC_INTERNAL preprocessor definition has been repurposed (without
the leading underscores) to be passed when building the internal CLC
library. It was only used in one other place to guard an extra maths
preprocessor definition, which we can do unconditionally.


  Commit: a09beae271f209b2038bd503a1347bbf2e802568
      https://github.com/llvm/llvm-project/commit/a09beae271f209b2038bd503a1347bbf2e802568
  Author: Marcos Maronas <marcos.maronas at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.cpp
    M llvm/lib/Target/SPIRV/SPIRVBuiltins.td
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/cl_khr_extended_bit_ops.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/cl_khr_extended_bit_ops_ocl_only.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/cl_khr_extended_bit_ops_spv-friendly_only.ll
    A llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions/spirv-friendly_extended_bit_ops.ll

  Log Message:
  -----------
  [SPIRV] Add support for `cl_khr_extended_bit_ops` (#120571)

This PR adds support for `cl_khr_extended_bit_ops` in SPIRV Backend.
Note that `cl_khr_extended_bit_ops` only supports types in
```
char, charn, uchar, ucharn, short, shortn, ushort, ushortn, int, intn, uint, uintn, long, longn, ulong, and ulongn
```
where `n is 2, 3, 4, 8, or 16`.

Subsequent PRs will introduce support for non-standard bit width
required by `SPV_KHR_bit_instructions`.


  Commit: 19556eccf650e2e273ebe7770cc32bd3a1786fa4
      https://github.com/llvm/llvm-project/commit/19556eccf650e2e273ebe7770cc32bd3a1786fa4
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/RuntimeLibcallUtil.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorOps.cpp
    M llvm/lib/CodeGen/TargetLoweringBase.cpp

  Log Message:
  -----------
  [RTLIB] Rename getFSINCOS() to getSINCOS (NFC) (#126705)

This makes the name more consistent with the other helpers.


  Commit: 8cf4c5576d4b9252301c834239791f70f42d94b8
      https://github.com/llvm/llvm-project/commit/8cf4c5576d4b9252301c834239791f70f42d94b8
  Author: Maya Amrami <62667278+amrami at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/test/Dialect/Bufferization/canonicalize.mlir

  Log Message:
  -----------
  [mlir][bufferization] Canonicalize to_memref(to_tensor(x)) to a CopyO… (#126692)

…p if memory spaces differ


  Commit: 2a5050aa5ef56b01cf4a8f73e0d0eddd6d9ce2a9
      https://github.com/llvm/llvm-project/commit/2a5050aa5ef56b01cf4a8f73e0d0eddd6d9ce2a9
  Author: Zichen Lu <mikaovo2000 at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/lib/Target/LLVM/NVVM/Target.cpp
    M mlir/test/Dialect/GPU/module-to-binary-nvvm.mlir
    M mlir/test/python/dialects/gpu/module-to-binary-nvvm.py

  Log Message:
  -----------
  [mlir][target][nvvm] Perf by stage and store into properties (#126178)

Implement the feature about perf by stage(llvm-ir -> isa, isa->binary).

The results will be stored into the properties, then users can use them
after using GpuModuleToBinary Pass.


  Commit: e258bca9505f35e0a22cb213a305eea9b76d11ea
      https://github.com/llvm/llvm-project/commit/e258bca9505f35e0a22cb213a305eea9b76d11ea
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/ScalarEvolutionExpander.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    A llvm/test/Transforms/LoopVectorize/X86/scev-checks-unprofitable.ll
    M llvm/test/Transforms/LoopVectorize/float-induction.ll

  Log Message:
  -----------
  [VPlan] Only skip expansion for SCEVUnknown if it isn't an instruction. (#125235)

Update getOrCreateVPValueForSCEVExpr to only skip expansion of
SCEVUnknown if the underlying value isn't an instruction. Instructions
may be defined in a loop and using them without expansion may break
LCSSA form. SCEVExpander will take care of preserving LCSSA if needed.

We could also try to pass LoopInfo, but there are some users of the
function where it won't be available and main benefit from skipping
expansion is slightly more concise VPlans.

Note that SCEVExpander is now used to expand SCEVUnknown with floats.
Adjust the check in expandCodeFor to only check the types and casts if
the type of the value is different to the requested type. Otherwise we
crash when trying to expand a float and requesting a float type.

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

PR: https://github.com/llvm/llvm-project/pull/125235


  Commit: 560149b5e3c891c64899e9912e29467a69dc3a4c
      https://github.com/llvm/llvm-project/commit/560149b5e3c891c64899e9912e29467a69dc3a4c
  Author: Michael Flanders <flanders.michaelk at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/test/Analysis/copy-elision.cpp
    M clang/test/Analysis/stack-addr-ps.cpp
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/stackaddrleak.cpp

  Log Message:
  -----------
  [analyzer] Reapply recent stack addr escape checker changes + buildbot fix (#126620)

Reapplying changes from https://github.com/llvm/llvm-project/pull/125638
after buildbot failures.

Buildbot failures fixed in 029e7e98dc9956086adc6c1dfb0c655a273fbee6,
latest commit on this PR. It was a problem with a declared class member
with same name as its type. Sorry!


  Commit: 73913275c414741b6c9789931fbab4470a181b00
      https://github.com/llvm/llvm-project/commit/73913275c414741b6c9789931fbab4470a181b00
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    R clang/test/Analysis/no-outofbounds.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/out-of-bounds.c

  Log Message:
  -----------
  [NFC][analyzer] OOB test consolidation I: no-outofbounds.c (#126539)

Before commit 6e17ed9b04e5523cc910bf171c3122dcc64b86db the test file
`no-outofbounds.c` tested the behavior of the old alpha checker
`alpha.security.ArrayBound` (V1); then that commit converted it into a
test for the checker `security.ArrayBound` which was previously called
`alpha.security.ArrayBoundV2`.

This commit removes this small separate test file and adds some tests to
the "native" test files of `security.ArrayBound` to ensure that the same
functionality is still tested.

This is intended as the first commit in a series that reorganizes the
tests of `security.ArrayBound` to system that's easier to understand and
maintain.


  Commit: 82bd148a3f25439d7f52a32422dc1bcd2da03803
      https://github.com/llvm/llvm-project/commit/82bd148a3f25439d7f52a32422dc1bcd2da03803
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M flang/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M mlir/cmake/modules/MLIRConfig.cmake.in

  Log Message:
  -----------
  [mlir][cmake] Do not export MLIR_MAIN_SRC_DIR and MLIR_INCLUDE_DIR (#125842)

MLIR_MAIN_SRC_DIR and MLIR_INCLUDE_DIR point to the source directory,
which is not installed. As such, the installed MLIRConfig.cmake also
should not reference it.

The comment indicates that these are needed for mlir_tablegen(), but I
don't see any related uses.

The motivation for this is the use in flang, where we end up inheriting
a meaningless MLIR_MAIN_SRC_DIR from a previous MLIR build, whose source
directory doesn't exist anymore, and that cannot be overridden with the
correct path, because it's not a cached variable.

Instead do what all the other projects do for LLVM_MAIN_SRC_DIR and
initialize MLIR_MAIN_SRC_DIR to CMAKE_CURRENT_SOURCE_DIR/../mlir.

For MLIR_INCLUDE_DIR there already is an exported MLIR_INCLUDE_DIRS,
which can be used instead.


  Commit: 8d902f2cb0bc8825bcde911897e99aadbd5d28e9
      https://github.com/llvm/llvm-project/commit/8d902f2cb0bc8825bcde911897e99aadbd5d28e9
  Author: Yutong Zhu <115899167+YutongZhuu at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/JumpDiagnostics.cpp
    A clang/test/CXX/stmt.stmt/stmt.select/stmt.switch/p4.cpp

  Log Message:
  -----------
  [clang] Force AttributedStmtClass to not be scope parents  (#125370)

Example from the issue:
```c++
void Func(int x) {
    switch (x) {
        [[likely]] case 0:
        case 1:
            int i = 3;
        case 2:
            break;
    }
}
```

Clang checks if ``case 2`` can be reachable by checking its scope. The
variable declaration should create a scope containing ``case 2``, but
due to the structure of the AST, ``case 2`` gets the scope of the
``likely`` statement, but not ``int i = 3;``. Therefore, I changed this
code to force attribute statement not to be scope parents.

Fixes #84072


  Commit: dd59198647b7be2e7a404d7bf9ecb247fb36ebad
      https://github.com/llvm/llvm-project/commit/dd59198647b7be2e7a404d7bf9ecb247fb36ebad
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/amdgpu-branch-weight-metadata.ll
    R llvm/test/CodeGen/AMDGPU/amdgpu-demote-scc-branches.ll

  Log Message:
  -----------
  [NFC][AMDGPU] Rename test (#126725)

The demonte-scc transformation is no longer needed and the old test name
doesn't make sense anymore.

The test checks the generated assembly for different branch cases
* without metadata,
* with the same branch_weights on each edge and
* with a branch_weights that corresponds to the [[likely]] attribute


  Commit: bf2d4eb7030b809004dd1e6d0cc15a94a9e18c88
      https://github.com/llvm/llvm-project/commit/bf2d4eb7030b809004dd1e6d0cc15a94a9e18c88
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M lldb/source/Core/CMakeLists.txt
    M lldb/source/Core/Telemetry.cpp

  Log Message:
  -----------
  [lldb] Use preprocessor guard for `LLVM_BUILD_TELEMETRY` (#126715)

Use a preprocessor `#ifdef LLVM_BUILD_TELEMETRY` guard rather than
`PARTIAL_SOURCES_INTENDED` for the `Telemetry.cpp` file, to fix building
with telemetry disabled. `PARTIAL_SOURCES_INTENDED` does not currently
work in `lldb_add_library()`, and while it could be fixed, it seems to
be used contrary to its purpose — in other parts of LLVM project, the
option is used to indicate that the sources found in the directory are
split between different targets (e.g. a library and a tool), not to
include sources conditionally.


  Commit: d89c23b487dfb96718f9f72f2841a83906cc3d0b
      https://github.com/llvm/llvm-project/commit/d89c23b487dfb96718f9f72f2841a83906cc3d0b
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Core/BUILD.gn

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


  Commit: dbe1dafdbde247d9c133626cc38a8c587a49344f
      https://github.com/llvm/llvm-project/commit/dbe1dafdbde247d9c133626cc38a8c587a49344f
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

  Log Message:
  -----------
  [NFC][TableGen] Code cleanup in InstrInfoEmitter.cpp (#126578)

- Use range for loops and `enumerate` in a few places.
- Use `StringRef` for `TargetName` in `InstrInfoEmitter::run`.
- Use `\n` character for new line instead of string.
- Use StringRef in `InstrNames` (instead of std::string) and 
  avoid string copies.


  Commit: efc72347fd26e30a3f751348bee6a404cf18237a
      https://github.com/llvm/llvm-project/commit/efc72347fd26e30a3f751348bee6a404cf18237a
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/fully-unrolled-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll

  Log Message:
  -----------
  [AArch64] Improve getPartialReductionCost for fixed-width VFs (#126538)

NEON does not have a version of udot/sdot that accumulates into
64-bit integer values, so we should return Invalid from
getPartialReductionCost for 64-bit types and fixed-width VFs.
In theory, if the 64-bit versions of SVE udot/sdot are available 
we could use those, but we don't currently have lowering support
for that.


  Commit: 04589d1795ed4698766f5a26b6d7f32207968792
      https://github.com/llvm/llvm-project/commit/04589d1795ed4698766f5a26b6d7f32207968792
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/test/CMakeLists.txt
    M llvm/test/CodeGen/SPIRV/lit.local.cfg
    M llvm/tools/spirv-tools/CMakeLists.txt

  Log Message:
  -----------
  [SPIR-V] Add SPIR-V Linker (#126319)

I want to use `spirv-link` from `SPIR-V-Tools` in a test, so let's build
it if `LLVM_INCLUDE_SPIRV_TOOLS_TESTS` is set, as we do with the other
tools.

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 94f9d5d1a8257710f0483ce025e19a6326ca6e4b
      https://github.com/llvm/llvm-project/commit/94f9d5d1a8257710f0483ce025e19a6326ca6e4b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp

  Log Message:
  -----------
  [Offload] Treat an empty packager architecture as 'generic' (#126655)

Summary:
The `clang-offload-packager` records the architecture of the job.
Currently there are cases where this will be empty. SYCL, CPU, and when
the user manually overrides it to be empty. In these cases we should
alwas consider it 'generic'. Adding this string both makes it clear how
it behaves and triggers the special handling for this architecture,
allowing it to bind to different architectures.


  Commit: c837f572865eb2980b82a8415da45dc1157627bf
      https://github.com/llvm/llvm-project/commit/c837f572865eb2980b82a8415da45dc1157627bf
  Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx940.mir
    M llvm/test/CodeGen/AMDGPU/mai-hazards-mfma-scale.gfx950.mir

  Log Message:
  -----------
  AMDGPU: Handle gfx950 XDL-write-VGPR-Overlap-Src-AB wait state (#126732)

gfx950 needs more additional waitstates from gfx940


  Commit: 9387fd96314c59fc9aff1a82e478f9b89a97c20a
      https://github.com/llvm/llvm-project/commit/9387fd96314c59fc9aff1a82e478f9b89a97c20a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/cxx26.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix diagnosing replaceable global allocator functions (#126717)

Don't return true here in InvalidNewDeleteExpr just because we are in
C++26 mode. This invalid there as well.

Testcase reduced from
libcxx/test/std/utilities/smartptr/unique.ptr/unique.ptr.create/make_unique_for_overwrite.pass.cpp


  Commit: ab93bd6959d6d2df1b44c1654938452dc30898b0
      https://github.com/llvm/llvm-project/commit/ab93bd6959d6d2df1b44c1654938452dc30898b0
  Author: Hsiangkai Wang <hsiangkai.wang at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [mlir][tosa] Change ClampOp's min/max attributes (#125197)

This changes Tosa ClampOp attributes to min_val and max_val which are
either integer attributes or float attributes, and adds verify checks
that these attribute element types must match element types of input and
output

Co-authored-by: Tai Ly <tai.ly at arm.com>


  Commit: 5bf42d3e2e83344db14fc0e33623840c53cebfc4
      https://github.com/llvm/llvm-project/commit/5bf42d3e2e83344db14fc0e33623840c53cebfc4
  Author: Keith Smiley <keithbsmiley at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M lldb/source/API/SBDebugger.cpp

  Log Message:
  -----------
  [lldb] Fix ubsan violation with plugin loading (#126652)

This typedef doesn't match the signature below, specifically the
signature takes a `lldb:SBDebugger` vs this was defined as
`lldb:SBDebugger&`.

```
lldb/source/API/SBDebugger.cpp:199:13: runtime error: call to function lldb::PluginInitialize(lldb::SBDebugger) through pointer to incorrect function type 'bool (*)(lldb::SBDebugger &)'
.../CustomPlugin.cpp:134: note: lldb::PluginInitialize(lldb::SBDebugger) defined here
```


  Commit: b7188f6313fef2d5a248e71ba6028460b2ac0558
      https://github.com/llvm/llvm-project/commit/b7188f6313fef2d5a248e71ba6028460b2ac0558
  Author: Ivan Kosarev <ivan.kosarev at amd.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCallLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.h

  Log Message:
  -----------
  [AMDGPU][NFC] Remove an unneeded return value. (#126739)

And rename the function to disassociate it from the one where generating
loading of the input value may actually fail.


  Commit: 2ad9d5f5f01cd4f29788a0cf7b21790df13fca71
      https://github.com/llvm/llvm-project/commit/2ad9d5f5f01cd4f29788a0cf7b21790df13fca71
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/cmake/modules/LLVMConfig.cmake.in

  Log Message:
  -----------
  [llvm] [cmake] Expose `LLVM_BUILD_TELEMETRY` in `LLVMConfig.cmake` (#126710)

Add `LLVM_BUILD_TELEMETRY` to the list of flags exposed in
`LLVMConfig.cmake`. This fixes telemetry library being misdetected as
`OFF` when building LLDB standalone.

Fixes bac62ee5b473e70981a6bd9759ec316315fca07d.

------

I guess this also needs a backport to 20.x.


  Commit: 76392421553f3b25552970812868f70721971451
      https://github.com/llvm/llvm-project/commit/76392421553f3b25552970812868f70721971451
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUTargetStreamer.cpp
    M llvm/test/MC/AMDGPU/hsa-diag-v4.s
    M llvm/test/MC/AMDGPU/hsa-gfx12-v4.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx11.s
    M llvm/test/MC/AMDGPU/hsa-sym-exprs-gfx12.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx11.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx12.s

  Log Message:
  -----------
  [AMDGPU] Create new directive .amdhsa_inst_pref_size (#126622)

The field INST_PREF_SIZE is available since gfx11.


  Commit: 2f54223247e8f9f0fc006b944de8351f376814af
      https://github.com/llvm/llvm-project/commit/2f54223247e8f9f0fc006b944de8351f376814af
  Author: sitrin <michael.s.adams at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/docs/TypeSanitizer.rst

  Log Message:
  -----------
  [Docs] Fix typo in TypeSanitizer.rst "tale" -> "table" (NFC) (#126721)

The word `table` is now in place of the word `tale`.

Fixes #126719.

Co-authored-by: sitrin <sitrin at users.noreply.github.com>


  Commit: b3510a88b3c19645fbde09cb58af6dead68ebd36
      https://github.com/llvm/llvm-project/commit/b3510a88b3c19645fbde09cb58af6dead68ebd36
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

  Log Message:
  -----------
  [NFC] [clang] simplify isDesignatorAtObjectEnd (#126658)

IsLastOrInvalidFieldDecl would always return true if `Invalid=true`, so
we know that !IsLastOrInvalidFieldDecl(...) means !Invalid.


  Commit: 8e4e1449318de0e73192edf0b3c6a0d5b6ec7a31
      https://github.com/llvm/llvm-project/commit/8e4e1449318de0e73192edf0b3c6a0d5b6ec7a31
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#126672)


  Commit: c50f924aeae2d2eded772a7a80b20d46e1c9b41e
      https://github.com/llvm/llvm-project/commit/c50f924aeae2d2eded772a7a80b20d46e1c9b41e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

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


  Commit: 43c82a8e07819ad0553ef0dffedff3c8b8cecf5e
      https://github.com/llvm/llvm-project/commit/43c82a8e07819ad0553ef0dffedff3c8b8cecf5e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/tools/clang-installapi/Options.cpp

  Log Message:
  -----------
  [clang-installapi] Avoid repeated hash lookups (NFC) (#126677)


  Commit: 497506f6f454272e7c4921b3143768c6927738e4
      https://github.com/llvm/llvm-project/commit/497506f6f454272e7c4921b3143768c6927738e4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/DDG.cpp

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126678)


  Commit: c9686d6904f24de8c63294dd708c9e0d0b4f7a47
      https://github.com/llvm/llvm-project/commit/c9686d6904f24de8c63294dd708c9e0d0b4f7a47
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp

  Log Message:
  -----------
  [SystemZ] Avoid repeated hash lookups (NFC) (#126679)


  Commit: 042e860a8a3a2e1be384a5de04b90607ce32e294
      https://github.com/llvm/llvm-project/commit/042e860a8a3a2e1be384a5de04b90607ce32e294
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

  Log Message:
  -----------
  [Vectorize] Avoid repeated hash lookups (NFC) (#126681)


  Commit: cf87eb9d9b006ff28296e399dcc73d68bb187e91
      https://github.com/llvm/llvm-project/commit/cf87eb9d9b006ff28296e399dcc73d68bb187e91
  Author: Andreas Jonson <andjo403 at hotmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/InstCombine/known-bits.ll

  Log Message:
  -----------
  [ValueTracking] Handle trunc to i1 as condition in dominating condition. (#126414)

proof: https://alive2.llvm.org/ce/z/gALGmv


  Commit: f574d8235371c4f28cad8e800d99bcb7ad579b7d
      https://github.com/llvm/llvm-project/commit/f574d8235371c4f28cad8e800d99bcb7ad579b7d
  Author: Sharjeel Khan <sharjeelkhan at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip

  Log Message:
  -----------
  [Clang][Driver][HIP] Fix test for HIP as it was failing (#126585)

This PR #125646 added this test and it was failing in Android's compiler
and on my machine locally. I removed the "Build config" check and it
passes now.


  Commit: c3d8c625af8ebbf8a9af035c18ec4e1cb1d8d2f3
      https://github.com/llvm/llvm-project/commit/c3d8c625af8ebbf8a9af035c18ec4e1cb1d8d2f3
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenACC.cpp
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-private.f90

  Log Message:
  -----------
  [flang][acc] Fill-in name for privatized loop iv (#126601)

When the loop induction variable implicit private clause was being
generated, the name was left empty. The intent is that the data clause
operation holds the source language variable name. Thus, add the missing
name now.


  Commit: 75cb5633844deb4e0c6a5c7bdf84013b563818d3
      https://github.com/llvm/llvm-project/commit/75cb5633844deb4e0c6a5c7bdf84013b563818d3
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/ASTContext.h
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/Sema/SemaDecl.cpp

  Log Message:
  -----------
  [clang][Sema] Move computing enum bits into a separate function (#126096)

Move the code that computes `NumNegativeBits` and `NumPositiveBits` for
an enum to a separate function in `ASTContext.h`.
This function needs to be called from LLDB as well (#115005)


  Commit: 42538ca3a0db6513a1a01fca88dccd34bd0d9641
      https://github.com/llvm/llvm-project/commit/42538ca3a0db6513a1a01fca88dccd34bd0d9641
  Author: Aaron Siddhartha Mondal <aaron at tracemachina.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M .github/CODEOWNERS

  Log Message:
  -----------
  [GitHub] Add aaronmondal to Bazel codeowners (#126760)


  Commit: b92bab3c010a8b8d7c2273ebdacfa34aaaaa757d
      https://github.com/llvm/llvm-project/commit/b92bab3c010a8b8d7c2273ebdacfa34aaaaa757d
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/test/CodeGenHLSL/inline-functions.hlsl

  Log Message:
  -----------
  [HLSL] Appropriately set function attribute optnone (#125937)

When optimization is disabled, set `optnone` attribute all module entry
functions.

Updated test in accordance with the change.

Closes #124796


  Commit: b8ba266820ca51216c98216369a4947a942ec21c
      https://github.com/llvm/llvm-project/commit/b8ba266820ca51216c98216369a4947a942ec21c
  Author: Nick Desaulniers <ndesaulniers at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/test/src/stdbit/stdc_bit_ceil_uc_test.cpp
    M libc/test/src/stdbit/stdc_bit_ceil_us_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_one_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_one_us_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_zero_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_zero_us_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_one_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_one_us_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_zero_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_zero_us_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp
    M libc/test/src/stdbit/stdc_leading_ones_uc_test.cpp
    M libc/test/src/stdbit/stdc_leading_ones_us_test.cpp
    M libc/test/src/stdbit/stdc_leading_zeros_uc_test.cpp
    M libc/test/src/stdbit/stdc_leading_zeros_us_test.cpp
    M libc/test/src/stdbit/stdc_trailing_ones_uc_test.cpp
    M libc/test/src/stdbit/stdc_trailing_ones_us_test.cpp
    M libc/test/src/stdbit/stdc_trailing_zeros_uc_test.cpp
    M libc/test/src/stdbit/stdc_trailing_zeros_us_test.cpp

  Log Message:
  -----------
  [libc][test][stdbit] fix -Wimplicit-int-conversion (#126616)

When cross compiling the libc-stdbit-tests, the existing tests trigger numerous
instances of -Wimplicit-int-conversion. The truncation of these implicit
promotions is intentional.


  Commit: 6d58dd4dd9fa24d66bdab64f0f905926081a9944
      https://github.com/llvm/llvm-project/commit/6d58dd4dd9fa24d66bdab64f0f905926081a9944
  Author: Wael Yehia <wyehia at ca.ibm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [Release Notes] Mention -fprofile-continuous in release notes


  Commit: 1337b0fe3c153ee8b7c8e19d694b9840a64ccf3a
      https://github.com/llvm/llvm-project/commit/1337b0fe3c153ee8b7c8e19d694b9840a64ccf3a
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/docs/analyzer/developer-docs/PerformanceInvestigation.rst
    A clang/docs/analyzer/images/flamegraph.png
    A clang/docs/analyzer/images/uftrace_detailed.png

  Log Message:
  -----------
  [analyzer][docs] Document how to use perf and uftrace to debug performance issues (#126724)


  Commit: 55ae118db7c36fb88994e072e424cb66d1f34e74
      https://github.com/llvm/llvm-project/commit/55ae118db7c36fb88994e072e424cb66d1f34e74
  Author: Aaron Siddhartha Mondal <aaron at tracemachina.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/utils/git/code-format-helper.py

  Log Message:
  -----------
  [GitHub] Skip undefcheck if no relevant files changed (#126749)

If the list of filtered files was empty the check would process every
file in the diff.


  Commit: 918848d03bb9d0e06dea2ef588bda17ff961923c
      https://github.com/llvm/llvm-project/commit/918848d03bb9d0e06dea2ef588bda17ff961923c
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Core/UserSettingsController.h
    M lldb/source/Core/UserSettingsController.cpp

  Log Message:
  -----------
  [lldb] Devirtualize GetValueProperties (NFC) (#126583)

Nobody is overriding GetValueProperties, so in practice we're always
using `m_collection_sp`, which means we don't need to check the pointer.
The temlated helpers were already operating on `m_collection_sp`
directly so this makes the rest of the class consistent.


  Commit: 71478ecdb48075051e6e746c4c51b9caeb4c21b6
      https://github.com/llvm/llvm-project/commit/71478ecdb48075051e6e746c4c51b9caeb4c21b6
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm

  Log Message:
  -----------
  [WebKit Checkers] Treat const Objective-C ivar as a safe origin (#126353)

Like const C++ member variables, treat const Ref, RefPtr, CheckedRef,
CheckedPtr Objective-C ivars as a safe pointer origin in WebKit
checkers.


  Commit: a2263eba4d3be0daa96bd154de3b8f2a67aa67fb
      https://github.com/llvm/llvm-project/commit/a2263eba4d3be0daa96bd154de3b8f2a67aa67fb
  Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx940.mir

  Log Message:
  -----------
  AMDGPU: Handle gfx950 XDL-write-VGPR-VALU-Mem-Exp wait state change (#126727)


  Commit: 1188b1ff7b956cb65d8ddda5f1e56c432f1a57c7
      https://github.com/llvm/llvm-project/commit/1188b1ff7b956cb65d8ddda5f1e56c432f1a57c7
  Author: Vigneshwar Jayakumar <vigneshwar.jayakumar at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/test/CodeGen/AMDGPU/mai-hazards-gfx940.mir

  Log Message:
  -----------
  AMDGPU: Handle gfx950 XDL Write-VGPR-VALU-WAW wait state change (#126132)

There are additional wait states for XDL write VALU WAW hazard in gfx950
compared to gfx940.


  Commit: 71e623d878ecbf66324e15b3a3b2e983e2d7942a
      https://github.com/llvm/llvm-project/commit/71e623d878ecbf66324e15b3a3b2e983e2d7942a
  Author: Elvin Wang <elvin.wang at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/IR/DebugInfo.cpp
    A llvm/test/Transforms/Util/strip-nonlinetable-debuginfo-pr125116.ll

  Log Message:
  -----------
  [llvm] Avoid out-of-order evaluation in DebugInfo (#125116)

This is an upstream proposal from
https://github.com/intel/intel-graphics-compiler/commit/e60884cb98c4332a0eecff8396eb353c5b86cd35
We observed malfunctioning StripNonLineTableDebugInfo during debugging
and it's caused by out-of-order evaluation, this is a C++ level semantic
ambiguity issue, refer
https://en.cppreference.com/w/cpp/language/eval_order
Solution is simply separating one line into two.


  Commit: 9d7177a2d7e63f90effea848e897cbf96690d154
      https://github.com/llvm/llvm-project/commit/9d7177a2d7e63f90effea848e897cbf96690d154
  Author: Renaud Kauffmann <rkauffmann at nvidia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/test/Analysis/AliasAnalysis/alias-analysis-2.fir
    A flang/test/Analysis/AliasAnalysis/alias-analysis-target.fir

  Log Message:
  -----------
  [flang][NFCI] Stop tracking memory source after a load in a more explicit manner. (#126156)

Typically, we do not track memory sources after a load because of the
dynamic nature of the load and the fact that the alias analysis is a
simple static analysis.

However, the code is written in a way that makes it seem like we are
continuing to track memory but in reality we are only doing so when we
know that the tracked memory is a leaf and therefore when there will
only be one more iteration through the switch statement. In other words,
we are iterating one more time, to gather data about a box, anticipating
that this will be the last time. This is a hack that helped avoid
cut-and-paste from other case statements but gives the wrong impression
about the intention of the code and makes it confusing.

To make it clear that there is no more tracking, we gather all the
necessary data from the memref of the load, in the case statement for
the load, and exit the loop. I am also limiting this data gathering for
the case when we load a box reference while we were actually following
data, as tests have shows, is the only case when we need it for. Other
cases will be handled conservatively, but this can change in the future,
on a case-by-case basis.

---------

Co-authored-by: Joel E. Denny <jdenny.ornl at gmail.com>


  Commit: 070f84ebc89b11df616a83a56df9ac56efbab783
      https://github.com/llvm/llvm-project/commit/070f84ebc89b11df616a83a56df9ac56efbab783
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    A clang/test/Index/openmp-stripe.c
    A clang/test/OpenMP/stripe_ast_print.cpp
    A clang/test/OpenMP/stripe_codegen.cpp
    A clang/test/OpenMP/stripe_messages.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [Clang] [OpenMP] Add support for '#pragma omp stripe'. (#119891)

Implement basic parsing and semantic support for `#pragma omp stripe`
constuct introduced in
https://www.openmp.org/wp-content/uploads/[OpenMP-API-Specification-6-0.pdf](https://www.openmp.org/wp-content/uploads/OpenMP-API-Specification-6-0.pdf),
section 11.7.


  Commit: 20ae283d087224f6b82b7308054bd34a6764d926
      https://github.com/llvm/llvm-project/commit/20ae283d087224f6b82b7308054bd34a6764d926
  Author: Tai Ly <tai.ly at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaReduceTransposes.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg.mlir
    M mlir/test/Dialect/Tosa/canonicalize.mlir
    M mlir/test/Dialect/Tosa/constant-op-fold.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    M mlir/test/Dialect/Tosa/tosa-reduce-transposes.mlir

  Log Message:
  -----------
  [mlir][tosa] Change the shift of mul to be required (#125297)

Change the shift operand for the mul operator to be a required operand.

Also defined shift to be Tosa_ScalarInt8Tensor which requires that it is
a rank-1 tensor
whose shape is [1] (ie, tensor containing a single element)

Signed-off-by: Tai Ly <tai.ly at arm.com>


  Commit: 8c67f14f628420a5e06fe631ec6b323f096f2a43
      https://github.com/llvm/llvm-project/commit/8c67f14f628420a5e06fe631ec6b323f096f2a43
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h

  Log Message:
  -----------
  [WebKit Checkers] Allow operator T&() in a const member function (#126470)

Allow operator T&() in a member function which returns a const member
variable.

In particular, this will allow UniqueRef::operator T&() and
Ref::operator T&() to be treated as a safe pointer origin when they're
called on a const member.


  Commit: c4fe4561c7893596a5e519d7275df5ea5f0886be
      https://github.com/llvm/llvm-project/commit/c4fe4561c7893596a5e519d7275df5ea5f0886be
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++] Fixes building with Python 3.8.

This addresses the post-commit issues reported in #101880.


  Commit: 1bf1f13be94fa5f4994d10310ec349cc3450d70f
      https://github.com/llvm/llvm-project/commit/1bf1f13be94fa5f4994d10310ec349cc3450d70f
  Author: quic-areg <aregmi at quicinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Hexagon/Disassembler/HexagonDisassembler.cpp

  Log Message:
  -----------
  [Hexagon][Disassembler] Set CommentStream of Disassembler (#126766)

Sets CommentStream after assert added in #125962.


  Commit: 401f4b828c374a01de6acd7fd8f4a3a4245f7595
      https://github.com/llvm/llvm-project/commit/401f4b828c374a01de6acd7fd8f4a3a4245f7595
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M flang/runtime/CMakeLists.txt

  Log Message:
  -----------
  [flang][rt] Add decimal files to device runtime (#126778)

The library FortranDecimal is not used anymore with the runtime but its
files are now integrated. Add the files for the device build as well.


  Commit: c2fea0d837c481c2c1f00077778f84de54c0196f
      https://github.com/llvm/llvm-project/commit/c2fea0d837c481c2c1f00077778f84de54c0196f
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/test/CMakeLists.txt
    M clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/Tooling/lit.local.cfg

  Log Message:
  -----------
  [clang-linker-wrapper][lit] Fix SPIR-V ELF test when spirv-tools feature is available (#126756)

My last change made the test not run when the `spirv-tools` feature is
not available, which is always the case in CI for clang tests, but it
fails if `spirv-tools` is available for the following reasons:
1) We didn't build `spirv-link` as part of the internal `SPIRV-Tools`
build, which is required by the `clang` call in `clang-linker-wrapper`,
I already fixed that
[here](https://github.com/llvm/llvm-project/pull/126319).
2) We didn't depend on the `SPIRV-Tools` CMake targets in clang tests,
so depending on what CMake targets were built before running
`check-clang`, `SPIRV-Tools` might not have been built.
3) We didn't check for `llvm-spirv` being available, which is not part
of `SPIRV-Tools` but is currently required for SPIR-V compilation.

Manually confirmed this works. This test is the bane of my existence.

---------

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: 2cf6663d3c86b065edeb693815e6a4b325045cc2
      https://github.com/llvm/llvm-project/commit/2cf6663d3c86b065edeb693815e6a4b325045cc2
  Author: Kevin Gleason <gleasonk at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/test/mlir-tblgen/gen-dialect-doc.td
    A mlir/test/mlir-tblgen/gen-pass-doc.td
    M mlir/tools/mlir-tblgen/OpDocGen.cpp
    M mlir/tools/mlir-tblgen/OpInterfacesGen.cpp
    M mlir/tools/mlir-tblgen/PassDocGen.cpp
    M utils/bazel/llvm-project-overlay/mlir/test/mlir-tblgen/BUILD.bazel

  Log Message:
  -----------
  [MLIR] Make generated markdown doc more consistent (#119926)

A few changes to doc generation:

- All summaries are in italics.
- In general each optional block starts and ends with a newline.
- All table elements are enclosed in `|`'s
- Overall reduce the number of >2newlines in a row

Rationale for this change is that our markdown to docs generator
requires a newline before all headers, otherwise it gets inlined into
the line before it, see `### sdy-op-priority-propagate` in the image
below.

<img width="883" alt="image"
src="https://github.com/user-attachments/assets/b795c424-cecb-48df-abbe-aee2030f4491"
/>

That said overall I feel this formatting is more consistent now, here's
a before and after:

- Dialect documentation diff: https://www.diffchecker.com/OVMHoXeL/
- Pass documentation diff: https://www.diffchecker.com/XEJRmW3k/


  Commit: 67e1e98811ccb438e951ae59dd3041a2baf84437
      https://github.com/llvm/llvm-project/commit/67e1e98811ccb438e951ae59dd3041a2baf84437
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    R clang/test/Index/openmp-stripe.c
    R clang/test/OpenMP/stripe_ast_print.cpp
    R clang/test/OpenMP/stripe_codegen.cpp
    R clang/test/OpenMP/stripe_messages.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  Revert "[Clang] [OpenMP] Add support for '#pragma omp stripe'. (#119891)"

This reverts commit 070f84ebc89b11df616a83a56df9ac56efbab783.

Buildbot failure:
https://lab.llvm.org/buildbot/#/builders/51/builds/10694


  Commit: e4016bf5c32558e773264d1ce875d71cf67bd192
      https://github.com/llvm/llvm-project/commit/e4016bf5c32558e773264d1ce875d71cf67bd192
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGNodes.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp

  Log Message:
  -----------
  [DAG] Use ArrayRef to simplify ShuffleVectorSDNode::isSplatMask


  Commit: baf7a3c1e561ff7e3f7da2261ce1012c4f2ba1c0
      https://github.com/llvm/llvm-project/commit/baf7a3c1e561ff7e3f7da2261ce1012c4f2ba1c0
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M offload/plugins-nextgen/common/include/RPC.h
    M offload/plugins-nextgen/common/src/RPC.cpp

  Log Message:
  -----------
  [Offload] Properly guard modifications to the RPC device array (#126790)

Summary:
If the user deallocates an RPC device this can sometimes fail if the RPC
server is still running. This will happen if the modification happens
while the server is still checking it. This patch adds a mutex to guard
modifications to it.


  Commit: 3ef5348a0486def3e53ce37b9ed8b8ca020a3a12
      https://github.com/llvm/llvm-project/commit/3ef5348a0486def3e53ce37b9ed8b8ca020a3a12
  Author: David Green <david.green at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/PhaseOrdering/AArch64/udotabd.ll

  Log Message:
  -----------
  [AArch64] Add a phase-order test for dot patterns. NFC


  Commit: 5c7071e996b8b26080219038c2eb262567c18769
      https://github.com/llvm/llvm-project/commit/5c7071e996b8b26080219038c2eb262567c18769
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp

  Log Message:
  -----------
  [NFC] [clang] fix unused variable warning (#126796)


  Commit: 3c74430320619495d4d547b05427654c9a7c8586
      https://github.com/llvm/llvm-project/commit/3c74430320619495d4d547b05427654c9a7c8586
  Author: Alireza Torabian <torabian.alireza at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/DDG.h
    M llvm/include/llvm/Analysis/DependenceAnalysis.h
    M llvm/lib/Analysis/DependenceAnalysis.cpp
    M llvm/lib/Analysis/DependenceGraphBuilder.cpp
    M llvm/lib/Analysis/LoopCacheAnalysis.cpp
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    M llvm/lib/Transforms/Scalar/LoopInterchange.cpp
    M llvm/lib/Transforms/Utils/CodeMoverUtils.cpp
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp

  Log Message:
  -----------
  [DependenceAnalysis][NFC] Removing PossiblyLoopIndependent parameter (#124615)

Parameter PossiblyLoopIndependent has lost its intended purpose. This
flag is always set to true in all cases when depends() is called, hence
we want to reconsider the utility of this variable and remove it from
the function signature entirely. This is an NFC patch.


  Commit: 188915535a2c42f347076e49ad95271c11e9a05d
      https://github.com/llvm/llvm-project/commit/188915535a2c42f347076e49ad95271c11e9a05d
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll

  Log Message:
  -----------
  [RISCV] Add coverage for vmerge.vim shuffle lowering


  Commit: b88b6a2b633a942d454205f336703cdc62074686
      https://github.com/llvm/llvm-project/commit/b88b6a2b633a942d454205f336703cdc62074686
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h

  Log Message:
  -----------
  [clang] Assert the enum FPOpts and LangOpts fit into the storage (#126166)

Fix existing failure


  Commit: fcbf04e40e66014f455a38b59993be865bc6cdfd
      https://github.com/llvm/llvm-project/commit/fcbf04e40e66014f455a38b59993be865bc6cdfd
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Vector/IR/VectorOps.td
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp

  Log Message:
  -----------
  [mlir][vector][nfc] Add clarification on "dim-1" bcast (#125425)

Adds a small note to VectorOps.td on what "dim-1" broadcast is. Also
updates comments to consistently use quotes, i.e.

* "dim-1" broadcasting instead of dim-1 broadcasting.

This way it is clear that we are referring to "stretching" one of the
trailing dims rather than e.g. broadcasting a dim at idx 1.


  Commit: 10844fb9b0b78695243391e091e17ec29295872a
      https://github.com/llvm/llvm-project/commit/10844fb9b0b78695243391e091e17ec29295872a
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/SystemZ/reuse-non-power-of-2-reorder.ll

  Log Message:
  -----------
  [SLP]Fix attempt to build the reorder mask for non-adjusted reuse mask

When building the reorder for non-single use reuse mask, need to check
if the size of the mask is multiple of the number of unique scalars.
  Otherwise, the compiler may crash when trying to reorder nodes.

Fixes #126304


  Commit: ad905f133c5b22896900f3f335de990d0daf1ff4
      https://github.com/llvm/llvm-project/commit/ad905f133c5b22896900f3f335de990d0daf1ff4
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp

  Log Message:
  -----------
  [NFC] [clang] Use isa instead of dyn_cast


  Commit: 07600f80c7790b31826392ee5edfbd3ccd9f55bc
      https://github.com/llvm/llvm-project/commit/07600f80c7790b31826392ee5edfbd3ccd9f55bc
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Scheduler.h
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/SchedulerTest.cpp

  Log Message:
  -----------
  [SandboxVec][Scheduler] Update ready list comparator (#126160)

This patch implements a hierarchical comparator for the ready list. PHIs
have higher priority than non-phis and terminators are always last.


  Commit: f6556afce0aa5a72ef42103875101d975e810474
      https://github.com/llvm/llvm-project/commit/f6556afce0aa5a72ef42103875101d975e810474
  Author: Shoaib Meenai <smeenai at fb.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/IR/OperationSupport.h

  Log Message:
  -----------
  [mlir] Silence -Wdangling-assignment-gsl in OperationSupport.h (#126140)

This warning is causing lots of build spam when I use a recent Clang as
my host compiler. It's a potential false positive, so silence it until
https://github.com/llvm/llvm-project/issues/126600 is resolved.
Fix variable casing while I'm here.


  Commit: 0419db6b95e246fe9dc90b5795beb77c393eb2ce
      https://github.com/llvm/llvm-project/commit/0419db6b95e246fe9dc90b5795beb77c393eb2ce
  Author: Nick Desaulniers <ndesaulniers at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/utils/docgen/docgen.py
    M libc/utils/docgen/sys/time.yaml

  Log Message:
  -----------
  [libc][docgen] make note of sys/time.h interfaces removed in POSIX.1-2024 (#126612)

One of these days, we'll be able to specify time to a computer...

Also, POSIX can remove stuff all they want. Folks probably will continue to
depend on broken interfaces forever.

Link: #124654
Link: https://austingroupbugs.net/view.php?id=1330


  Commit: c7eb5204a631986f0a8d6c204c5bc5135e3efc1c
      https://github.com/llvm/llvm-project/commit/c7eb5204a631986f0a8d6c204c5bc5135e3efc1c
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/lib/Sema/HeuristicResolver.cpp
    M clang/unittests/Sema/HeuristicResolverTest.cpp

  Log Message:
  -----------
  [clang][HeuristicResolver] Track the expression whose type is being simplified after each step in simplifyType() (#126689)

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


  Commit: fd41393e2e6a32a7fcacdd0779f70964689d01ec
      https://github.com/llvm/llvm-project/commit/fd41393e2e6a32a7fcacdd0779f70964689d01ec
  Author: lntue <lntue at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/src/__support/FPUtil/double_double.h
    M libc/src/__support/macros/optimization.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/atan2f.cpp
    A libc/src/math/generic/atan2f_float.h
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/range_reduction_double_fma.h
    M libc/src/math/generic/range_reduction_double_nofma.h

  Log Message:
  -----------
  [libc][math] Add float-only option for atan2f. (#122979)

For targets that have single precision FPU but not double precision FPU
such as Cortex M4, only using float-float in the intermediate
computations might reduce the code size compared to using double. In
this case, when the exact pass is skipped, the float-only option for
atan2f implemented in this PR reduces the code size of this function by
~1 KB compared to the double precision version.


  Commit: ad6cd7e8b2590dcbb8aed92ac416ca889986471d
      https://github.com/llvm/llvm-project/commit/ad6cd7e8b2590dcbb8aed92ac416ca889986471d
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/CodeGen/AMDGPU/mad-mix-hi.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix-lo.ll
    M llvm/test/CodeGen/AMDGPU/mad-mix.ll

  Log Message:
  -----------
  [AMDGPU][True16][CodeGen] true16 codegen for MadFmaMixPat (#124892)

true16 codegen for MadFmaMixPat. GISEL test not enabled and will be
added later when GISEL is supported


  Commit: a760e7faacb79e7ff0ae23d3ae370d1aa6e52666
      https://github.com/llvm/llvm-project/commit/a760e7faacb79e7ff0ae23d3ae370d1aa6e52666
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/include/llvm-libc-types/struct_tm.h
    M libc/src/time/CMakeLists.txt
    M libc/src/time/mktime.cpp
    M libc/src/time/time_constants.h
    M libc/src/time/time_utils.cpp
    M libc/src/time/time_utils.h

  Log Message:
  -----------
  [libc] create TimeReader to look at a struct tm (#126138)

In the process of adding strftime (#122556) I wrote this utility class
to simplify reading from a struct tm. It provides helper functions that
return basically everything needed by strftime. It's not tested
directly, but it is thoroughly exercised by the strftime tests.


  Commit: 8374d421861cd3d47e21ae7889ba0b4c498e8d85
      https://github.com/llvm/llvm-project/commit/8374d421861cd3d47e21ae7889ba0b4c498e8d85
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll

  Log Message:
  -----------
  [RISCV] Decompose single source shuffles (without exact VLEN) (#126108)

This is a continuation of the work started in #125735 to lower selected
VLA shuffles in linear m1 components instead of generating O(LMUL^2) or
O(LMUL*Log2(LMUL) high LMUL shuffles.

This pattern focuses on shuffles where all the elements being used
across the entire destination register group come from a single register
in the source register group. Such cases come up fairly frequently via
e.g. spread(N), and repeat(N) idioms.

One subtlety to this patch is the handling of the index vector for
vrgatherei16.vv. Because the index and source registers can have
different EEW, the index vector for the Nth chunk of the destination is
not guaranteed to be register aligned. In fact, it is common for e.g. an
EEW=64 shuffle to have EEW=16 indices which are four chunks per source
register. Given this, we have to pay a cost for extracting these chunks
into the low position before performing each shuffle.

I'd initially expressed this as a naive extract sub-vector for each data
parallel piece. However, at high LMUL, this quickly caused register
pressure problems since we could at worst need 4x the temporary
registers for the index. Instead, this patch uses a repeating slidedown
chained from previous iterations. This increases critical path by at
worst 3 slides (SEW=64 is the worst case), but reduces register pressure
to at worst 2x - and only if the original index vector is reused
elsewhere. I view this as arguably a bit of a workaround (since our
scheduling should have done better with the plain extract variant), but
a probably neccessary one.


  Commit: 84fe1f63b02414085bf7a8434caaf4a358be86da
      https://github.com/llvm/llvm-project/commit/84fe1f63b02414085bf7a8434caaf4a358be86da
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Shared/OrcRTBridge.h
    M llvm/include/llvm/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.h
    M llvm/include/llvm/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.h
    M llvm/lib/ExecutionEngine/Orc/ExecutorProcessControl.cpp
    M llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
    M llvm/lib/ExecutionEngine/Orc/Shared/OrcRTBridge.cpp
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp
    M llvm/lib/ExecutionEngine/Orc/UnwindInfoRegistrationPlugin.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink-executor/llvm-jitlink-executor.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC] Switch to singleton pattern for UnwindInfoManager. (#126691)

The find-dynamic-unwind-info callback registration APIs in libunwind
limit the number of callbacks that can be registered. If we use multiple
UnwindInfoManager instances, each with their own own callback function
(as was the case prior to this patch) we can quickly exceed this limit
(see https://github.com/llvm/llvm-project/issues/126611).

This patch updates the UnwindInfoManager class to use a singleton
pattern, with the single instance shared between all LLVM JITs in the
process.

This change does _not_ apply to compact unwind info registered through
the ORC runtime (which currently installs its own callbacks).

As a bonus this change eliminates the need to load an IR "bouncer"
module to supply the unique callback for each instance, so support for
compact-unwind can be extended to the llvm-jitlink tools (which does not
support adding IR).


  Commit: 376f65d865282d32c12f47a3247968e16025d1ef
      https://github.com/llvm/llvm-project/commit/376f65d865282d32c12f47a3247968e16025d1ef
  Author: Shoaib Meenai <smeenai at fb.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/IR/OperationSupport.h

  Log Message:
  -----------
  Revert "[mlir] Silence -Wdangling-assignment-gsl in OperationSupport.h (#126140)"

This reverts commit f6556afce0aa5a72ef42103875101d975e810474.

Buildbots are broken.


  Commit: 3a22cf9bd85f77b5274304eda6f90d758f0a6664
      https://github.com/llvm/llvm-project/commit/3a22cf9bd85f77b5274304eda6f90d758f0a6664
  Author: Daniel Hoekwater <hoekwater at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetFrameLowering.h
    M llvm/lib/CodeGen/CFIFixup.cpp
    M llvm/lib/CodeGen/TargetFrameLoweringImpl.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.cpp
    M llvm/lib/Target/AArch64/AArch64FrameLowering.h
    M llvm/test/CodeGen/AArch64/cfi-fixup-multi-section.mir

  Log Message:
  -----------
  [CFIFixup] Fixup CFI for split functions with synchronous uwtables (#125299)

- **Precommit tests for synchronous uwtable CFI fixup**
- **[CFIFixup] Fixup CFI for split functions with synchronous uwtables**

Commit
https://github.com/llvm/llvm-project/commit/6e54fccede402c9ed0e8038aa258a99c5a2773e5
disables CFI fixup for
functions with synchronous tables, breaking CFI for split functions.
Instead, we can disable *block-level* CFI fixup for functions with
synchronous tables.

Unwind tables can be:
- N/A (not present)
- Asynchronous
- Synchronous

Functions without unwind tables don't need CFI fixup (since they don't
care about CFI).

Functions with asynchronous unwind tables must be accurate for each
basic block, so full CFI fixup is necessary.

Functions with synchronous unwind tables only need to be accurate for
each function (specifically, the portion of a function in a given
section). Disabling CFI fixup entirely for functions with synchronous
uwtables may break CFI for a function split between two sections. The
portion in the first section may have valid CFI, while the portion in
the second section is missing a call frame.

Ex:
```
(.text.hot)
Foo (BB1):
  <Call frame information>
  ...
BB2:
  ...

(.text.split)
BB3:
  ...
BB4:
  <epilogue>
```

Even if `Foo` has a synchronous unwind table, we still need to insert
call frame information into `BB3` so that unwinding the call stack from
`BB3` or `BB4` works properly.


  Commit: 17721b7b1474331f67cf89ff95056b27eb1f5029
      https://github.com/llvm/llvm-project/commit/17721b7b1474331f67cf89ff95056b27eb1f5029
  Author: lntue <lntue at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/src/__support/FPUtil/double_double.h
    M libc/src/math/generic/range_reduction_double_common.h

  Log Message:
  -----------
  [libc][NFC] Remove DEFAULT_DOUBLE_SPLIT macro. (#126822)


  Commit: 9f61a60c777465c8a1bb67f80560a9e3b4d0f05b
      https://github.com/llvm/llvm-project/commit/9f61a60c777465c8a1bb67f80560a9e3b4d0f05b
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp

  Log Message:
  -----------
  [NFC] [clang] fixed unused variable warning


  Commit: ab0006ddba3e977c44e1e761909e09603816b32c
      https://github.com/llvm/llvm-project/commit/ab0006ddba3e977c44e1e761909e09603816b32c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll

  Log Message:
  -----------
  [RISCV] Allow undef prefix for local repeating VLA shuffle lowering (#126097)

Implement the first TODO from #125735, and minorly cleanup code using
same style as the recently landed strict prefix case.


  Commit: 022c9c9d3ac39c1f5a3efe143972dff4b62090b6
      https://github.com/llvm/llvm-project/commit/022c9c9d3ac39c1f5a3efe143972dff4b62090b6
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.h
    M llvm/test/CodeGen/NVPTX/addrspacecast.ll

  Log Message:
  -----------
  [NVPTX] Lower invalid `ISD::ADDRSPACECAST` (#125607)

Avoid [crashing](https://godbolt.org/z/8T58vcM68) when lowering
`addrspacecast ptr addrspace(<non-zero>) %ptr to ptr
addrspace(<non-zero>)`.


  Commit: a6a5507e368c8a69f5ed1796f3eeb3a5e9acd119
      https://github.com/llvm/llvm-project/commit/a6a5507e368c8a69f5ed1796f3eeb3a5e9acd119
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll

  Log Message:
  -----------
  Revert "[RISCV] Allow undef prefix for local repeating VLA shuffle lowering (#126097)"

This reverts commit ab0006ddba3e977c44e1e761909e09603816b32c.  It appears to have rebased badly during web merge.


  Commit: 36d8e7056ef08d0f51e5b1e928274a8ca7dadeb5
      https://github.com/llvm/llvm-project/commit/36d8e7056ef08d0f51e5b1e928274a8ca7dadeb5
  Author: Arda Unal <3157490+ardaunal at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Interfaces/LoopLikeInterface.td
    M mlir/include/mlir/Interfaces/SideEffectInterfaces.h
    M mlir/include/mlir/Transforms/LoopInvariantCodeMotionUtils.h
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Interfaces/SideEffectInterfaces.cpp
    M mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
    M mlir/test/Transforms/loop-invariant-code-motion.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir] Enable LICM for ops with only read side effects in scf.for (#120302)

Enable ops with only read side effects in scf.for to be hoisted with a
scf.if guard that checks against the trip count

This patch takes a step towards a less conservative LICM in MLIR as
discussed in the following discourse thread:

[Speculative LICM?](https://discourse.llvm.org/t/speculative-licm/80977)

This patch in particular does the following:

1. Relaxes the original constraint for hoisting that only hoists ops
without any side effects. This patch also allows the ops with only read
side effects to be hoisted into an scf.if guard only if every op in the
loop or its nested regions is side-effect free or has only read side
effects. This scf.if guard wraps the original scf.for and checks for
**trip_count > 0**.
2. To support this, two new interface methods are added to
**LoopLikeInterface**: _wrapInTripCountCheck_ and
_unwrapTripCountCheck_. Implementation starts with wrapping the scf.for
loop into scf.if guard using _wrapInTripCountCheck_ and if there is no
op hoisted into the this guard after we are done processing the
worklist, it unwraps the guard by calling _unwrapTripCountCheck_.


  Commit: b72079e75dbbe94752c3c187d79828845a65327d
      https://github.com/llvm/llvm-project/commit/b72079e75dbbe94752c3c187d79828845a65327d
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp

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

This patch fixes:

  llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp:53:20:
  error: unused variable 'AddFnName' [-Werror,-Wunused-variable]


  Commit: 31c4d17fbce07a77b34973a7e275c1e2182039b5
      https://github.com/llvm/llvm-project/commit/31c4d17fbce07a77b34973a7e275c1e2182039b5
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp

  Log Message:
  -----------
  [ExecutionEngine] Fix formatting (NFC)


  Commit: 574ccc6d1b85e9e93b674152ab60df3b0deed86f
      https://github.com/llvm/llvm-project/commit/574ccc6d1b85e9e93b674152ab60df3b0deed86f
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M libc/src/time/time_utils.h

  Log Message:
  -----------
  [libc] fix get_epoch constexpr error (#126818)

get_epoch calls mktime_internal which isn't constexpr. For now, just
remove the constexpr from get_epoch.


  Commit: 934c97dd16ae8048ae009d97be7d80db4e1dee66
      https://github.com/llvm/llvm-project/commit/934c97dd16ae8048ae009d97be7d80db4e1dee66
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerBufferFatPointers.cpp
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-pointer-ops.ll

  Log Message:
  -----------
  [LowerBufferFatPointers] Fix support for GEP T, p7, <N x T> idxs (#126126)

The lowering for GEP didn't properly support the case where the pointer
argument was being implicitly broadcast by a vector of indices. Fix
that.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 9db0f91ceb6c5065fa7b119888e0fe15702300d3
      https://github.com/llvm/llvm-project/commit/9db0f91ceb6c5065fa7b119888e0fe15702300d3
  Author: Christopher Ferris <cferris1000 at users.noreply.github.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M compiler-rt/lib/scudo/standalone/chunk.h
    M compiler-rt/lib/scudo/standalone/report.cpp
    M compiler-rt/lib/scudo/standalone/report.h
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp

  Log Message:
  -----------
  [scudo] Modify header corrupption error message (#126812)

Update the error message to be explicit that this is likely due to
memory corruption.

In addition, check if the chunk header is all zero, which could mean
corruption or an attempt to free a pointer after the memory has been
released to the kernel. This case results in a slightly different error
message to also indicate this could still be a double free.


  Commit: f15a6c99fa552f82dad46e6bf3c8ff958c8b6e7f
      https://github.com/llvm/llvm-project/commit/f15a6c99fa552f82dad46e6bf3c8ff958c8b6e7f
  Author: donald chen <chenxunyu1993 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Analysis/DataFlow/IntegerRangeAnalysis.cpp
    M mlir/test/Interfaces/InferIntRangeInterface/infer-int-range-test-ops.mlir

  Log Message:
  -----------
  [mlir] [DataFlow] Fix bug in int-range-analysis (#126708)

When querying the lower bound and upper bound of loop to update the
value range of a loop iteration variable, the program point to depend on
should be the block corresponding to the iteration variable rather than
the loop operation.


  Commit: 82cbb02cbc79bfcadc77385535caf3813d82cac0
      https://github.com/llvm/llvm-project/commit/82cbb02cbc79bfcadc77385535caf3813d82cac0
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/test/Conversion/VectorToLLVM/vector-to-llvm-interface.mlir

  Log Message:
  -----------
  [mlir][vector][NFC] Fix typos in tests (#126662)

[mlir][vector] Fix typos in tests (nfc)

Fix typos in `{insert|extract}_scalar_from_vec_2d_f32_dynamic_idxs_compile_time_constant` - the intention was to use `f32` rather than `i32`.


  Commit: 6de4de893188b1b548417c8073fa929d4befb16d
      https://github.com/llvm/llvm-project/commit/6de4de893188b1b548417c8073fa929d4befb16d
  Author: c8ef <c8ef at outlook.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/endian-macros.h

  Log Message:
  -----------
  [libc] implement endian related macros (#126368)

Follow up of #125168.

This patch adds endian-related macros to `endian.h`. We utilize compiler
built-ins for byte swap functions, which are already included in our
minimal supported compiler version.


  Commit: bfbe5319a8d0e96d90687be009b77a21820b91f8
      https://github.com/llvm/llvm-project/commit/bfbe5319a8d0e96d90687be009b77a21820b91f8
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vadd.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vshift.ll

  Log Message:
  -----------
  [msan] Add handlePairwiseShadowOrIntrinsic and use it to handle Arm NEON pairwise add (#126008)

This patch adds a function, handlePairwiseShadowOrIntrinsic that ORs
pairs of adjacent shadow values; this is suitable for propagating shadow
for 1- or 2-vector intrinsics that combine adjacent fields. It then
applies handlePairwiseShadowOrIntrinsic to Arm NEON pairwise add:
llvm.aarch64.neon.{addhn, raddhn} (currently incorrectly handled) and
llvm.aarch64.neon.{saddlp, uaddlp} (currently suboptimally handled).

Updates the tests from https://github.com/llvm/llvm-project/pull/125820.


  Commit: a0fbc19ad6bcc77ee7c9e5161d5ac23f90da0aa0
      https://github.com/llvm/llvm-project/commit/a0fbc19ad6bcc77ee7c9e5161d5ac23f90da0aa0
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp

  Log Message:
  -----------
  [MemorySanitizer] Silence an unused-variable warning (NFC)

/llvm-project/llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp:2622:22:
 error: unused variable 'ReturnType' [-Werror,-Wunused-variable]
    FixedVectorType *ReturnType = cast<FixedVectorType>(I.getType());
                     ^
1 error generated.


  Commit: acd34d90d3acd9dd260fdb93c54f70c222e26875
      https://github.com/llvm/llvm-project/commit/acd34d90d3acd9dd260fdb93c54f70c222e26875
  Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M clang/cmake/modules/AddClang.cmake

  Log Message:
  -----------
  [Clang][CMake][MSVC] Install PDBs alongside executables (#126675)

* Follows up on https://github.com/llvm/llvm-project/pull/120683
enabling PDBs for `clang`.


  Commit: cc7e83601d759349b0ded7d75b5550f3c625dfcf
      https://github.com/llvm/llvm-project/commit/cc7e83601d759349b0ded7d75b5550f3c625dfcf
  Author: Luke Lau <luke at igalia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCV.h
    M llvm/lib/Target/RISCV/RISCVISelDAGToDAG.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVSDPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoVVLPatterns.td
    M llvm/lib/Target/RISCV/RISCVInstrInfoZvk.td
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    A llvm/lib/Target/RISCV/RISCVVMV0Elimination.cpp
    M llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
    M llvm/test/CodeGen/RISCV/GlobalISel/instruction-select/rvv/select.mir
    M llvm/test/CodeGen/RISCV/O0-pipeline.ll
    M llvm/test/CodeGen/RISCV/O3-pipeline.ll
    M llvm/test/CodeGen/RISCV/rvv/copyprop.mir
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fnearbyint-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/implicit-def-copy.ll
    M llvm/test/CodeGen/RISCV/rvv/mask-reg-alloc.mir
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/pass-fast-math-flags-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-to-vmv.mir
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops-mir.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpload-vpstore-output.ll
    M llvm/test/CodeGen/RISCV/rvv/vleff-vlseg2ff-output.ll
    A llvm/test/CodeGen/RISCV/rvv/vmv0-elimination.ll

  Log Message:
  -----------
  [RISCV] Select mask operands as virtual registers and eliminate uses of vmv0 (#125026)

This is another attempt at #88496 to keep mask operands in SSA after
instruction selection.

Previously we selected the mask operands into vmv0, a singleton register
class with exactly one register, V0.

But the register allocator doesn't really support singleton register
classes and we ran into errors like "ran out of registers during
register allocation in function".

This avoids this by introducing a pass just before register allocation
that converts any use of vmv0 to a copy to $v0, i.e. what isel currently
does today.

That way the register allocator doesn't need to deal with the singleton
register class, but we get the benefits of having the mask registers in
SSA throughout the backend:

- This allows RISCVVLOptimizer to reduce the VLs of instructions that
define mask registers
- It enables CSE and code sinking in more places
- It removes the need to peek through mask copies in RISCVISelDAGToDAG
and keep track of V0 defs in RISCVVectorPeephole

This patch initially eliminates uses of vmv0s after RISCVVectorPeephole
to keep the diff to a minimum, and a follow up patch will move it past
the other MachineInstr SSA passes.

Note that it doesn't try to remove any defs of vmv0 as we shouldn't have
any instructions that have any vmv0 outputs.

As a further follow up, we can move the elimination pass to after phi
elimination and outside of SSA, which would unblock the pre-RA scheduler
around masked pseudos. This might also help the issue that
RISCVVectorMaskDAGMutation tries to solve.


  Commit: 4a63ff4330342aeb4a4f62cca32cfcd07ba91cab
      https://github.com/llvm/llvm-project/commit/4a63ff4330342aeb4a4f62cca32cfcd07ba91cab
  Author: Hongtao Yu <hoy at meta.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Interfaces/LoopLikeInterface.td
    M mlir/include/mlir/Interfaces/SideEffectInterfaces.h
    M mlir/include/mlir/Transforms/LoopInvariantCodeMotionUtils.h
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Interfaces/SideEffectInterfaces.cpp
    M mlir/lib/Transforms/Utils/LoopInvariantCodeMotionUtils.cpp
    M mlir/test/Transforms/loop-invariant-code-motion.mlir
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  Revert "[mlir] Enable LICM for ops with only read side effects in scf.for" (#126840)

Reverts llvm/llvm-project#120302


  Commit: caa9fae2e7bd61aa73bdd4b77933b067078e822f
      https://github.com/llvm/llvm-project/commit/caa9fae2e7bd61aa73bdd4b77933b067078e822f
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

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


  Commit: 31bfae35d26ac07636f944cdbe140ccd9ee8eca6
      https://github.com/llvm/llvm-project/commit/31bfae35d26ac07636f944cdbe140ccd9ee8eca6
  Author: Jim Lin <jim at andestech.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/align-down.ll
    M llvm/test/CodeGen/X86/align-down.ll
    M llvm/test/CodeGen/X86/not-of-dec.ll

  Log Message:
  -----------
  [DAGCombiner] Add hasOneUse checks for folding (not (add X, -1)) to (neg X) (#126667)

To get more better codegen for AArch with bic, x86 with andn and riscv
with andn.


  Commit: df2dca7a73db58289cd95ac9058c9338dc0bd2fd
      https://github.com/llvm/llvm-project/commit/df2dca7a73db58289cd95ac9058c9338dc0bd2fd
  Author: Abhishek Kaushik <abhishek.kaushik at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCELFStreamer.h

  Log Message:
  -----------
  [MC] Use `std::move` to avoid copy (#126700)


  Commit: 84e3c6ff9591d4e93b5a30dbcffc985d41d87bda
      https://github.com/llvm/llvm-project/commit/84e3c6ff9591d4e93b5a30dbcffc985d41d87bda
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

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

THis patch fixes:

  llvm/lib/Target/RISCV/RISCVVMV0Elimination.cpp:91:29: error: unused
  variable 'TRI' [-Werror,-Wunused-variable]


  Commit: 9e5c136d5a1a8acee9e7acfbe14cc6d4490dee2e
      https://github.com/llvm/llvm-project/commit/9e5c136d5a1a8acee9e7acfbe14cc6d4490dee2e
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M offload/include/Shared/Environment.h
    M offload/plugins-nextgen/common/include/GlobalHandler.h
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/test/lit.cfg
    M offload/test/lit.site.cfg.in
    M offload/test/offloading/pgo1.c
    M openmp/docs/design/Runtimes.rst

  Log Message:
  -----------
   [PGO][Offload] Profile profraw generation for GPU instrumentation #76587  (#93365)

This pull request is the second part of an ongoing effort to extends PGO
instrumentation to GPU device code and depends on #76587. This PR makes
the following changes:

- Introduces `__llvm_write_custom_profile` to PGO compiler-rt library.
This is an external function that can be used to write profiles with
custom data to target-specific files.
- Adds `__llvm_write_custom_profile` as weak symbol to libomptarget so
that it can write the collected data to a profraw file.
- Adds `PGODump` debug flag and only displays dump when the
aforementioned flag is set


  Commit: 9c725ef368fb3e6f797833a2354533d1f1c4ad45
      https://github.com/llvm/llvm-project/commit/9c725ef368fb3e6f797833a2354533d1f1c4ad45
  Author: Vikram Hegde <115221833+vikramRH at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.h
    M llvm/lib/Target/AMDGPU/AMDGPUPassRegistry.def
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/lib/Target/AMDGPU/GCNRewritePartialRegUses.cpp
    A llvm/lib/Target/AMDGPU/GCNRewritePartialRegUses.h
    M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses-dbg.mir
    M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses-gen.mir
    M llvm/test/CodeGen/AMDGPU/rewrite-partial-reg-uses.mir

  Log Message:
  -----------
  [AMDGPU][NewPM] Port "GCNRewritePartialRegUses" pass to NPM (#126024)


  Commit: d222488007b294e897fb5c29971d87c3148ae33b
      https://github.com/llvm/llvm-project/commit/d222488007b294e897fb5c29971d87c3148ae33b
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h

  Log Message:
  -----------
  [AsmParser] Remove OperandMatchResultTy (#126650)

This has been deprecated since a479be0f39a3301e9ca634d37cf6454b6d3865c6
from September 2023, before LLVM 18. Surely now enough release cycles
have happened that it can be removed upstream.


  Commit: ec28e9b7579347f0ba00882850fdc99218da7c20
      https://github.com/llvm/llvm-project/commit/ec28e9b7579347f0ba00882850fdc99218da7c20
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCContext.h
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/MC/MCContext.cpp
    M llvm/lib/MC/MCObjectFileInfo.cpp
    M llvm/lib/MC/MCParser/WasmAsmParser.cpp
    M llvm/lib/Target/WebAssembly/AsmParser/WebAssemblyAsmParser.cpp

  Log Message:
  -----------
  [MC] Replace MCContext::GenericSectionID with MCSection::NonUniqueID (#126202)

They have same semantics. NonUniqueID is more friendly for isUnique
implementation in MCSectionELF.

History: 97837b7 added support for unique IDs in sections and added
GenericSectionID. Later, 1dc16c7 added NonUniqueID.


  Commit: 52ee06d2730ebcc6e97d63eea222901a3f3d71d8
      https://github.com/llvm/llvm-project/commit/52ee06d2730ebcc6e97d63eea222901a3f3d71d8
  Author: Ethan Luis McDonough <ethanluismcdonough at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M offload/test/offloading/pgo1.c

  Log Message:
  -----------
  [PGO][Offload] Fix pgo1.c (#126864)

pgo1.c had outdated test checks


  Commit: de968c8e1c711728b62c441fbaa518c958882882
      https://github.com/llvm/llvm-project/commit/de968c8e1c711728b62c441fbaa518c958882882
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  AMDGPU: Use range to implement getSubRegs (#126861)

Fixes #126781


  Commit: be9842837486c674c9001732356a43b27d7cdba5
      https://github.com/llvm/llvm-project/commit/be9842837486c674c9001732356a43b27d7cdba5
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp

  Log Message:
  -----------
  [NFC][Pipelines] Extract buildCoroConditionalWrapper (#126860)

Helper for #126168.

`Phase` will be used in followup patches.


  Commit: 3ca9238cb0d3cdf1961c81931a624b24c787ed82
      https://github.com/llvm/llvm-project/commit/3ca9238cb0d3cdf1961c81931a624b24c787ed82
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2025-02-11 (Tue, 11 Feb 2025)

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

  Log Message:
  -----------
  [clang-format][NFC] Fix test case format


  Commit: 7dd82805d54bab37bc0ca4731d7837d4dd5302af
      https://github.com/llvm/llvm-project/commit/7dd82805d54bab37bc0ca4731d7837d4dd5302af
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [SelectionDAGBuilder] Remove NodeMap updates from getValueImpl. NFC (#126849)

Both callers already put the result in NodeMap immediately after the
call.


  Commit: 46f1bab7930cb118c61bf5ff221790240ec07512
      https://github.com/llvm/llvm-project/commit/46f1bab7930cb118c61bf5ff221790240ec07512
  Author: Amit Kumar Pandey <137622562+ampandey-1995 at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/ROCm.h
    M clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/hip-sanitize-options.hip

  Log Message:
  -----------
  Reapply "[Driver][ROCm][OpenMP] Fix default ockl linking for OpenMP."… (#126671)

- This reverts commit
https://github.com/llvm/llvm-project/commit/0c6c4a99936d4d39015c8d2332483f8db78f69cf.
  - Add '-mcode-object-version=5' as to explicitly use code object
    version 5 to match with 'FAIL' diagnostic.
  - Add Requires directive to support lit test run on platforms
    registered with x86_64 and amdgpu.


  Commit: 0b9b014be7f5130e2ac2809cb1914441b7870a7e
      https://github.com/llvm/llvm-project/commit/0b9b014be7f5130e2ac2809cb1914441b7870a7e
  Author: Adam Siemieniuk <adam.siemieniuk at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/DLTI/DLTI.h
    M mlir/lib/Dialect/DLTI/DLTI.cpp

  Log Message:
  -----------
  [mlir][dlti] Query by strings (#126716)

Adds DLTI utility to query using strings directly as keys.


  Commit: 215fa9e175c6ef9e2fa92f77fbd4015cd4c99a67
      https://github.com/llvm/llvm-project/commit/215fa9e175c6ef9e2fa92f77fbd4015cd4c99a67
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.h

  Log Message:
  -----------
  [NVPTX] Cleanup/Refactoring in NVPTX AsmPrinter and RegisterInfo (NFC) (#126800)


  Commit: 0abe058d7f99c9c7bbaf4ee98308c5e78d229897
      https://github.com/llvm/llvm-project/commit/0abe058d7f99c9c7bbaf4ee98308c5e78d229897
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M bolt/tools/driver/llvm-bolt.cpp

  Log Message:
  -----------
  [BOLT] Use getMainExecutable() (#126698)

Use LLVM's getMainExecutable() helper instead of rolling our own. This
will result in standard behavior across platforms, such as making sure
that symlinks are always resolved.


  Commit: 39f0f0a21b0f638f13c9440e4607151afc8437ac
      https://github.com/llvm/llvm-project/commit/39f0f0a21b0f638f13c9440e4607151afc8437ac
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.find/ranges.find.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.foreach/for_each.pass.cpp

  Log Message:
  -----------
  [libc++] Remove obsolete guards for join_view being experimental (#126697)

These TODOs were forgotten when join_view was made non-experimental. By
removing these checks, we slightly increase the coverage of the test
suite.


  Commit: 65075a863bda6e0afd79dd9babc989d465040c65
      https://github.com/llvm/llvm-project/commit/65075a863bda6e0afd79dd9babc989d465040c65
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/fir-ops.fir

  Log Message:
  -----------
  [flang][FIR] handle argument attributes in fir.call (#126711)

Add pretty printer/parser for fir.call argument/result attributes and
propagate them to llvm.call.

This will allow implementing the TODO about ABI relevant argument
attribute in indirect calls.


  Commit: 25c055416643f3291dfaa8136cb3a17b00656779
      https://github.com/llvm/llvm-project/commit/25c055416643f3291dfaa8136cb3a17b00656779
  Author: Fraser Cormack <fraser at codeplay.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libclc/CMakeLists.txt
    A libclc/clc/include/clc/clc_convert.h
    A libclc/clc/include/clc/float/definitions.h
    M libclc/generic/include/clc/convert.h
    R libclc/generic/include/clc/float/definitions.h
    M libclc/generic/lib/gen_convert.py

  Log Message:
  -----------
  [libclc] Move conversion builtins to the CLC library (#124727)

This commit moves the implementations of conversion builtins to the CLC
library. It keeps the dichotomy of regular vs. clspv implementations of
the conversions. However, for the sake of a consistent interface all CLC
conversion routines are built, even the ones that clspv opts out of in
the user-facing OpenCL layer.

It simultaneously updates the python script to use f-strings for
formatting.


  Commit: 20506a0a15f9c4a7dc1cd0b4fa2dec8449074ab8
      https://github.com/llvm/llvm-project/commit/20506a0a15f9c4a7dc1cd0b4fa2dec8449074ab8
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix operator new source expression (#126870)

... for composite element types. Looks like I forgot this in
e6030d389571b3f1b0f0c5a35b7fa45937ed0f6c


  Commit: 8359dbc8c08ca4206534d605dd299713dc323b67
      https://github.com/llvm/llvm-project/commit/8359dbc8c08ca4206534d605dd299713dc323b67
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 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/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] combineEXTRACT_SUBVECTOR - fold extract_subvector(subv_broadcast_load(ptr),0) -> load(ptr) (#126523)

This is typically handled by SimplifyDemandedVectorElts, but this will
fail when there are multiple uses of the subv_broadcast_load node, but
if there's just one use of the load result (and the rest are uses of the
memory chain), we can still replace with a load and update the chain
accordingly.

Noticed on #126517


  Commit: c03325cead2244ef0a89bb1cf365bddf16021daf
      https://github.com/llvm/llvm-project/commit/c03325cead2244ef0a89bb1cf365bddf16021daf
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/test/Fir/box.fir
    M flang/test/Fir/rebox-global.fir
    M flang/test/Fir/type-descriptor.fir
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Target/LLVMIR/llvmir.mlir
    M mlir/test/Target/LLVMIR/omptarget-declare-target-llvm-host.mlir

  Log Message:
  -----------
  [MLIR][LLVMIR] Use TargetFolder when creating globals (#126745)

The LLVM dialect lowers globals using IRBuilder, relying on it creating
constant expressions where possible. As we remove support for more
constant expressions (per
https://discourse.llvm.org/t/rfc-remove-most-constant-expressions/63179),
this can cause issues for cases where the constant expression is no
longer supported, and the operation cannot be constant folded without
DataLayout being available. In particular, I ran into this issue with
flang and the removal of mul constant expressions.

Address this by using TargetFolder when creating globals, which will
perform DL-aware constant folding. I think it would make sense to also
do this in general, but I'm starting with globals where not doing this
can result in translation failures.

Ideally, globals with these problematic expressions would never be
generated in the first place, but there has been little movement on
fixing this (https://github.com/llvm/llvm-project/issues/96047).


  Commit: c174cc48401292e2eb9317128f56fd22af2f4848
      https://github.com/llvm/llvm-project/commit/c174cc48401292e2eb9317128f56fd22af2f4848
  Author: Yeaseen <yeaseen.arafat96 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/coalescer-subreg.ll
    M llvm/test/CodeGen/X86/code_placement_eh.ll
    M llvm/test/CodeGen/X86/codegen-prepare-cast.ll
    M llvm/test/CodeGen/X86/discontiguous-loops.ll
    M llvm/test/CodeGen/X86/early-ifcvt-crash.ll
    M llvm/test/CodeGen/X86/fast-isel-stackcheck.ll
    M llvm/test/CodeGen/X86/fp-stack-O0-crash.ll
    M llvm/test/CodeGen/X86/fp-stack.ll
    M llvm/test/CodeGen/X86/implicit-null-chk-reg-rewrite.mir
    M llvm/test/CodeGen/X86/insert-positions.ll
    M llvm/test/CodeGen/X86/legalize-sub-zero-2.ll
    M llvm/test/CodeGen/X86/licm-symbol.ll
    M llvm/test/CodeGen/X86/liveness-local-regalloc.ll
    M llvm/test/CodeGen/X86/lsr-overflow.ll
    M llvm/test/CodeGen/XCore/2010-02-25-LSR-Crash.ll

  Log Message:
  -----------
  [llvm] Remove `br i1 undef` in some `llvm/test/CodeGen` tests (#126811)

This PR replaces some instances of `br i1 undef` with function argument
value in several tests under `llvm/test/CodeGen/` directory.


  Commit: 73413bd6a30c34d37b94f4cbd604b6b1ba7184e6
      https://github.com/llvm/llvm-project/commit/73413bd6a30c34d37b94f4cbd604b6b1ba7184e6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/CMakeLists.txt

  Log Message:
  -----------
  [mlir] Add missing dependency

After #126745, we should also depend on the Analysis component.


  Commit: 37f36cbffb890a0c144211dec0c3589bd17f2a36
      https://github.com/llvm/llvm-project/commit/37f36cbffb890a0c144211dec0c3589bd17f2a36
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/source/Commands/CommandObjectDisassemble.cpp
    M lldb/source/Commands/CommandObjectDisassemble.h
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/test/Shell/Commands/command-disassemble.s

  Log Message:
  -----------
  [lldb] Support disassembling discontinuous functions (#126505)

The command already supported disassembling multiple ranges, among other
reasons because inline functions can be discontinuous. The main thing
that was missing was being able to retrieve the function ranges from the
top level function object.

The output of the command for the case where the function entry point is
not its lowest address is somewhat confusing (we're showing negative
offsets), but it is correct.


  Commit: 32faf438785ec5d7b3d2d605ae30ee6ab337a163
      https://github.com/llvm/llvm-project/commit/32faf438785ec5d7b3d2d605ae30ee6ab337a163
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/test/Lower/OpenMP/parallel-private-clause-str.f90

  Log Message:
  -----------
  [flang][OpenMP] Handle fixed length `charater`s in delayed privatization (#126704)

We currently handle sequences of fixed-length arrays properly by **not**
emitting length parameters for `embox` ops inside the `omp.private` op.
However, we do not handle the scalar case. This PR extends
`getLengthParameters` defined in `PrivateReductionUtils.cpp` to handle
such cases.

Fixes issue reported in #125732.


  Commit: f73ed3d4346c37292fbee99361a904e371d1d9eb
      https://github.com/llvm/llvm-project/commit/f73ed3d4346c37292fbee99361a904e371d1d9eb
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/any_extend_vector_inreg_of_broadcast_from_memory.ll
    M llvm/test/CodeGen/X86/avx512fp16-mov.ll
    M llvm/test/CodeGen/X86/copy-low-subvec-elt-to-high-subvec-elt.ll
    M llvm/test/CodeGen/X86/expand-vp-cast-intrinsics.ll
    M llvm/test/CodeGen/X86/matrix-multiply.ll
    M llvm/test/CodeGen/X86/pr51615.ll
    M llvm/test/CodeGen/X86/vector-half-conversions.ll
    M llvm/test/CodeGen/X86/vector-shuffle-128-v4.ll
    M llvm/test/CodeGen/X86/vector-shuffle-256-v16.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] lowerShuffleAsBroadcast - use isShuffleEquivalent to search for a hidden broadcast pattern (#126517)

lowerShuffleAsBroadcast only matches a known-splat shuffle mask, but we
can use the isShuffleEquivalent/IsElementEquivalent helpers to attempt
to find a hidden broadcast-able shuffle pattern.

This requires an extension to IsElementEquivalent to peek through
bitcasts to match against wider shuffles - these typically appear during
shuffle lowering where we've widened a preceding shuffle, often to a
vector concatenation etc.

Amazingly I hit this while yak shaving #126033 .......


  Commit: 5fe37ff75ab5cdacd78933726009488068aabca5
      https://github.com/llvm/llvm-project/commit/5fe37ff75ab5cdacd78933726009488068aabca5
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.h

  Log Message:
  -----------
  Revert "[NVPTX] Cleanup/Refactoring in NVPTX AsmPrinter and RegisterInfo (NFC) (#126800)"

This reverts commit 215fa9e175c6ef9e2fa92f77fbd4015cd4c99a67.

getNameOrAsOperand is only defined under DEBUG


  Commit: d51750dba1c8fff8ea774a259f1263093c2ac434
      https://github.com/llvm/llvm-project/commit/d51750dba1c8fff8ea774a259f1263093c2ac434
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [bazel] port c03325cead2244ef0a89bb1cf365bddf16021daf


  Commit: edbc1fb228acd7746d91cd72d476c063704504b8
      https://github.com/llvm/llvm-project/commit/edbc1fb228acd7746d91cd72d476c063704504b8
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/loop-assumptions.c

  Log Message:
  -----------
  [analyzer] Add option assume-at-least-one-iteration (#125494)

This commit adds the new analyzer option
`assume-at-least-one-iteration`, which is `false` by default, but can be
set to `true` to ensure that the analyzer always assumes at least one
iteration in loops.

In some situations this "loop is skipped" execution path is an important
corner case that may evade the notice of the developer and hide
significant bugs -- however, there are also many situations where it's
guaranteed that at least one iteration will happen (e.g. some data
structure is always nonempty), but the analyzer cannot realize this and
will produce false positives when it assumes that the loop is skipped.

This commit refactors some logic around the implementation of the new
feature, but the only functional change is introducing the new analyzer
option. If the new option is left in its default state (false), then the
analysis is functionally equivalent to an analysis done with a version
before this commit.


  Commit: bf7af2d12e3bb8c7bc322ed1c5bf4e9904ad409c
      https://github.com/llvm/llvm-project/commit/bf7af2d12e3bb8c7bc322ed1c5bf4e9904ad409c
  Author: David Green <david.green at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/fptosi-sat-vector.ll
    M llvm/test/CodeGen/AArch64/fptoui-sat-vector.ll

  Log Message:
  -----------
  [AArch64][DAG] Allow fptos/ui.sat to scalarized. (#126799)

We we previously running into problems with fp128 types and certain
integer sizes.

Fixes an issue reported on #124984


  Commit: 79010e2e4d0e27ee87887bfaef2c32e908c92a8e
      https://github.com/llvm/llvm-project/commit/79010e2e4d0e27ee87887bfaef2c32e908c92a8e
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [mlir] ArithToLLVM: fix memref bitcast lowering (#125148)

`arith.bitcast` is allowed on memrefs and such code can actually be
generated by IREE `ConvertBf16ArithToF32Pass`.
`LLVM::detail::vectorOneToOneRewrite` doesn't properly check its types
and will generate bitcast between structs which is illegal.

With the opaque pointers this is a no-op operation for memref so we can
just add type check in `LLVM::detail::vectorOneToOneRewrite` and add a
separate pattern which removes op if converted types are the same.


  Commit: 01afa8fc0b26e6beadbc57a90ded0e1e792d8a83
      https://github.com/llvm/llvm-project/commit/01afa8fc0b26e6beadbc57a90ded0e1e792d8a83
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [NFC][LLVM][LangRef] Improve documentation for partial.reduce.add. (#126728)


  Commit: 0e779ad4998ef65907502101c5b82ede05ddfa4e
      https://github.com/llvm/llvm-project/commit/0e779ad4998ef65907502101c5b82ede05ddfa4e
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  Revert "[mlir] ArithToLLVM: fix memref bitcast lowering" (#126895)

Reverts llvm/llvm-project#125148

bot failures


  Commit: 0fd50ec9a3d6669b8fb835d125a0494ebeb558f0
      https://github.com/llvm/llvm-project/commit/0fd50ec9a3d6669b8fb835d125a0494ebeb558f0
  Author: Frank Schlimbach <frank.schlimbach at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    A mlir/include/mlir/Dialect/Arith/Transforms/ShardingInterfaceImpl.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.h
    M mlir/include/mlir/Dialect/Mesh/IR/MeshOps.td
    M mlir/include/mlir/Dialect/Mesh/Interfaces/ShardingInterface.h
    M mlir/include/mlir/InitAllDialects.h
    M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/Arith/Transforms/ShardingInterfaceImpl.cpp
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp
    M mlir/lib/Dialect/Mesh/Interfaces/ShardingInterface.cpp
    M mlir/lib/Dialect/Mesh/Transforms/ShardingPropagation.cpp
    M mlir/lib/Dialect/Mesh/Transforms/Spmdization.cpp
    M mlir/lib/Dialect/Tensor/Extensions/MeshShardingExtensions.cpp
    A mlir/test/Dialect/Arith/mesh-spmdize.mlir
    A mlir/test/Dialect/Arith/sharding-propagation.mlir
    M mlir/test/Dialect/Mesh/canonicalization.mlir
    M mlir/test/Dialect/Mesh/ops.mlir
    M mlir/test/Dialect/Mesh/spmdization.mlir

  Log Message:
  -----------
  [MLIR][mesh] Mesh fixes (#124724)

A collection of fixes to the mesh dialect
- allow constants in sharding propagation/spmdization
- fixes to tensor replication (e.g. 0d tensors)
- improved canonicalization
- sharding propagation incorrectly generated too many ShardOps
New operation `mesh.GetShardOp` enables exchanging sharding information
(like on function boundaries)


  Commit: 036f543952570831a8c1ab41ec3f29c5eeea3919
      https://github.com/llvm/llvm-project/commit/036f543952570831a8c1ab41ec3f29c5eeea3919
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-lsfe.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64-atomicrmw-v8a_fp.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-lsfe.ll
    A llvm/test/CodeGen/AArch64/Atomics/aarch64_be-atomicrmw-v8a_fp.ll
    M llvm/test/CodeGen/AArch64/Atomics/generate-tests.py

  Log Message:
  -----------
  [AArch64] Pre-commit tests for #125686 (NFC) (#126643)

Update the `generate-tests.py` script to create new tests for `atomicrmw
{fadd,fmin,fmax}` and test these with `half`, `float`, `bfloat` and
`double`.

Generate fp auto-tests to check both with and without `+lsfe`, so that when
#125686 is merged, `+lsfe` will use a single atomic floating-point
instruction.


  Commit: 563d54569e416228d0229a20a48b50d434f5bf70
      https://github.com/llvm/llvm-project/commit/563d54569e416228d0229a20a48b50d434f5bf70
  Author: Paul Walker <paul.walker at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [NFC][LLVM][LangRef] Fix typos within partial.reduce.add documentation.


  Commit: 085bdb1e4c0b584aba84d90bf72997f6476881bc
      https://github.com/llvm/llvm-project/commit/085bdb1e4c0b584aba84d90bf72997f6476881bc
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [X86] canonicalizeShuffleWithOp - don't bother trying to move shuffles across binops to fold the load. (#126894)

Its not currently used, but is likely to just introduce additional shuffles, resulting in higher Port5 pressure etc. in future patches.


  Commit: 324e27e8bad83ca23a3cd276d7e2e729b1b0b8c7
      https://github.com/llvm/llvm-project/commit/324e27e8bad83ca23a3cd276d7e2e729b1b0b8c7
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Analysis/BasicAA/fallback-mayalias.ll
    M llvm/test/Transforms/InstCombine/icmp-dom.ll

  Log Message:
  -----------
  [ValueTracking] Infer NonEqual from dominating conditions/assumptions (#117442)

This patch adds context-sensitive analysis support for
`isKnownNonEqual`. It is required for
https://github.com/llvm/llvm-project/issues/117436.


  Commit: b101c35bc76b569793028dadd4e7faf08bee6952
      https://github.com/llvm/llvm-project/commit/b101c35bc76b569793028dadd4e7faf08bee6952
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++] Remove conditional for attributes that are always available (#126879)

These attributes are available in all supported compilers, so the
`#else` case of the conditional is dead code.


  Commit: 7647f478c3244f39e92b99ec07667595f86b84ff
      https://github.com/llvm/llvm-project/commit/7647f478c3244f39e92b99ec07667595f86b84ff
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 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/vector-interleaved-load-i32-stride-6.ll
    M llvm/test/CodeGen/X86/vector-shuffle-combining-avx.ll
    M llvm/test/CodeGen/X86/vselect-avx.ll
    M llvm/test/CodeGen/X86/zero_extend_vector_inreg_of_broadcast_from_memory.ll

  Log Message:
  -----------
  [X86] isShuffleFoldableLoad - only check that the SDValue has one use (#126900)

We don't need the entire load node to have oneuse, just the loaded value - prevents load chains from interfering with shuffle commutation


  Commit: 75dd4119b2798a53241089f77922a2e13ead6b94
      https://github.com/llvm/llvm-project/commit/75dd4119b2798a53241089f77922a2e13ead6b94
  Author: Takuto Ikuta <tikuta at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libcxxabi/src/cxa_default_handlers.cpp

  Log Message:
  -----------
  [libc++abi] Add a missing include for abort() (#126865)

This is to fix a build error when we use Clang modules in Chromium.


  Commit: 7b60e03d739166d5ad63719ebf772272f2d91781
      https://github.com/llvm/llvm-project/commit/7b60e03d739166d5ad63719ebf772272f2d91781
  Author: Akshat Oke <Akshat.Oke at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineScheduler.h
    M llvm/include/llvm/InitializePasses.h
    M llvm/include/llvm/Passes/CodeGenPassBuilder.h
    M llvm/include/llvm/Passes/MachinePassRegistry.def
    M llvm/lib/CodeGen/CodeGen.cpp
    M llvm/lib/CodeGen/MachineScheduler.cpp
    M llvm/lib/CodeGen/RegAllocBasic.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
    M llvm/test/CodeGen/AArch64/a55-fuse-address.mir
    M llvm/test/CodeGen/AArch64/ampere1-sched-add.mir
    M llvm/test/CodeGen/AArch64/cluster-frame-index.mir
    M llvm/test/CodeGen/AArch64/dump-reserved-cycles.mir
    M llvm/test/CodeGen/AArch64/dump-schedule-trace.mir
    M llvm/test/CodeGen/AArch64/force-enable-intervals.mir
    M llvm/test/CodeGen/AArch64/machine-scheduler.mir
    M llvm/test/CodeGen/AArch64/macro-fusion-addsub-2reg-const1.mir
    M llvm/test/CodeGen/AArch64/macro-fusion-last.mir
    M llvm/test/CodeGen/AArch64/misched-branch-targets.mir
    M llvm/test/CodeGen/AArch64/misched-bundle.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-01.mir
    M llvm/test/CodeGen/AArch64/misched-detail-resource-booking-02.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-arith-logic.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-cmp.mir
    M llvm/test/CodeGen/AArch64/misched-fusion-crypto-eor.mir
    M llvm/test/CodeGen/AArch64/misched-move-imm.mir
    M llvm/test/CodeGen/AArch64/misched-predicate-virtreg.mir
    M llvm/test/CodeGen/AArch64/misched-sort-resource-in-trace.mir
    M llvm/test/CodeGen/AArch64/sched-postidxalias.mir
    M llvm/test/CodeGen/AArch64/sched-print-cycle.mir
    M llvm/test/CodeGen/AArch64/scheduledag-constreg.mir
    M llvm/test/CodeGen/AArch64/sve-aliasing.mir
    M llvm/test/CodeGen/AMDGPU/at-least-one-def-value-assert.mir
    M llvm/test/CodeGen/AMDGPU/cluster-flat-loads.mir
    M llvm/test/CodeGen/AMDGPU/dbg-value-ends-sched-region.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler-crash.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler-liveins.mir
    M llvm/test/CodeGen/AMDGPU/debug-value-scheduler.mir
    M llvm/test/CodeGen/AMDGPU/flat-load-clustering.mir
    M llvm/test/CodeGen/AMDGPU/high-RP-reschedule.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-debug.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats.mir
    M llvm/test/CodeGen/AMDGPU/macro-fusion-cluster-vcc-uses.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-dead-def-subreg-use-other-subreg.mir
    M llvm/test/CodeGen/AMDGPU/sched-assert-onlydbg-value-empty-region.mir
    M llvm/test/CodeGen/AMDGPU/sched-barrier-hang-weak-dep.mir
    M llvm/test/CodeGen/AMDGPU/sched-crash-dbg-value.mir
    M llvm/test/CodeGen/AMDGPU/sched-handleMoveUp-subreg-def-across-subreg-def.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier-fpmode.mir
    M llvm/test/CodeGen/AMDGPU/schedule-barrier.mir
    M llvm/test/CodeGen/AMDGPU/sreg-xnull-regclass-bitwidth.mir
    M llvm/test/CodeGen/ARM/cortex-m7-wideops.mir
    M llvm/test/CodeGen/ARM/misched-branch-targets.mir
    M llvm/test/CodeGen/PowerPC/topdepthreduce-postra.mir
    M llvm/test/CodeGen/RISCV/misched-postra-direction.mir

  Log Message:
  -----------
  Reland "CodeGen][NewPM] Port MachineScheduler to NPM. (#125703)" (#126684)

`RegisterClassInfo` was supposed to be kept alive between pass runs,
which wasn't being done leading to recomputations increasing the compile
time.

Now the Impl class is a member of the legacy and new passes so that it
is not reconstructed on every pass run.

---------

Co-authored-by: Christudasan Devadasan <christudasan.devadasan at amd.com>


  Commit: 238563653fbb903e82f2aa1caa807187406250b6
      https://github.com/llvm/llvm-project/commit/238563653fbb903e82f2aa1caa807187406250b6
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Fix after https://github.com/llvm/llvm-project/commit/0fd50ec9a3d6669b8fb835d125a0494ebeb558f0


  Commit: f3a1d558116904b793ff8ece7dae9605b741b178
      https://github.com/llvm/llvm-project/commit/f3a1d558116904b793ff8ece7dae9605b741b178
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Fix after https://github.com/llvm/llvm-project/commit/0fd50ec9a3d6669b8fb835d125a0494ebeb558f0

Second attempt.


  Commit: a1826b4d2603a2018ca348d430159ec59e0b72bd
      https://github.com/llvm/llvm-project/commit/a1826b4d2603a2018ca348d430159ec59e0b72bd
  Author: Matt <MattPD at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    A openmp/runtime/test/misc_bugs/simd_conservative_ordered.c

  Log Message:
  -----------
  [OpenMP][SIMD][FIX] Use conservative "omp simd ordered" lowering (#126172)

A proposed fix for the issue #95611, [OpenMP][SIMD] ordered has no
effect in a loop SIMD region as of LLVM 18.1.0

Changes:

- Implement new lowering behavior: Conservatively serialize "omp simd"
loops that have `omp simd ordered` directive to prevent incorrect
vectorization (which results in incorrect execution behavior of the
miscompiled program).

Implementation outline:

- We start with the optimistic default initial value of
`LoopStack.setParallel(/Enable=/true);` in
`CodeGenFunction::EmitOMPSimdInit(const OMPLoopDirective &D)`.
- We only disable the loop parallel memory access assumption with `if
(HasOrderedDirective) LoopStack.setParallel(/Enable=/false);` using the
`HasOrderedDirective` (which tests for the presence of an
`OMPOrderedDirective`).
- This results in no longer incorrectly vectorizing the loop when the
`omp simd ordered` directive is present.

Motivation: We'd like to prevent incorrect vectorization of the loops
marked with the `#pragma omp ordered simd` directive which has
previously resulted in miscompiled code.

At the same time, we'd like the usage outside of the `#pragma omp
ordered simd` context to remain unaffected: Note that in the test
"clang/test/OpenMP/ordered_codegen.cpp" we only "lose" the
`!llvm.access.group` metadata in `foo_simd` alone.

This is conservative, in that it's possible some of the loops would be
possible to vectorize, but we prefer to avoid miscompilation of the
loops that are currently illegal to vectorize.

A concrete example follows:

```cpp
// "test.c"
#include <float.h>
#include <math.h>
#include <omp.h>
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

int compare_float(float x1, float x2, float scalar) {
    const float diff = fabsf(x1 - x2);
    x1 = fabsf(x1);
    x2 = fabsf(x2);
    const float l = (x2 > x1) ? x2 : x1;
    if (diff <= l * scalar * FLT_EPSILON)
        return 1;
    else
        return 0;
}

#define ARRAY_SIZE 256

__attribute__((noinline)) void initialization_loop(
    float X[ARRAY_SIZE][ARRAY_SIZE], float Y[ARRAY_SIZE][ARRAY_SIZE]) {
    const float max = 1000.0;
    srand(time(NULL));
    for (int r = 0; r < ARRAY_SIZE; r++) {
        for (int c = 0; c < ARRAY_SIZE; c++) {
            X[r][c] = ((float)rand() / (float)(RAND_MAX)) * max;
            Y[r][c] = X[r][c];
        }
    }
}

__attribute__((noinline)) void omp_simd_loop(float X[ARRAY_SIZE][ARRAY_SIZE]) {
    for (int r = 1; r < ARRAY_SIZE; ++r) {
        for (int c = 1; c < ARRAY_SIZE; ++c) {
#pragma omp simd
            for (int k = 2; k < ARRAY_SIZE; ++k) {
#pragma omp ordered simd
                X[r][k] = X[r][k - 2] + sinf((float)(r / c));
            }
        }
    }
}

__attribute__((noinline)) int comparison_loop(float X[ARRAY_SIZE][ARRAY_SIZE],
                                              float Y[ARRAY_SIZE][ARRAY_SIZE]) {
    int totalErrors_simd = 0;
    const float scalar = 1.0;
    for (int r = 1; r < ARRAY_SIZE; ++r) {
        for (int c = 1; c < ARRAY_SIZE; ++c) {
            for (int k = 2; k < ARRAY_SIZE; ++k) {
                Y[r][k] = Y[r][k - 2] + sinf((float)(r / c));
            }
        }
        // check row for simd update
        for (int k = 0; k < ARRAY_SIZE; ++k) {
            if (!compare_float(X[r][k], Y[r][k], scalar)) {
                ++totalErrors_simd;
            }
        }
    }
    return totalErrors_simd;
}

int main(void) {
    float X[ARRAY_SIZE][ARRAY_SIZE];
    float Y[ARRAY_SIZE][ARRAY_SIZE];

    initialization_loop(X, Y);
    omp_simd_loop(X);
    const int totalErrors_simd = comparison_loop(X, Y);

    if (totalErrors_simd) {
        fprintf(stdout, "totalErrors_simd: %d \n", totalErrors_simd);
        fprintf(stdout, "%s : %d - FAIL: error in ordered simd computation.\n",
                __FILE__, __LINE__);
    } else {
        fprintf(stdout, "Success!\n");
    }

    return totalErrors_simd;
}
```

Before:

```
$ clang -fopenmp-simd -O3 -ffast-math -lm test.c -o test && ./test
totalErrors_simd: 15408
test.c : 76 - FAIL: error in ordered simd computation.
```

clang 19.1.0: https://godbolt.org/z/6EvhxqEhe

After:

```
$ clang -fopenmp-simd -O3 -ffast-math test.c -o test && ./test
Success!
```

Co-authored-by: Matt P. Dziubinski <matt-p.dziubinski at hpe.com>


  Commit: acce3b808d69b6a75b0b7c7d5eea5a81e416dc6c
      https://github.com/llvm/llvm-project/commit/acce3b808d69b6a75b0b7c7d5eea5a81e416dc6c
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Mesh/IR/MeshOps.cpp

  Log Message:
  -----------
  [mlir] Mark variable as maybe_unused.


  Commit: 3e62321ed9bb4f94c901d9c4286b15e5619206e6
      https://github.com/llvm/llvm-project/commit/3e62321ed9bb4f94c901d9c4286b15e5619206e6
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [LoopVectorize] Make collectInLoopReductions more efficient (#126769)

We call collectInLoopReductions in multiple places asking
the same question with exactly the same answer. For
example, this was being called from a loop in
calculateRegisterUsage and this patch hoists the call out
to above the loop. In addition I've changed
collectInLoopReductions so that it bails out if we've
already built up a list.


  Commit: cbe879d6858fe2962261181818d694b8367fe804
      https://github.com/llvm/llvm-project/commit/cbe879d6858fe2962261181818d694b8367fe804
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Transforms/Passes.td

  Log Message:
  -----------
  [Flang] Fix options for FunctionAttr pass (#126819)

For non-basic types GenericOptionParser::findArgStrForValue will return
null, ultimately an llvm_unreachable, when the specific values are not
found. Add the enum, much like the debug-level option in AddDebugInfo to
resolve this problem. Also change tuneCPU to be std::string or it will
also fail.


  Commit: 767b15f9d57cf31fd6ba2aed8c17a8c30d5b5e6e
      https://github.com/llvm/llvm-project/commit/767b15f9d57cf31fd6ba2aed8c17a8c30d5b5e6e
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    A clang/test/SemaHLSL/use-cxx-alt-operator-names.hlsl

  Log Message:
  -----------
  [HLSL] Change clang Driver Options to not set CXXOperatorNames (#126758)

- Disable `CXXOperatorNames` for HLSL
- Add tests to confirm we can use the alt names as functions


  Commit: 108e6bca693e5f44d2d17da5a6e06203a0290de7
      https://github.com/llvm/llvm-project/commit/108e6bca693e5f44d2d17da5a6e06203a0290de7
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Improve dump of the ScheduleData, NFC


  Commit: f085261b59a782ebd602ae1e590242ab70ddf8a4
      https://github.com/llvm/llvm-project/commit/f085261b59a782ebd602ae1e590242ab70ddf8a4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/IR/IRBuilder.h

  Log Message:
  -----------
  [IRBuilder] Add additional overload with in-place Inserter construction (NFC)

Currently, for IRBuilders that require an explicitly constructed
Folder, we also force Inserter to be constructed and then copied.
Provide a variant where the Inserter uses in-place default
construction, to support cases where it is self-referential.


  Commit: 96ce8cadf9181db8b155a4f4374d7fff861303b3
      https://github.com/llvm/llvm-project/commit/96ce8cadf9181db8b155a4f4374d7fff861303b3
  Author: Jason Eckhardt <jeckhardt at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonLoopAlign.cpp
    M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.cpp
    M llvm/lib/Target/Lanai/Disassembler/LanaiDisassembler.h

  Log Message:
  -----------
  [NFC][Lanai][Hexagon] Define DEBUG_TYPE after including Debug.h. (#125440)

This patch fixes some warnings/errors that occur with certain
compilers-- due to existing code not following the idiom mentioned in
`Debug.h`:

```
// LLVM_DEBUG() requires the DEBUG_TYPE macro to be defined. Set it to "foo"
// specify that your debug code belongs to class "foo". **Be careful that you only
// do this after including Debug.h and not around any #include of headers.**
```


  Commit: fc4d87100a01f08dbdf78b68e1a6a5c2584d840d
      https://github.com/llvm/llvm-project/commit/fc4d87100a01f08dbdf78b68e1a6a5c2584d840d
  Author: Vy Nguyen <vyng at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/source/Core/CMakeLists.txt
    M lldb/source/Core/Telemetry.cpp
    M llvm/include/llvm/Config/llvm-config.h.cmake

  Log Message:
  -----------
  Define -DLLVM_BUILD_TELEMETRY to be used in ifdef  (#126746)

Background: 

Telemetry code isn't always built (controlled by this
LLVM_BUILD_TELEMETRY cmake flag)
This means users of the library may not have the library. So we're
definding the `-DLLVM_BUILD_TELEMETRY` to be used in ifdef.


  Commit: e1935a2b1573655dc96fec6bd1158b7eeb881b81
      https://github.com/llvm/llvm-project/commit/e1935a2b1573655dc96fec6bd1158b7eeb881b81
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  Revert "[SLP][NFC]Improve dump of the ScheduleData, NFC"

This reverts commit 108e6bca693e5f44d2d17da5a6e06203a0290de7 to fix
error revealed by buildbots https://lab.llvm.org/buildbot/#/builders/159/builds/15888.


  Commit: e5268191e6bf79186bad1408312f3520c47c40a6
      https://github.com/llvm/llvm-project/commit/e5268191e6bf79186bad1408312f3520c47c40a6
  Author: Nico Weber <thakis at chromium.org>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [gn] port fc4d87100a0


  Commit: bb3d789dfef4631d06cd31441a8e431702872a03
      https://github.com/llvm/llvm-project/commit/bb3d789dfef4631d06cd31441a8e431702872a03
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [SLP][NFC]Improve dump of the ScheduleData, NFC


  Commit: 830a2911ee164e32a5459e2991233afb7168c812
      https://github.com/llvm/llvm-project/commit/830a2911ee164e32a5459e2991233afb7168c812
  Author: Scott Manley <rscottmanley at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Passes/Pipelines.cpp

  Log Message:
  -----------
  [Flang] fix initializer with empty string to fix aarch64 build (#126918)

After tuneCPU was changed to std::string in
c8376a93bb9853cbcedeb22d80a9b200060eaf85 the flang builds broke, due to
a missing initializer.

If we want to add tuneCPU to the MLIRToLLVMPassPipelineConfig, we might
want to tackle that separately after the build is restored. This should
be no different than the previous behaviour.


  Commit: be25d618320d136faffd9dc450b406557e07634e
      https://github.com/llvm/llvm-project/commit/be25d618320d136faffd9dc450b406557e07634e
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/test/Analysis/live-stmts.cpp

  Log Message:
  -----------
  [clang][analysis] Fix flaky clang/test/Analysis/live-stmts.cpp test (#126913)

Multiple people reported flaky bot failures tied to
`clang/test/Analysis/live-stmts.cpp` I tried reproducing the flaky
behavior on my Linux x86_64 system, but the tests appears to be stable
in my context.

Only by looking at the failures reported, I could formulate a potential
diagnosis.
The output always looked almost the same, except that the Exprs dumped
per Basic block were shuffled compared to my expectation. This suggests
to me some ordering issue.

If you look at the backing storage of
`blocksEndToLiveness[B].liveExprs`,
it uses `llvm::ImmutableSet<const Expr *>`.
That container likely uses the pointer values as keys, thus the runtime
values of the addresses influence the iteration order.

To fix this, before dumping, I sort the expressions by their
"beginLocs". It should be efficient enough for a debug checker, where
there is no performance constraint.

This should hopefully fix the flaky behavior on systems where ASLR works
differently than (my) Linux system.

Hopefully fixes #126619
Hopefully fixes #126804


  Commit: 34534442a822738861ead3677ab11cf20ae34dce
      https://github.com/llvm/llvm-project/commit/34534442a822738861ead3677ab11cf20ae34dce
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst

  Log Message:
  -----------
  [Docs][LangRef] Fix broken ref to pointer capture. NFC (#126910)


  Commit: 257754011c741d96a9adbcd4858706a59bdca085
      https://github.com/llvm/llvm-project/commit/257754011c741d96a9adbcd4858706a59bdca085
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/test/Analysis/out-of-bounds-constraint-check.c
    M clang/test/Analysis/out-of-bounds.c

  Log Message:
  -----------
  [NFC][analyzer] OOB test consolidation II: constraint checking (#126748)

This commit heavily refactors `out-of-bounds-constraint-check.c`:
1. The complex combinations of several `clang_analyzer_eval` calls were
replaced by `clang_analyzer_value`, which can directly query the range
of a symbol.
2. Testcases were renamed to a (hopefully) more consistent scheme.
3. The use of `size_t` as an argument type was replaced by `unsigned
long long`, which is usually a no-op, but seems to be a better choice if
I look for `64u` in the output of `clang_analyzer_value`.
4. The single "dynamic extent" case was generalized into a full set of
tests that use `malloc`.
5. Half of the testcases (the ones that don't use `malloc`) were changed
to use an `int[5]` array instead of a string literal. After this change
the tests in this file cover every functionality that was tested by the
testcases `test_assume_after_access{,2}` in the file `out-of-bounds.c`
so I was able to delete those two testcases (and therefore consolidate
the validation of these constraints within a single test file).

This is the second commit in a series that reorganizes the tests of
`security.ArrayBound` to system that's easier to understand and
maintain. (Note that this file wasn't significantly modified by the
recent commit 6e17ed9b04e5523cc910bf171c3122dcc64b86db which renamed
`alpha.security.ArrayBoundV2` to `security.ArrayBound`; but I still felt
that this cleanup may be useful.)


  Commit: 385af283cd00ef7a0114c343f50e7dca7fec2537
      https://github.com/llvm/llvm-project/commit/385af283cd00ef7a0114c343f50e7dca7fec2537
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M bolt/include/bolt/Core/BinarySection.h
    M bolt/unittests/Core/BinaryContext.cpp

  Log Message:
  -----------
  [BOLT] Prevent addRelocation from adding pending relocs (#123635)

`addPendingRelocation` is the only way to add a pending
relocation. Can no longer use `addRelocation` for this.

Update the only user (`BinaryContextTester`).


  Commit: f13aea1d87c83ee57234af6da07a36fc12fd08a4
      https://github.com/llvm/llvm-project/commit/f13aea1d87c83ee57234af6da07a36fc12fd08a4
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/include/flang/Semantics/openmp-directive-sets.h
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/test/Semantics/OpenMP/nested-target.f90
    M flang/test/Semantics/OpenMP/nested-teams.f90

  Log Message:
  -----------
  [Flang][OpenMP] Update semantics checks for 'teams' nesting (#126922)

This patch introduces a directive set for combined constructs where
`teams` is the last leaf. This is used in a couple places to simplify
checks, which is NFC, but it also replaces two incorrect uses of
`topTeamsSet`.

Before, these checks would incorrectly skip combined constructs where
`teams` was the last leaf construct when checking for allowed nested
constructs inside of a `teams` region. Similarly, it would also
incorrectly perform these checks whenever a compound `teams` construct
where `teams` was the first leaf construct was found.


  Commit: fbf46dfe3528f2b6d036671ca2fb5c4b3a0a40b5
      https://github.com/llvm/llvm-project/commit/fbf46dfe3528f2b6d036671ca2fb5c4b3a0a40b5
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/fp-fold.ll

  Log Message:
  -----------
  [X86] fp-fold.ll - regenerate checks


  Commit: a282b6c486c5cc6a4cbdf05195248a4cb3a18e33
      https://github.com/llvm/llvm-project/commit/a282b6c486c5cc6a4cbdf05195248a4cb3a18e33
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/test/CodeGenCUDA/launch-bounds.cu
    M llvm/docs/NVPTXUsage.rst
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/NVPTX/NVPTXCtorDtorLowering.cpp
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp
    M llvm/test/Analysis/KernelInfo/launch-bounds/nvptx.ll
    M llvm/test/CodeGen/NVPTX/annotations.ll
    M llvm/test/CodeGen/NVPTX/lower-ctor-dtor.ll
    M llvm/test/CodeGen/NVPTX/maxclusterrank.ll
    M llvm/test/CodeGen/NVPTX/upgrade-nvvm-annotations.ll
    M mlir/lib/Target/LLVMIR/Dialect/NVVM/NVVMToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/external-func-dialect-attr.mlir
    M mlir/test/Target/LLVMIR/nvvmir.mlir

  Log Message:
  -----------
  [NVPTX] Convert scalar function nvvm.annotations to attributes (#125908)

Replace some more nvvm.annotations with function attributes,
auto-upgrading the annotations as needed. These new attributes will be
more idiomatic and compile-time efficient than the annotations.

- !"maxclusterrank" / !"cluster_max_blocks" -> "nvvm.maxclusterrank"
- !"minctasm" -> "nvvm.minctasm"
- !"maxnreg" -> "nvvm.maxnreg"


  Commit: 73509781b52486cdff8dc68c4c143ffa2f95356e
      https://github.com/llvm/llvm-project/commit/73509781b52486cdff8dc68c4c143ffa2f95356e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [X86] Avoid repeated hash lookups (NFC) (#126857)


  Commit: 2dd2608105d559cc0d4e6083e13eca91bf6d9fd9
      https://github.com/llvm/llvm-project/commit/2dd2608105d559cc0d4e6083e13eca91bf6d9fd9
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M utils/bazel/llvm_configs/llvm-config.h.cmake

  Log Message:
  -----------
  [bazel] port fc4d87100a01f08dbdf78b68e1a6a5c2584d840d


  Commit: ff8f6abe20a9dfbb1de8d978f865092413d3416c
      https://github.com/llvm/llvm-project/commit/ff8f6abe20a9dfbb1de8d978f865092413d3416c
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-rotate.ll

  Log Message:
  -----------
  Reapply "[RISCV] Allow undef prefix for local repeating VLA shuffle lowering (#126097)"

(With a fix to recently added code.)

Implement the first TODO from #125735, and minorly cleanup code using
same style as the recently landed strict prefix case.


  Commit: 165a3d6a9b164dc98a70596fa8117acf3de20254
      https://github.com/llvm/llvm-project/commit/165a3d6a9b164dc98a70596fa8117acf3de20254
  Author: Miguel A. Arroyo <miguel.arroyo at rockstargames.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/cmake/modules/AddClang.cmake

  Log Message:
  -----------
  Revert "[Clang][CMake][MSVC] Install PDBs alongside executables" (#126934)

Reverts llvm/llvm-project#126675

Broke the following:
https://lab.llvm.org/buildbot/#/builders/107/builds/7929


  Commit: bee9664970d51df3f4e1d298d1bcb95bba364e17
      https://github.com/llvm/llvm-project/commit/bee9664970d51df3f4e1d298d1bcb95bba364e17
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/docs/WritingAnLLVMBackend.rst
    M llvm/lib/Target/AMDGPU/AsmParser/AMDGPUAsmParser.cpp
    M llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
    M llvm/lib/Target/AMDGPU/GCNDPPCombine.cpp
    M llvm/lib/Target/AMDGPU/GCNHazardRecognizer.cpp
    M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.cpp
    M llvm/lib/Target/AMDGPU/MCA/AMDGPUCustomBehaviour.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUInstPrinter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCTargetDesc.h
    M llvm/lib/Target/AMDGPU/MCTargetDesc/R600MCTargetDesc.h
    M llvm/lib/Target/AMDGPU/R600ExpandSpecialInstrs.cpp
    M llvm/lib/Target/AMDGPU/R600InstrInfo.cpp
    M llvm/lib/Target/AMDGPU/R600InstrInfo.h
    M llvm/lib/Target/AMDGPU/R600Packetizer.cpp
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/AMDGPU/SILoadStoreOptimizer.cpp
    M llvm/lib/Target/AMDGPU/SIOptimizeExecMasking.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.h
    A llvm/test/TableGen/get-named-operand-idx.td
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Emit OpName as an enum class instead of a namespace (#125313)

- Change InstrInfoEmitter to emit OpName as an enum class
  instead of an anonymous enum in the OpName namespace.
- This will help clearly distinguish between values that are 
  OpNames vs just operand indices and should help avoid
  bugs due to confusion between the two.
- Rename OpName::OPERAND_LAST to NUM_OPERAND_NAMES.
- Emit declaration of getOperandIdx() along with the OpName
  enum so it doesn't have to be repeated in various headers.
- Also updated AMDGPU, RISCV, and WebAssembly backends
  to conform to the new definition of OpName (mostly
  mechanical changes).


  Commit: eff3c343b08cfc46016708b3182ac062d45b3e21
      https://github.com/llvm/llvm-project/commit/eff3c343b08cfc46016708b3182ac062d45b3e21
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/source/API/SBDebugger.cpp
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/DynamicLoader.cpp
    M lldb/source/Interpreter/ScriptInterpreter.cpp
    M lldb/source/Plugins/DynamicLoader/Darwin-Kernel/DynamicLoaderDarwinKernel.cpp
    M lldb/source/Plugins/DynamicLoader/FreeBSD-Kernel/DynamicLoaderFreeBSDKernel.cpp
    M lldb/source/Plugins/InstrumentationRuntime/TSan/InstrumentationRuntimeTSan.cpp
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCTrampolineHandler.cpp
    M lldb/source/Plugins/ScriptInterpreter/Lua/ScriptInterpreterLua.cpp
    M lldb/source/Plugins/ScriptInterpreter/None/ScriptInterpreterNone.cpp
    M lldb/source/Plugins/ScriptInterpreter/Python/ScriptInterpreterPython.cpp
    M lldb/source/Target/Process.cpp
    M lldb/source/Target/Target.cpp
    M lldb/source/Target/ThreadPlanTracer.cpp

  Log Message:
  -----------
  [lldb] Remove Debugger::Get{Output,Error}Stream (NFC) (#126821)

Remove Debugger::GetOutputStream and Debugger::GetErrorStream in
preparation for replacing both with a new variant that needs to be
locked and hence can't be handed out like we do right now.

The patch replaces most uses with GetAsyncOutputStream and
GetAsyncErrorStream respectively. There methods return new StreamSP
objects that automatically get flushed on destruction.

See #126630 for more details.


  Commit: 5836d918450b07886556c519a81776db9ac91eea
      https://github.com/llvm/llvm-project/commit/5836d918450b07886556c519a81776db9ac91eea
  Author: jeanPerier <jperier at nvidia.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/test/Fir/convert-to-llvm.fir
    A flang/test/Fir/target-rewrite-indirect-calls.fir
    A flang/test/Integration/abi-indirect-call.f90

  Log Message:
  -----------
  [flang] add ABI argument attributes in indirect calls (#126896)

Last piece that implements the TODO for sret and byval setting on
indirect calls.

This includes a fix to the codegen last patch. I thought types in in
type attributes were automatically converted in dialect conversion
passes, but that is not the case. The sret and byval type needs to be
converted to llvm types in codegen (mlir FuncOp conversion is doing a
similar conversion).


  Commit: c77d2027592c93ca1a2009a90b64b5cbdf8cfba3
      https://github.com/llvm/llvm-project/commit/c77d2027592c93ca1a2009a90b64b5cbdf8cfba3
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll

  Log Message:
  -----------
  Revert "[RISCV] Decompose single source shuffles (without exact VLEN) (#126108)"

This reverts commit 8374d421861cd3d47e21ae7889ba0b4c498e8d85.  A miscompile
was reported against the review thread, reverting while we investigate.


  Commit: cb3498c6704daefc6e5221beb757126765737aa7
      https://github.com/llvm/llvm-project/commit/cb3498c6704daefc6e5221beb757126765737aa7
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CodeGenModule.h
    A clang/test/OpenMP/spirv_variant_match.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPKinds.def
    M llvm/lib/Frontend/OpenMP/OMPContext.cpp

  Log Message:
  -----------
  [OpenMP][OpenMPIRBuilder] Support SPIR-V device variant matches (#126801)

We should be able to use `spirv64` as a device variant match and it
should be considered a GPU.

Also add the triple to an RTTI check.

Signed-off-by: Sarnie, Nick <nick.sarnie at intel.com>


  Commit: df092904075e9a9de3c8f9dd4f2da5efc94d4712
      https://github.com/llvm/llvm-project/commit/df092904075e9a9de3c8f9dd4f2da5efc94d4712
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/SparsePropagation.h

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#126851)


  Commit: 71cceb1439c119385ca65c8a14af8584414831a2
      https://github.com/llvm/llvm-project/commit/71cceb1439c119385ca65c8a14af8584414831a2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachinePipeliner.h

  Log Message:
  -----------
  [CodeGen] Avoid repeated hash lookups (NFC) (#126852)


  Commit: 2e8f89f048a46afc1e9d4db98ae2932925f6499a
      https://github.com/llvm/llvm-project/commit/2e8f89f048a46afc1e9d4db98ae2932925f6499a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Object/GOFFObjectFile.cpp

  Log Message:
  -----------
  [Object] Avoid repeated map lookups (NFC) (#126853)


  Commit: c15806aa5a6d47d1920c6cab5bdcad2f9f5482c1
      https://github.com/llvm/llvm-project/commit/c15806aa5a6d47d1920c6cab5bdcad2f9f5482c1
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  [SPIRV] Avoid repeated hash lookups (NFC) (#126854)


  Commit: 99816a5af4ee4d0b1559a5b109b37ddc55ed618f
      https://github.com/llvm/llvm-project/commit/99816a5af4ee4d0b1559a5b109b37ddc55ed618f
  Author: Evgenii Kudriashov <evgenii.kudriashov at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/Xtensa/Disassembler/CMakeLists.txt

  Log Message:
  -----------
  [Xtensa] Add XtensaDesc dependency to LLVMXtensaDisassembler (#126904)

There is an undefined reference to checkRegister in shared lib builds

Suspecting #124656


  Commit: e9e717f4053ee293d42ecaefaa04e473b0e1b469
      https://github.com/llvm/llvm-project/commit/e9e717f4053ee293d42ecaefaa04e473b0e1b469
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h

  Log Message:
  -----------
  [Utils] Avoid repeated hash lookups (NFC) (#126856)


  Commit: a3e2075e5008cefc2e896f1558b46f0882321ff5
      https://github.com/llvm/llvm-project/commit/a3e2075e5008cefc2e896f1558b46f0882321ff5
  Author: Nick Desaulniers <nick.desaulniers at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/src/__support/CPP/bit.h
    M libc/test/src/__support/CPP/bit_test.cpp

  Log Message:
  -----------
  [libc][bit_test] fix -Wimplicit-int-conversion (#126317)

Fixes:

    llvm-project/libc/src/__support/CPP/bit.h:235:28: error: implicit
    conversion loses integer precision: 'int' to
'cpp::enable_if_t<cpp::is_unsigned_v<unsigned short>, unsigned short>'
(aka
    'unsigned short') [-Werror,-Wimplicit-int-conversion]
      235 |   return (value << rotate) | (value >> (N - rotate));
          |   ~~~~~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
    llvm-project/libc/src/__support/CPP/bit.h:247:28: error: implicit
    conversion loses integer precision: 'int' to
'cpp::enable_if_t<cpp::is_unsigned_v<unsigned short>, unsigned short>'
(aka
    'unsigned short') [-Werror,-Wimplicit-int-conversion]
      247 |   return (value >> rotate) | (value << (N - rotate));
          |   ~~~~~~ ~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
    llvm-project/libc/test/src/__support/CPP/bit_test.cpp:45:36: error:
implicit conversion loses integer precision: 'int' to 'unsigned char'
    [-Werror,-Wimplicit-int-conversion]
       45 |     EXPECT_FALSE(has_single_bit<T>(two_bits_value));
          |                  ~~~~~~~~~~~~~~    ^~~~~~~~~~~~~~

Via the libc-cpp-utils-tests ninja target.


  Commit: b04a980b5597c61a8df2b489c4894bc0240b8e13
      https://github.com/llvm/llvm-project/commit/b04a980b5597c61a8df2b489c4894bc0240b8e13
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/2011-10-27-tstore.ll

  Log Message:
  -----------
  [X86] 2011-10-27-tstore.ll - regenerate checks


  Commit: e167c31dc973b0b2c3af96f5e7e28d45736a6c6b
      https://github.com/llvm/llvm-project/commit/e167c31dc973b0b2c3af96f5e7e28d45736a6c6b
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  Reland [mlir] ArithToLLVM: fix memref bitcast lowering (#125148) (#126939)

Reland https://github.com/llvm/llvm-project/pull/125148

Limiting vector pattern caused issues with `select` of complex lowering,
which wasn't caught as it was missing lit tests. Keep the pattern as is
for now and instead set a higher benefit to `IdentityBitcastLowering` so
it will always run before the vector pattern.


  Commit: f8c7457c79eece1bd1b7f15e7679517c7c63ad89
      https://github.com/llvm/llvm-project/commit/f8c7457c79eece1bd1b7f15e7679517c7c63ad89
  Author: schittir <sindhu.chittireddy at intel.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineFormatter.cpp

  Log Message:
  -----------
  [NFC] Avoid potential null dereference. (#126872)

Add a null check.


  Commit: 3ec9f7494b31f2fe51d5ed0e07adcf4b7199def6
      https://github.com/llvm/llvm-project/commit/3ec9f7494b31f2fe51d5ed0e07adcf4b7199def6
  Author: Harald van Dijk <harald.vandijk at codeplay.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Utils/Debugify.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp

  Log Message:
  -----------
  [DebugInfo] Update DIBuilder insertion to take InsertPosition (#126059)

After #124287 updated several functions to return iterators rather than
Instruction *, it was no longer straightforward to pass their result to
DIBuilder. This commit updates DIBuilder methods to accept an
InsertPosition instead, so that they can be called with an iterator
(preferred), or with a deprecation warning an Instruction *, or a
BasicBlock *. This commit also updates the existing calls to the
DIBuilder methods to pass in iterators.


  Commit: 23209eb1d9df57ca3419f5abc6b2edcdc0d1dead
      https://github.com/llvm/llvm-project/commit/23209eb1d9df57ca3419f5abc6b2edcdc0d1dead
  Author: Harald van Dijk <harald.vandijk at codeplay.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Utils/Debugify.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp

  Log Message:
  -----------
  Revert "[DebugInfo] Update DIBuilder insertion to take InsertPosition (#126059)"

This reverts commit 3ec9f7494b31f2fe51d5ed0e07adcf4b7199def6.


  Commit: a684e0ea57ebb93c81506c066afb25cb496dcc11
      https://github.com/llvm/llvm-project/commit/a684e0ea57ebb93c81506c066afb25cb496dcc11
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M .github/workflows/release-binaries-all.yml

  Log Message:
  -----------
  workflows/release-binaries-all: Add missing secret input (#126921)

Since d194c6b9a7fdda7a61abcd6bfe39ab465bf0cc87 this workflow was missing
the secret input which was causing it to fail.


  Commit: c6654806949f0498fdd2d009b66e62041c21de36
      https://github.com/llvm/llvm-project/commit/c6654806949f0498fdd2d009b66e62041c21de36
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/runtime/CMakeLists.txt

  Log Message:
  -----------
  [flang] [runtime] Explicitly disable EH & RTTI (#126920)

Explicitly disable EH & RTTI when building Flang runtime library. This
fixes the runtime built when Flang is built standalone against system
LLVM that was compiled with EH & RTTI enabled.

I think this change may be sufficient to lift the top-level
`LLVM_ENABLE_EH` restriction from Flang. However, I'd prefer if somebody
more knowledgeable decided on that.


  Commit: 16a5f7eb73f225544d29e613c84011f1e1ec53a4
      https://github.com/llvm/llvm-project/commit/16a5f7eb73f225544d29e613c84011f1e1ec53a4
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/src/time/time_utils.h

  Log Message:
  -----------
  [libc] Fix implict cast to time_t warning (#126947)

On some systems time_t is 32 bit, causing build errors (with -Werror)
in get_epoch which attempts to implicitly convert an int64_t to a
time_t.

Fixes:

error: implicit conversion loses integer precision: 'int64_t' (aka 'long
long') to 'time_t' (aka 'int') [-Werror,-Wshorten-64-to-32]
      332 |     return mktime_internal(timeptr);
          |     ~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~~


  Commit: d200caa5216e8e65fe16455e9858f45926fdd79c
      https://github.com/llvm/llvm-project/commit/d200caa5216e8e65fe16455e9858f45926fdd79c
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

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

  Log Message:
  -----------
  Revert "[bazel] Temporarily disable a broken LookupAddressRangeWithSt… (#126944)

…mtSequenceOffset debug info test"

This reverts commit 247430e9c41c61b66e2ee95c29a05de3e24c19b9.

The breakage has been fixed by 343bbda140d5a15cd7d7fbfc6041a7506da5cdae.


  Commit: 67cde37f3c89c22a51d1c20f75965c64c79b1bce
      https://github.com/llvm/llvm-project/commit/67cde37f3c89c22a51d1c20f75965c64c79b1bce
  Author: Max191 <44243577+Max191 at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/DataLayoutPropagation.cpp
    M mlir/test/Dialect/Linalg/data-layout-propagation.mlir

  Log Message:
  -----------
  [mlir] Match before rewrite in BubbleUpPackOpThroughGenericOp (#126946)

The BubbleUpPackOpThroughGenericOp pattern had some unsafe rewrites
happening before matching was fully complete, which causes the pattern
rewriter to fail to converge. This PR fixes the bug by moving all
matching logic to before the rewrite logic.

Signed-off-by: Max Dawkins <max.dawkins at gmail.com>


  Commit: a6a4252a15669a2d89ad9134e42b87fb0f56c103
      https://github.com/llvm/llvm-project/commit/a6a4252a15669a2d89ad9134e42b87fb0f56c103
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vec-strict-fptoint-128.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-256.ll
    M llvm/test/CodeGen/X86/vec-strict-fptoint-512.ll

  Log Message:
  -----------
  [X86] vec-strict-fptoint - regenerate VPTERNLOG comments


  Commit: 689f79d0f86a6965c0a9c4bc73bc0417c7972b7f
      https://github.com/llvm/llvm-project/commit/689f79d0f86a6965c0a9c4bc73bc0417c7972b7f
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vec-strict-cmp-512-skx.ll

  Log Message:
  -----------
  [X86] vec-strict-cmp-512-skx.ll - regenerate checks

Appears to have been manually edited at some point


  Commit: f719d8ac1ccd08a9e8def796ecb9b1cd517c86af
      https://github.com/llvm/llvm-project/commit/f719d8ac1ccd08a9e8def796ecb9b1cd517c86af
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/X86/vec-strict-cmp-128-fp16.ll

  Log Message:
  -----------
  [X86] vec-strict-cmp-128-fp16.ll - regenerate VMOVSH comments


  Commit: 1f51038036b4bc216eddcc620dcb9eca5df2bfef
      https://github.com/llvm/llvm-project/commit/1f51038036b4bc216eddcc620dcb9eca5df2bfef
  Author: Krishna Pandey <47917477+krishna2803 at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/headers/math/stdfix.rst
    M libc/include/stdfix.yaml
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/countlshk.cpp
    A libc/src/stdfix/countlshk.h
    A libc/src/stdfix/countlshr.cpp
    A libc/src/stdfix/countlshr.h
    A libc/src/stdfix/countlsk.cpp
    A libc/src/stdfix/countlsk.h
    A libc/src/stdfix/countlslk.cpp
    A libc/src/stdfix/countlslk.h
    A libc/src/stdfix/countlslr.cpp
    A libc/src/stdfix/countlslr.h
    A libc/src/stdfix/countlsr.cpp
    A libc/src/stdfix/countlsr.h
    A libc/src/stdfix/countlsuhk.cpp
    A libc/src/stdfix/countlsuhk.h
    A libc/src/stdfix/countlsuhr.cpp
    A libc/src/stdfix/countlsuhr.h
    A libc/src/stdfix/countlsuk.cpp
    A libc/src/stdfix/countlsuk.h
    A libc/src/stdfix/countlsulk.cpp
    A libc/src/stdfix/countlsulk.h
    A libc/src/stdfix/countlsulr.cpp
    A libc/src/stdfix/countlsulr.h
    A libc/src/stdfix/countlsur.cpp
    A libc/src/stdfix/countlsur.h
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/CountlsTest.h
    A libc/test/src/stdfix/countlshk_test.cpp
    A libc/test/src/stdfix/countlshr_test.cpp
    A libc/test/src/stdfix/countlsk_test.cpp
    A libc/test/src/stdfix/countlslk_test.cpp
    A libc/test/src/stdfix/countlslr_test.cpp
    A libc/test/src/stdfix/countlsr_test.cpp
    A libc/test/src/stdfix/countlsuhk_test.cpp
    A libc/test/src/stdfix/countlsuhr_test.cpp
    A libc/test/src/stdfix/countlsuk_test.cpp
    A libc/test/src/stdfix/countlsulk_test.cpp
    A libc/test/src/stdfix/countlsulr_test.cpp
    A libc/test/src/stdfix/countlsur_test.cpp

  Log Message:
  -----------
  [libc][stdfix] Implement `countlsfx` functions in libc. (#126597)

fixes #113357

---------

Signed-off-by: krishna2803 <kpandey81930 at gmail.com>


  Commit: 562c0c611a3bee6b7766043bfdeb5c6f47d7d2fd
      https://github.com/llvm/llvm-project/commit/562c0c611a3bee6b7766043bfdeb5c6f47d7d2fd
  Author: Chris B <chris.bieneman at me.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/docs/HLSL/FunctionCalls.rst

  Log Message:
  -----------
  [HLSL][Docs] Update function calls docs (#106860)

Update the function calls documentation to match the newly landed
implementation.


  Commit: b0d782080529cf5d422847e1f91f29bd7c62f691
      https://github.com/llvm/llvm-project/commit/b0d782080529cf5d422847e1f91f29bd7c62f691
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/include/__llvm-libc-common.h
    M libc/include/llvm-libc-macros/features-macros.h

  Log Message:
  -----------
  [libc] Move __LLVM_LIBC__ define to __llvm-libc-common.h (#126877)

Relying on features.h is problematic since codebases are free to have
such a header on their search path, which breaks compilation. libc
should instead provide a more standard way of getting __LLVM_LIBC__.
Since __llvm-libc-common.h is included from all libc headers, defining
__LLVM_LIBC__ there ensures that this define is available whenever any
of the standard header is included.


  Commit: 6d7a84d72bf7f7be2a401e80a5339e1ae8f7c0f5
      https://github.com/llvm/llvm-project/commit/6d7a84d72bf7f7be2a401e80a5339e1ae8f7c0f5
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Scheduler.cpp
    M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
    M llvm/test/Transforms/SandboxVectorizer/bottomup_seed_slice_pow2.ll
    M llvm/test/Transforms/SandboxVectorizer/repeated_instrs.ll
    M llvm/test/Transforms/SandboxVectorizer/scheduler.ll

  Log Message:
  -----------
  [SandboxVec][Scheduler] Fix top of schedule (#126820)

This patch fixes the way the top-of-schedule variable gets set and
updated. Before this patch it used to get updated whenever we scheduled
a bundle, which is wrong, as the top-of-schedule needs to be maintained
across scheduling attempts.

It should get reset only when we clear the schedule or when we destroy
the current schedule and re-schedule.


  Commit: 53c618c07154f8a99762fb5222aa9c05f6c434f7
      https://github.com/llvm/llvm-project/commit/53c618c07154f8a99762fb5222aa9c05f6c434f7
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/Mangle.h
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.h
    M clang/lib/CodeGen/CodeGenFunction.h

  Log Message:
  -----------
  [clang] run clang-format on some CGObjC files (#126644)

These files are relatively old and don't confront our formatting rules.
It's hard to change them without massive clang-format changes.

---------

Signed-off-by: Peter Rong <PeterRong at meta.com>


  Commit: 9478822f4f63aa2e5f7bc120406688298911fa24
      https://github.com/llvm/llvm-project/commit/9478822f4f63aa2e5f7bc120406688298911fa24
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll

  Log Message:
  -----------
  [RISCV] Decompose single source shuffles (without exact VLEN) (#126951)

(This is a re-apply for what was 8374d42. The bug there was fairly 
major - despite the comments and review description, the code was 
using each register in the source register group, not only the first 
register. This was completely wrong.)

This is a continuation of the work started in
https://github.com/llvm/llvm-project/pull/125735 to lower selected VLA
shuffles in linear m1 components instead of generating O(LMUL^2) or
O(LMUL*Log2(LMUL) high LMUL shuffles.

This pattern focuses on shuffles where all the elements being used
across the entire destination register group come from a single register
in the source register group. Such cases come up fairly frequently via
e.g. spread(N), and repeat(N) idioms.

One subtlety to this patch is the handling of the index vector for
vrgatherei16.vv. Because the index and source registers can have
different EEW, the index vector for the Nth chunk of the destination is
not guaranteed to be register aligned. In fact, it is common for e.g. an
EEW=64 shuffle to have EEW=16 indices which are four chunks per source
register. Given this, we have to pay a cost for extracting these chunks
into the low position before performing each shuffle.

I'd initially expressed this as a naive extract sub-vector for each data
parallel piece. However, at high LMUL, this quickly caused register
pressure problems since we could at worst need 4x the temporary
registers for the index. Instead, this patch uses a repeating slidedown
chained from previous iterations. This increases critical path by at
worst 3 slides (SEW=64 is the worst case), but reduces register pressure
to at worst 2x - and only if the original index vector is reused
elsewhere. I view this as arguably a bit of a workaround (since our
scheduling should have done better with the plain extract variant), but
a probably necessary one.


  Commit: 7a7f9190d03e12dc5b57d3eb33a84d078de43104
      https://github.com/llvm/llvm-project/commit/7a7f9190d03e12dc5b57d3eb33a84d078de43104
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/InstrMaps.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/InstrMapsTest.cpp

  Log Message:
  -----------
  [SandboxVec][Legality] Fix mask on diamond reuse with shuffle (#126963)

This patch fixes a bug in the creation of shuffle masks when vectorizing
vectors in case of a diamond reuse with shuffle. The mask needs to
enumerate all elements of a vector, not treat the original vector value
as a single element. That is: if vectorizing two <2 x float> vectors
into a <4 x float> the mask needs to have 4 indices, not just 2.


  Commit: 859c871184bdfdebb47b5c7ec5e59348e0534e0b
      https://github.com/llvm/llvm-project/commit/859c871184bdfdebb47b5c7ec5e59348e0534e0b
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    M llvm/test/CodeGen/RISCV/GlobalISel/add-imm.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/combine-neg-abs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/double-arith.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/float-arith.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/freeze.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rotl-rotr.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbkb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/shifts.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/stacksave-stackrestore.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/add-imm.ll
    M llvm/test/CodeGen/RISCV/alloca.ll
    M llvm/test/CodeGen/RISCV/alu64.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-discard.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/bf16-promote.ll
    M llvm/test/CodeGen/RISCV/bfloat-convert.ll
    M llvm/test/CodeGen/RISCV/bfloat-mem.ll
    M llvm/test/CodeGen/RISCV/bfloat.ll
    M llvm/test/CodeGen/RISCV/bittest.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr32s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr64s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-half.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calls.ll
    M llvm/test/CodeGen/RISCV/codemodel-lowering.ll
    M llvm/test/CodeGen/RISCV/condbinops.ll
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/copysign-casts.ll
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/double-calling-conv.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/double-imm.ll
    M llvm/test/CodeGen/RISCV/double-mem.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
    M llvm/test/CodeGen/RISCV/fastcc-bf16.ll
    M llvm/test/CodeGen/RISCV/fastcc-float.ll
    M llvm/test/CodeGen/RISCV/fastcc-half.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    M llvm/test/CodeGen/RISCV/float-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/float-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll
    M llvm/test/CodeGen/RISCV/fp128.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/get-setcc-result-type.ll
    M llvm/test/CodeGen/RISCV/half-arith.ll
    M llvm/test/CodeGen/RISCV/half-convert-strict.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-mem.ll
    M llvm/test/CodeGen/RISCV/half-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/iabs.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-modifier-N.ll
    M llvm/test/CodeGen/RISCV/inline-asm-f-constraint-f.ll
    M llvm/test/CodeGen/RISCV/inline-asm-f-modifier-N.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zfinx-constraint-r.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zhinx-constraint-r.ll
    M llvm/test/CodeGen/RISCV/inline-asm.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/legalize-fneg.ll
    M llvm/test/CodeGen/RISCV/llvm.exp10.ll
    M llvm/test/CodeGen/RISCV/llvm.frexp.ll
    M llvm/test/CodeGen/RISCV/loop-strength-reduce-add-cheaper-than-mul.ll
    M llvm/test/CodeGen/RISCV/machine-sink-load-immediate.ll
    M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
    M llvm/test/CodeGen/RISCV/mem.ll
    M llvm/test/CodeGen/RISCV/mem64.ll
    M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
    M llvm/test/CodeGen/RISCV/memcmp.ll
    M llvm/test/CodeGen/RISCV/memmove.ll
    M llvm/test/CodeGen/RISCV/memset-pattern.ll
    M llvm/test/CodeGen/RISCV/mul.ll
    M llvm/test/CodeGen/RISCV/neg-abs.ll
    M llvm/test/CodeGen/RISCV/orc-b-patterns.ll
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/pr51206.ll
    M llvm/test/CodeGen/RISCV/pr58511.ll
    M llvm/test/CodeGen/RISCV/pr63816.ll
    M llvm/test/CodeGen/RISCV/pr69586.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/rotl-rotr.ll
    M llvm/test/CodeGen/RISCV/rv32-inline-asm-pairs.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64-double-convert.ll
    M llvm/test/CodeGen/RISCV/rv64-half-convert.ll
    M llvm/test/CodeGen/RISCV/rv64-inline-asm-pairs.ll
    M llvm/test/CodeGen/RISCV/rv64-trampoline.ll
    M llvm/test/CodeGen/RISCV/rv64i-demanded-bits.ll
    M llvm/test/CodeGen/RISCV/rv64zbkb.ll
    M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-struct.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/concat-vector-insert-elt.ll
    M llvm/test/CodeGen/RISCV/rvv/constant-folding-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/copyprop.mir
    M llvm/test/CodeGen/RISCV/rvv/ctlz-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/dont-sink-splat-operands.ll
    M llvm/test/CodeGen/RISCV/rvv/double-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/expandload.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-i1.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/fceil-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fceil-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ffloor-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ffloor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast-large-vector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-buildvec-of-binop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-deinterleave-load.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extload-truncstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fceil-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ffloor-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fnearbyint-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-vrgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpowi.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fround-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fround.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-froundeven-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-froundeven.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-vrgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-select-addsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-store-merge-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-uitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfabs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfneg-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfsqrt-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpscatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vscale-range.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulsu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/float-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fnearbyint-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fnearbyint-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/fold-vector-cmp.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/frm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fround-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fround-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/froundeven-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/froundeven-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/half-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/localvar.ll
    M llvm/test/CodeGen/RISCV/rvv/memcpy-inline.ll
    M llvm/test/CodeGen/RISCV/rvv/memory-args.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mutate-prior-vsetvli-avl.ll
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
    M llvm/test/CodeGen/RISCV/rvv/pr125306.ll
    M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/reg-alloc-reserve-bp.ll
    M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/shrinkwrap.ll
    M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
    M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/umulo-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/urem-seteq-vec.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-extract-last-active.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv0-elimination.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-store-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/vpgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrgatherei16-subreg-liveness.ll
    M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-regression.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsub-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/wrong-chain-fixed-load.ll
    M llvm/test/CodeGen/RISCV/scmp.ll
    M llvm/test/CodeGen/RISCV/select-and.ll
    M llvm/test/CodeGen/RISCV/select-bare.ll
    M llvm/test/CodeGen/RISCV/select-cc.ll
    M llvm/test/CodeGen/RISCV/select-constant-xor.ll
    M llvm/test/CodeGen/RISCV/select-optimize-multiple.ll
    M llvm/test/CodeGen/RISCV/select-or.ll
    M llvm/test/CodeGen/RISCV/sextw-removal.ll
    M llvm/test/CodeGen/RISCV/shift-amount-mod.ll
    M llvm/test/CodeGen/RISCV/shifts.ll
    M llvm/test/CodeGen/RISCV/shl-cttz.ll
    M llvm/test/CodeGen/RISCV/split-offsets.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/stack-slot-size.ll
    M llvm/test/CodeGen/RISCV/stack-store-check.ll
    M llvm/test/CodeGen/RISCV/tail-calls.ll
    M llvm/test/CodeGen/RISCV/ucmp.ll
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll
    M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/vararg.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    M llvm/test/CodeGen/RISCV/xaluo.ll
    M llvm/test/CodeGen/RISCV/xtheadmemidx.ll
    M llvm/test/CodeGen/RISCV/xtheadmempair.ll
    M llvm/test/CodeGen/RISCV/zbb-logic-neg-imm.ll
    M llvm/test/CodeGen/RISCV/zdinx-asm-constraint.ll
    M llvm/test/CodeGen/RISCV/zdinx-boundary-check.ll

  Log Message:
  -----------
  [RISCV] Default to MicroOpBufferSize = 1 for scheduling purposes (#126608)

This change introduces a default schedule model for the RISCV target
which leaves everything unchanged except the MicroOpBufferSize. The
default value of this flag in NoSched is 0. Both configurations
represent in order cores (i.e. no reorder window), the difference
between them comes down to whether heuristics other than latency are
allowed to apply. (Implementation details below)

I left the processor models which explicitly set MicroOpBufferSize=0
unchanged in this patch, but strongly suspect we should change those
too. Honestly, I think the LLVM wide default for this flag should be
changed, but don't have the energy to manage the updates for all
targets.

Implementation wise, the effect of this change is that schedule units
which are ready to run *except that* one of their predecessors may not
have completed yet are added to the Available list, not the Pending one.
The result of this is that it becomes possible to chose to schedule a
node before it's ready cycle if the heuristics prefer. This is
essentially chosing to insert a resource stall instead of e.g.
increasing register pressure.

Note that I was initially concerned there might be a correctness aspect
(as in some kind of exposed pipeline design), but the generic scheduler
doesn't seem to know how to insert noop instructions. Without that, a
program wouldn't be guaranteed to schedule on an exposed pipeline
depending on the program and schedule model in question.

The effect of this is that we sometimes prefer register pressure in
codegen results. This is mostly churn (or small wins) on scalar because
we have many more registers, but is of major importance on vector -
particularly high LMUL - because we effectively have many fewer
registers and the relative cost of spilling is much higher. This is a
significant improvement on high LMUL code quality for default rva23u
configurations - or any non -mcpu vector configuration for that matter.

Fixes #107532


  Commit: e75e61728e201f1941c794a12ea22789b6f24c75
      https://github.com/llvm/llvm-project/commit/e75e61728e201f1941c794a12ea22789b6f24c75
  Author: Vasileios Porpodas <vporpodas at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp

  Log Message:
  -----------
  [SandboxVec] Fix warnings introduced by 7a7f9190d03e


  Commit: 82605285b8c647f4248bb22f2c9d19945cfcba8c
      https://github.com/llvm/llvm-project/commit/82605285b8c647f4248bb22f2c9d19945cfcba8c
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/LoopAccessAnalysis.h
    A llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll

  Log Message:
  -----------
  [LAA] Also clear CheckingGroups in RuntimePointerChecking::reset.

This fixes a crash when trying to print access-info in the newly added
test cases.


  Commit: e9e6ba6a5e2a4ca7386861136196903febb9968b
      https://github.com/llvm/llvm-project/commit/e9e6ba6a5e2a4ca7386861136196903febb9968b
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-cvt.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vcvt.ll

  Log Message:
  -----------
  [msan] Handle single-parameter Arm NEON vector convert intrinsics (#126136)

This handles the following llvm.aarch64.neon intrinsics, which were suboptimally handled by visitInstruction:
- fcvtas, fcvtau
- fcvtms, fcvtmu
- fcvtns, fcvtnu
- fcvtps, fcvtpu
- fcvtzs, fcvtzu

The old instrumentation checked that the shadow of every element of the input vector was fully initialized, and aborted otherwise. The new instrumentation propagates the shadow: for each element of the output, the shadow is initialized iff the corresponding element of the input is *fully* initialized (since these are floating-point to integer conversions).

Updates the tests from https://github.com/llvm/llvm-project/pull/126095


  Commit: 0d95631a3adbc4343e6bfbcecc53ac8f1f0739d1
      https://github.com/llvm/llvm-project/commit/0d95631a3adbc4343e6bfbcecc53ac8f1f0739d1
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/scmp.ll
    M llvm/test/Instrumentation/MemorySanitizer/ucmp.ll

  Log Message:
  -----------
  [msan] Handle llvm.[us]cmp (starship operator) (#125804)

Apply handleShadowOr to llvm.[us]cmp. Previously, llvm.[su]cmp was correctly handled heuristically when each parameter type is the same as the return type (e.g., `call i8 @llvm.ucmp.i8.i8(i8 %x, i8 %y)`) but handled incorrectly by visitInstruction when the return type is different e.g., (`call i8 @llvm.ucmp.i8.i62(i62 %x, i62 %y)`, `call <4 x i8> @llvm.ucmp.v4i8.v4i32(<4 x i32> %x, <4 x i32> %y)`).

Updates the tests from https://github.com/llvm/llvm-project/pull/125790


  Commit: f2650c54c9a6caf021415ed57a0a430fbb032094
      https://github.com/llvm/llvm-project/commit/f2650c54c9a6caf021415ed57a0a430fbb032094
  Author: S. Bharadwaj Yadavalli <Bharadwaj.Yadavalli at microsoft.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    R clang/test/CodeGenHLSL/disable_opt.hlsl
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    M llvm/lib/Target/DirectX/DXILShaderFlags.h
    A llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-cs.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/disable-opt-lib.ll
    A llvm/test/CodeGen/DirectX/ShaderFlags/lib-entry-attr-error.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll

  Log Message:
  -----------
  [DirectX] Set Shader Flag DisableOptimizations (#126813)

- Set the shader flag `DisableOptimizations` based on `optnone`
attribute of shader entry functions.

- Add DXIL Metadata Analysis pass as pre-requisite for Shader Flags pass
to obtain entry function information collected therein.

- Named module metadata `dx.disable_optimizations` is intended to
indicate disabling optimizations (`-O0`) via commandline flag. However,
its intent is fulfilled by `optnone` attribute of shader entry functions as 
implemented in a recent change, and thus not needed. Delete
generation of named metadata and corresponding test file
`disable_opt.ll`.

- Add tests to verify correctness of setting shader flag.

Closes #112263


  Commit: cbb4e99f3613549c2168f52d6f348e3a7ee3cf55
      https://github.com/llvm/llvm-project/commit/cbb4e99f3613549c2168f52d6f348e3a7ee3cf55
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/source/Target/ThreadPlanStepOut.cpp
    A lldb/test/API/functionalities/thread/finish-from-empty-func/Makefile
    A lldb/test/API/functionalities/thread/finish-from-empty-func/TestEmptyFuncThreadStepOut.py
    A lldb/test/API/functionalities/thread/finish-from-empty-func/main.c

  Log Message:
  -----------
  [lldb] Update ThreadPlanStepOut to handle new breakpoint behavior (#126838)

I will be changing breakpoint hitting behavior soon, where currently
lldb reports a breakpoint as being hit when a thread is *at* a
BreakpointSite, but possibly has not executed the breakpoint instruction
and trapped yet, to having lldb only report a breakpoint hit when the
breakpoint instruction has actually been executed.

One corner case bug with this change is that when you are stopped at a
breakpoint (that has been hit) on the last instruction of a function,
and you do `finish`, a ThreadPlanStepOut is pushed to the thread's plan
stack to put a breakpoint on the return address and resume execution.
And when the thread is asked to resume, it sees that it is at a
BreakpointSite that has been hit, and pushes a
ThreadPlanStepOverBreakpoint on the thread.   The StepOverBreakpoint
plan sees that the thread's state is eStateRunning (not eStateStepping),
so it marks itself as "auto continue" -- so once the breakpoint has
been stepped over, we will execution on the thread.

With current lldb stepping behavior ("a thread *at* a BreakpointSite is
said to have stopped with a breakpoint-hit stop reason, even if the
breakpoint hasn't been executed yet"),
`ThreadPlanStepOverBreakpoint::DoPlanExplainsStop` has a special bit of
code which detects when the thread stops with a eStopReasonBreakpoint.
It first checks if the pc is the same as when we started -- did our
"step instruction" not actually step? -- says the stop reason is
explained. Otherwise it sets auto-continue to false (because we've hit
an *unexpected* breakpoint, and we have advanced past our original pc,
and returns false - the stop reason is not explained.

So we do the "finish", lldb instruction steps, we stop *at* the
return-address breakpoint and lldb sets the thread's stop reason to
breakpoint-hit. ThreadPlanStepOverBreakpoint sees an
eStopReasonBreakpoint, sets its auto-continue to false, and says we
stopped for osme reason other than this plan. (and it will also report
`IsPlanStale()==true` so it will remove itself) Meanwhile the
ThreadPlanStepOut sees that it has stopped in the StackID it wanted to
run to, and return success.

This all changes when stopping at a breakpoint site doesn't report
breakpoint-hit until we actually execute the instruction. Now the
ThraedPlanStepOverBreakpoint looks at the thread's stop reason, it's
eStopReasonTrace (we've instruction stepped), and so it leaves its
auto-continue to `true`. ThreadPlanStepOut sees that it has reached its
goal StackID, removes its breakpoint, and says it is done.
Thread::ShouldStop thinks the auto-continue == yes vote from
ThreadPlanStepOverBreakpoint wins, and we lose control of the process.

This patch changes ThreadPlanStepOut to require that *both* (1) we are
at the StackID of the caller function, where we wanted to end up, and
(2) we have actually hit the breakpoint that we inserted.

This in effect means that now lldb instruction-steps over the breakpoint
in the callee function, stops at the return address of the caller
function. StepOverBreakpoint has completed. StepOut is still running,
and we continue the thread again. We immediatley hit the breakpoint
(that we're sitting at), and now ThreadPlanStepOut marks itself as
completed, and we return control to the user.

Jim suggests that ThreadPlanStepOverBreakpoint is a bit unusual because
it's not something pushed on the stack by a higher-order thread plan
that "owns" it, it is inserted by the Thread as it is about to resume,
if we're at a BreakpointSite. It has no connection to the thread plans
above it, but tries to set the auto-continue mode based on the state of
the thread when it is inserted (and tries to detect an unexpected
breakpoint and unset that auto-continue it previously decided on,
because it now realizes it should not influence execution control any
more). Instead maybe the
ThreadPlanStepOverBreakpoint should be inserted as a child plan of
whatever the lowest plan is on the stack at the point it is added.

I added an API test that will catch this bug in the new thread
breakpoint algorithm.


  Commit: fa71238da800f3a818ec0e0649462389dc577890
      https://github.com/llvm/llvm-project/commit/fa71238da800f3a818ec0e0649462389dc577890
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/source/Target/ThreadPlanStepOut.cpp

  Log Message:
  -----------
  [lldb] inserted a typeo when checking in a suggested fix


  Commit: 65ed4fa57e6293f8e059a368ac52e2a57b1f78e4
      https://github.com/llvm/llvm-project/commit/65ed4fa57e6293f8e059a368ac52e2a57b1f78e4
  Author: Nikhil Kalra <nkalra at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/include/mlir-c/IR.h
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/CAPI/IR/IR.cpp
    M mlir/python/mlir/_mlir_libs/_mlir/ir.pyi
    M mlir/test/python/ir/module.py

  Log Message:
  -----------
  [mlir] Python: Parse ModuleOp from file path (#126572)

For extremely large models, it may be inefficient to load the model into
memory in Python prior to passing it to the MLIR C APIs for
deserialization. This change adds an API to parse a ModuleOp directly
from a file path.

Re-lands
[4e14b8a](https://github.com/llvm/llvm-project/commit/4e14b8afb44af58ab7073bb8c0b52875599b0ae1).


  Commit: 92f916faba13e5cf575f6aef64405b51eaccfe9a
      https://github.com/llvm/llvm-project/commit/92f916faba13e5cf575f6aef64405b51eaccfe9a
  Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    A llvm/include/llvm/CodeGen/DroppedVariableStatsMIR.h
    A llvm/include/llvm/IR/DroppedVariableStats.h
    A llvm/include/llvm/IR/DroppedVariableStatsIR.h
    R llvm/include/llvm/Passes/DroppedVariableStats.h
    R llvm/include/llvm/Passes/DroppedVariableStatsIR.h
    M llvm/include/llvm/Passes/StandardInstrumentations.h
    M llvm/lib/CodeGen/CMakeLists.txt
    A llvm/lib/CodeGen/DroppedVariableStatsMIR.cpp
    M llvm/lib/CodeGen/MachineFunctionPass.cpp
    M llvm/lib/IR/CMakeLists.txt
    A llvm/lib/IR/DroppedVariableStats.cpp
    A llvm/lib/IR/DroppedVariableStatsIR.cpp
    M llvm/lib/Passes/CMakeLists.txt
    R llvm/lib/Passes/DroppedVariableStatsIR.cpp
    M llvm/unittests/CodeGen/CMakeLists.txt
    A llvm/unittests/CodeGen/DroppedVariableStatsMIRTest.cpp

  Log Message:
  -----------
  Add a pass to collect dropped var statistics for MIR (#126686)

This patch attempts to reland
https://github.com/llvm/llvm-project/pull/120780 while addressing the
issues that caused the patch to be reverted.

Namely:

1. The patch had included code from the llvm/Passes directory in the
llvm/CodeGen directory.

2. The patch increased the backend compile time by 2% due to adding a
very expensive include in MachineFunctionPass.h

The patch has been re-structured so that there is no dependency between
the llvm/Passes and llvm/CodeGen directory, by moving the base class,
`class DroppedVariableStats` to the llvm/IR directory.

The expensive include in MachineFunctionPass.h has been changed to
contain forward declarations instead of other header includes which was
pulling a ton of code into MachineFunctionPass.h and should resolve any
issues when it comes to compile time increase.


  Commit: c5a4512d853d7d2deef2080b1acb6272fa683bc3
      https://github.com/llvm/llvm-project/commit/c5a4512d853d7d2deef2080b1acb6272fa683bc3
  Author: Jeffrey Byrnes <jeffrey.byrnes at amd.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
    A llvm/test/CodeGen/AMDGPU/iglp-no-clobber.ll

  Log Message:
  -----------
  [AMDGPU] iglp.opt does not clobber memory operands (#126976)

I think it was an accident that this wasn't included.


  Commit: ceb00c07028491506bcf8e334bb12cab7792098f
      https://github.com/llvm/llvm-project/commit/ceb00c07028491506bcf8e334bb12cab7792098f
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td

  Log Message:
  -----------
  [mlir][acc] Clean up TypedValue builders (#126968)

When MappableType was introduced alongside PointerLikeType, the data
clause operation builders were duplicated to accept a `TypedValue` of
one of the two type options. However, the underlying builder takes a
`Value` and this difference is not relevant for it. The only difference
is that `varType` is set differently depending on the type.

Having two duplicated builders can lead to clunky building since a
`Value` must always be cast to one of the two options. Thus, simply
clean this up - the verifier already checks that it is a type that
implements one of the two interfaces.


  Commit: f3a29906aa07d08bbde7ec02b93d02e25d805110
      https://github.com/llvm/llvm-project/commit/f3a29906aa07d08bbde7ec02b93d02e25d805110
  Author: Nikhil Kalra <nkalra at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Bytecode/Writer/BytecodeWriter.cpp
    M mlir/unittests/Bytecode/BytecodeTest.cpp

  Log Message:
  -----------
  [mlir] BytecodeWriter: invoke `reserveExtraSpace` (#126953)

Update `BytecodeWriter` to invoke `reserveExtraSpace` on the stream
before writing to it. This will give clients implementing custom output
streams the opportunity to allocate an appropriately sized buffer for
the write.


  Commit: c6a39697a9334c5e159d75e45094d691a8f9db90
      https://github.com/llvm/llvm-project/commit/c6a39697a9334c5e159d75e45094d691a8f9db90
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll

  Log Message:
  -----------
  [hwasan][NFCI] Add more test cases to llvm/test/Instrumentation/HWAddressSanitizer/pgo-opt-out.ll (#126980)

Add more combinations of parameters to test that the skip conditions are
OR'ed together


  Commit: 37952ef75f47440bc629e1a25571190f70bca09d
      https://github.com/llvm/llvm-project/commit/37952ef75f47440bc629e1a25571190f70bca09d
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/IR/BUILD.gn
    M llvm/utils/gn/secondary/llvm/lib/Passes/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/CodeGen/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 92f916faba13


  Commit: 3e02069afe39a3c314476141b9dd90daad5803f2
      https://github.com/llvm/llvm-project/commit/3e02069afe39a3c314476141b9dd90daad5803f2
  Author: Nick Desaulniers <nick.desaulniers at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libc/include/llvm-libc-macros/CMakeLists.txt
    M libc/include/llvm-libc-macros/pthread-macros.h
    M libc/test/integration/src/pthread/pthread_mutex_test.cpp

  Log Message:
  -----------
  [libc][pthread] fix -Wmissing-field-initializers (#126314)

Fixes:


llvm-project/libc/test/integration/src/pthread/pthread_rwlock_test.cpp:59:29:
    warning: missing field '__preference' initializer
    [-Wmissing-field-initializers]
       59 |   pthread_rwlock_t rwlock = PTHREAD_RWLOCK_INITIALIZER;
          |                             ^

Also, add a test that demonstrates the same issue for
PTHREAD_MUTEX_INITIALIZER, and fix that, too.

PTHREAD_ONCE_INIT does not have this issue and does have test coverage.


  Commit: 31cb807537fa09b3f452ac9f93388ef202f6b4a8
      https://github.com/llvm/llvm-project/commit/31cb807537fa09b3f452ac9f93388ef202f6b4a8
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Legality.cpp
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/BottomUpVec.cpp
    M llvm/test/Transforms/SandboxVectorizer/bottomup_basic.ll

  Log Message:
  -----------
  [SanbdoxVec][BottomUpVec] Fix diamond shuffle with multiple vector inputs (#126965)

When the operand comes from multiple inputs then we need additional
packing code. When the operands are scalar then we can use a single
InsertElementInst. But when the operands are vectors then we need a
chain of ExtractElementInst and InsertElementInst instructions to insert
the vector value into the destination vector. This is what this patch
implements.


  Commit: dbfb29fd45a2a655e3e89b108f9a31fd764bd293
      https://github.com/llvm/llvm-project/commit/dbfb29fd45a2a655e3e89b108f9a31fd764bd293
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libcxx/docs/Hardening.rst

  Log Message:
  -----------
  [libc++] Add a link to __builtin_verbose_trap from the hardening docs (#126930)


  Commit: 5953e5a3c6e7c0d35f8b6282ba214eedd3228c40
      https://github.com/llvm/llvm-project/commit/5953e5a3c6e7c0d35f8b6282ba214eedd3228c40
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M libcxx/utils/ci/run-buildbot

  Log Message:
  -----------
  [libc++] Simplify the apple-system-hardened CI configuration (#126911)

It was basically a copy-paste of the non-hardened version of the same
job, and it's easy to remove the duplication.


  Commit: 51c847d8f3d073c6d99a3dd4e6008645a8020b09
      https://github.com/llvm/llvm-project/commit/51c847d8f3d073c6d99a3dd4e6008645a8020b09
  Author: Amir Bishara <139038766+amirBish at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/test/Dialect/Tosa/invalid.mlir

  Log Message:
  -----------
  [mlir][tosa]-Edit the verifier of tosa constShapeOp (#126962)

Add verification for rank 1 for the elements' attribute of the tosa
const_shape operation.


  Commit: 1c207f1b6e8bba69dfbbcbd72704b4d720e363d0
      https://github.com/llvm/llvm-project/commit/1c207f1b6e8bba69dfbbcbd72704b4d720e363d0
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Fix DAG when old interval is mem free (#126983)

This patch fixes a bug in `DependencyGraph::extend()` when the old
interval contains no memory instructions. When this is the case we
should do a full dependency scan of the new interval.


  Commit: 5586541d220ebbe27d8dea039d0165c3b2694b06
      https://github.com/llvm/llvm-project/commit/5586541d220ebbe27d8dea039d0165c3b2694b06
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tensor/IR/Tensor.h
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp

  Log Message:
  -----------
  [mlir][tensor] Make useful Tensor utilities public (#126802)

1. Extract the main logic from `foldTensorCastPrecondition` into a
   dedicated helper hook: `hasFoldableTensorCastOperand`. This allows
   for reusing the corresponding checks.

2. Rename `getNewOperands` to `getUpdatedOperandsAfterCastOpFolding` for
   better clarity and documentation of its functionality.

3. These updated hooks will be reused in:
   * https://github.com/llvm/llvm-project/pull/123902. This PR makes
     them public.

**Note:** Moving these hooks to `Tensor/Utils` is not feasible because
`MLIRTensorUtils` depends on `MLIRTensorDialect` (CMake targets). If
these hooks were moved to `Utils`, it would create a dependency of
`MLIRTensorDialect` on `MLIRTensorUtils`, leading to a circular
dependency.


  Commit: bcba3117c057158472af83b36a38e0df0f57f4fc
      https://github.com/llvm/llvm-project/commit/bcba3117c057158472af83b36a38e0df0f57f4fc
  Author: Robert Imschweiler <50044286+ro-i at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id-unsupported-calling-convention.ll

  Log Message:
  -----------
  [AMDGPU] SelDAG: fix lowering of undefined workitem intrinsics (#126058)

GlobalISel already handles undefined workitem.id.{x,y,z} intrinsics,
SelDAG failed in AMDGPUISelLowering.cpp due to a failed assertion in
`AMDGPUTargetLowering::loadInputValue`: `Arg && "Attempting to load
missing argument"`. This commit changes the behavior of SelDAG to
instead use a zero constant.

This LLVM defect was identified via the AMD Fuzzing project.


  Commit: 105b3a92a72b9acdb01a9ce280a456bc4d5dce78
      https://github.com/llvm/llvm-project/commit/105b3a92a72b9acdb01a9ce280a456bc4d5dce78
  Author: Matthew Bastien <matthew_bastien at apple.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json
    M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts

  Log Message:
  -----------
  [lldb-dap] add `debugAdapterExecutable` property to launch configuration (#126803)

The Swift extension for VS Code requires that the `lldb-dap` executable
come from the Swift toolchain which may or may not be configured in
`PATH`. At the moment, this can be configured via LLDB DAP's extension
settings, but experience has shown that modifying other extensions'
settings on behalf of the user (especially those subject to change
whenever a new toolchain is selected) causes issues. Instead, it would
be easier to have this configurable in the launch configuration and let
the Swift extension (or any other extension that wanted to, really)
configure the path to `lldb-dap` that way. This allows the Swift
extension to have its own launch configuration type that delegates to
the LLDB DAP extension in order to provide a more seamless debugging
experience for Swift executables.

This PR adds a new property to the launch configuration object called
`debugAdapterExecutable` which allows overriding the `lldb-dap`
executable path for a specific debug session.


  Commit: 6936fadfc32023a029ac7ff757bf8f40092ee2b1
      https://github.com/llvm/llvm-project/commit/6936fadfc32023a029ac7ff757bf8f40092ee2b1
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_local_cache.h

  Log Message:
  -----------
  [compiler-rt] [sanitizer] avoid UB in allocator (#126977)


  Commit: 4078b11daa5b4902f59fa79c1647a20532b16c55
      https://github.com/llvm/llvm-project/commit/4078b11daa5b4902f59fa79c1647a20532b16c55
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix fusion crash for non-int/fp memref elt types (#126829)

Fix assumption on memref elt types being int or float during private
memref creation in affine fusion.

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


  Commit: 42382386843244cbbac0e23029e07969048e62c7
      https://github.com/llvm/llvm-project/commit/42382386843244cbbac0e23029e07969048e62c7
  Author: Da-Viper <57949090+Da-Viper at users.noreply.github.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts

  Log Message:
  -----------
  [lldb-dap] Fix: Could not find DAP in path (#126903)

Fixes #120839


  Commit: 1b582ef3c0a887409b513aae282682b23c7a1a41
      https://github.com/llvm/llvm-project/commit/1b582ef3c0a887409b513aae282682b23c7a1a41
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Bump the version number for publishing in the Marketplace


  Commit: 51d82552037290f9368a43ef7a6e4e642b8c28f4
      https://github.com/llvm/llvm-project/commit/51d82552037290f9368a43ef7a6e4e642b8c28f4
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/arm64-vmovn.ll
    M llvm/test/Instrumentation/MemorySanitizer/AArch64/qshrn.ll

  Log Message:
  -----------
  [msan] Handle Arm NEON saturating extract and narrow (#125742)

This handles NEON saturating extract and narrow (Intrinsic::aarch64_neon_{sqxtn, sqxtun, uqxtn}) by (ab)using handleShadowOr() to perform the shadow cast. Previously, these were unknown intrinsics handled suboptimally by visitInstruction.

Updates the tests from https://github.com/llvm/llvm-project/pull/125288 and https://github.com/llvm/llvm-project/pull/125140


  Commit: a6f7cb54d3c268ea4748a0ff783b4b030c3195d9
      https://github.com/llvm/llvm-project/commit/a6f7cb54d3c268ea4748a0ff783b4b030c3195d9
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/lib/Support/Unix/Process.inc

  Log Message:
  -----------
  [Support] Prefer AUX vector for page size (#126863)

Prefers the page size to come from the AUX vector, `getpagesize` is
removed from POSIX.1-2001. Also throws in a couple asserts to ensure the
page size is a valid value.


  Commit: 8421ad7f4515653001c3927734fc6204367478a0
      https://github.com/llvm/llvm-project/commit/8421ad7f4515653001c3927734fc6204367478a0
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/test/Dialect/Affine/loop-fusion-2.mlir
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir
    M mlir/test/Dialect/Affine/loop-fusion.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix sibling fusion - missing check (#126626)

Fix sibling fusion for slice maximality check. Producer-consumer fusion
had this check but not sibling fusion. Sibling fusion shouldn't be
performed if the slice isn't "maximal" (i.e., if it isn't the whole of
the source).


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


  Commit: 3e223e3a202c046b6553aac91d79b6abd089ee8d
      https://github.com/llvm/llvm-project/commit/3e223e3a202c046b6553aac91d79b6abd089ee8d
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/canonicalize.mlir

  Log Message:
  -----------
  [mlir][vector] Fix out-of-bounds access (#126734)

This PR fixes an out-of-bounds bug that occurs when there are no overlap
dimensions between the `sizes` and source of
`vector.extract_strided_slice`, causing access to `sizes` to go out of
bounds. Fixes #126196.


  Commit: 8ed36373a2227c7d39fb1a520ec8dde476dc5603
      https://github.com/llvm/llvm-project/commit/8ed36373a2227c7d39fb1a520ec8dde476dc5603
  Author: Florian Mayer <fmayer at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt

  Log Message:
  -----------
  [NFC] [sanitizer] allow getauxval in symbolizer


  Commit: df07121d54432175ffc211d4165bfe7090c58c5e
      https://github.com/llvm/llvm-project/commit/df07121d54432175ffc211d4165bfe7090c58c5e
  Author: Thurston Dang <thurston at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/HWAddressSanitizer.cpp

  Log Message:
  -----------
  [hwasan][NFCI] Rename ClRandomSkipRate to ClRandomKeepRate (#126990)

The meaning of ClRandomSkipRate was inverted in
https://github.com/llvm/llvm-project/pull/88070 but the variable name
was not changed. This patch fixes it to avoid confusion.

Additionally, it elaborates the flag description to mention the
interaction between the random keep rate and hotness cutoff.


  Commit: 73ab0c076215125a249eee117f51f2ce4f5f9b50
      https://github.com/llvm/llvm-project/commit/73ab0c076215125a249eee117f51f2ce4f5f9b50
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M lldb/tools/lldb-dap/package-lock.json
    M lldb/tools/lldb-dap/package.json

  Log Message:
  -----------
  [lldb-dap] Upgrade @types/node to fix TS2386 in node/module.d.ts (#126994)

Upgrade @types/node to work around an issue in TypeScript [1] that
caused our "publish to VSCode Marketplace" github action [2] to fail:

```
node_modules/@types/node/module.d.ts:290:13 - error TS2386: Overload signatures must all be optional or required.

290             resolve?(specified: string, parent?: string | URL): Promise<string>;
```

[1] https://github.com/microsoft/TypeScript/pull/59259#issuecomment-2228833941
[2] https://github.com/llvm/vscode-lldb/actions/runs/13298213337/job/37134713009


  Commit: 30a9941624350523535bdec201c895698c171afd
      https://github.com/llvm/llvm-project/commit/30a9941624350523535bdec201c895698c171afd
  Author: Koakuma <koachan at protonmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/sparc-ias-Wa.s

  Log Message:
  -----------
  [SPARC][IAS] Add IAS flag handling for ISA levels

Add IAS flag handling for ISA levels we support in LLVM.

Reviewers: MaskRay, rorth, brad0, s-barannikov

Reviewed By: MaskRay

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


  Commit: 89d636ba91924c945d39f02f261863b709249744
      https://github.com/llvm/llvm-project/commit/89d636ba91924c945d39f02f261863b709249744
  Author: Brad Smith <brad at comstyle.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/cmake/config-ix.cmake
    M llvm/include/llvm/Config/config.h.cmake
    M llvm/lib/Support/Unix/Process.inc

  Log Message:
  -----------
  [Support] Fix building on FreeBSD and OpenBSD (#127005)

Fix building after a6f7cb54d3c268ea4748a0ff783b4b030c3195d9.

Check for the function getauxval() instead of just the sys/auxv.h
header.


  Commit: cdf45447ef7fe127848dc5e3144006a3391f46a3
      https://github.com/llvm/llvm-project/commit/cdf45447ef7fe127848dc5e3144006a3391f46a3
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp

  Log Message:
  -----------
  Orc: Suppress a warning in #126691


  Commit: 9bd836adbbb20246a5b0f08a019aa662d1c6dcd7
      https://github.com/llvm/llvm-project/commit/9bd836adbbb20246a5b0f08a019aa662d1c6dcd7
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
    M utils/bazel/llvm_configs/config.h.cmake

  Log Message:
  -----------
  [bazel] Introduce HAVE_SYS_AUXV_H for #126863


  Commit: 9456e7fcdd8de6af6bcbc82c91e447729eb27af5
      https://github.com/llvm/llvm-project/commit/9456e7fcdd8de6af6bcbc82c91e447729eb27af5
  Author: Lang Hames <lhames at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/UnwindInfoManager.cpp

  Log Message:
  -----------
  [ORC] Silence unused variable warnings.


  Commit: 7b473dfe84c17319930d4019ab3f6ca0cfc03416
      https://github.com/llvm/llvm-project/commit/7b473dfe84c17319930d4019ab3f6ca0cfc03416
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/FIROpenACCTypeInterfaces.h
    M flang/include/flang/Tools/PointerModels.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/OpenACC/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/RegisterOpenACCExtensions.cpp
    M flang/test/Fir/OpenACC/openacc-mappable.fir
    A flang/test/Fir/OpenACC/openacc-type-categories.f90
    M flang/test/lib/OpenACC/TestOpenACCInterfaces.cpp

  Log Message:
  -----------
  [flang][acc] Implement type categorization for FIR types (#126964)

The OpenACC type interfaces have been updated to require that a type
self-identify which type category it belongs to. Ensure that FIR types
are able to provide this self identification.

In addition to implementing the new API, the PointerLikeType interface
attachment was moved to FIROpenACCSupport library like MappableType to
ensure all type interfaces and their implementation are now in the same
spot.


  Commit: 1032df6f607b6bee55b5340a878dfcfc17d12653
      https://github.com/llvm/llvm-project/commit/1032df6f607b6bee55b5340a878dfcfc17d12653
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    A llvm/test/LTO/X86/coro.ll
    M llvm/test/Other/new-pm-O0-defaults.ll
    M llvm/test/Other/new-pm-lto-defaults.ll

  Log Message:
  -----------
  [LTO][Pipelines][Coro] Handle coroutines in LTO pipeline (#126168)

ThinLTO delays handling of coroutines to ThinLTO backend.
However it's usually possible to use ThinLTO prelink objects for FullLTO.

In this case we have left-over coroutines which crash in codegen.

Issue #104525.


  Commit: e76739eeb952940b2979c70ba44a28fecf592695
      https://github.com/llvm/llvm-project/commit/e76739eeb952940b2979c70ba44a28fecf592695
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-02-12 (Wed, 12 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/tools/libclang/CXString.cpp

  Log Message:
  -----------
  [libclang] Always Dup in createRef(StringRef) (#125020)

We can't guaranty that underlying string is
0-terminated and [String.size()] is even in the
same allocation.


https://lab.llvm.org/buildbot/#/builders/94/builds/4152/steps/17/logs/stdio
```
==c-index-test==1846256==WARNING: MemorySanitizer: use-of-uninitialized-value
    #0  in clang::cxstring::createRef(llvm::StringRef) llvm-project/clang/tools/libclang/CXString.cpp:96:36
    #1  in DumpCXCommentInternal llvm-project/clang/tools/c-index-test/c-index-test.c:521:39
    #2  in DumpCXCommentInternal llvm-project/clang/tools/c-index-test/c-index-test.c:674:7
    #3  in DumpCXCommentInternal llvm-project/clang/tools/c-index-test/c-index-test.c:674:7
    #4  in DumpCXComment llvm-project/clang/tools/c-index-test/c-index-test.c:685:3
    #5  in PrintCursorComments llvm-project/clang/tools/c-index-test/c-index-test.c:768:7

  Memory was marked as uninitialized
    #0  in __msan_allocated_memory llvm-project/compiler-rt/lib/msan/msan_interceptors.cpp:1023:5
    #1  in Allocate llvm-project/llvm/include/llvm/Support/Allocator.h:172:7
    #2  in Allocate llvm-project/llvm/include/llvm/Support/Allocator.h:216:12
    #3  in Allocate llvm-project/llvm/include/llvm/Support/AllocatorBase.h:53:43
    #4  in Allocate<char> llvm-project/llvm/include/llvm/Support/AllocatorBase.h:76:29
    #5  in convertCodePointToUTF8 llvm-project/clang/lib/AST/CommentLexer.cpp:42:30
    #6  in clang::comments::Lexer::resolveHTMLDecimalCharacterReference(llvm::StringRef) const llvm-project/clang/lib/AST/CommentLexer.cpp:76:10
    #7  in clang::comments::Lexer::lexHTMLCharacterReference(clang::comments::Token&) llvm-project/clang/lib/AST/CommentLexer.cpp:615:16
    #8  in consumeToken llvm-project/clang/include/clang/AST/CommentParser.h:62:9
    #9  in clang::comments::Parser::parseParagraphOrBlockCommand() llvm-project/clang/lib/AST/CommentParser.cpp
    #10 in clang::comments::Parser::parseFullComment() llvm-project/clang/lib/AST/CommentParser.cpp:925:22
    #11 in clang::RawComment::parse(clang::ASTContext const&, clang::Preprocessor const*, clang::Decl const*) const llvm-project/clang/lib/AST/RawCommentList.cpp:221:12
    #12 in clang::ASTContext::getCommentForDecl(clang::Decl const*, clang::Preprocessor const*) const llvm-project/clang/lib/AST/ASTContext.cpp:714:35
    #13 in clang_Cursor_getParsedComment llvm-project/clang/tools/libclang/CXComment.cpp:36:35
    #14 in PrintCursorComments llvm-project/clang/tools/c-index-test/c-index-test.c:756:25
 ```


  Commit: 7050e7d2a305dd2b91774e89fb028794cca63c37
      https://github.com/llvm/llvm-project/commit/7050e7d2a305dd2b91774e89fb028794cca63c37
  Author: sakria9 <102365810+sakria9 at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/test/AST/ast-dump-templates.cpp

  Log Message:
  -----------
  [clang] [ASTDump] Add support for structural value template arguments in TextNodeDumper (#126341)

It was missed in 5518a9d which introduced this new template argument kind.


  Commit: ffd263306194f3d8246e2f25184a44a7f78185be
      https://github.com/llvm/llvm-project/commit/ffd263306194f3d8246e2f25184a44a7f78185be
  Author: AZero13 <gfunni234 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    M llvm/test/Transforms/InstCombine/ashr-lshr.ll

  Log Message:
  -----------
  [InstCombine] Fold mul (shr exact (X, N)), 2^N + 1 -> add (X , shr exact (X, N)) (#112407)

Alive2 Proofs:
https://alive2.llvm.org/ce/z/aJnxyp
https://alive2.llvm.org/ce/z/dyeGEv


  Commit: ec056f54589d937ae3f74d795b94de886cbb7ec7
      https://github.com/llvm/llvm-project/commit/ec056f54589d937ae3f74d795b94de886cbb7ec7
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M utils/bazel/llvm-project-overlay/llvm/include/llvm/Config/config.h
    M utils/bazel/llvm_configs/config.h.cmake

  Log Message:
  -----------
  [llvm][bazel] Adjust to HAVE_SYS_AUXV_H > HAVE_GETAUXVAL in https://github.com/llvm/llvm-project/commit/89d636ba91924c945d39f02f261863b709249744


  Commit: 9cc8442a2b438962883bbbfd8ff62ad4b1a2b95d
      https://github.com/llvm/llvm-project/commit/9cc8442a2b438962883bbbfd8ff62ad4b1a2b95d
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    A llvm/lib/Target/RISCV/RISCVSchedGeneric.td

  Log Message:
  -----------
  [RISCV][NFC] Move GenericModel to standalone file (#127003)

And fix some typos in comments.

In the future, we may add more scheduling info to GenericModel.


  Commit: a472147af4adcf419cd1287f7a4707237ba7f41e
      https://github.com/llvm/llvm-project/commit/a472147af4adcf419cd1287f7a4707237ba7f41e
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/Passes.h
    M mlir/include/mlir/Dialect/Affine/Passes.td
    M mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
    M mlir/test/Dialect/Affine/unroll.mlir
    M mlir/test/Dialect/SCF/loop-unroll.mlir

  Log Message:
  -----------
  [mlir][affine]make affine-loop-unroll a FunctionOpInterface pass. (#126475)

[mlir][affine]make affine-loop-unroll a FunctionOpInterface pass

Make `affine-loop-unroll` a `FunctionOpInterface` pass.Now unroll can be
done on gpu.func.


  Commit: 75c356c488bf22cb3627fbde58140f239cf6a920
      https://github.com/llvm/llvm-project/commit/75c356c488bf22cb3627fbde58140f239cf6a920
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/test/Fir/alloc.fir
    M flang/test/Fir/arrexp.fir
    M flang/test/Fir/box.fir
    M flang/test/Fir/embox.fir
    M flang/test/Fir/ignore-missing-type-descriptor.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M flang/test/Integration/OpenMP/private-global.f90
    M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/forall/character-1.f90
    M flang/test/Lower/real-descriptors.f90
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
    M mlir/test/Target/LLVMIR/omptarget-array-sectioning-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-constant-indexing-device-region.mlir
    M mlir/test/Target/LLVMIR/omptarget-fortran-common-block-host.mlir
    M mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
    M mlir/test/Target/LLVMIR/openmp-private.mlir

  Log Message:
  -----------
  [MLIR][LLVMIR] Always use TargetFolder in IRBuilder (#126929)

This is a followup to https://github.com/llvm/llvm-project/pull/126745,
generalizing it to always use TargetFolder, including inside function
bodies.

This avoids generating non-canonical constant expressions that can be
folded away.


  Commit: 672e3858a4e4b9e155adb72426074ea2af0dd922
      https://github.com/llvm/llvm-project/commit/672e3858a4e4b9e155adb72426074ea2af0dd922
  Author: Takuto Ikuta <tikuta at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libcxx/include/__vector/vector_bool.h

  Log Message:
  -----------
  [libcxx] Add a missing include for __bit_iterator (#127015)

This is to fix compile error with explicit Clang modules like
```
../../third_party/libc++/src/include/__vector/vector_bool.h:85:11: error: default argument of '__bit_iterator' must be imported from module 'std.bit_reference_fwd' before it is required
   85 |   typedef __bit_iterator<vector, false> pointer;
      |           ^
../../third_party/libc++/src/include/__fwd/bit_reference.h:23:68: note: default argument declared here is not reachable
   23 | template <class _Cp, bool _IsConst, typename _Cp::__storage_type = 0>
      |                                                                    ^
```


  Commit: 0761841bc000ce3206e043d25eb45e87d6dab0d4
      https://github.com/llvm/llvm-project/commit/0761841bc000ce3206e043d25eb45e87d6dab0d4
  Author: Takuto Ikuta <tikuta at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libcxx/include/__filesystem/path.h

  Log Message:
  -----------
  [libcxx] Add a missing include for __enable_if_t (#127016)

This is to fix compile error with explicit Clang modules like
```
../../third_party/libc++/src/include/__filesystem/path.h:80:26: error: declaration of '__enable_if_t' must be imported from module 'std_core.type_traits.enable_if' before it is required
   80 | template <class _ECharT, __enable_if_t<__can_convert_char<_ECharT>::value, int> = 0>
      |                          ^
../../third_party/libc++/src/include/__type_traits/enable_if.h:34:1: note: declaration here is not visible
   34 | using __enable_if_t _LIBCPP_NODEBUG = typename enable_if<_Bp, _Tp>::type;
      | ^
```


  Commit: 70b994bcfaafadd649818d2a7f90f8f5989ec6c1
      https://github.com/llvm/llvm-project/commit/70b994bcfaafadd649818d2a7f90f8f5989ec6c1
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/DWARF/DWARFDIE.cpp
    M lldb/test/Shell/SymbolFile/DWARF/x86/simplified-template-names.cpp

  Log Message:
  -----------
  [lldb/DWARF] Resolve type unit references in llvm DWARFDIE compatibility wrappers (#126902)

The llvm versions of these functions do that, so we must to so as well.
Practically this meant that were were unable to correctly un-simplify
the names of some types when using type units, which resulted in type
lookup errors.


  Commit: 3bf425764e1837e909263a7e61a13e2308dc7d5f
      https://github.com/llvm/llvm-project/commit/3bf425764e1837e909263a7e61a13e2308dc7d5f
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/test/Lower/common-block.f90
    M flang/test/Lower/real-descriptors.f90

  Log Message:
  -----------
  [flang] Update f128 tests

Update test that require flang-supports-f128-math after #126929.


  Commit: ee655ca27aad466bcc54f6eba03f7e564940ad5a
      https://github.com/llvm/llvm-project/commit/ee655ca27aad466bcc54f6eba03f7e564940ad5a
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M llvm/include/llvm/Analysis/CaptureTracking.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll
    M llvm/test/Transforms/FunctionAttrs/arg_returned.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/noundef.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/stats.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
    M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
    M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
    M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
    M llvm/unittests/Analysis/CaptureTrackingTest.cpp

  Log Message:
  -----------
  [CaptureTracking][FunctionAttrs] Add support for CaptureInfo (#125880)

This extends CaptureTracking to support inferring non-trivial
CaptureInfos. The focus of this patch is to only support FunctionAttrs,
other users of CaptureTracking will be updated in followups.

The key API changes here are:

* DetermineUseCaptureKind() now returns a UseCaptureInfo where the UseCC
component specifies what is captured at that Use and the ResultCC
component specifies what may be captured via the return value of the
User. Usually only one or the other will be used (corresponding to
previous MAY_CAPTURE or PASSTHROUGH results), but both may be set for
call captures.
* The CaptureTracking::captures() extension point is passed this
UseCaptureInfo as well and then can decide what to do with it by
returning an Action, which is one of: Stop: stop traversal.
ContinueIgnoringReturn: continue traversal but don't follow the
instruction return value. Continue: continue traversal and follow the
instruction return value if it has additional CaptureComponents.

For now, this patch retains the (unsound) special logic for comparison
of null with a dereferenceable pointer. I'd like to switch key code to
take advantage of address/address_is_null before dropping it.

This PR mainly intends to introduce necessary API changes and basic
inference support, there are various possible improvements marked with
TODOs.


  Commit: df62441336ffaa42c8f9d743194ac15f4bf01ec0
      https://github.com/llvm/llvm-project/commit/df62441336ffaa42c8f9d743194ac15f4bf01ec0
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [MISched][NFC] Remove unused heuristic NextDefUse from enum (#125879)

Heuristic was removed in 46533e614b78 due to being ineffective.


  Commit: 9b2fc66830b2e81d95ef272ddc51c6cff9ba23a1
      https://github.com/llvm/llvm-project/commit/9b2fc66830b2e81d95ef272ddc51c6cff9ba23a1
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [SDAG] Harden assumption in getMemsetStringVal (#126207)

In 5235973ee03aca4148ecabe5eff64da2af1e034e, an ICE was fixed in
getMemsetStringVal where f128 wasn't handled. It was noted at the time
[1] that the code below this also looks suspect, since it assumes the
element type of VT is either an f32 or f64.

This part of getMemsetStringVal relates to memcpy operations where the
source is a copy from a zero constant. The VT in question is determined
by TargetLowering::findOptimalMemOpLowering, which in turn calls a
further TLI hook getOptimalMemOpType.

For AArch64, getOptimalMemOpType returns either a v16i8, f128, i64, i32
or Other. For Other, TargetLowering::findOptimalMemOpLowering will then
pick an integer VT. So on AArch64 at least, I don't believe the suspect
code can be reached.

For other targets, ARM and x86 are the only ones that return a FP vector
type from getOptimalMemOpType. For both targets, the only such type is
v2f64, but given f64 is already handled it should also be fine.

To defend this, I considered adding an assert as mentioned in [1], but
given getConstantFP handles vector types, I figured using this to fully
handle the FP types makes the code simpler and more robust.

For test coverage I added unreachables to both of the branches handling
FP types in this code, but found neither fired with check-llvm across
all targets.

Test coverage was added to llvm/test/CodeGen/AArch64/memcpy-f128.ll in
5235973ee03aca4148ecabe5eff64da2af1e034e to defend ICE on f128, but at
some point it stopped hitting this code.

AArch64TargetLowering::getOptimalMemOpType was updated in
29200611055f49a0d37243caa5f8bba1df9d57a6, so I suspect this is when it
happened, although I haven't verified this. Although I did find by
updating the test to disable NEON, getOptimalMemOpType returns an f128
and the branch is once again hit.

For the final branch noted as suspect in [1], as far as I can tell this
has never had any test coverage, so I've added a test to the ARM backend
for this.

Fixes: https://github.com/llvm/llvm-project/issues/20521 [1]


  Commit: 213917be82e3cd57c74afc836377a746be45dafd
      https://github.com/llvm/llvm-project/commit/213917be82e3cd57c74afc836377a746be45dafd
  Author: Matthias Springer <me at m-sp.org>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    R mlir/docs/BufferDeallocationInternals.md
    M mlir/docs/OwnershipBasedBufferDeallocation.md
    R mlir/docs/includes/img/branch_example_post_move.svg
    R mlir/docs/includes/img/branch_example_pre_move.svg
    R mlir/docs/includes/img/nested_branch_example_post_move.svg
    R mlir/docs/includes/img/nested_branch_example_pre_move.svg
    R mlir/docs/includes/img/region_branch_example_pre_move.svg
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/Passes.td
    R mlir/lib/Dialect/Bufferization/Transforms/BufferDeallocation.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/CMakeLists.txt
    R mlir/test/Dialect/Bufferization/Transforms/buffer-deallocation.mlir
    M mlir/test/Pass/pipeline-invalid.mlir

  Log Message:
  -----------
  [mlir][bufferization] Remove `buffer-deallocation` pass (#126366)

The `-buffer-deallocation` pass is not compatible with One-Shot
Bufferize and has been replaced with the Ownership-based Buffer
Deallocation pass about 1.5 years ago. To clean up the code base, this
commit removes the deprecated `buffer-deallocation` pass. All uses of
this deprecated pass within MLIR have already been migrated.

Note for LLVM integration: If you depend on this pass, migrate to the
Ownership-based Buffer Deallocation pass or copy the pass to your
codebase. For details, see
https://discourse.llvm.org/t/psa-bufferization-new-buffer-deallocation-pipeline/73375.


  Commit: cd21e0f08b65512858bd6067681ce2ce254b0188
      https://github.com/llvm/llvm-project/commit/cd21e0f08b65512858bd6067681ce2ce254b0188
  Author: Christian Sigg <csigg at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Port a472147af4ad


  Commit: 298caebaadc38eadced7175c80ed6b2866755cb9
      https://github.com/llvm/llvm-project/commit/298caebaadc38eadced7175c80ed6b2866755cb9
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Symbol/Block.cpp
    M lldb/test/Shell/ScriptInterpreter/Python/sb_function_ranges.s

  Log Message:
  -----------
  [lldb] Fix Block::GetRangeIndexContainingAddress for discontinuous functions (#124931)

This is a followup to #122440, which changed function-relative
calculations to use the function entry point rather than the lowest
address of the function (but missed this usage). Like in #116777, the
logic is changed to use file addresses instead of section offsets (as
not all parts of the function have to be in the same section).


  Commit: 308ce8d5240875911987b63fa6579c87758ab4ac
      https://github.com/llvm/llvm-project/commit/308ce8d5240875911987b63fa6579c87758ab4ac
  Author: Oliver Stannard <oliver.stannard at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMCallingConv.cpp
    M llvm/lib/Target/ARM/ARMCallingConv.td
    M llvm/lib/Target/ARM/ARMISelLowering.cpp
    A llvm/test/CodeGen/Thumb2/bf16-pcs.ll
    A llvm/test/CodeGen/Thumb2/fp16-pcs.ll

  Log Message:
  -----------
  [ARM] Fix calling convention for __fp16 with big-endian (#126741)

AAPCS32 defines the fp16 and bf16 types as being passed as if they were
extended to 32 bits, with the high 16 bits being unspecified. The
extension is specified as happening as-if it was done in a register,
which means that for big endian targets, the actual value gets passed in
the higher addressed half of the stack slot, instead of the lower
addressed half as for little endian. Previously, for targets with the
fp16 extension, we were passing these types as a 16 bit stack slot,
which worked for little endian because every later stack slot would be
4-byte aligned leaving the 2 byte gap, but was incorrect for big endian.


  Commit: b7baf2ee8d302aab7cae787645ee7b7ec107e3ee
      https://github.com/llvm/llvm-project/commit/b7baf2ee8d302aab7cae787645ee7b7ec107e3ee
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/IR/Constants.cpp
    M llvm/test/Transforms/InstCombine/add2.ll
    M llvm/test/Transforms/NewGVN/2009-11-12-MemDepMallocBitCast.ll

  Log Message:
  -----------
  [IR] Mark mul constant expression as undesirable

This is a (very belated) reland of 0a362f12ec60a49a054befec8620a8e69523af54,
which I originally reverted due to flang test failures.

This marks mul constant expressions as undesirable, which means that
we will no longer create them by default, but they can still be
created explicitly.

Part of:
https://discourse.llvm.org/t/rfc-remove-most-constant-expressions/63179


  Commit: d44d806faa879dfb7a7ceb58beeb57cf8d5af430
      https://github.com/llvm/llvm-project/commit/d44d806faa879dfb7a7ceb58beeb57cf8d5af430
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/MC/AArch64/armv8.1a-lse.s
    M llvm/test/MC/AArch64/armv9.6a-lsui.s

  Log Message:
  -----------
  [LLVM][AArch64] Remove aliases of LSUI instructions (#126072)

Removes MnemonicAliases added for instructions available with
the LSUI feature (e.g. CAS -> CAST) which are not equivalent.
The aliases stt[add|clr|set]a & stt[add|clr|set]al are also removed.


  Commit: 4ac1c58a77fb6983e55a4f41f4b0ff97f431ffdf
      https://github.com/llvm/llvm-project/commit/4ac1c58a77fb6983e55a4f41f4b0ff97f431ffdf
  Author: Victor Guerra <vguerra at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/IR/AsmPrinter.cpp

  Log Message:
  -----------
  [mlir][NFC] Add missing `)` in doc for `--mlir-print-local-scope` (#125721)

Signed-off-by: Victor Guerra <vguerra at gmail.com>


  Commit: 9d92bea507be19f4a3dba6107aa5eeb6e95a2765
      https://github.com/llvm/llvm-project/commit/9d92bea507be19f4a3dba6107aa5eeb6e95a2765
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Target/LLVMIR/ModuleTranslation.cpp

  Log Message:
  -----------
  [MLIR][LLVMIR] Fix use-after-move

Fix an issue introduced in #126929: The LLVM module is moved into
the ModuleTranslator, so query the DataLayout from there.


  Commit: 48897774a5accdd33fcb6d7a7b698a61c96006ed
      https://github.com/llvm/llvm-project/commit/48897774a5accdd33fcb6d7a7b698a61c96006ed
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/utils/TableGen/RegisterInfoEmitter.cpp

  Log Message:
  -----------
  TableGen: Add missing consts to CodeGenSubRegIndex


  Commit: 3ad8657ff60b9967235ad65fdb8b767aae0e799d
      https://github.com/llvm/llvm-project/commit/3ad8657ff60b9967235ad65fdb8b767aae0e799d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/include/lldb/API/SBTarget.h
    M lldb/include/lldb/API/SBType.h
    M lldb/include/lldb/API/SBValue.h
    M lldb/source/API/SBType.cpp
    M lldb/test/API/lang/cpp/class-template-parameter-pack/TestTemplatePackArgs.py
    M lldb/test/API/lang/cpp/template-arguments/Makefile
    M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py
    M lldb/test/API/lang/cpp/template-arguments/main.cpp

  Log Message:
  -----------
  [lldb][SBAPI] Add new SBType::GetTemplateParameterValue API (#126901)

This patch adds a new API to `SBType` to retrieve the value of a
template parameter given an index. We re-use the
`TypeSystemClang::GetIntegralTemplateArgument` for this and thus
currently only supports integral non-type template parameters. Types
like float/double are not supported yet.

rdar://144395216


  Commit: b88c5d638a00d723f521c907911e42115717937e
      https://github.com/llvm/llvm-project/commit/b88c5d638a00d723f521c907911e42115717937e
  Author: Balazs Benics <benicsbalazs at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/Analysis/live-stmts.cpp

  Log Message:
  -----------
  [analyzer] Disable a flaky test while triaging why its flaky (#127034)

I had previous attempts for fixing this flaky test. Let's admit I failed
so far, and disable this until we have a permanent fix.

See the discussion at:
https://github.com/llvm/llvm-project/pull/126913#issuecomment-2655850766


  Commit: 3be48a6f809afccc9bcddc8cf94492812b49e1f7
      https://github.com/llvm/llvm-project/commit/3be48a6f809afccc9bcddc8cf94492812b49e1f7
  Author: Mariya Podchishchaeva <mariya.podchishchaeva at intel.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/test/Preprocessor/embed_preprocess_to_file.c

  Log Message:
  -----------
  [clang] Fix preprocessor output from #embed (#126742)

When bytes with negative signed char values appear in the data, make
sure to use raw bytes from the data string when preprocessing, not char
values.

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


  Commit: 6c5a0086d15e28a39fb8e9ae768a5c3b55c210ae
      https://github.com/llvm/llvm-project/commit/6c5a0086d15e28a39fb8e9ae768a5c3b55c210ae
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/peephole-opt-fold-reg-sequence-subreg.mir

  Log Message:
  -----------
  AMDGPU: Add more tests for peephole opt subregister composing


  Commit: 499d6da3bb2c967abda298518dc22b7baf084a9e
      https://github.com/llvm/llvm-project/commit/499d6da3bb2c967abda298518dc22b7baf084a9e
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/Disassembler/LLVMC/DisassemblerLLVMC.cpp
    M lldb/source/Symbol/SymbolContext.cpp
    M lldb/test/Shell/Commands/command-disassemble.s

  Log Message:
  -----------
  [lldb] Correctly resolve (discontinuous) function offsets when disassembling (#126925)

We need to iterate through the all symbol context ranges returned by
(since #126505) SymbolContext::GetAddressRange. This also includes a fix
to print the function offsets as signed values.

I've also wanted to check that the addresses which are in the middle of
the function do *not* resolve to the function, but that's not entirely
the case right now. This appears to be a separate issue though, so I've
just left a TODO for now.


  Commit: 9c89faa62bbf71b1e634a993983cef5507aab249
      https://github.com/llvm/llvm-project/commit/9c89faa62bbf71b1e634a993983cef5507aab249
  Author: Nicholas Guy <nicholas.guy at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll

  Log Message:
  -----------
  [LoopVectorizer][AArch64] Add support for partial reduce subtraction (#123636)


  Commit: 1083ec647f16314bcc9af8c4d6b11f50d288bca6
      https://github.com/llvm/llvm-project/commit/1083ec647f16314bcc9af8c4d6b11f50d288bca6
  Author: Harald van Dijk <harald.vandijk at codeplay.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M llvm/include/llvm/IR/DIBuilder.h
    M llvm/lib/IR/DIBuilder.cpp
    M llvm/lib/IR/DebugInfo.cpp
    M llvm/lib/Transforms/Coroutines/CoroFrame.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/lib/Transforms/Utils/Debugify.cpp
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/PromoteMemoryToRegister.cpp
    M llvm/unittests/IR/IRBuilderTest.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp

  Log Message:
  -----------
  [reland][DebugInfo] Update DIBuilder insertion to take InsertPosition (#126967)

After #124287 updated several functions to return iterators rather than
Instruction *, it was no longer straightforward to pass their result to
DIBuilder. This commit updates DIBuilder methods to accept an
InsertPosition instead, so that they can be called with an iterator
(preferred), or with a deprecation warning an Instruction *, or a
BasicBlock *. This commit also updates the existing calls to the
DIBuilder methods to pass in iterators.

As a special exception, DIBuilder::insertDeclare() keeps a separate
overload accepting a BasicBlock *InsertAtEnd. This is because despite
the name, this method does not insert at the end of the block, therefore
this cannot be handled implicitly by using InsertPosition.


  Commit: 0b0f3da6a82f201619ecde4b8a297a179d7245a7
      https://github.com/llvm/llvm-project/commit/0b0f3da6a82f201619ecde4b8a297a179d7245a7
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/dumpcode.ll

  Log Message:
  -----------
  [AMDGPU] Add a regression test for -mattr=dumpcode (#116982)


  Commit: eef02053459a0eb3076b0db76555f9836ac90b07
      https://github.com/llvm/llvm-project/commit/eef02053459a0eb3076b0db76555f9836ac90b07
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/reg-sequence-like-v-pk-mov-b32.mir

  Log Message:
  -----------
  AMDGPU: Add baseline test for treating v_pk_mov_b32 like reg_sequence (#125656)


  Commit: ff585feacf58b384d7525d2b1368298435132fb4
      https://github.com/llvm/llvm-project/commit/ff585feacf58b384d7525d2b1368298435132fb4
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/AsmParser/LLToken.h
    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/Attributes.cpp
    M llvm/lib/Support/ModRef.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/IPO/SCCP.cpp
    M llvm/test/Assembler/memory-attribute-errors.ll
    M llvm/test/Assembler/memory-attribute.ll
    A llvm/test/Bitcode/Inputs/memory-attribute-upgrade.bc
    A llvm/test/Bitcode/memory-attribute-upgrade.ll
    M llvm/unittests/Support/ModRefTest.cpp
    M mlir/test/Target/LLVMIR/llvmir.mlir

  Log Message:
  -----------
  [IR][ModRef] Introduce `errno` memory location

Model C/C++ `errno` macro by adding a corresponding `errno`
memory location kind to the IR. Preliminary work to separate
`errno` writes from other memory accesses, to the benefit of
alias analyses and optimization correctness.

Previous discussion: https://discourse.llvm.org/t/rfc-modelling-errno-memory-effects/82972.


  Commit: b963d3768c0e88d2cac043d4754ce90a19a7e1ec
      https://github.com/llvm/llvm-project/commit/b963d3768c0e88d2cac043d4754ce90a19a7e1ec
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [clang] CTAD: Remove an incorrect assertion in BuildDeductionGuideForTypeAlias (#126532)

Fixes #125821

The assertion was too strict, as Clang can reach this code path when
recursively generating deduction guides for alias templates. See the
detailed explanation
[here](https://github.com/llvm/llvm-project/issues/125821#issuecomment-2639130893).

No release notes needed, as there is no behavior change in release
builds.


  Commit: bfd3e25fddddde2e541dad4616350ce72cd9eeed
      https://github.com/llvm/llvm-project/commit/bfd3e25fddddde2e541dad4616350ce72cd9eeed
  Author: Abid Qadeer <haqadeer at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp

  Log Message:
  -----------
  [flang][debug] Allow variable from non-entry blocks. (#125692)

We currently drop the `DeclareOp` which are not in the entry block of
the function. This was done to side step a problem with the variables in
OpenMP target region. Now that issue has been addressed in #118314 so we
can lift this restriction as well.


  Commit: 6a59d60e2b902a750d769d6198efb51e3ce88e70
      https://github.com/llvm/llvm-project/commit/6a59d60e2b902a750d769d6198efb51e3ce88e70
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    A llvm/test/Transforms/FunctionAttrs/sendmsg-nocallback.ll

  Log Message:
  -----------
  AMDGPU: Mark sendmsg intrinsics as nocallback (#126782)

These can be nocallback, but no nosync. These return in the current
thread immediately, but may send a signal to the host, which could
trigger
the async execution of code in the module.

Fixes #124802


  Commit: 8327c2cfdb9440d9b4cce7eb49693a895a674a9f
      https://github.com/llvm/llvm-project/commit/8327c2cfdb9440d9b4cce7eb49693a895a674a9f
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/multiple-strides-rt-memory-checks.ll
    M llvm/test/Analysis/LoopAccessAnalysis/non-constant-distance-backward.ll

  Log Message:
  -----------
  LAA: fix logic for MaxTargetVectorWidth (#125487)

Uses the fixed register width if scalable vectorization is not enabled
(via TargetTransformInfo::enableScalableVectorization) and improves
results if there are scalable vector registers, but they shouldn't be
used.


  Commit: 4c5609686b101154a7ef20b775dcc40b901cd116
      https://github.com/llvm/llvm-project/commit/4c5609686b101154a7ef20b775dcc40b901cd116
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [X86] Fix shadow variable warning. NFC.

Repeated Ops variable.


  Commit: 6fb1d40992ac3aff84dfe7616ea7776e1c26ba99
      https://github.com/llvm/llvm-project/commit/6fb1d40992ac3aff84dfe7616ea7776e1c26ba99
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td

  Log Message:
  -----------
  [mlir][spirv] Update example of `spirv.Constant`(NFC) (#127030)

Actually the `spirv.Constant dense<[2, 3]> : vector<2xf32>` will cause a
error:
```
error: unexpected decimal integer literal for a floating point value
    %cst = spirv.Constant dense<[2, 3]> : vector<2xf32>
                                 ^
```
The value should be an explicit float.


  Commit: 1935f84856a9297e725770e6f4b9c50fbcec365c
      https://github.com/llvm/llvm-project/commit/1935f84856a9297e725770e6f4b9c50fbcec365c
  Author: s-watanabe314 <watanabe.shu-06 at fujitsu.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A mlir/include/mlir/Conversion/ComplexCommon/DivisionConverter.h
    M mlir/include/mlir/Conversion/ComplexToLLVM/ComplexToLLVM.h
    M mlir/include/mlir/Conversion/ComplexToStandard/ComplexToStandard.h
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/include/mlir/Dialect/Complex/IR/CMakeLists.txt
    M mlir/include/mlir/Dialect/Complex/IR/Complex.h
    M mlir/include/mlir/Dialect/Complex/IR/ComplexBase.td
    M mlir/lib/Conversion/CMakeLists.txt
    A mlir/lib/Conversion/ComplexCommon/CMakeLists.txt
    A mlir/lib/Conversion/ComplexCommon/DivisionConverter.cpp
    M mlir/lib/Conversion/ComplexToLLVM/CMakeLists.txt
    M mlir/lib/Conversion/ComplexToLLVM/ComplexToLLVM.cpp
    M mlir/lib/Conversion/ComplexToStandard/CMakeLists.txt
    M mlir/lib/Conversion/ComplexToStandard/ComplexToStandard.cpp
    A mlir/test/Conversion/ComplexToLLVM/complex-range-option.mlir
    M mlir/test/Conversion/ComplexToLLVM/convert-to-llvm.mlir
    M mlir/test/Conversion/ComplexToLLVM/full-conversion.mlir
    A mlir/test/Conversion/ComplexToStandard/complex-range-option.mlir

  Log Message:
  -----------
  [mlir][complex] Add complex-range option and select complex division … (#127010)

…algorithm

This patch adds the `complex-range` option and two calculation methods
for complex number division (algebraic method and Smith's algorithm) to
both the `ComplexToLLVM` and `ComplexToStandard` passes, allowing the
calculation method to be controlled by the option.

See also the discussion in the following discourse post.


https://discourse.llvm.org/t/question-and-proposal-regarding-complex-number-division-algorithm-in-the-complex-dialect/83772


  Commit: cf69b4c66898cab9eb0f745f034eaf5b3ffcee0d
      https://github.com/llvm/llvm-project/commit/cf69b4c66898cab9eb0f745f034eaf5b3ffcee0d
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/bindings/python/clang/cindex.py
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang-c/Index.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenMP.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    A clang/test/Index/openmp-stripe.c
    A clang/test/OpenMP/stripe_ast_print.cpp
    A clang/test/OpenMP/stripe_codegen.cpp
    A clang/test/OpenMP/stripe_messages.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CXCursor.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMP.td

  Log Message:
  -----------
  [Clang] [OpenMP] Add support for '#pragma omp stripe'. (#126927)

This patch was reviewed and approved here:
https://github.com/llvm/llvm-project/pull/119891
However it has been reverted here:
https://github.com/alejandro-alvarez-sonarsource/llvm-project/commit/083df25dc256154cccbc0e127d79fbac4d0583c5
due to a build issue here:
https://lab.llvm.org/buildbot/#/builders/51/builds/10694

This patch is reintroducing the support.


  Commit: e657b96cd89d5a861dd5792e6c067eab405d6033
      https://github.com/llvm/llvm-project/commit/e657b96cd89d5a861dd5792e6c067eab405d6033
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-7.ll
    M llvm/test/CodeGen/X86/vector-interleaved-load-i32-stride-8.ll

  Log Message:
  -----------
  [X86] Fold EXTRACT_SUBVECTOR(VPERMV(V,M),C) -> EXTRACT_SUBVECTOR(VPERMV(V,M'),0)

Similar to what we already do for VPERMV3, we can fold the non-zero-idx EXTRACT_SUBVECTOR into the shuffle mask and use a free EXTRACT_SUBVECTOR(V,0) instead


  Commit: 46ffacc2ddf2737b8ec19d3d6584ae7e3d5e04fe
      https://github.com/llvm/llvm-project/commit/46ffacc2ddf2737b8ec19d3d6584ae7e3d5e04fe
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/lib/Parser/prescan.cpp
    M flang/test/Parser/OpenMP/sentinels.f

  Log Message:
  -----------
  [flang][OpenMP] Skip invalid conditional compilation sentinels (#126282)

In fixed form, an initial line can have an OpenMP conditional
compilation sentinel only if columns 3 through 5 have only
white space or numbers.

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


  Commit: 60493ede24a758771a0b34067a30ceb929525b73
      https://github.com/llvm/llvm-project/commit/60493ede24a758771a0b34067a30ceb929525b73
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/tools/c-index-test/c-index-test.c

  Log Message:
  -----------
  [NFC] format c-index-test.c

to separate formatting changes from a functional fix later
also inlcude CXDiagnostic and CXFile


  Commit: 873aa29945efa3dcbb57b73737a766cc180e4bf5
      https://github.com/llvm/llvm-project/commit/873aa29945efa3dcbb57b73737a766cc180e4bf5
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M .github/workflows/release-asset-audit.py

  Log Message:
  -----------
  [GitHub] Make release audit more strict for LLVM 19 and beyond (#125841)

Before 19, we had releases from release managers, the bot, and community
members. 19 started to restrict this, with only select community members
uploading releases. The lists of users are written out each time to make
modifying this easier.

If we cannot parse the release number, I've made it raise an issue
saying so. Since this may also be a sign of a malicious action.


  Commit: e8dba3a4ffd88c9b6881308c98530e6af7a70763
      https://github.com/llvm/llvm-project/commit/e8dba3a4ffd88c9b6881308c98530e6af7a70763
  Author: Qi Zhao <zhaoqi01 at loongson.cn>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/LoongArch/statepoint-call-lowering.ll

  Log Message:
  -----------
  [LoongArch] Add test for stackmaps. NFC


  Commit: 6fa671f9e69232bb6a84ec81608131b0b111dbdf
      https://github.com/llvm/llvm-project/commit/6fa671f9e69232bb6a84ec81608131b0b111dbdf
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/test/Dialect/Affine/loop-fusion-4.mlir

  Log Message:
  -----------
  [MLIR][Affine] Fix fusion crash from memory space int assumption (#127032)

Fix fusion crash from memory space int assumption from assumption on int
attr-based memory spaces.

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


  Commit: 43780f4f9256117f73bc89cde968b9e757734ddc
      https://github.com/llvm/llvm-project/commit/43780f4f9256117f73bc89cde968b9e757734ddc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/RegAllocGreedy.cpp
    M llvm/lib/CodeGen/RegAllocGreedy.h

  Log Message:
  -----------
  RegAllocGreedy: Use Register type


  Commit: 1e64ea9914d3cc839b52e50d2d497600e03c8b6e
      https://github.com/llvm/llvm-project/commit/1e64ea9914d3cc839b52e50d2d497600e03c8b6e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M llvm/include/llvm/Analysis/CaptureTracking.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll
    M llvm/test/Transforms/FunctionAttrs/arg_returned.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/noundef.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/stats.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
    M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
    M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
    M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
    M llvm/unittests/Analysis/CaptureTrackingTest.cpp

  Log Message:
  -----------
  Revert "[CaptureTracking][FunctionAttrs] Add support for CaptureInfo (#125880)"

This reverts commit ee655ca27aad466bcc54f6eba03f7e564940ad5a.

A miscompilation has been reported at:
https://github.com/llvm/llvm-project/pull/125880#issuecomment-2656632577


  Commit: 27e78e68a6788a08ea591250b6600284b360cff2
      https://github.com/llvm/llvm-project/commit/27e78e68a6788a08ea591250b6600284b360cff2
  Author: Jan Voung <jvoung at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
    M clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp

  Log Message:
  -----------
  [clang][dataflow] Remove a deprecated CachedConstAccessorsLattice API (#127001)

We've already migrated known users from the old to the new version of
getOrCreateConstMethodReturnStorageLocation. The conversion is pretty
straightforward as well, if there are out-of-tree users:

Previously: use CallExpr as argument
New: get the direct Callee from CallExpr, null check, and use that as
the argument instead.


  Commit: f6e3d33c009cada0437c11d3fd1beace74c5dcfa
      https://github.com/llvm/llvm-project/commit/f6e3d33c009cada0437c11d3fd1beace74c5dcfa
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/include/clang/Driver/Options.td
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
    M clang/test/Driver/amdgpu-openmp-toolchain.c

  Log Message:
  -----------
  [Clang][NFC] Introduce `--offloadlib` positive flag for `nogpulib` and alias to `--no-offloadlib` (#126567)

Summary:
We support `nogpulib` to disable implicit libraries. In the future we
will want to change the default linking of these libraries based on the
user language. This patch just introduces a positive variant so now we
can do `-nogpulib -gpulib` to disable it.

Later patch will make the default a variable in the ROCmToolChain
depending on the target languages.


  Commit: 7763119c6eb0976e4836f81c9876c49a36d46d73
      https://github.com/llvm/llvm-project/commit/7763119c6eb0976e4836f81c9876c49a36d46d73
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/PowerPC/PPCInstr64Bit.td
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.td
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.h
    M llvm/lib/Target/PowerPC/PPCRegisterInfo.td
    M llvm/test/CodeGen/PowerPC/adde_return_type.ll
    M llvm/test/CodeGen/PowerPC/addegluecrash.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi-mir.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-abi.ll
    M llvm/test/CodeGen/PowerPC/aix-cc-byval-split.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-gd-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-ldst-longlong.ll
    M llvm/test/CodeGen/PowerPC/aix-tls-le-xcoff-reloc-large32.ll
    M llvm/test/CodeGen/PowerPC/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/PowerPC/cvt_i64_to_fp.ll
    M llvm/test/CodeGen/PowerPC/inc-of-add.ll
    M llvm/test/CodeGen/PowerPC/pr35688.ll
    M llvm/test/CodeGen/PowerPC/pr36292.ll
    M llvm/test/CodeGen/PowerPC/pr40922.ll
    M llvm/test/CodeGen/PowerPC/pr45448.ll
    M llvm/test/CodeGen/PowerPC/sat-add.ll
    M llvm/test/CodeGen/PowerPC/select.ll
    M llvm/test/CodeGen/PowerPC/uaddo-32.ll
    M llvm/test/CodeGen/PowerPC/uaddo-64.ll
    M llvm/test/CodeGen/PowerPC/umulo-128-legalisation-lowering.ll
    M llvm/test/CodeGen/PowerPC/urem-seteq-illegal-types.ll

  Log Message:
  -----------
  [PowerPC] Deprecate uses of ISD::ADDC/ISD::ADDE/ISD::SUBC/ISD::SUBE (#116984)

ISD::ADDC, ISD::ADDE, ISD::SUBC and ISD::SUBE are being deprecated,
using ISD::UADDO_CARRY,ISD::USUBO_CARRY instead. Lowering the UADDO,
UADDO_CARRY, USUBO, USUBO_CARRY in the patch.


  Commit: f63e3b15f90e17a3708adda0a0b3ea180a41501b
      https://github.com/llvm/llvm-project/commit/f63e3b15f90e17a3708adda0a0b3ea180a41501b
  Author: Jan Leyonberg <jan_sjodin at yahoo.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/acosh.f90
    M flang/test/Lower/Intrinsics/asin.f90
    M flang/test/Lower/Intrinsics/asinh.f90
    M flang/test/Lower/Intrinsics/atanh.f90

  Log Message:
  -----------
  [Flang] Generate math ops for non-precise calls to acosh, asin, asinh and atanh intrinsic calls (#126932)

This patch changes the codegen for non-precise acosh, asin, asinh and
atanh calls to generate math ops instead. This wasn't done before
because the math dialect did not have the corresponding operations at
the time.


  Commit: c4ed95c85bf8ef900cff6444f8f3c97495b1b7bc
      https://github.com/llvm/llvm-project/commit/c4ed95c85bf8ef900cff6444f8f3c97495b1b7bc
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/lib/Frontend/CompilerInvocation.cpp

  Log Message:
  -----------
  [Flang] Fix leftover use of 'OPT_nogpulib'

Summary:
This didn't show up as a failure in precommit and I don't build flang so
this slipped by.


  Commit: a33a84ee6348659d7e2483d728a841a9872fe2ec
      https://github.com/llvm/llvm-project/commit/a33a84ee6348659d7e2483d728a841a9872fe2ec
  Author: Fabian Ritter <fabian.ritter at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmax.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/atomicrmw_fmin.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/buffer-atomic-fadd.v2f16-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f32.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-atomic-fadd.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch-init.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/flat-scratch.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx940.ll
    A llvm/test/CodeGen/AMDGPU/GlobalISel/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fp64-atomics-gfx90a.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/global-atomic-fadd.v2f16-rtn.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-atomicrmw.ll
    R llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx940.mir
    A llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-amdgcn.mfma.gfx942.mir
    M llvm/test/CodeGen/AMDGPU/accvgpr-copy.mir
    M llvm/test/CodeGen/AMDGPU/amdhsa-kernarg-preload-num-sgprs.ll
    M llvm/test/CodeGen/AMDGPU/atomicrmw-expand.ll
    M llvm/test/CodeGen/AMDGPU/back-off-barrier-subtarget-feature.ll
    M llvm/test/CodeGen/AMDGPU/bf16-conversions.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-atomic-fadd.v2f16-rtn.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/buffer-fat-pointer-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/build_vector.ll
    M llvm/test/CodeGen/AMDGPU/copy_phys_vgpr64.mir
    M llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
    M llvm/test/CodeGen/AMDGPU/dpp64_combine.ll
    M llvm/test/CodeGen/AMDGPU/dpp64_combine.mir
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-mach.ll
    M llvm/test/CodeGen/AMDGPU/elf-header-flags-sramecc.ll
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-s-add-i32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-scalar-bit-ops.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-co-u32.mir
    M llvm/test/CodeGen/AMDGPU/eliminate-frame-index-v-add-u32.mir
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f32.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch-svs.ll
    M llvm/test/CodeGen/AMDGPU/flat-scratch.ll
    M llvm/test/CodeGen/AMDGPU/fmaximum3.ll
    M llvm/test/CodeGen/AMDGPU/fminimum3.ll
    M llvm/test/CodeGen/AMDGPU/fold-agpr-phis.mir
    M llvm/test/CodeGen/AMDGPU/fold-zero-high-bits-clear-kill-flags.mir
    R llvm/test/CodeGen/AMDGPU/fp-atomics-gfx940.ll
    A llvm/test/CodeGen/AMDGPU/fp-atomics-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/fp64-atomics-gfx90a.ll
    R llvm/test/CodeGen/AMDGPU/gfx940-hazards.mir
    A llvm/test/CodeGen/AMDGPU/gfx942-hazards.mir
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f32-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.f64.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.v2f16-no-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomic-fadd.v2f16-rtn.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/global-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/idemponent-atomics.ll
    M llvm/test/CodeGen/AMDGPU/insert_vector_elt.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/lds-dma-hazards.mir
    M llvm/test/CodeGen/AMDGPU/lds-dma-waitcnt.mir
    M llvm/test/CodeGen/AMDGPU/lds-limit-diagnostics.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.cvt.fp8.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.global.load.lds.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx90a.ll
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx940.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx942.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.ll
    R llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx940.ll
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.xf32.gfx942.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane16.swap.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.permlane32.swap.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ptr.buffer.atomic.fadd_rtn_errors.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.atomic.fadd_nortn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.atomic.fadd_rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.buffer.load.lds.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fadd_nortn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fadd_rtn.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fmax.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.atomic.fmin.f64.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.buffer.load.lds.gfx950.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.udot2.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.udot4.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.udot8.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fadd.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmax.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fmin.ll
    M llvm/test/CodeGen/AMDGPU/local-atomicrmw-fsub.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx8.mir
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx9.mir
    M llvm/test/CodeGen/AMDGPU/lower-buffer-fat-pointers-nontemporal-metadata.ll
    M llvm/test/CodeGen/AMDGPU/lshl-add-u64.ll
    M llvm/test/CodeGen/AMDGPU/madak.ll
    R llvm/test/CodeGen/AMDGPU/mai-hazards-gfx940.mir
    A llvm/test/CodeGen/AMDGPU/mai-hazards-gfx942.mir
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.gfx10.ll
    M llvm/test/CodeGen/AMDGPU/materialize-frame-index-sgpr.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-global.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence-mmra-local.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-fence.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-flat-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-global-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-agent.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-singlethread.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-system.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-wavefront.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-local-workgroup.ll
    M llvm/test/CodeGen/AMDGPU/memory-legalizer-private-nontemporal.ll
    M llvm/test/CodeGen/AMDGPU/mfma-cd-select.ll
    M llvm/test/CodeGen/AMDGPU/mfma-loop.ll
    M llvm/test/CodeGen/AMDGPU/mfma-no-register-aliasing.ll
    R llvm/test/CodeGen/AMDGPU/mfma-vgpr-cd-select-gfx940.ll
    A llvm/test/CodeGen/AMDGPU/mfma-vgpr-cd-select-gfx942.ll
    M llvm/test/CodeGen/AMDGPU/mfma-vgpr-cd-select.ll
    M llvm/test/CodeGen/AMDGPU/neighboring-mfma-padding.mir
    M llvm/test/CodeGen/AMDGPU/packed-fp32.ll
    M llvm/test/CodeGen/AMDGPU/peephole-fold-imm.mir
    M llvm/test/CodeGen/AMDGPU/peephole-opt-fold-reg-sequence-subreg.mir
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-IR-lowering.ll
    M llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs-IR-lowering.ll
    M llvm/test/CodeGen/AMDGPU/preload-kernargs.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2bf16.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2bf16.v3bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2bf16.v4bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2bf16.v8bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f16.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f16.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f16.v4f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f16.v8f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2f32.v8f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i16.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i16.v3i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i16.v4i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i16.v8i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i32.v8i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2i64.v8i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v2p3.v8p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3bf16.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3bf16.v3bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3bf16.v4bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f16.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f16.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f16.v4f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i16.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i16.v3i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i16.v4i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v3p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4bf16.v2bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4bf16.v3bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4bf16.v4bf16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f16.v2f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f16.v3f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f16.v4f16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v2f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v3f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4f32.v4f32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i16.v2i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i16.v3i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i16.v4i16.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v2i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v3i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i32.v4i32.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v2i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v3i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4i64.v4i64.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v2p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v3p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p0.v4p0.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v2p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v3p3.ll
    M llvm/test/CodeGen/AMDGPU/shufflevector.v4p3.v4p3.ll
    M llvm/test/CodeGen/AMDGPU/smfmac_no_agprs.ll
    M llvm/test/CodeGen/AMDGPU/uniform-select.ll
    M llvm/test/CodeGen/AMDGPU/unsupported-image-sample.ll
    M llvm/test/CodeGen/AMDGPU/v_mov_b64_expansion.mir
    M llvm/test/CodeGen/AMDGPU/vector_shuffle.packed.ll
    M llvm/test/CodeGen/AMDGPU/verifier-sdwa-cvt.mir
    M llvm/test/MC/AMDGPU/amdhsa-kd-kernarg-preload.s
    M llvm/test/MC/AMDGPU/extrasgprs_mcexpr.s
    R llvm/test/MC/AMDGPU/flat-scratch-gfx940.s
    A llvm/test/MC/AMDGPU/flat-scratch-gfx942.s
    R llvm/test/MC/AMDGPU/gfx940_asm_features.s
    R llvm/test/MC/AMDGPU/gfx940_err.s
    R llvm/test/MC/AMDGPU/gfx940_err_pos.s
    R llvm/test/MC/AMDGPU/gfx940_unsupported.s
    A llvm/test/MC/AMDGPU/gfx942_asm_features.s
    A llvm/test/MC/AMDGPU/gfx942_err.s
    A llvm/test/MC/AMDGPU/gfx942_err_pos.s
    A llvm/test/MC/AMDGPU/gfx942_unsupported.s
    M llvm/test/MC/AMDGPU/gfx950_asm_features.s
    M llvm/test/MC/AMDGPU/gfx950_asm_read_tr.s
    M llvm/test/MC/AMDGPU/gfx950_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx950_asm_vop3.s
    R llvm/test/MC/AMDGPU/mai-err-gfx940.s
    A llvm/test/MC/AMDGPU/mai-err-gfx942.s
    R llvm/test/MC/AMDGPU/mai-gfx940.s
    A llvm/test/MC/AMDGPU/mai-gfx942.s
    M llvm/test/MC/AMDGPU/mai-gfx950.s
    R llvm/test/MC/AMDGPU/mimg-err-gfx940.s
    A llvm/test/MC/AMDGPU/mimg-err-gfx942.s
    M llvm/test/MC/AMDGPU/mubuf-gfx950.s
    M llvm/test/MC/AMDGPU/writelane_m0.s
    M llvm/test/MC/AMDGPU/xdl-insts-gfx908.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx908-xdl-insts.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx940_features.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx940_flat.txt
    R llvm/test/MC/Disassembler/AMDGPU/gfx940_mai.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx942_features.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx942_flat.txt
    A llvm/test/MC/Disassembler/AMDGPU/gfx942_mai.txt
    M llvm/test/MachineVerifier/AMDGPU/writelane_m0.mir
    M llvm/test/Object/AMDGPU/elf-header-flags-mach.yaml
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-f64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i16.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i32-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-i64-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd-flat-specialization.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-rmw-fadd.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2bf16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-agent.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomic-v2f16-system.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-fp-vector.ll
    M llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-integer-ops-0-to-add-0.ll
    M llvm/test/Transforms/LoadStoreVectorizer/AMDGPU/load-i1-misaligned.ll
    M llvm/test/tools/llvm-mca/AMDGPU/carried-over.s
    R llvm/test/tools/llvm-mca/AMDGPU/gfx940-mfma.s
    A llvm/test/tools/llvm-mca/AMDGPU/gfx942-mfma.s
    M llvm/test/tools/llvm-objdump/ELF/AMDGPU/subtarget.ll
    M llvm/test/tools/llvm-readobj/ELF/AMDGPU/elf-headers.test

  Log Message:
  -----------
  [AMDGPU][NFC] Replace gfx940 and gfx941 with gfx942 in llvm/test (#125711)

[AMDGPU][NFC] Replace gfx940 and gfx941 with gfx942 in llvm/test

gfx940 and gfx941 are no longer supported. This is one of a series of PRs to remove them from the code base.

This PR uses gfx942 instead of gfx940 and gfx941 in the test RUN-lines (unless there is already a RUN-line for gfx942).

The only notable difference in the test output is that gfx942 does not force the use of sc0 and sc1 on stores while gfx940 and gfx941 do (cf. https://reviews.llvm.org/D149986).

For SWDEV-512631


  Commit: 8600d89e55b866186a2dad2e2b4c85bd96150375
      https://github.com/llvm/llvm-project/commit/8600d89e55b866186a2dad2e2b4c85bd96150375
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/DeadStoreElimination/captures-ret-only.ll

  Log Message:
  -----------
  [DSE] Add test for interaction with return-only captures (NFC)

Regression test for the miscompile reported at:
https://github.com/llvm/llvm-project/pull/125880#issuecomment-2656632577


  Commit: 95bb61bba9dcf0698525cabf8363b91fcb8e57b1
      https://github.com/llvm/llvm-project/commit/95bb61bba9dcf0698525cabf8363b91fcb8e57b1
  Author: Oleg Shyshkov <shyshkov at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [mlir][bazel] Port 1935f84856a9297e725770e6f4b9c50fbcec365c


  Commit: 7d1db31aa05cce9e760c473a95f190909c2549b5
      https://github.com/llvm/llvm-project/commit/7d1db31aa05cce9e760c473a95f190909c2549b5
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/same-values-sub-node-with-poisons.ll

  Log Message:
  -----------
  [SLP]Check the first instruction instead the first scalar for subvectors

Need to check the first instruction instead of first scalar for
subvectors, when trying to find full matched vectorized node in the
graph.

Fixes #126909.


  Commit: 3e54964dcf35dcca02e5d8f18294d6763be35918
      https://github.com/llvm/llvm-project/commit/3e54964dcf35dcca02e5d8f18294d6763be35918
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [AMDGPU] Simplify OtherPredicates handling in MadFmaMixPats. NFC. (#127044)

This removes some of the complexity added by ad6cd7e8b259 by setting
OtherPredicates outside MadFmaMixPats rather than inside it.


  Commit: aecb764cc2e026ecb5c418dd56f2722c6f263e8b
      https://github.com/llvm/llvm-project/commit/aecb764cc2e026ecb5c418dd56f2722c6f263e8b
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Conversion/Passes.td
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    A mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm-invalid-dialect.mlir
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    A mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl-invalid-dialect.mlir
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][gpu] GPUToROCDL/NVVM: use generic llvm conversion interface instead of hardcoded conversions. (#124439)

Using `ConvertToLLVMPatternInterface` allows to unhardcode specific
dialect conversions from passes and, more importantly, allows downstream
projects to inject their ops/types translation here by registering
corresponding interface.

Add `allowed-dialects` option so user can control which dialects can be
used to populate conversions.


  Commit: db2953d80148870ee22b0ffaed883a02174485c4
      https://github.com/llvm/llvm-project/commit/db2953d80148870ee22b0ffaed883a02174485c4
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/www/OpenProjects.html
    M libc/docs/index.rst
    M libcxx/docs/index.rst
    M lldb/docs/index.rst
    M llvm/docs/GettingInvolved.rst

  Log Message:
  -----------
  [doc] Add Discord invite link alongside channel links (#126352)

By far the most important part of this patch is updating
GettingInvolved.rst to include the invite link, but I've grepped for any
other discord.com links.

I'm no Discord expert, but from my experience (confirmed via @preames
kindly testing as well) the direct channel links provide a confusing
experience if you haven't already found and used an invite link to the
LLVM Discord server. If you're logged into Discord but not a member of
LLVM's sever, the web app opens and then...nothing. No channel opens, no
prompt to join the server or even a hint that you need to find an invite
link (and if you're not used to Discord, you likely don't even know
that's necessary).

This patch addresses the issue by providing the invite link where
Discord is mentioned.


  Commit: 277cb60d9ab4335bcc6aef4366278e1500237d2c
      https://github.com/llvm/llvm-project/commit/277cb60d9ab4335bcc6aef4366278e1500237d2c
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/ObjectFile/PECOFF/ObjectFilePECOFF.cpp

  Log Message:
  -----------
  [lldb] Use LLDB_LOG_ERROR in ObjectFilePECOFF.cpp (NFC) (#126972)


  Commit: 62eddf4792c1dca0d225f06b35887733a557ebb5
      https://github.com/llvm/llvm-project/commit/62eddf4792c1dca0d225f06b35887733a557ebb5
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/docs/HowToAddABuilder.rst

  Log Message:
  -----------
  [docs] Fix typo in HowToAddABuilder


  Commit: d2240cd314102ed99d35b84d43006e324f344163
      https://github.com/llvm/llvm-project/commit/d2240cd314102ed99d35b84d43006e324f344163
  Author: Donát Nagy <donat.nagy at ericsson.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/Analysis/out-of-bounds.c

  Log Message:
  -----------
  [NFC] [analyzer] Add ArrayBound tests to document casting bug (#127062)

Add a few security.ArrayBound testcases that document the false
positives caused the fact that the analyzer doesn't model a cast from
`signed char` to `unsigned char`.


  Commit: 0da8d0f9b712cd9e8110dff2b6bde87205af7932
      https://github.com/llvm/llvm-project/commit/0da8d0f9b712cd9e8110dff2b6bde87205af7932
  Author: Robert Imschweiler <50044286+ro-i at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/no-hsa-graphics-shaders.ll

  Log Message:
  -----------
  [AMDGPU] Change handling of unsupported non-compute shaders with HSA (#126798)

Previous handling in `SITargetLowering::LowerFormalArguments` only
reported a diagnostic message and continued execution by returning a
non-usable `SDValue`. This results in llvm crashing later with an
unrelated error. This commit changes the detection of an unsupported
non-compute shader to be a fatal error right away.

As an example situation, take the usage of an `amdgpu_ps` function and
the `amdgcn-unknown-amdhsa` target triple.
```
define amdgpu_ps void @foo(ptr %p, i32 %i) {
        store i32 %i, ptr %p
        ret void
}
```
Compiling this code (with `llc -mtriple=amdgcn-unknown-amdhsa
-mcpu=gfx942`, for example) fails with:
```
error: <unknown>:0:0: in function foo void (ptr, i32): unsupported non-compute shaders with HSA

llc:
[...]/git/trunk21.0/llvm-project/llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp:11790:
void llvm::SelectionDAGISel::LowerArguments(const llvm::Function&):
Assertion `InVals.size() == Ins.size() && "LowerFormalArguments didn't emit the correct number of values!"' failed.
[...]
```


  Commit: 41e49fadd4681bd31f7b9791936cc75912369a56
      https://github.com/llvm/llvm-project/commit/41e49fadd4681bd31f7b9791936cc75912369a56
  Author: Robert Imschweiler <50044286+ro-i at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.workitem.id-unsupported-calling-convention.ll

  Log Message:
  -----------
  [AMDGPU] Fix llvm.amdgcn.workitem.id-unsupported-calling-convention.ll (#127041)

Follow-up fix for #126058. (@arsenm)


  Commit: 2ad816648f2719e6c0da507a1a371f2cad4a3f1c
      https://github.com/llvm/llvm-project/commit/2ad816648f2719e6c0da507a1a371f2cad4a3f1c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
    M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
    M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
    M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
    M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll

  Log Message:
  -----------
  [SLP]Improved reduction cost/codegen

SLP vectorizer is able to combine several reductions from the list of
(potentially) reduced values with the different opcodes/values kind.
Currently, these reductions are handled independently of each other. But
instead the compiler can combine them into wide vector operations and
then perform only single reduction.
E.g, if the SLP vectorizer emits currently something like:
```
%r1 = reduce.add(<4 x i32> %v1)
%r2 = reduce.add(<4 x i32> %v2)
%r = add i32 %r1, %r2
```

it can be emitted as:
```
%v = add <4 x i32> %v1, %v2
%r = reduce.add(<4 x i32> %v)
```

It allows to improve the performance in some cases.

AVX512, -O3+LTO
Metric: size..text

Program                                                                                           size..text
                                                                                                  results     results0    diff
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test     4553.00     4615.00  1.4%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test   412708.00   416820.00  1.0%
        test-suite :: SingleSource/UnitTests/Vector/AVX512BWVL/Vector-AVX512BWVL-mask_set_bw.test    12901.00    12981.00  0.6%
                        test-suite :: MultiSource/Benchmarks/FreeBench/fourinarow/fourinarow.test    22717.00    22813.00  0.4%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test    39722.00    39850.00  0.3%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test    39725.00    39853.00  0.3%
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    15918.00    15967.00  0.3%
                                       test-suite :: External/SPEC/CFP2006/433.milc/433.milc.test   155491.00   155587.00  0.1%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test   227894.00   227942.00  0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1062188.00  1062364.00  0.0%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test   793672.00   793720.00  0.0%
                              test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   657371.00   657403.00  0.0%
                             test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   657371.00   657403.00  0.0%
                   test-suite :: External/SPEC/CINT2017speed/600.perlbench_s/600.perlbench_s.test  2074917.00  2074933.00  0.0%
                    test-suite :: External/SPEC/CINT2017rate/500.perlbench_r/500.perlbench_r.test  2074917.00  2074933.00  0.0%
                                     test-suite :: MultiSource/Applications/JM/lencod/lencod.test   855219.00   855203.00 -0.0%

Benchmarks/Shootout-C++ - same transformed reduction
Adobe-C++/loop_unroll - same transformed reductions, new vector code
AVX512BWVL/Vector-AVX512BWVL-mask_set_bw - same transformed reductions
FreeBench/fourinarow - same transformed reductions
MiBench/telecomm-gsm - same transformed reductions
execute/GCC-C-execute-builtin-bitops-1 - same transformed reductions
CFP2006/433.milc - better vector code, several x i64 reductions + trunc
to i32 gets trunced to x i32 reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions, extra 4 x vectorization
CINT2006/464.h264ref - same transformed reductions
CINT2017rate/525.x264_r
CINT2017speed/625.x264_s - same transformed reductions
CINT2017speed/600.perlbench_s
CINT2017rate/500.perlbench_r - transformed same reduction
JM/lencod - extra 4 x vectorization

RISC-V, SiFive-p670, -O3+LTO

Metric: size..text

Program                                                                                           size..text
                                                                                                  results    results0   diff
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    8990.00    9514.00   5.8%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test  588504.00  588488.00  -0.0%
                    test-suite :: MultiSource/Benchmarks/MiBench/consumer-lame/consumer-lame.test  147464.00  147440.00  -0.0%
              test-suite :: MultiSource/Benchmarks/MiBench/automotive-susan/automotive-susan.test   21496.00   21492.00  -0.0%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test  165420.00  165372.00  -0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  843928.00  843648.00  -0.0%
                                    test-suite :: External/SPEC/CINT2006/458.sjeng/458.sjeng.test  100712.00  100672.00  -0.0%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test   24384.00   24336.00  -0.2%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test   24380.00   24332.00  -0.2%
             test-suite :: SingleSource/UnitTests/Vectorizer/VPlanNativePath/outer-loop-vect.test   10348.00   10316.00  -0.3%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test  221304.00  220480.00  -0.4%
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test    3750.00    3736.00  -0.4%
                            test-suite :: SingleSource/Regression/C/Regression-C-DuffsDevice.test     678.00     370.00 -45.4%

execute/GCC-C-execute-builtin-bitops-1 - extra 4 x reductions, same
transformed reductions
CINT2006/464.h264ref - extra 4 x reductions, same transformed reductions
MiBench/consumer-lame - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/automotive-susan - same transformed reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions
CINT2006/458.sjeng - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/telecomm-gsm - same transformed reductions
Benchmarks/mediabench - same transformed reductions
Vectorizer/VPlanNativePath - same transformed reductions
Adobe-C++/loop_unroll - extra 4 x reductions, same transformed reductions
Benchmarks/Shootout-C++ - extra 4 x reductions, same transformed reductions
Regression/C/Regression-C-DuffsDevice - same transformed reductions

Reviewers: hiraditya, topperc, preames

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


  Commit: a1345eb240c9456ce1c339106f066217eb5e6984
      https://github.com/llvm/llvm-project/commit/a1345eb240c9456ce1c339106f066217eb5e6984
  Author: Vitaly Buka <vitalybuka at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/tools/libclang/CXString.cpp

  Log Message:
  -----------
  Revert "[libclang] Always Dup in createRef(StringRef)" (#127076)

Reverts llvm/llvm-project#125020


https://lab.llvm.org/buildbot/#/builders/24/builds/5252/steps/12/logs/stdio

```
==c-index-test==2512295==ERROR: AddressSanitizer: heap-use-after-free on address 0xe19338c27992 at pc 0xc66be4784830 bp 0xe0e33660df00 sp 0xe0e33660d6e8
READ of size 23 at 0xe19338c27992 thread T1
    #0 0xc66be478482c in printf_common(void*, char const*, std::__va_list) /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors_format.inc:563:9
    #1 0xc66be478643c in vprintf /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:1699:1
    #2 0xc66be478643c in printf /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/compiler-rt/lib/asan/../sanitizer_common/sanitizer_common_interceptors.inc:1757:1
    #3 0xc66be4839384 in FilteredPrintingVisitor /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/c-index-test/c-index-test.c:1359:5
    #4 0xe4e3454f12e8 in clang::cxcursor::CursorVisitor::Visit(CXCursor, bool) /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/libclang/CIndex.cpp:227:11
    #5 0xe4e3454f48a8 in bool clang::cxcursor::CursorVisitor::visitPreprocessedEntities<clang::PreprocessingRecord::iterator>(clang::PreprocessingRecord::iterator, clang::PreprocessingRecord::iterator, clang::PreprocessingRecord&, clang::FileID) CIndex.cpp
    
0xe19338c27992 is located 82 bytes inside of 105-byte region [0xe19338c27940,0xe19338c279a9)
freed by thread T1 here:
    #0 0xc66be480040c in free /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:51:3
    #1 0xc66be4839728 in GetCursorSource c-index-test.c
    #2 0xc66be4839368 in FilteredPrintingVisitor /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/c-index-test/c-index-test.c:1360:12
    #3 0xe4e3454f12e8 in clang::cxcursor::CursorVisitor::Visit(CXCursor, bool) /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/libclang/CIndex.cpp:227:11
    #4 0xe4e3454f48a8 in bool clang::cxcursor::CursorVisitor::visitPreprocessedEntities<clang::PreprocessingRecord::iterator>(clang::PreprocessingRecord::iterator, clang::PreprocessingRecord::iterator, clang::PreprocessingRecord&, clang::FileID) CIndex.cpp


previously allocated by thread T1 here:
    #0 0xc66be4800680 in malloc /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:67:3
    #1 0xe4e3456379b0 in safe_malloc /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/llvm/include/llvm/Support/MemAlloc.h:26:18
    #2 0xe4e3456379b0 in createDup /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/libclang/CXString.cpp:95:40
    #3 0xe4e3456379b0 in clang::cxstring::createRef(llvm::StringRef) /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/clang/tools/libclang/CXString.cpp:90:10
```


  Commit: de09986596c9bbc89262456dda319715fb49353f
      https://github.com/llvm/llvm-project/commit/de09986596c9bbc89262456dda319715fb49353f
  Author: Hyunsung Lee <ita9naiwa at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
    M mlir/test/Dialect/Math/expand-math.mlir
    M mlir/test/mlir-runner/test-expand-math-approx.mlir

  Log Message:
  -----------
  [mlir][math] `powf(a, b)` drop support when a < 0  (#126338)

Related: #124402

- change inefficient implementation of `powf(a, b)` to handle `a < 0`
case
  - thus drop `a < 0` case support

However, some special cases are being used such as:
  - `a < 0` and `b = 0, b = 0.5, b = 1 or b = 2`
  - convert those special cases into simpler ops.


  Commit: b2165f214efab833a4b1a9e8268b1030fc5ebaeb
      https://github.com/llvm/llvm-project/commit/b2165f214efab833a4b1a9e8268b1030fc5ebaeb
  Author: David Green <david.green at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/test/Analysis/CostModel/AArch64/fshl.ll
    M llvm/test/Analysis/CostModel/AArch64/fshr.ll
    M llvm/test/Analysis/CostModel/AArch64/sve-intrinsics.ll
    M llvm/test/Analysis/CostModel/ARM/intrinsic-cost-kinds.ll

  Log Message:
  -----------
  [CostModel] Account for power-2 urem in funnel shift costs (#127037)

As can be seen in https://godbolt.org/z/qvMqY79cK, a urem by a power-2
constant will be code-generated as an And of a mask. The cost model for
funnel shifts tries to account for that by passing OP_PowerOf2 as the
operand info for the second operand. As far as I can tell returning a
lower cost for urem with a OP_PowerOf2 is only implemented on X86
though.

This patch short-cuts that by calling getArithmeticInstrCost(And, ..)
directly when we know the typesize will be a power-of-2. This is an
alternative to the patch in #126912 which is a more general solution for
power-2 udiv/urem costs, this more narrowly just fixes funnel shifts.


  Commit: 21811818d6c1a50051032fdb2d350ffe89e1421a
      https://github.com/llvm/llvm-project/commit/21811818d6c1a50051032fdb2d350ffe89e1421a
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [bazel] port aecb764cc2e026ecb5c418dd56f2722c6f263e8b


  Commit: 8da8ff8768bc0115f21d7d8fe8d47872190f8de1
      https://github.com/llvm/llvm-project/commit/8da8ff8768bc0115f21d7d8fe8d47872190f8de1
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/include/flang/Frontend/TargetOptions.h
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    A flang/test/Driver/mabi-riscv.f90
    A flang/test/Lower/RISCV/riscv-target-abi.f90

  Log Message:
  -----------
  [flang][RISCV] Add target-abi ModuleFlag. (#126188)

This is needed to generate proper ABI flags in the ELF header for LTO
builds. If these flags aren't set correctly, we can't link with objects
that were built with the correct flags.

For non-LTO builds the mcpu/mattr in the TargetMachine will cause the
backend to infer an ABI. For LTO builds the mcpu/mattr aren't set.

I've only added lp64, lp64f, and lp64d ABIs. ilp32* requires riscv32
which is not yet supported in flang. lp64e requires a different
DataLayout string and would need additional plumbing.

Fixes #115679


  Commit: 88015d12ca600cf2a74ba3641f319c7ba056223b
      https://github.com/llvm/llvm-project/commit/88015d12ca600cf2a74ba3641f319c7ba056223b
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Conversion/ComplexCommon/DivisionConverter.cpp

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

This patch fixes:

  mlir/lib/Conversion/ComplexCommon/DivisionConverter.cpp:61:2: error:
  extra ';' outside of a function is incompatible with C++98
  [-Werror,-Wc++98-compat-extra-semi]


  Commit: ba45592377703f99e1955a51f19922522446caec
      https://github.com/llvm/llvm-project/commit/ba45592377703f99e1955a51f19922522446caec
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [AMDGPU] Try to fix -mattr=dumpcode on big-endian hosts (#127073)

Blind fix for #116982 failing on big-endian buildbots.


  Commit: 2f8de7b466efc613111904ee36d13ec95976739a
      https://github.com/llvm/llvm-project/commit/2f8de7b466efc613111904ee36d13ec95976739a
  Author: Vyacheslav Levytskyy <vyacheslav.levytskyy at intel.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVUtils.h
    A llvm/test/CodeGen/SPIRV/validate/triton-tut-softmax-kernel.ll

  Log Message:
  -----------
  [SPIR-V] Type inference must realize that a <1 x Type> vector type is not a legal vector type in LLT (#124560)

In this PR we account for possible <1 x LLVM Type> input to ensure that
we produce legal vector types during type inference.

We modify an LLVM type to conform with future transformations in
IRTranslator, if it's a <1 x Type> vector type, replacing it by the
element type, because <1 x Type> vector type is not a legal vector type
in LLT and IRTranslator will represent it as the scalar eventually.


  Commit: 1138a4964adf76cc4af82b3f43dbc8db0b91cd46
      https://github.com/llvm/llvm-project/commit/1138a4964adf76cc4af82b3f43dbc8db0b91cd46
  Author: Georgiy Samoylov <g.samoylov at syntacore.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-server/main.cpp

  Log Message:
  -----------
  [lldb] Fix build problem in llgs tests for RISC-V (#127091)

During testing of LLDB on RISC-V target, tests from the llgs category
were built with an error: `Error when building test subject.`

```
llvm-project/lldb/test/API/tools/lldb-server/main.cpp:151:40: error: missing ')' after '__builtin_debugtrap'
  151 | #elif __has_builtin(__builtin_debugtrap())
      |                     ~~~~~~~~~~~~~~~~~~~^
llvm-project/lldb/test/API/tools/lldb-server/main.cpp:151:20: note: to match this '('
  151 | #elif __has_builtin(__builtin_debugtrap())
      |                    ^
```

This patch fixes this error.


  Commit: a663e78a6eb6bbd20c0c74b3e6a78e24ee423544
      https://github.com/llvm/llvm-project/commit/a663e78a6eb6bbd20c0c74b3e6a78e24ee423544
  Author: Piotr Zegar <me at piotrzegar.pl>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor.cpp

  Log Message:
  -----------
  [clang-tidy] Add recursion protection in ExceptionSpecAnalyzer (#66810)

Normally endless recursion should not happen in ExceptionSpecAnalyzer,
but if AST would be malformed (missing include), this could cause crash.

I run into this issue when due to missing include constructor argument
were parsed as FieldDecl.
As checking for recursion cost nothing, why not to do this in check just
in case.

Fixes #111436


  Commit: 55f3df875d3a266c566f593357e2290879f49321
      https://github.com/llvm/llvm-project/commit/55f3df875d3a266c566f593357e2290879f49321
  Author: Abhilash Majumder <30946547+abhilash1910 at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/docs/NVPTXUsage.rst
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/test/CodeGen/NVPTX/prefetch.ll

  Log Message:
  -----------
  [NVPTX] Fix and refine prefetch.* intrinsics (#126899)

This is follow-up PR from #125887  which fixes the intrinsic failures .

---------

Co-authored-by: abmajumder <abmajumder at nvidia.com>


  Commit: 79fff6aa324c560f4a32d5d2b0276744a2c49668
      https://github.com/llvm/llvm-project/commit/79fff6aa324c560f4a32d5d2b0276744a2c49668
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lld/ELF/BPSectionOrderer.cpp
    M lld/MachO/BPSectionOrderer.cpp
    M lld/test/ELF/bp-section-orderer.s
    M lld/test/MachO/bp-section-orderer.s

  Log Message:
  -----------
  [lld][BP] Avoid ordering ICF'ed sections (#126327)

ICF runs before BPSectionOrderer. When a section is ICF'ed, it seems
that the original sections are marked as not live, but are still kept
around. Prior to this patch, those ICF'ed sections would be passed to BP
and ordered before being skipped when writing the output. Now, these
sections are no longer passed to BP, saving runtime and possibly
improving BP's output.

In a large binary, I found that the number of sections ordered using BP
decreased, while the number of duplicate sections drastically decreased
as expected.
```
Functions for startup: 50755 -> 50520
Functions for compression: 165734 -> 105328
Duplicate functions: 1827231 -> 55230
```


  Commit: e750c7e636f083c48a6cea7fae37ffc3734c7da0
      https://github.com/llvm/llvm-project/commit/e750c7e636f083c48a6cea7fae37ffc3734c7da0
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp

  Log Message:
  -----------
  [RISCV] Set Feature32Bit/Feature64Bit based on triple for -mcpu=help. (#127031)

llvm-mc keeps going after printing help text and creates an assembler.
If we don't set one of the XLen sized feature bits we trip a fatal error
in RISCVFeatures::validate.

llvm-mc should probably be fixed, but I don't know if its the only tool
with this issue.


  Commit: f30c891464debb4e0d47d27ea77dc2220d7cdf29
      https://github.com/llvm/llvm-project/commit/f30c891464debb4e0d47d27ea77dc2220d7cdf29
  Author: Ilia Kuklin <ikuklin at accesssoftek.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    A lldb/test/API/lang/cpp/enum_promotion/Makefile
    A lldb/test/API/lang/cpp/enum_promotion/TestCPPEnumPromotion.py
    A lldb/test/API/lang/cpp/enum_promotion/main.cpp

  Log Message:
  -----------
  [lldb] Analyze enum promotion type during parsing (#115005)

The information about an enum's best promotion type is discarded after
compilation and is not present in debug info. This patch repeats the
same analysis of each enum value as in the front-end to determine the
best promotion type during DWARF info parsing.

Fixes #86989


  Commit: d096f45322660d59de5267555f121986629bab30
      https://github.com/llvm/llvm-project/commit/d096f45322660d59de5267555f121986629bab30
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp

  Log Message:
  -----------
  [clang-scan-deps] Avoid repeated map lookups (NFC) (#127023)


  Commit: 44b61e056ddb237b7a40d46916abd5d7d6957a3c
      https://github.com/llvm/llvm-project/commit/44b61e056ddb237b7a40d46916abd5d7d6957a3c
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/PhiValues.cpp

  Log Message:
  -----------
  [Analysis] Avoid repeated hash lookups (NFC) (#127024)


  Commit: e7bf6a4e042fba2b1492be8fc5f430df3e9a43d2
      https://github.com/llvm/llvm-project/commit/e7bf6a4e042fba2b1492be8fc5f430df3e9a43d2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [CodeGen] Avoid repeated map lookups (NFC) (#127025)


  Commit: fec04f286ef5914f81a5bc188eb2f60cfdbacce8
      https://github.com/llvm/llvm-project/commit/fec04f286ef5914f81a5bc188eb2f60cfdbacce8
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/FileCheck/FileCheck.cpp

  Log Message:
  -----------
  [FileCheck] Avoid repeated hash lookups (NFC) (#127026)


  Commit: 9a59145d8e3782196378102c42f70f575bc2f99a
      https://github.com/llvm/llvm-project/commit/9a59145d8e3782196378102c42f70f575bc2f99a
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/MemoryProfileInfo.cpp

  Log Message:
  -----------
  [memprof] Avoid repeated map lookups (NFC) (#127027)


  Commit: 4bda95304ff892d31c3ff7a89f75df25c0fa3bb9
      https://github.com/llvm/llvm-project/commit/4bda95304ff892d31c3ff7a89f75df25c0fa3bb9
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/tools/llvm-profgen/MissingFrameInferrer.cpp

  Log Message:
  -----------
  [llvm-profgen] Avoid repeated hash lookups (NFC) (#127028)


  Commit: 4a97ce5f7560bf8be6d0291ae9ea054248fbcf24
      https://github.com/llvm/llvm-project/commit/4a97ce5f7560bf8be6d0291ae9ea054248fbcf24
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [X86] X86FixupVectorConstantsPass - pull out getPrimitiveSizeInBits call. NFC.


  Commit: 07405ca03600fd27fa27fb63f09cd0807f92e31a
      https://github.com/llvm/llvm-project/commit/07405ca03600fd27fa27fb63f09cd0807f92e31a
  Author: Stanislav Mekhanoshin <rampitec at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIProgramInfo.h

  Log Message:
  -----------
  [AMDGPU] clang-format SIProgramInfo.h. NFC. (#127033)


  Commit: 9a63a2c4babcaabaeb1a106345f3b037485efa4c
      https://github.com/llvm/llvm-project/commit/9a63a2c4babcaabaeb1a106345f3b037485efa4c
  Author: Martin Erhart <martin.erhart at sifive.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A mlir/include/mlir-c/Dialect/Index.h
    M mlir/lib/CAPI/Dialect/CMakeLists.txt
    A mlir/lib/CAPI/Dialect/Index.cpp

  Log Message:
  -----------
  [mlir][index] Add CAPI (#127039)


  Commit: 660cdace559a8dbe44ebf2222b854bf3f39a5f62
      https://github.com/llvm/llvm-project/commit/660cdace559a8dbe44ebf2222b854bf3f39a5f62
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/runtime/pointer.cpp
    M flang/unittests/Runtime/Pointer.cpp

  Log Message:
  -----------
  [flang] Fixed write past allocated descriptor in PointerAssociateRemapping. (#127000)

The pointer descriptor might be smaller than the target descriptor,
so `operator=` would write beyound the pointer descriptor.


  Commit: eb8ffd617a06d16d5e0928dd346b9ed2380c8fec
      https://github.com/llvm/llvm-project/commit/eb8ffd617a06d16d5e0928dd346b9ed2380c8fec
  Author: Joel E. Denny <jdenny.ornl at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/test/Analysis/AliasAnalysis/alias-analysis-2.fir
    A flang/test/Analysis/AliasAnalysis/load-ptr-alloca.fir

  Log Message:
  -----------
  [flang] AliasAnalysis: Handle fir.load on fir.alloca (#117785)

For example, determine that the address in p below cannot alias the
address of v:

```
subroutine test()
  real, pointer :: p
  real, target :: t
  real :: v
  p => t
  v = p
end subroutine test
```


  Commit: c81139f417a209dbd2a4e06465483d4b0951a9ac
      https://github.com/llvm/llvm-project/commit/c81139f417a209dbd2a4e06465483d4b0951a9ac
  Author: Sylvestre Ledru <sylvestre at debian.org>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/CMakeLists.txt

  Log Message:
  -----------
  libc/cmake: don't fail if LLVM_VERSION_SUFFIX isn't defined (#126359)

Closes: #126358

cc @samvangysegem

---------

Co-authored-by: Joseph Huber <huberjn at outlook.com>


  Commit: d18b1ebef5f5e355d6cee2b2f48789a159a5d616
      https://github.com/llvm/llvm-project/commit/d18b1ebef5f5e355d6cee2b2f48789a159a5d616
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/RISCV/check-node-without-vector-user.ll

  Log Message:
  -----------
  [SLP]Check if vector user exist before accessing it

Need to check if vector user exist before accessing it to avoid compiler
crash.
Fixes #126581


  Commit: 4ee173a1684e7a3afc6d32d576469425b3fe8387
      https://github.com/llvm/llvm-project/commit/4ee173a1684e7a3afc6d32d576469425b3fe8387
  Author: klensy <klensy at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M .mailmap

  Log Message:
  -----------
  add me to mailmap (#126226)

Should add ability for buildbot to find proper mail.


https://github.com/buildbot/buildbot/blob/f1a84bbe5555a40b3fb4f04707fe6398aed4c092/master/buildbot/changes/gitpoller.py#L418

At least buildbot parses user names and mails with respect to mailmap.

Co-authored-by: klensy <nightouser at gmail.com>


  Commit: 059722da5e2943856af7cb665fd7cacd41e61dc4
      https://github.com/llvm/llvm-project/commit/059722da5e2943856af7cb665fd7cacd41e61dc4
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    R llvm/lib/Target/RISCV/RISCVSchedGeneric.td
    M llvm/test/CodeGen/RISCV/GlobalISel/add-imm.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/combine-neg-abs.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/double-arith.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/float-arith.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/freeze.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rotl-rotr.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/rv64zbkb.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/shifts.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/stacksave-stackrestore.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/vararg.ll
    M llvm/test/CodeGen/RISCV/GlobalISel/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/abds-neg.ll
    M llvm/test/CodeGen/RISCV/abds.ll
    M llvm/test/CodeGen/RISCV/abdu-neg.ll
    M llvm/test/CodeGen/RISCV/abdu.ll
    M llvm/test/CodeGen/RISCV/add-before-shl.ll
    M llvm/test/CodeGen/RISCV/add-imm.ll
    M llvm/test/CodeGen/RISCV/alloca.ll
    M llvm/test/CodeGen/RISCV/alu64.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw-discard.ll
    M llvm/test/CodeGen/RISCV/atomic-rmw.ll
    M llvm/test/CodeGen/RISCV/atomic-signext.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-cond-sub-clamp.ll
    M llvm/test/CodeGen/RISCV/atomicrmw-uinc-udec-wrap.ll
    M llvm/test/CodeGen/RISCV/bf16-promote.ll
    M llvm/test/CodeGen/RISCV/bfloat-convert.ll
    M llvm/test/CodeGen/RISCV/bfloat-mem.ll
    M llvm/test/CodeGen/RISCV/bfloat.ll
    M llvm/test/CodeGen/RISCV/bittest.ll
    M llvm/test/CodeGen/RISCV/branch-on-zero.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr32s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-fpr64s.ll
    M llvm/test/CodeGen/RISCV/callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/calling-conv-half.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32d.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-ilp32f-ilp32d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64-lp64f-lp64d-common.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64.ll
    M llvm/test/CodeGen/RISCV/calling-conv-lp64e.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32.ll
    M llvm/test/CodeGen/RISCV/calling-conv-rv32f-ilp32e.ll
    M llvm/test/CodeGen/RISCV/calls.ll
    M llvm/test/CodeGen/RISCV/codemodel-lowering.ll
    M llvm/test/CodeGen/RISCV/condbinops.ll
    M llvm/test/CodeGen/RISCV/condops.ll
    M llvm/test/CodeGen/RISCV/copysign-casts.ll
    M llvm/test/CodeGen/RISCV/ctlz-cttz-ctpop.ll
    M llvm/test/CodeGen/RISCV/double-calling-conv.ll
    M llvm/test/CodeGen/RISCV/double-convert.ll
    M llvm/test/CodeGen/RISCV/double-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/double-imm.ll
    M llvm/test/CodeGen/RISCV/double-mem.ll
    M llvm/test/CodeGen/RISCV/double-round-conv-sat.ll
    M llvm/test/CodeGen/RISCV/double-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/double-stack-spill-restore.ll
    M llvm/test/CodeGen/RISCV/fastcc-bf16.ll
    M llvm/test/CodeGen/RISCV/fastcc-float.ll
    M llvm/test/CodeGen/RISCV/fastcc-half.ll
    M llvm/test/CodeGen/RISCV/fastcc-without-f-reg.ll
    M llvm/test/CodeGen/RISCV/float-convert.ll
    M llvm/test/CodeGen/RISCV/float-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/float-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/forced-atomics.ll
    M llvm/test/CodeGen/RISCV/fp-fcanonicalize.ll
    M llvm/test/CodeGen/RISCV/fp128.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll
    M llvm/test/CodeGen/RISCV/get-setcc-result-type.ll
    M llvm/test/CodeGen/RISCV/half-arith.ll
    M llvm/test/CodeGen/RISCV/half-convert-strict.ll
    M llvm/test/CodeGen/RISCV/half-convert.ll
    M llvm/test/CodeGen/RISCV/half-fcmp-strict.ll
    M llvm/test/CodeGen/RISCV/half-intrinsics.ll
    M llvm/test/CodeGen/RISCV/half-mem.ll
    M llvm/test/CodeGen/RISCV/half-select-fcmp.ll
    M llvm/test/CodeGen/RISCV/iabs.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-constraint-f.ll
    M llvm/test/CodeGen/RISCV/inline-asm-d-modifier-N.ll
    M llvm/test/CodeGen/RISCV/inline-asm-f-constraint-f.ll
    M llvm/test/CodeGen/RISCV/inline-asm-f-modifier-N.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zfinx-constraint-r.ll
    M llvm/test/CodeGen/RISCV/inline-asm-zhinx-constraint-r.ll
    M llvm/test/CodeGen/RISCV/inline-asm.ll
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll
    M llvm/test/CodeGen/RISCV/legalize-fneg.ll
    M llvm/test/CodeGen/RISCV/llvm.exp10.ll
    M llvm/test/CodeGen/RISCV/llvm.frexp.ll
    M llvm/test/CodeGen/RISCV/loop-strength-reduce-add-cheaper-than-mul.ll
    M llvm/test/CodeGen/RISCV/machine-sink-load-immediate.ll
    M llvm/test/CodeGen/RISCV/machinelicm-address-pseudos.ll
    M llvm/test/CodeGen/RISCV/macro-fusion-lui-addi.ll
    M llvm/test/CodeGen/RISCV/mem.ll
    M llvm/test/CodeGen/RISCV/mem64.ll
    M llvm/test/CodeGen/RISCV/memcmp-optsize.ll
    M llvm/test/CodeGen/RISCV/memcmp.ll
    M llvm/test/CodeGen/RISCV/memmove.ll
    M llvm/test/CodeGen/RISCV/memset-pattern.ll
    M llvm/test/CodeGen/RISCV/mul.ll
    M llvm/test/CodeGen/RISCV/neg-abs.ll
    M llvm/test/CodeGen/RISCV/orc-b-patterns.ll
    M llvm/test/CodeGen/RISCV/overflow-intrinsics.ll
    M llvm/test/CodeGen/RISCV/pr51206.ll
    M llvm/test/CodeGen/RISCV/pr58511.ll
    M llvm/test/CodeGen/RISCV/pr63816.ll
    M llvm/test/CodeGen/RISCV/pr69586.ll
    M llvm/test/CodeGen/RISCV/push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/riscv-codegenprepare-asm.ll
    M llvm/test/CodeGen/RISCV/rotl-rotr.ll
    M llvm/test/CodeGen/RISCV/rv32-inline-asm-pairs.ll
    M llvm/test/CodeGen/RISCV/rv32zbb.ll
    M llvm/test/CodeGen/RISCV/rv32zbs.ll
    M llvm/test/CodeGen/RISCV/rv64-double-convert.ll
    M llvm/test/CodeGen/RISCV/rv64-half-convert.ll
    M llvm/test/CodeGen/RISCV/rv64-inline-asm-pairs.ll
    M llvm/test/CodeGen/RISCV/rv64-trampoline.ll
    M llvm/test/CodeGen/RISCV/rv64i-demanded-bits.ll
    M llvm/test/CodeGen/RISCV/rv64zbkb.ll
    M llvm/test/CodeGen/RISCV/rvv/active_lane_mask.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-array.ll
    M llvm/test/CodeGen/RISCV/rvv/alloca-load-store-scalable-struct.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/combine-store-extract-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/concat-vector-insert-elt.ll
    M llvm/test/CodeGen/RISCV/rvv/constant-folding-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/copyprop.mir
    M llvm/test/CodeGen/RISCV/rvv/ctlz-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/dont-sink-splat-operands.ll
    M llvm/test/CodeGen/RISCV/rvv/double-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/expandload.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-i1.ll
    M llvm/test/CodeGen/RISCV/rvv/extractelt-int-rv64.ll
    M llvm/test/CodeGen/RISCV/rvv/fceil-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fceil-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ffloor-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/ffloor-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vector-i8-index-cornercase.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-abs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitcast-large-vector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bitreverse-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-bswap-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-buildvec-of-binop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv-fastcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-calling-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ceil-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctlz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ctpop.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-cttz.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-deinterleave-load.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-elen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extload-truncstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-i1.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-extract.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fceil-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-ffloor-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fmaximum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fminimum.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fnearbyint-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-setcc.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp-vrgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fpowi.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptosi-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptoui-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fround-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fround.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-froundeven-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-froundeven.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert-subvector.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-vrgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access-zve32x.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-llrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-lrint.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-buildvec.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-mask-splat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-gather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-load-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-scatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-masked-store-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-formation.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-reduction-int.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-rint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-select-addsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-changes-length.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-concat.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-exact-vlen.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-shufflevector-vnsrl.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-sitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-store-merge-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-load-store-asm.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-strided-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-trunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-uitofp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-unaligned.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vcopysign-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfabs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfneg-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfsqrt-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpgather.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpmerge.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpscatter.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vsaddu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vscale-range.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vselect.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssub-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vssubu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwadd.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwaddu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmul.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulsu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwmulu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub-mask.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsub.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vwsubu.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-zext-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/float-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/floor-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fmaximum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fminimum-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fnearbyint-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fnearbyint-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fold-scalar-load-crash.ll
    M llvm/test/CodeGen/RISCV/rvv/fold-vector-cmp.ll
    M llvm/test/CodeGen/RISCV/rvv/fpclamptosat_vec.ll
    M llvm/test/CodeGen/RISCV/rvv/frm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/fround-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fround-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/froundeven-constrained-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/froundeven-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/fshr-fshl-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/half-round-conv.ll
    M llvm/test/CodeGen/RISCV/rvv/localvar.ll
    M llvm/test/CodeGen/RISCV/rvv/memcpy-inline.ll
    M llvm/test/CodeGen/RISCV/rvv/memory-args.ll
    M llvm/test/CodeGen/RISCV/rvv/mgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/mutate-prior-vsetvli-avl.ll
    M llvm/test/CodeGen/RISCV/rvv/named-vector-shuffle-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/nearbyint-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/no-reserved-frame.ll
    M llvm/test/CodeGen/RISCV/rvv/pr125306.ll
    M llvm/test/CodeGen/RISCV/rvv/pr63596.ll
    M llvm/test/CodeGen/RISCV/rvv/pr95865.ll
    M llvm/test/CodeGen/RISCV/rvv/reg-alloc-reserve-bp.ll
    M llvm/test/CodeGen/RISCV/rvv/round-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundeven-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/roundtozero-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-args-by-mem.ll
    M llvm/test/CodeGen/RISCV/rvv/rvv-peephole-vmerge-vops.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-fp-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/setcc-int-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/shrinkwrap.ll
    M llvm/test/CodeGen/RISCV/rvv/sink-splat-operands.ll
    M llvm/test/CodeGen/RISCV/rvv/stepvector.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/strided-vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/umulo-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/urem-seteq-vec.ll
    M llvm/test/CodeGen/RISCV/rvv/vadd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave-load.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-deinterleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-extract-last-active.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave-fixed.ll
    M llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp-combine.ll
    M llvm/test/CodeGen/RISCV/rvv/vfma-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfmuladd-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfptrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfsqrt-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vl-opt-instrs.ll
    M llvm/test/CodeGen/RISCV/rvv/vmax-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmaxu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmin-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vminu-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vmseq.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsge.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgeu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsgtu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsle.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsleu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmslt.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsltu.ll
    M llvm/test/CodeGen/RISCV/rvv/vmsne.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv.s.x.ll
    M llvm/test/CodeGen/RISCV/rvv/vmv0-elimination.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-combine-store-reverse.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-cttz-elts.ll
    M llvm/test/CodeGen/RISCV/rvv/vp-vector-interleaved-access.ll
    M llvm/test/CodeGen/RISCV/rvv/vpgather-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpload.ll
    M llvm/test/CodeGen/RISCV/rvv/vpmerge-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpscatter-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vpstore.ll
    M llvm/test/CodeGen/RISCV/rvv/vreductions-fp-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vrgatherei16-subreg-liveness.ll
    M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-fp.ll
    M llvm/test/CodeGen/RISCV/rvv/vselect-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert-crossbb.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/vsetvli-regression.ll
    M llvm/test/CodeGen/RISCV/rvv/vtrunc-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vwsub-mask-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert-out-of-loop.ll
    M llvm/test/CodeGen/RISCV/rvv/vxrm-insert.ll
    M llvm/test/CodeGen/RISCV/rvv/wrong-chain-fixed-load.ll
    M llvm/test/CodeGen/RISCV/scmp.ll
    M llvm/test/CodeGen/RISCV/select-and.ll
    M llvm/test/CodeGen/RISCV/select-bare.ll
    M llvm/test/CodeGen/RISCV/select-cc.ll
    M llvm/test/CodeGen/RISCV/select-constant-xor.ll
    M llvm/test/CodeGen/RISCV/select-optimize-multiple.ll
    M llvm/test/CodeGen/RISCV/select-or.ll
    M llvm/test/CodeGen/RISCV/sextw-removal.ll
    M llvm/test/CodeGen/RISCV/shift-amount-mod.ll
    M llvm/test/CodeGen/RISCV/shifts.ll
    M llvm/test/CodeGen/RISCV/shl-cttz.ll
    M llvm/test/CodeGen/RISCV/split-offsets.ll
    M llvm/test/CodeGen/RISCV/srem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/srem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/stack-slot-size.ll
    M llvm/test/CodeGen/RISCV/stack-store-check.ll
    M llvm/test/CodeGen/RISCV/tail-calls.ll
    M llvm/test/CodeGen/RISCV/ucmp.ll
    M llvm/test/CodeGen/RISCV/unaligned-load-store.ll
    M llvm/test/CodeGen/RISCV/urem-seteq-illegal-types.ll
    M llvm/test/CodeGen/RISCV/urem-vector-lkk.ll
    M llvm/test/CodeGen/RISCV/vararg.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-by-byte-multiple-legalization.ll
    M llvm/test/CodeGen/RISCV/wide-scalar-shift-legalization.ll
    M llvm/test/CodeGen/RISCV/xaluo.ll
    M llvm/test/CodeGen/RISCV/xtheadmemidx.ll
    M llvm/test/CodeGen/RISCV/xtheadmempair.ll
    M llvm/test/CodeGen/RISCV/zbb-logic-neg-imm.ll
    M llvm/test/CodeGen/RISCV/zdinx-asm-constraint.ll
    M llvm/test/CodeGen/RISCV/zdinx-boundary-check.ll

  Log Message:
  -----------
  Revert "[RISCV] Default to MicroOpBufferSize = 1 for scheduling purposes (#126608)" and follow up commit.

This reverts commit 9cc8442a2b438962883bbbfd8ff62ad4b1a2b95d.
This reverts commit 859c871184bdfdebb47b5c7ec5e59348e0534e0b.

A performance regression was reported on the original review.  There appears
to have been an unexpected interaction here.  Reverting during investigation.


  Commit: c52fbabc93d493ec94edc380c5434729731d0a3b
      https://github.com/llvm/llvm-project/commit/c52fbabc93d493ec94edc380c5434729731d0a3b
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lld/COFF/Writer.cpp
    A lld/test/COFF/arm64x-buildid.s

  Log Message:
  -----------
  [LLD][COFF] Set __buildid symbol in both symbol tables on ARM64X (#126777)


  Commit: 0feb00f17cbaac7428dcb7aed13d903b65974978
      https://github.com/llvm/llvm-project/commit/0feb00f17cbaac7428dcb7aed13d903b65974978
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/test/API/lang/cpp/enum_promotion/main.cpp

  Log Message:
  -----------
  [lldb][test] TestCPPEnumPromotion: make sure enums are preserved in dSYM

On macOS CI this was failing with:
```
FAIL: test_dsym (TestCPPEnumPromotion.TestCPPEnumPromotion)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 1784, in test_method
    return attrvalue(self)
  File "/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/test/API/lang/cpp/enum_promotion/TestCPPEnumPromotion.py", line 28, in test
    self.expect_expr("+EnumUChar::UChar", result_type=UChar_promoted.type.name)
  File "/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2540, in expect_expr
    value_check.check_value(self, eval_result, str(eval_result))
  File "/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 299, in check_value
    test_base.assertSuccess(val.GetError())
  File "/Users/ec2-user/jenkins/workspace/llvm.org/as-lldb-cmake/llvm-project/lldb/packages/Python/lldbsuite/test/lldbtest.py", line 2575, in assertSuccess
    self.fail(self._formatMessage(msg, "'{}' is not success".format(error)))
AssertionError: 'error: <user expression 0>:1:2: use of undeclared identifier 'EnumUChar'
    1 | +EnumUChar::UChar
      |  ^
' is not success
```
But only for the `dSYM` variant of the test.

Looking at the dSYM, none of the enums are actually preserved in the debug-info. We have to actually use the enum types in source to get dsymutil to preserve them. This patch does just that.


  Commit: 7d9a12cec2eee54ee30fd5c053580dd241abff0d
      https://github.com/llvm/llvm-project/commit/7d9a12cec2eee54ee30fd5c053580dd241abff0d
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [gn build] Manually port 89d636ba


  Commit: 8252e0ef82efe672f1878dbfd74f99b86f293d8f
      https://github.com/llvm/llvm-project/commit/8252e0ef82efe672f1878dbfd74f99b86f293d8f
  Author: Jacek Caban <jacek at codeweavers.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lld/COFF/Writer.cpp
    M lld/test/COFF/pdata-arm64ec.test

  Log Message:
  -----------
  [LLD][COFF] Emit ARM64X relocations for CHPE ExtraRFETable entries (#126713)

In the native view, ExtraEFRTable references the x86 exception table.
The EC view references the ARM exception table, as it did before this
change.


  Commit: ea77dd8715b5a9016ed3b290f2822dda095bb754
      https://github.com/llvm/llvm-project/commit/ea77dd8715b5a9016ed3b290f2822dda095bb754
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/aarch64/headers.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt

  Log Message:
  -----------
  [libc] Include locale support in baremetal configuration (#127103)

Having locale is a requirement for C++ streams.


  Commit: c2e96778e04197dd266f7c540bf174b6ec28a434
      https://github.com/llvm/llvm-project/commit/c2e96778e04197dd266f7c540bf174b6ec28a434
  Author: John Harrison <harjohn at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/output/TestDAP_output.py
    M lldb/test/API/tools/lldb-dap/output/main.c
    M lldb/tools/lldb-dap/OutputRedirector.cpp
    M lldb/tools/lldb-dap/OutputRedirector.h

  Log Message:
  -----------
  [lldb-dap] Ensure we do not print the close sentinel when closing stdout. (#126833)

If you have an lldb-dap log file you'll almost always see a final
message like:

```
<-- 
Content-Length: 94

{
  "body": {
    "category": "stdout",
    "output": "\u0000\u0000"
  },
  "event": "output",
  "seq": 0,
  "type": "event"
}
<-- 
Content-Length: 94

{
  "body": {
    "category": "stderr",
    "output": "\u0000\u0000"
  },
  "event": "output",
  "seq": 0,
  "type": "event"
}
```

The OutputRedirect is always writing the `"\0"` byte as a final stdout
message during shutdown. Instead, I adjusted this to detect the sentinel
value and break out of the read loop as if we detected EOF.

---------

Co-authored-by: Pavel Labath <pavel at labath.sk>


  Commit: 4ac79a8c988ff74984b78c13d489eafcce9189e5
      https://github.com/llvm/llvm-project/commit/4ac79a8c988ff74984b78c13d489eafcce9189e5
  Author: alx32 <103613512+alx32 at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lld/MachO/Arch/ARM64.cpp
    M lld/MachO/ICF.cpp
    M lld/MachO/Target.h
    M lld/test/MachO/arm64-thunks.s

  Log Message:
  -----------
  [lld-macho] Use Symbols as branch target for safe_thunks ICF (#126835)

## Problem

The `safe_thunks` ICF optimization in `lld-macho` was creating thunks
that pointed to `InputSection`s instead of `Symbol`s. While, generally,
branch relocations can point to symbols or input sections, in this case
we need them to point to symbols as subsequently the branch extension
algorithm expects branches to always point to `Symbol`'s.

## Solution
This patch changes the ICF implementation so that safe thunks point to
`Symbol`'s rather than `InputSection`s.

## Testing
The existing `arm64-thunks.s` test is modified to include
`--icf=safe_thunks` to explicitly verify the interaction between ICF and
branch range extension thunks. Two functions were added that will be
merged together via a thunk. Before this patch, this test would generate
an assert - now this scenario is correctly handled.


  Commit: 72f4e656b8feb3665bd074fadf1db1e72b385030
      https://github.com/llvm/llvm-project/commit/72f4e656b8feb3665bd074fadf1db1e72b385030
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [RISCV] Revise interface of isLegalBitRotate [nfc]

Remove a dead parameter (DAG), and replace the ShuffleVectorSDNode param
with the two things we need from the shuffle (mask and VT).  There's
further room to improve this code, but this gets me what I need for an
upcoming patch.


  Commit: b666ac3b63e01bfa602318c877ea2395fea53f89
      https://github.com/llvm/llvm-project/commit/b666ac3b63e01bfa602318c877ea2395fea53f89
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/include/lldb/Target/Thread.h
    M lldb/source/Plugins/Process/Utility/StopInfoMachException.cpp
    M lldb/source/Plugins/Process/Windows/Common/ProcessWindows.cpp
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/Process/scripted/ScriptedThread.cpp
    M lldb/source/Target/StopInfo.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/test/API/functionalities/breakpoint/consecutive_breakpoints/TestConsecutiveBreakpoints.py
    M lldb/test/API/functionalities/breakpoint/step_over_breakpoint/TestStepOverBreakpoint.py

  Log Message:
  -----------
  [lldb] Change lldb's breakpoint handling behavior, reland (#126988)

lldb today has two rules: When a thread stops at a BreakpointSite, we
set the thread's StopReason to be "breakpoint hit" (regardless if we've
actually hit the breakpoint, or if we've merely stopped *at* the
breakpoint instruction/point and haven't tripped it yet). And second,
when resuming a process, any thread sitting at a BreakpointSite is
silently stepped over the BreakpointSite -- because we've already
flagged the breakpoint hit when we stopped there originally.

In this patch, I change lldb to only set a thread's stop reason to
breakpoint-hit when we've actually executed the instruction/triggered
the breakpoint. When we resume, we only silently step past a
BreakpointSite that we've registered as hit. We preserve this state
across inferior function calls that the user may do while stopped, etc.

Also, when a user adds a new breakpoint at $pc while stopped, or changes
$pc to be the address of a BreakpointSite, we will silently step past
that breakpoint when the process resumes. This is purely a UX call, I
don't think there's any person who wants to set a breakpoint at $pc and
then hit it immediately on resuming.

One non-intuitive UX from this change, butt is necessary: If you're
stopped at a BreakpointSite that has not yet executed, you `stepi`, you
will hit the breakpoint and the pc will not yet advance. This thread has
not completed its stepi, and the ThreadPlanStepInstruction is still on
the stack. If you then `continue` the thread, lldb will now stop and
say, "instruction step completed", one instruction past the
BreakpointSite. You can continue a second time to resume execution.

The bugs driving this change are all from lldb dropping the real stop
reason for a thread and setting it to breakpoint-hit when that was not
the case. Jim hit one where we have an aarch64 watchpoint that triggers
one instruction before a BreakpointSite. On this arch we are notified of
the watchpoint hit after the instruction has been unrolled -- we disable
the watchpoint, instruction step, re-enable the watchpoint and collect
the new value. But now we're on a BreakpointSite so the watchpoint-hit
stop reason is lost.

Another was reported by ZequanWu in
https://discourse.llvm.org/t/lldb-unable-to-break-at-start/78282 we
attach to/launch a process with the pc at a BreakpointSite and
misbehave. Caroline Tice mentioned it is also a problem they've had with
putting a breakpoint on _dl_debug_state.

The change to each Process plugin that does execution control is that

1. If we've stopped at a BreakpointSite that has not been executed yet,
we will call Thread::SetThreadStoppedAtUnexecutedBP(pc) to record that.
When the thread resumes, if the pc is still at the same site, we will
continue, hit the breakpoint, and stop again.

2. When we've actually hit a breakpoint (enabled for this thread or
not), the Process plugin should call
Thread::SetThreadHitBreakpointSite(). When we go to resume the thread,
we will push a step-over-breakpoint ThreadPlan before resuming.

The biggest set of changes is to StopInfoMachException where we
translate a Mach Exception into a stop reason. The Mach exception codes
differ in a few places depending on the target (unambiguously), and I
didn't want to duplicate the new code for each target so I've tested
what mach exceptions we get for each action on each target, and
reorganized StopInfoMachException::CreateStopReasonWithMachException to
document these possible values, and handle them without specializing
based on the target arch.

I first landed this patch in July 2024 via
https://github.com/llvm/llvm-project/pull/96260

but the CI bots and wider testing found a number of test case failures
that needed to be updated, I reverted it. I've fixed all of those issues
in separate PRs and this change should run cleanly on all the CI bots
now.

rdar://123942164


  Commit: ecdfa36ecaea7615b244f4cac26a4a023d30a9c1
      https://github.com/llvm/llvm-project/commit/ecdfa36ecaea7615b244f4cac26a4a023d30a9c1
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.h

  Log Message:
  -----------
  Reland "[NVPTX] Cleanup/Refactoring in NVPTX AsmPrinter and RegisterInfo (NFC)" (#127089)


  Commit: 63c1be7249241205734b9d03e5a1df4602e3648d
      https://github.com/llvm/llvm-project/commit/63c1be7249241205734b9d03e5a1df4602e3648d
  Author: Paul Kirth <paulkirth at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/CodeGen/fat-lto-objects-cfi.cpp
    A llvm/include/llvm/Transforms/IPO/FatLTOCleanup.h
    M llvm/lib/Passes/PassBuilder.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    M llvm/lib/Transforms/IPO/CMakeLists.txt
    A llvm/lib/Transforms/IPO/FatLTOCleanup.cpp
    A llvm/test/Transforms/FatLTOCleanup/remove-type-checked-load.ll

  Log Message:
  -----------
  [llvm][fatlto] Add FatLTOCleanup pass (#125911)

When using FatLTO, it is common to want to enable certain types of whole
program optimizations (WPD) or security transforms (CFI), so that they
can be made available when performing LTO. However, these transforms
should not be used when compiling the non-LTO object code. Since the
frontend must emit different IR, we cannot simply clone the module and
optimize the LTO section and non-LTO section differently to work around
this. Instead, we need to remove any problematic instruction sequences.

This patch adds a new pass whose responsibility is to clean up the IR
in the FatLTO pipeline after creating the bitcode section, which is
after running the pre-link pipeline but before running module
optimization. This allows us to safely drop any conflicting instructions
or IR constructs that are inappropriate for non-LTO compilation.


  Commit: 2bdeeaa18531f41e838389596cef66e4010a634c
      https://github.com/llvm/llvm-project/commit/2bdeeaa18531f41e838389596cef66e4010a634c
  Author: Petr Hosek <phosek at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/src/__support/FPUtil/FMA.h
    M libc/src/__support/FPUtil/multiply_add.h

  Log Message:
  -----------
  [libc] Use __builtin_elementwise_fma instead of __builtin_fma (#126288)

__builtin_elementwise_fma doesn't consider errno and is thus more
suitable for libc fma implementation.


  Commit: 5decab178f2642a49037c33f00726792b7fdf4a3
      https://github.com/llvm/llvm-project/commit/5decab178f2642a49037c33f00726792b7fdf4a3
  Author: LU-JOHN <John.Lu at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/shl64_reduce.ll
    A llvm/test/CodeGen/AMDGPU/shl64_reduce_flags.ll

  Log Message:
  -----------
  AMDGPU: Reduce shl64 to shl32 if shift range is [63-32] (#125574)

Reduce:

   DST = shl i64 X, Y

where Y is in the range [63-32] to:

   DST = [0, shl i32 X, (Y & 32)]


Alive2 analysis:

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

---------

Signed-off-by: John Lu <John.Lu at amd.com>


  Commit: 65640c1d4c38bf4ff84d808ec440bc8df1236803
      https://github.com/llvm/llvm-project/commit/65640c1d4c38bf4ff84d808ec440bc8df1236803
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Analysis/ValueTracking/assume-queries-counter.ll
    M llvm/test/Analysis/ValueTracking/assume.ll
    M llvm/test/Transforms/LICM/hoist-speculatable-load.ll
    M llvm/test/Transforms/LoopVectorize/dereferenceable-info-from-assumption-constant-size.ll
    M llvm/test/Transforms/SimplifyCFG/speculate-derefable-load.ll

  Log Message:
  -----------
  [AssumeBundles] Dereferenceable used in bundle only applies at assume. (#126117)

Update LangRef and code using `Dereferenceable` in assume bundles to
only use the information if it is safe at the point of use.

`Dereferenceable` in an assume bundle is only guaranteed at the point of
the assumption, but may not be guaranteed at later points, because the
pointer may have been freed.

Update code using `Dereferenceable` to only use it if the pointer cannot
be freed. This can further be refined to check if the pointer could be
freed between assume and use.

This follows up on https://github.com/llvm/llvm-project/pull/123196.

With that change, it should be safe to expose dereferenceable
assumptions more widely as in
https://github.com/llvm/llvm-project/pull/121789

PR: https://github.com/llvm/llvm-project/pull/126117


  Commit: b5aa1c4783c93e6eddfbddd3e0e81982787acb40
      https://github.com/llvm/llvm-project/commit/b5aa1c4783c93e6eddfbddd3e0e81982787acb40
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Transforms/IPO/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 63c1be724924


  Commit: 83632c039d17772769617b92a1658e8a98190c5e
      https://github.com/llvm/llvm-project/commit/83632c039d17772769617b92a1658e8a98190c5e
  Author: Ellis Hoag <ellis.sparky.hoag at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lld/include/lld/Common/BPSectionOrdererBase.inc
    M lld/test/MachO/bp-section-orderer.s

  Log Message:
  -----------
  [lld][BP] Order .Tgm symbols for startup (#126328)

The Global Function Merger
(https://discourse.llvm.org/t/rfc-global-function-merging/82608) pass
optimistically creates merged instances of functions and suffixes their
names with `.Tgm`. Then in the linker, ICF will (hopefully) fold these
`.Tgm` functions. For example, a function `foo` might become a thunk
`foo` that calls a merged function `foo.Tgm`.

Since IRPGO runs before the global merger, we will only have a profile
for `foo`. We want to correlate this profile to both `foo` and `foo.Tgm`
so they can both be ordered to improve startup time.

I built a large binary and found that it increased the number of
functions ordered for startup, as expected.
```
Functions for startup: 12049 -> 12697
Functions for compression: 34733 -> 34707
```

The reason why we don't see a larger improvement is because there are
some cases where the code was accidentally working:
`getRootSymbol("foo.llvm.5555.Tgm")` already returns `foo`.


  Commit: 161f64a4c1eb86856891816c1569d3e92f4535bd
      https://github.com/llvm/llvm-project/commit/161f64a4c1eb86856891816c1569d3e92f4535bd
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M .github/workflows/build-ci-container-windows.yml
    M .github/workflows/build-ci-container.yml
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  [Github][CI] Hashpin actions dependencies (#127011)

This patch has pins several actions dependencies in the premerge
workflow and the Windows/Linux container build workflows to help improve
security in the unlikely event that someone tries to pull off a supply
chain security attack by modifying release asserts for these actions.


  Commit: 0078e8f45062fcfb1e5e328e0993dcb66f11fb84
      https://github.com/llvm/llvm-project/commit/0078e8f45062fcfb1e5e328e0993dcb66f11fb84
  Author: Piotr Fusik <p.fusik at samsung.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

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

  Log Message:
  -----------
  [RISCV][NFC] Fix a warning (#127090)


  Commit: 0aafb8aca3444ef1a1f797a6facbb087ea608f4e
      https://github.com/llvm/llvm-project/commit/0aafb8aca3444ef1a1f797a6facbb087ea608f4e
  Author: Scott Linder <scott.linder at amd.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/preload-implicit-kernargs-debug-info.ll

  Log Message:
  -----------
  [AMDGPU] Add test for failure with function !dbg info in amdgpu-lower-kernel-arguments (#126146)


  Commit: 424fcc5df7d7ba1db3d83023885dcbaf33a49b39
      https://github.com/llvm/llvm-project/commit/424fcc5df7d7ba1db3d83023885dcbaf33a49b39
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp

  Log Message:
  -----------
  [LAA] Split off code to compute stride from AddRec for reuse (NFC).

Refactors to code to expose the core logic from getPtrStride to compute
the stride for a given AddRec.

Split off from https://github.com/llvm/llvm-project/pull/126971 as
suggested.


  Commit: 37ed2e6b33882cdf5dcc640f59965c5c522b489e
      https://github.com/llvm/llvm-project/commit/37ed2e6b33882cdf5dcc640f59965c5c522b489e
  Author: Deric Cheung <cheung.deric at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/VectorUtils.cpp
    A llvm/test/Transforms/Scalarizer/sadd_with_overflow.ll
    A llvm/test/Transforms/Scalarizer/sincos.ll
    A llvm/test/Transforms/Scalarizer/smul_with_overflow.ll
    A llvm/test/Transforms/Scalarizer/ssub_with_overflow.ll
    R llvm/test/Transforms/Scalarizer/uadd_overflow.ll
    A llvm/test/Transforms/Scalarizer/uadd_with_overflow.ll
    A llvm/test/Transforms/Scalarizer/umul_with_overflow.ll
    A llvm/test/Transforms/Scalarizer/usub_with_overflow.ll

  Log Message:
  -----------
  [Scalarizer] Make `*_with_overflow` intrinsics scalarizable (#126815)

Addresses issue #126809

- Made `uadd_with_overflow`, `sadd_with_overflow`, `usub_with_overflow`,
`ssub_with_overflow`, `umul_with_overflow`, and `smul_with_overflow`
trivially scalarizable in `isTriviallyScalarizable()` from
`VectorUtils.cpp`
- Renamed and updated the test `Scalarizer/uadd_overflow.ll` to
`Scalarizer/uadd_with_overflow.ll` to check that `uadd_with_overflow`
gets scalarized
- Added a test `Scalarizer/sincos.ll` to ensure the bug fix #113625
still works


  Commit: c9ba2b08d57fb682d4fe9ab2dd6f14d464b081df
      https://github.com/llvm/llvm-project/commit/c9ba2b08d57fb682d4fe9ab2dd6f14d464b081df
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Region.h
    M llvm/lib/SandboxIR/Region.cpp
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  [SandboxIR][Region] Implement an auxiliary vector in Region (#126376)

This patch adds additional functionality to the sandboxir Region. The
Region is used as a way of passing a set of Instructions across region
passes in a way that can be represented in the IR with metadata. This is
a design choice that allows us to test region passes in isolation with
lit tests.

Up until now the region was only used to tag the instructions generated
by the passes. There is a need to represent an ordered set of
instructions, which can be used as a way to represent the initial seeds
to the first vectorization pass. This patch implements this auxiliary
vector that can be used to convey such information.


  Commit: e3cab30ab96e1d22bbedff005673ae0c1431c3af
      https://github.com/llvm/llvm-project/commit/e3cab30ab96e1d22bbedff005673ae0c1431c3af
  Author: Ben Langmuir <blangmuir at apple.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp

  Log Message:
  -----------
  [clang][deps] Ensure DiagnosticConsumer::finish is always called (#127110)

When using the clang dependency scanner with an arbitrary
DiagnosticConsumer, it is important that we always call finish().
Previously, if there was an error preventing us from reaching the
scanning action, or if the command line contained no scannable actions
we would fail to finish(), which would break some consumers (e.g.
serialized diag consumer).


  Commit: 1ff5f328d9824694cc356ebf78adad8816a6de86
      https://github.com/llvm/llvm-project/commit/1ff5f328d9824694cc356ebf78adad8816a6de86
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/DXContainer.h
    M llvm/include/llvm/MC/DXContainerRootSignature.h
    M llvm/include/llvm/ObjectYAML/DXContainerYAML.h
    M llvm/lib/MC/DXContainerRootSignature.cpp
    M llvm/lib/Object/DXContainer.cpp
    M llvm/lib/ObjectYAML/DXContainerEmitter.cpp
    M llvm/lib/ObjectYAML/DXContainerYAML.cpp
    M llvm/lib/Target/DirectX/CMakeLists.txt
    M llvm/lib/Target/DirectX/DXContainerGlobals.cpp
    A llvm/lib/Target/DirectX/DXILRootSignature.cpp
    A llvm/lib/Target/DirectX/DXILRootSignature.h
    M llvm/lib/Target/DirectX/DirectX.h
    M llvm/lib/Target/DirectX/DirectXPassRegistry.def
    M llvm/lib/Target/DirectX/DirectXTargetMachine.cpp
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags-Validation-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-Flags.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-NullFunction-Error.ll
    A llvm/test/CodeGen/DirectX/ContainerData/RootSignature-RootElement-Error.ll
    M llvm/test/CodeGen/DirectX/llc-pipeline.ll
    M llvm/tools/obj2yaml/dxcontainer2yaml.cpp
    M llvm/unittests/Object/DXContainerTest.cpp

  Log Message:
  -----------
  [DXIL] Add support for root signature flag element in DXContainer (#123147)

Adding support for Root Signature Flags Element extraction and writing
to DXContainer.
- Adding an analysis to deal with RootSignature metadata definition
- Adding validation for Flag
- writing RootSignature blob into DXIL

Closes: [126632](https://github.com/llvm/llvm-project/issues/126632)

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>


  Commit: ac217ee389d63124432e5e6890851a678f7a676b
      https://github.com/llvm/llvm-project/commit/ac217ee389d63124432e5e6890851a678f7a676b
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/X86/delayed-gather-emission.ll
    M llvm/test/Transforms/SLPVectorizer/X86/matching-gather-nodes-phi-users.ll
    A llvm/test/Transforms/SLPVectorizer/X86/phi-node-with-cycle.ll

  Log Message:
  -----------
  [SLP] Check for PHI nodes (potentially cycles!) when checking dependencies

When checking for dependecies for gather nodes with users with the same
last instruction, cannot rely on the index order, if there is (even
potential!) cycle in the graph, which may cause order not work correctly
and cause compiler crash.

Fixes #127128


  Commit: 4ec199035efbc10211a95ca102f05fb6fcbbdc09
      https://github.com/llvm/llvm-project/commit/4ec199035efbc10211a95ca102f05fb6fcbbdc09
  Author: Jerry-Ge <jerry.ge at arm.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOpBase.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/include/mlir/Dialect/Tosa/Transforms/Passes.h
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamed.cpp
    M mlir/lib/Conversion/TosaToLinalg/TosaToLinalgNamedPass.cpp
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/CMakeLists.txt
    R mlir/lib/Dialect/Tosa/Transforms/TosaDecomposeConv2D.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaOptionalDecompositions.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Conversion/TosaToLinalg/tosa-to-linalg-named.mlir
    M mlir/test/Dialect/Tosa/invalid.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    R mlir/test/Dialect/Tosa/tosa-decompose-conv2d.mlir
    M mlir/test/Dialect/Tosa/tosa-infer-shapes.mlir
    R mlir/test/Integration/Dialect/Tosa/CPU/test-fully-connected.mlir

  Log Message:
  -----------
  [mlir][tosa] Remove FullyConnectedOp from TOSA Dialect (#126152)

This patch removes FullyConncected Operator from the TOSA Dialect and
all associated tests and transforms.

This is part of the TOSA v1.0 alignment effort:
https://discourse.llvm.org/t/rfc-tosa-dialect-increment-to-v1-0/83708

Signed-off-by: Tai Ly <tai.ly at arm.com>
Co-authored-by: Tai Ly <tai.ly at arm.com>


  Commit: 5ee97877308e8617a2c42bb120f0a90e594eba31
      https://github.com/llvm/llvm-project/commit/5ee97877308e8617a2c42bb120f0a90e594eba31
  Author: lntue <lntue at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/src/__support/big_int.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sqrtf128.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/src/math/SqrtTest.h
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/sqrtf128_perf.cpp
    M libc/test/src/math/smoke/SqrtTest.h
    M libc/test/src/math/smoke/generic_sqrt_test.cpp
    M libc/test/src/math/smoke/generic_sqrtf128_test.cpp
    M libc/test/src/math/smoke/generic_sqrtf_test.cpp
    M libc/test/src/math/smoke/generic_sqrtl_test.cpp
    M libc/test/src/math/smoke/sqrt_test.cpp
    M libc/test/src/math/smoke/sqrtf128_test.cpp
    M libc/test/src/math/smoke/sqrtf16_test.cpp
    M libc/test/src/math/smoke/sqrtf_test.cpp
    M libc/test/src/math/smoke/sqrtl_test.cpp

  Log Message:
  -----------
  [libc][math] Improve the performance of sqrtf128. (#122578)

Use a combination of polynomial approximation and Newton-Raphson
iterations in 64-bit and 128-bit integers to improve the performance of
sqrtf128. The correct rounding is provided by squaring the result and
comparing it with the argument.

Performance improvement using the newly added perf test:
- My function = the improved implementation from this PR
- Other function = current implementation using
`libc/src/__support/FPUtil/generic/sqrt.h`
```
 Performance tests with inputs in denormal range:
-- My function --
     Total time      : 1260765265 ns 
     Average runtime : 125.951 ns/op 
     Ops per second  : 7939623 op/s 
-- Other function --
     Total time      : 7160726518 ns 
     Average runtime : 715.357 ns/op 
     Ops per second  : 1397902 op/s 
-- Average runtime ratio --
     Mine / Other's  : 0.176067 

 Performance tests with inputs in normal range:
-- My function --
     Total time      : 373003808 ns 
     Average runtime : 37.2631 ns/op 
     Ops per second  : 26836189 op/s 
-- Other function --
     Total time      : 7353398916 ns 
     Average runtime : 734.605 ns/op 
     Ops per second  : 1361275 op/s 
-- Average runtime ratio --
     Mine / Other's  : 0.0507254 
```

---------

Co-authored-by: Alexei Sibidanov <sibid at uvic.ca>


  Commit: 415607e10b56d0e6c4661ff1ec5b9b46bf433cba
      https://github.com/llvm/llvm-project/commit/415607e10b56d0e6c4661ff1ec5b9b46bf433cba
  Author: Tristan Ross <tristan.ross at midstall.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/unittests/ExecutionEngine/Orc/JITLinkRedirectionManagerTest.cpp
    M llvm/unittests/ExecutionEngine/Orc/ReOptimizeLayerTest.cpp

  Log Message:
  -----------
  [ORC][unittests] Remove hard coded 16k page size (#127115)

Fixes a couple hard coded 16k values which is being used as the page
size. Replaces the hard coded value with the system's page size. This
fixes #116753 on an Ampere Altra Q64-22

CC @lhames


  Commit: bcfdae120ea7a03176e41d17e5efe4692d64f807
      https://github.com/llvm/llvm-project/commit/bcfdae120ea7a03176e41d17e5efe4692d64f807
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/test/CodeGenCXX/debug-info-template-parameter.cpp

  Log Message:
  -----------
  [clang][DebugInfo][test] Add tests for C++20 non-type template parameters (#127056)

This exercises the codepath where we create `DITemplateValueParameter`s
whose `TemplateArgument::ArgKind` is `StructuralValue`, which was added
in (https://github.com/llvm/llvm-project/pull/78041). Previously, not
emitting a `value`/`defaulted` for such template argument nodes didn't
fail any tests.


  Commit: 41f96f91cdd8640166fc843421d861e5be351bd2
      https://github.com/llvm/llvm-project/commit/41f96f91cdd8640166fc843421d861e5be351bd2
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
    M llvm/test/DebugInfo/X86/debug-info-template-parameter.ll

  Log Message:
  -----------
  [llvm][DebugInfo] Emit DW_AT_const_value for float non-type template parameters (#127045)

In C++20, non-type template parameters can be float/double. Clang didn't
emit those constants in DWARF. This patch emits floating point constants
the same way we do other integral template value parameters.


  Commit: dbbdc7e69c6b4d92b6b67060b094350c0de0d387
      https://github.com/llvm/llvm-project/commit/dbbdc7e69c6b4d92b6b67060b094350c0de0d387
  Author: Christopher Bate <cbate at nvidia.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Bufferization/IR/BufferizableOpInterface.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizableOpInterface.cpp
    M mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp

  Log Message:
  -----------
  [mlir][bufferization] Use a cache when checking whether ops are in mutually exclusive regions (#123516)

When profiling one-shot-bufferization over large programs, I found that
the analysis would spend a large amount of time checking whether
two operations are "inside mutually exclusive regions". This change
adds a cache for that information, which can result in a noticeable
speedup depending on program structure.


  Commit: adacbf68ebeaeaf9d07a5beaff163da9ca0534a9
      https://github.com/llvm/llvm-project/commit/adacbf68ebeaeaf9d07a5beaff163da9ca0534a9
  Author: Ulrich Weigand <ulrich.weigand at de.ibm.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector2-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector2.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector2.c
    M llvm/lib/Target/SystemZ/SystemZISelLowering.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrFP.td
    M llvm/lib/Target/SystemZ/SystemZInstrVector.td
    M llvm/test/CodeGen/SystemZ/fp-round-01.ll
    M llvm/test/CodeGen/SystemZ/fp-round-02.ll
    M llvm/test/CodeGen/SystemZ/fp-round-03.ll
    M llvm/test/CodeGen/SystemZ/fp-strict-round-01.ll
    M llvm/test/CodeGen/SystemZ/fp-strict-round-02.ll
    M llvm/test/CodeGen/SystemZ/fp-strict-round-03.ll
    M llvm/test/CodeGen/SystemZ/vec-round-01.ll
    M llvm/test/CodeGen/SystemZ/vec-round-02.ll
    M llvm/test/CodeGen/SystemZ/vec-strict-round-01.ll
    M llvm/test/CodeGen/SystemZ/vec-strict-round-02.ll
    M llvm/test/CodeGen/SystemZ/vector-constrained-fp-intrinsics.ll

  Log Message:
  -----------
  [SystemZ] Add codegen support for llvm.roundeven

This is straightforward as we already had all the necessary
instructions, they simply were not wired up.

Also allows implementing the vec_round intrinsic via the
standard llvm.roundeven IR instead of a platform intrinsic now.


  Commit: 050933b41f8de8498c95dfd0bacb10f3d495d62d
      https://github.com/llvm/llvm-project/commit/050933b41f8de8498c95dfd0bacb10f3d495d62d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py

  Log Message:
  -----------
  [lldb][test] TestCppTemplateArguments.py: adjust expected type

LLVM started emitting the `DW_AT_const_value` for floating point template parameters since https://github.com/llvm/llvm-project/pull/127045. Adjust the expected type in this test. It's still not quite correct but that requires a separate fix in LLDB.


  Commit: 61acfb07e8333e29bbf435cdb188723b5a93ddd8
      https://github.com/llvm/llvm-project/commit/61acfb07e8333e29bbf435cdb188723b5a93ddd8
  Author: Amir Ayupov <aaupov at fb.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/test/X86/callcont-fallthru.s
    M bolt/test/link_fdata.py

  Log Message:
  -----------
  [BOLT] Add pre-aggregated trace support (#127125)

Traces are triplets of branch source, target, and fall-through end (next
branch).

Traces simplify differentiation of fall-throughs into local- and
external-origin, which improves performance over profile with
undifferentiated fall-throughs by eliminating profile discontinuity in
call to continuation fall-throughs. This makes it possible to avoid
converting return profile into call to continuation profile which may
introduce statistical biases.

The existing format makes provisions for local- (F) and external- (f)
origin fall-throughs, but the profile producer needs to know function
boundaries. BOLT has that information readily available, so providing
the origin branch of a fall-through is a functional replacement of the
fall-through kind (f or F). This also has an effect of combining
branches and fall-throughs into a single record.

As traces subsume other pre-aggregated profile kinds, BOLT may drop
support for them soon. Users of pre-aggregated profile format are
advised to migrate to the trace format.

Test Plan: Updated callcont-fallthru.s


  Commit: 32c8754fbcb936ba6b5bc6cb6817cf3b6a4602f4
      https://github.com/llvm/llvm-project/commit/32c8754fbcb936ba6b5bc6cb6817cf3b6a4602f4
  Author: Nathan Ridge <zeratul976 at hotmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/AST/Expr.cpp
    M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [clang][AST] Handle dependent representation of call to function with explicit object parameter in CallExpr::getBeginLoc() (#126868)

This fixes a crash where CallExpr::getBeginLoc() tries to access the
first argument of a CallExpr representing a call to a function with
an explicit object parameter, assuming that a first argument exists
because it's the object argument.

This is the case for non-dependent calls, but for dependent calls
the object argument is part of the callee (the semantic analysis
that separates it out has not been performed yet) and so there may
not be a first argument.

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


  Commit: 0454dd8c48cd771478f1ae53330ba78e71bcd7cb
      https://github.com/llvm/llvm-project/commit/0454dd8c48cd771478f1ae53330ba78e71bcd7cb
  Author: Lei Wang <wlei at fb.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/IPO/SampleProfileMatcher.cpp
    M llvm/test/Transforms/SampleProfile/pseudo-probe-stale-profile-renaming.ll

  Log Message:
  -----------
  [StaleProfileMatching] Use only profile anchor size for similarity calculation (#126783)

We observed that the number of IR anchors is usually greater than the
number of profile anchors, because IR anchors can be optimized away
later and llvm-profgen might not generate profiles for cold callsites.
This can cause missing function matches. I’m changing the similarity
calculation to use only the profile anchor size. In another point of
view, It also makes sense to reuse as many profile anchors as possible
regardless of the new functions in the IR.


  Commit: 3c2ba68915b268fd3b7d39bf62e19199b2cb8995
      https://github.com/llvm/llvm-project/commit/3c2ba68915b268fd3b7d39bf62e19199b2cb8995
  Author: Jason Molenda <jmolenda at apple.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntimeV2.cpp

  Log Message:
  -----------
  [lldb] Don't warn that libobjc was read from memory in corefile (#127138)

AppleObjCRuntimeV2 prints a warning when we read libobjc.A.dylib from
memory, as a canary to detect that we are reading system binaries out of
memory (which is slow, and we try hard to avoid). But with a corefile,
reading out of "memory" is fine, and may be the only way we can find the
correct binary.

rdar://144322688


  Commit: 6d3bfddb9d5458bf650fe4bf1da5db5848e7eb84
      https://github.com/llvm/llvm-project/commit/6d3bfddb9d5458bf650fe4bf1da5db5848e7eb84
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/include/dlfcn.yaml
    M libc/utils/hdrgen/gpu_headers.py
    M libc/utils/hdrgen/header.py
    M libc/utils/hdrgen/macro.py
    M libc/utils/hdrgen/tests/expected_output/test_header.h
    M libc/utils/hdrgen/tests/input/test_small.h.def
    M libc/utils/hdrgen/tests/input/test_small.yaml
    M libc/utils/hdrgen/tests/test_integration.py
    M libc/utils/hdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] Make hdrgen support macro_header YAML field. (#123265)

A macro can specify macro_header instead of macro_value to
indicate that an llvm-libc-macros/ header file is supposed to
define this macro.  This is used for dlfcn.h, which previously
bogusly redefined the RTLD_* macros to empty.


  Commit: 912b154f3a3f8c3cebf5cc5731fd8b0749762da5
      https://github.com/llvm/llvm-project/commit/912b154f3a3f8c3cebf5cc5731fd8b0749762da5
  Author: Zixu Wang <9819235+zixu-w at users.noreply.github.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    R clang/test/Modules/pr121245.cpp

  Log Message:
  -----------
  Revert "[C++20][Modules][Serialization] Delay marking pending incompl… (#127136)

…ete decl chains until the end of `finishPendingActions`. (#121245)"

This reverts commit a9e249f64e800fbb20a3b26c0cfb68c1a1aee5e1.

Reverting this change because of issue #126973.


  Commit: a57e58dbfaae0e86eb5cafeddf8b598f14b96e36
      https://github.com/llvm/llvm-project/commit/a57e58dbfaae0e86eb5cafeddf8b598f14b96e36
  Author: Jeff Niu <jeffniu22 at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/test/Dialect/SCF/canonicalize.mlir

  Log Message:
  -----------
  [mlir][scf] Remove identical `scf.for` iter args (#127145)

This augments the iter arg canonicalizer to remove iter args that always
have the same value, i.e. their correpsonding init and yielded values
are the same.


  Commit: 87ce1170d08efafe0f36fba75f13ed29ebeb08c7
      https://github.com/llvm/llvm-project/commit/87ce1170d08efafe0f36fba75f13ed29ebeb08c7
  Author: Ahmed Bougacha <ahmed at bougacha.org>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [AArch64][TargetParser] Add ProcessorAlias unit test machinery. NFC. (#127131)

The patch itself is mainly the expected unittest boilerplate.
This adds tests for the aliases we have today.

We could alternatively test these via the driver with additional
run-lines in print-enable-extensions tests, and eventually should
consider that instead.


  Commit: dc79c66f2c6cc2773e38735660d8e0aaedf9702c
      https://github.com/llvm/llvm-project/commit/dc79c66f2c6cc2773e38735660d8e0aaedf9702c
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td
    A mlir/include/mlir/Dialect/SPIRV/IR/SPIRVMeshOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVOps.td
    M mlir/lib/Dialect/SPIRV/IR/CMakeLists.txt
    A mlir/lib/Dialect/SPIRV/IR/MeshOps.cpp
    M mlir/test/Dialect/SPIRV/IR/availability.mlir
    A mlir/test/Dialect/SPIRV/IR/mesh-ops.mlir
    A mlir/test/Target/SPIRV/mesh-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add support for SPV_EXT_mesh_shader extension (#126555)

This patch adds support for all enums and operations defined in the
SPV_EXT_mesh_shader extension. Where in conflict with SPV_NV_mesh_shader
definition, the EXT specification takes precedence, as duplicated enum
values are not allowed. Enum values has been added manually, as
define_enum.sh script, modifies files too aggressively - it adds all
missing values from various extensions.


  Commit: 910be4ff90d7d07bd4518ea03b85c0974672bf9c
      https://github.com/llvm/llvm-project/commit/910be4ff90d7d07bd4518ea03b85c0974672bf9c
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/module/cudadevice.f90
    M flang/test/Lower/CUDA/cuda-device-proc.cuf

  Log Message:
  -----------
  [flang][cuda] Lower clock64 to nvvm intrinsic (#127155)


  Commit: e477e568e6d745c98cb81a856988a99fe3a989e3
      https://github.com/llvm/llvm-project/commit/e477e568e6d745c98cb81a856988a99fe3a989e3
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M libc/test/UnitTest/LibcTest.h

  Log Message:
  -----------
  [libc] Make test macros suppress the -Wdangling-else warnings (#127149)

Use the trick from gtest to allow `ASSERT_...` and `EXPECT_...`
macros to be used in braceless `if` without producing warnings
about the nested `if`-`else` that results.


  Commit: 0ec16933593f610ab545a2ac3d771925195deb4d
      https://github.com/llvm/llvm-project/commit/0ec16933593f610ab545a2ac3d771925195deb4d
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/unittests/SandboxIR/RegionTest.cpp

  Log Message:
  -----------
  SandboxIRTests: Use `EXPECT_DEBUG_DEATH` (for #126376)


  Commit: 083f099a345f02390d00a8196d4ffa36ae71c82f
      https://github.com/llvm/llvm-project/commit/083f099a345f02390d00a8196d4ffa36ae71c82f
  Author: Galen Elias <gelias at gmail.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/unittests/Format/FormatTest.cpp

  Log Message:
  -----------
  [clang-format] Support BraceWrapping.AfterNamespace with AllowShortNamespacesOnASingleLine (#123010)

AllowShortNamespacesOnASingleLine assumes that there is no newline
before the namespace brace, however, there is no actual reason this
shouldn't be compatible with BraceWrapping.AfterNamespace = true.

This is a little tricky in the implementation because
UnwrappedLineFormatter works on lines, so being flexible about the
offsets is awkward.

Not sure if there is a better pattern for combining the 'AllowShort'
options with the various configurations of BraceWrapping, but this
seemed mostly reasonable. Really, it would almost be preferable to just
pattern match on the direct token stream, rather than the
AnnotatedLines, but I'm not seeing a straightforward way to do that.

---------

Co-authored-by: Owen Pan <owenpiano at gmail.com>


  Commit: 8a0914c24530c98c5ff65bce3710552ce3ebf7d7
      https://github.com/llvm/llvm-project/commit/8a0914c24530c98c5ff65bce3710552ce3ebf7d7
  Author: schittir <sindhu.chittireddy at intel.com>
  Date:   2025-02-13 (Thu, 13 Feb 2025)

  Changed paths:
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp

  Log Message:
  -----------
  [clang][NFC] Avoid potential null dereferences (#127017)

Add null checking.


  Commit: bd860f986406b6630e49b1836b3c208acd721d3e
      https://github.com/llvm/llvm-project/commit/bd860f986406b6630e49b1836b3c208acd721d3e
  Author: Srinivasa Ravi <srinivasar at nvidia.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsNVPTX.td
    A clang/test/CodeGenCUDA/redux-f32-builtins.cu
    M llvm/include/llvm/IR/IntrinsicsNVVM.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    A llvm/test/CodeGen/NVPTX/redux-sync-f32.ll

  Log Message:
  -----------
  [NVPTX] Add intrinsics for redux.sync f32 instructions (#126664)

Adds NVVM intrinsics, NVPTX codegen and Clang builtins for `redux.sync`
f32 instructions introduced in ptx8.6 for sm_100a.
Tests added in `CodeGen/NVPTX/redux-sync.ll` and
`CodeGenCUDA/redux-builtins.cu` and verified through ptxas 12.8.0.

PTX Spec Reference:

https://docs.nvidia.com/cuda/parallel-thread-execution/#parallel-synchronization-and-communication-instructions-redux-sync


  Commit: c1b7037520100dd035a87d40252772b85a5b95bb
      https://github.com/llvm/llvm-project/commit/c1b7037520100dd035a87d40252772b85a5b95bb
  Author: Uday Bondhugula <uday at polymagelabs.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/AffineValueMap.h
    M mlir/lib/Dialect/Affine/Analysis/Utils.cpp
    M mlir/lib/Dialect/Affine/IR/AffineValueMap.cpp

  Log Message:
  -----------
  [MLIR][Affine] Add affine value map difference operator (#127163)

Add affine value map difference operator. NFC otherwise.


  Commit: 29b7295d3a67ae236e99312efefb7c04753434ef
      https://github.com/llvm/llvm-project/commit/29b7295d3a67ae236e99312efefb7c04753434ef
  Author: serge-sans-paille <sguelton at mozilla.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/tools/driver/CMakeLists.txt

  Log Message:
  -----------
  [clang][cmake] Sanitize CLANG_BOLT values (#126768)

This avoids failing later in the build process.


  Commit: 2a7487cc2e0fb8bd91784e2d9636a65baa6d90ed
      https://github.com/llvm/llvm-project/commit/2a7487cc2e0fb8bd91784e2d9636a65baa6d90ed
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    A llvm/test/CodeGen/AMDGPU/shrink-mad-fma-fake16.mir
    A llvm/test/CodeGen/AMDGPU/shrink-mad-fma-gfx10.mir
    M llvm/test/CodeGen/AMDGPU/shrink-mad-fma.mir

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

true16 codegen pattern for f16 fma.

created a duplicated shrink-mad-fma-gfx10.mir from shrink-mad-fma to
seperate pre-GFX11 and GFX11 mir test.


  Commit: c08b80eb525a6e6a34d74634bf5181f11ed12984
      https://github.com/llvm/llvm-project/commit/c08b80eb525a6e6a34d74634bf5181f11ed12984
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/test/AST/ast-dump-ctad-alias.cpp

  Log Message:
  -----------
  [Clang] Remove the PackExpansion restrictions for rewrite substitution (#126206)

When substituting for rewrite purposes, as in rebuilding constraints for
a synthesized deduction guide, it assumed that packs were in
PackExpansion* form, such that the instantiator could extract a pattern.
    
For type aliases CTAD, while rebuilding their associated constraints,
this might not be the case because we'll call
`TransformTemplateArgument()` for the alias template arguments, where
there might be cases e.g. a non-pack expansion type into a pack
expansion, so the assumption wouldn't hold.
    
This patch fixes that by making it treat the non-pack expansions as
direct patterns when rewriting.

Fixes #124715


  Commit: cf1165cb9cb74afd58e43b819be830dfcef8c655
      https://github.com/llvm/llvm-project/commit/cf1165cb9cb74afd58e43b819be830dfcef8c655
  Author: Brox Chen <guochen2 at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIFoldOperands.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstructions.td
    M llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/fma.ll
    M llvm/test/CodeGen/AMDGPU/fix-sgpr-copies-f16.mir
    M llvm/test/CodeGen/AMDGPU/fma.f16.ll
    R llvm/test/CodeGen/AMDGPU/shrink-mad-fma-fake16.mir
    R llvm/test/CodeGen/AMDGPU/shrink-mad-fma-gfx10.mir
    M llvm/test/CodeGen/AMDGPU/shrink-mad-fma.mir

  Log Message:
  -----------
  Revert "[AMDGPU][True16][CodeGen] true16 codegen pattern for fma (#12… (#127175)

Reverting this patch since it raise buildbot failure

This reverts commit 2a7487cc2e0fb8bd91784e2d9636a65baa6d90ed.


  Commit: 4ac68ba07d6df5d604af22c242c077ea120b9893
      https://github.com/llvm/llvm-project/commit/4ac68ba07d6df5d604af22c242c077ea120b9893
  Author: Vipul Cariappa <vipulcariappa at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/Parse/ParseDecl.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp

  Log Message:
  -----------
  [clang-repl] fix error recovery while parsing completely fails (#127087)

Fixes the following crash in clang-repl

```c++
clang-repl> try { throw 1; } catch { 0; }
In file included from <<< inputs >>>:1:
input_line_1:1:23: error: expected '('
    1 | try { throw 1; } catch { 0; }
      |                       ^
      |                       (
clang-repl: /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/AST/DeclBase.cpp:1757: void clang::DeclContext::addHiddenDecl(clang::Decl*): Assertion `D->getLexicalDeclContext() == this && "Decl inserted into wrong lexical context"' failed.
 #0 0x000059b28459e6da llvm::sys::PrintStackTrace(llvm::raw_ostream&, int) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/llvm/lib/Support/Unix/Signals.inc:804:22
 #1 0x000059b28459eaed PrintStackTraceSignalHandler(void*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/llvm/lib/Support/Unix/Signals.inc:880:1
 #2 0x000059b28459bf7f llvm::sys::RunSignalHandlers() /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/llvm/lib/Support/Signals.cpp:105:20
 #3 0x000059b28459df8e SignalHandler(int, siginfo_t*, void*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/llvm/lib/Support/Unix/Signals.inc:418:13
 #4 0x000077cdf444ea50 (/usr/lib/libc.so.6+0x42a50)
 #5 0x000077cdf44aee3b pthread_kill (/usr/lib/libc.so.6+0xa2e3b)
 #6 0x000077cdf444e928 raise (/usr/lib/libc.so.6+0x42928)
 #7 0x000077cdf443156c abort (/usr/lib/libc.so.6+0x2556c)
 #8 0x000077cdf44314d2 __assert_perror_fail (/usr/lib/libc.so.6+0x254d2)
 #9 0x000077cdf4444c56 (/usr/lib/libc.so.6+0x38c56)
#10 0x000059b28495bfc4 clang::DeclContext::addHiddenDecl(clang::Decl*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/AST/DeclBase.cpp:1759:3
#11 0x000059b28495c0f5 clang::DeclContext::addDecl(clang::Decl*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/AST/DeclBase.cpp:1785:37
#12 0x000059b28773cc2a clang::Sema::ActOnStartTopLevelStmtDecl(clang::Scope*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Sema/SemaDecl.cpp:20302:18
#13 0x000059b286f1efdf clang::Parser::ParseTopLevelStmtDecl() /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Parse/ParseDecl.cpp:6024:62
#14 0x000059b286ef18ee clang::Parser::ParseExternalDeclaration(clang::ParsedAttributes&, clang::ParsedAttributes&, clang::ParsingDeclSpec*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Parse/Parser.cpp:1065:35
#15 0x000059b286ef0702 clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&, clang::Sema::ModuleImportState&) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Parse/Parser.cpp:758:36
#16 0x000059b28562dff2 clang::IncrementalParser::ParseOrWrapTopLevelDecl() /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Interpreter/IncrementalParser.cpp:66:36
#17 0x000059b28562e5b7 clang::IncrementalParser::Parse(llvm::StringRef) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Interpreter/IncrementalParser.cpp:132:8
#18 0x000059b28561832b clang::Interpreter::Parse(llvm::StringRef) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Interpreter/Interpreter.cpp:570:8
#19 0x000059b285618cbd clang::Interpreter::ParseAndExecute(llvm::StringRef, clang::Value*) /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/lib/Interpreter/Interpreter.cpp:649:8
#20 0x000059b2836f9343 main /home/vipul-cariappa/Documents/Workspace/cpp-py/llvms/llvm-project-a/clang/tools/clang-repl/ClangRepl.cpp:255:59
#21 0x000077cdf443388e (/usr/lib/libc.so.6+0x2788e)
#22 0x000077cdf443394a __libc_start_main (/usr/lib/libc.so.6+0x2794a)
#23 0x000059b2836f7965 _start (./bin/clang-repl+0x73b8965)
fish: Job 1, './bin/clang-repl' terminated by signal SIGABRT (Abort)
```

With this change:
```c++
clang-repl> try { throw 1; } catch { 0; }
In file included from <<< inputs >>>:1:
input_line_1:1:23: error: expected '('
    1 | try { throw 1; } catch { 0; }
      |                       ^
      |                       (
error: Parsing failed.
clang-repl> 1;
clang-repl> %quit
```


  Commit: 2818df38c133cf7278b0174d01fe99c9c558fa2c
      https://github.com/llvm/llvm-project/commit/2818df38c133cf7278b0174d01fe99c9c558fa2c
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M lldb/unittests/Utility/CMakeLists.txt
    M lldb/unittests/Utility/ProcessInstanceInfoTest.cpp

  Log Message:
  -----------
  [lldb] Remove UtilityTests->Target dep (#127060)

It's completely unnecessary right now, but having it present means that
some real unwanted dependencies could sneak in. (This also makes
building the test binary much faster.)


  Commit: 0949330669cbd179c3c6e40880b5e1027438648f
      https://github.com/llvm/llvm-project/commit/0949330669cbd179c3c6e40880b5e1027438648f
  Author: Pavel Labath <pavel at labath.sk>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M lldb/examples/synthetic/libcxx.py

  Log Message:
  -----------
  [lldb] Avoid expression evaluation in the std::deque formatter (#127071)

It's slower and it can fail in contexts where expression evaluation
doesn't work.


  Commit: d8b2e432d633e175a87e8fbc00e0f7a627ac4c9e
      https://github.com/llvm/llvm-project/commit/d8b2e432d633e175a87e8fbc00e0f7a627ac4c9e
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/bindings/ocaml/llvm/llvm.ml
    M llvm/bindings/ocaml/llvm/llvm.mli
    M llvm/bindings/ocaml/llvm/llvm_ocaml.c
    M llvm/docs/LangRef.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm-c/Core.h
    M llvm/include/llvm/IR/Constants.h
    M llvm/lib/AsmParser/LLParser.cpp
    M llvm/lib/IR/Constants.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/test/Analysis/ValueTracking/known-non-equal.ll
    M llvm/test/Assembler/ConstantExprFold.ll
    M llvm/test/Assembler/flags.ll
    M llvm/test/Bindings/OCaml/core.ml
    M llvm/test/CodeGen/ARM/2008-04-04-ScavengerAssert.ll
    M llvm/test/CodeGen/X86/ptrtoint-constexpr.ll
    M llvm/test/Other/constant-fold-gep-address-spaces.ll
    M llvm/test/Other/constant-fold-gep.ll
    M llvm/test/Transforms/GVN/2009-11-12-MemDepMallocBitCast.ll
    M llvm/test/Transforms/GlobalOpt/2008-12-16-HeapSRACrash-2.ll
    M llvm/test/Transforms/GlobalOpt/2008-12-16-HeapSRACrash.ll
    M llvm/test/Transforms/GlobalOpt/malloc-promote-2-no-null-opt.ll
    M llvm/test/Transforms/GlobalOpt/malloc-promote-2.ll
    M llvm/test/Transforms/GlobalOpt/malloc-promote-3.ll
    M llvm/test/Transforms/Inline/last-callsite.ll
    M llvm/test/Transforms/InstCombine/force-opaque-ptr.ll
    M llvm/test/Transforms/InstCombine/malloc-free.ll
    M llvm/test/Transforms/MemCpyOpt/memmove.ll
    M llvm/test/Transforms/NewGVN/2009-11-12-MemDepMallocBitCast.ll
    M llvm/test/Transforms/SimplifyCFG/ARM/switch-to-lookup-table-constant-expr.ll
    M llvm/unittests/IR/ConstantsTest.cpp

  Log Message:
  -----------
  [IR] Remove mul constant expression (#127046)

Remove support for the mul constant expression, which has previously
already been marked as undesirable. This removes the APIs to create mul
expressions and updates tests to stop using mul expressions.

Part of:
https://discourse.llvm.org/t/rfc-remove-most-constant-expressions/63179


  Commit: be827051924375f7c10a7380902e01a0b10ce860
      https://github.com/llvm/llvm-project/commit/be827051924375f7c10a7380902e01a0b10ce860
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

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

  Log Message:
  -----------
  [LV][EVL] Enhance fixed-order recurrence tests for tail folding with EVL. NFC (#126507)

Test that we do not vectorize the loop using folding by EVL, when a
fixed-order recurrence has external users.

TODO: Support external users by extractelement the EVL-th lane.


  Commit: a190f15d2b84e873ee978d0e6f04bf36e8f17583
      https://github.com/llvm/llvm-project/commit/a190f15d2b84e873ee978d0e6f04bf36e8f17583
  Author: Csanád Hajdú <csanad.hajdu at arm.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELF.h
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/MC/MCParser/ELFAsmParser.cpp
    M llvm/lib/MC/MCSectionELF.cpp
    M llvm/lib/ObjectYAML/ELFYAML.cpp
    M llvm/lib/Target/AArch64/AArch64Features.td
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.cpp
    M llvm/lib/Target/AArch64/AArch64TargetObjectFile.h
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.h
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64ELFStreamer.cpp
    A llvm/test/CodeGen/AArch64/execute-only-section.ll
    A llvm/test/MC/ELF/AArch64/execute-only-populated-text-section.s
    A llvm/test/MC/ELF/AArch64/execute-only-section.s
    A llvm/test/MC/ELF/AArch64/execute-only-text-section-data.s
    M llvm/test/MC/ELF/section-flags-unknown.s
    M llvm/test/Transforms/Inline/AArch64/inline-target-attr.ll
    M llvm/test/tools/llvm-objcopy/ELF/rename-section-flag-osproc-mask.test
    M llvm/test/tools/llvm-readobj/ELF/gnu-sections.test
    M llvm/test/tools/llvm-readobj/ELF/section-arch-flags.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [AArch64] Add support for SHF_AARCH64_PURECODE ELF section flag (1/3) (#125687)

Add support for the new SHF_AARCH64_PURECODE ELF section flag:
https://github.com/ARM-software/abi-aa/pull/304

The general implementation follows the existing one for ARM targets.
Generating object files with the `SHF_AARCH64_PURECODE` flag set is
enabled by the `+execute-only` target feature.

Related PRs:
* Clang: https://github.com/llvm/llvm-project/pull/125688
* LLD: https://github.com/llvm/llvm-project/pull/125689


  Commit: 55b0fde20a2ba1c67313cb4c8d6a30316facd6ad
      https://github.com/llvm/llvm-project/commit/55b0fde20a2ba1c67313cb4c8d6a30316facd6ad
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libcxx/include/__memory/unique_ptr.h

  Log Message:
  -----------
  [libc++][NFC] Simplify unique_ptr a bit (#121230)


  Commit: 5be4536d091d7b927ceaa30a263ab5629f9008cc
      https://github.com/llvm/llvm-project/commit/5be4536d091d7b927ceaa30a263ab5629f9008cc
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp

  Log Message:
  -----------
  [clang-reorder-fields] Avoid repeated hash lookups (NFC) (#127165)


  Commit: 1bc2f1c83f417cdbc11d9cfde780d96aa429ca9f
      https://github.com/llvm/llvm-project/commit/1bc2f1c83f417cdbc11d9cfde780d96aa429ca9f
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp

  Log Message:
  -----------
  [clang-tidy] Avoid repeated map lookups (NFC) (#127167)


  Commit: 6f5ca9bb3cc9595cdd92f42119358d5004fd1ce7
      https://github.com/llvm/llvm-project/commit/6f5ca9bb3cc9595cdd92f42119358d5004fd1ce7
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/ARM/ARMParallelDSP.cpp

  Log Message:
  -----------
  [ARM] Avoid repeated map lookups (NFC) (#127168)


  Commit: 606ff7ea9b29f93e536b13c83dc24de6b8a4e8cd
      https://github.com/llvm/llvm-project/commit/606ff7ea9b29f93e536b13c83dc24de6b8a4e8cd
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUnrollAndJam.cpp

  Log Message:
  -----------
  [Utils] Avoid repeated hash lookups (NFC) (#127171)


  Commit: 7eadc1960d199676f04add402bb0aa6f65b7b234
      https://github.com/llvm/llvm-project/commit/7eadc1960d199676f04add402bb0aa6f65b7b234
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M llvm/lib/Target/RISCV/RISCV.td
    M llvm/lib/Target/RISCV/RISCVProcessors.td
    A llvm/lib/Target/RISCV/RISCVSchedGenericOOO.td
    A llvm/test/tools/llvm-mca/RISCV/GenericOOO/atomic.s
    A llvm/test/tools/llvm-mca/RISCV/GenericOOO/floating-point.s
    A llvm/test/tools/llvm-mca/RISCV/GenericOOO/integer.s

  Log Message:
  -----------
  [RISCV] Add a generic OOO CPU (#120712)

We add a generic out-of-order CPU model here just like what GCC
has done.
    
People may use this model to evaluate some optimizations, and more
importantly, people can use this model as a template to customize
their own CPU models.
    
The design (units, cycles, ...) of this model is random so don't
take it seriously.


  Commit: 2ad1089d632bd356cb61fba1690c5dcdbc78ba83
      https://github.com/llvm/llvm-project/commit/2ad1089d632bd356cb61fba1690c5dcdbc78ba83
  Author: deadalnix <deadalnix at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/memcmp-more-load-pairs-x32.ll
    M llvm/test/CodeGen/X86/memcmp-more-load-pairs.ll
    M llvm/test/CodeGen/X86/memcmp-optsize-x32.ll
    M llvm/test/CodeGen/X86/memcmp-optsize.ll
    M llvm/test/CodeGen/X86/memcmp-pgso-x32.ll
    M llvm/test/CodeGen/X86/memcmp-pgso.ll
    M llvm/test/CodeGen/X86/memcmp-x32.ll
    M llvm/test/CodeGen/X86/memcmp.ll
    M llvm/test/CodeGen/X86/midpoint-int.ll
    M llvm/test/CodeGen/X86/select.ll

  Log Message:
  -----------
  [X86] Match SETCC_CARRY in addition of SUB when trying to reconstruct LEA (#126551)

As per title.

This is not a huge deal at the moment, but becomes one when matching
node in topological order in the DAGCombiner, and is generally more
stable than the existing.


  Commit: 2fdf191e244b62409fd73fa9bb717466d6e683b5
      https://github.com/llvm/llvm-project/commit/2fdf191e244b62409fd73fa9bb717466d6e683b5
  Author: Julian Brown <julian.brown at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M openmp/runtime/src/kmp_taskdeps.cpp
    M openmp/runtime/src/kmp_taskdeps.h

  Log Message:
  -----------
  [OpenMP] Fix crash with task stealing and task dependencies (#126049)

This patch series demonstrates and fixes a bug that causes crashes with
OpenMP 'taskwait' directives in heavily multi-threaded scenarios.

TLDR: The early return from __kmpc_omp_taskwait_deps_51 missed the
synchronization mechanism in place for the late return.

Additional debug assertions check for the implied invariants of the code.

@jpeyton52 found the timing hole as this sequence of events:
>
> 1. THREAD 1: A regular task with dependences is created, call it T1
> 2. THREAD 1: Call into `__kmpc_omp_taskwait_deps_51()` and create a stack
based depnode (`NULL` task), call it T2 (stack)
> 3. THREAD 2: Steals task T1 and executes it getting to
`__kmp_release_deps()` region.
> 4. THREAD 1: During processing of dependences for T2 (stack) (within
`__kmp_check_deps()` region),  a link is created T1 -> T2. This increases
T2's (stack) `nrefs` count.
> 5. THREAD 2: Iterates through the successors list: decrement the T2's
(stack) npredecessor count. BUT HASN'T YET `__kmp_node_deref()`-ed it.
> 6. THREAD 1: Now when finished with `__kmp_check_deps()`, it returns false
because npredecessor count is 0, but T2's (stack) `nrefs`  count is 2 because
THREAD 2 still references it!
> 7. THREAD 1: Because `__kmp_check_deps()` returns false, early exit.
>    _Now the stack based depnode is invalid, but THREAD 2 still references it._
>
> We've reached improper stack referencing behavior. Varied results/crashes/
asserts can occur if THREAD 1 comes back and recreates the exact same depnode
in the exact same stack address during the same time THREAD 2 calls
`__kmp_node_deref()`.


  Commit: c65ed964657c93d51f3e05de9e0609419768a143
      https://github.com/llvm/llvm-project/commit/c65ed964657c93d51f3e05de9e0609419768a143
  Author: Guillaume Chatelet <gchatelet at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

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

  Log Message:
  -----------
  Revert "[reland][libc][bazel] Enable software prefetching for memcpy" (#127189)

Reverts llvm/llvm-project#113886

We suspect this has caused internal performance regressions, reverting
while root causing it more thoroughly.


  Commit: 1b6340d9c3b75c29dec5218dbab2bb8194edfc1e
      https://github.com/llvm/llvm-project/commit/1b6340d9c3b75c29dec5218dbab2bb8194edfc1e
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Utils/Debugify.cpp

  Log Message:
  -----------
  [Debugify] applyDebugify - remove unnecessary defaults arg values and assert dereferencable values (#127186)

The applyDebugify helpers were providing default arguments despite all callers providing them, so strip them for clarity.

The Function variant was asserting that DebugInfoBeforePass was non-null before dereferencing so I've added an equivalent assert to the Method variant as well.

Fixes #97626


  Commit: 134a94ae0b6cb8dccf1114fb2eefb172e9697905
      https://github.com/llvm/llvm-project/commit/134a94ae0b6cb8dccf1114fb2eefb172e9697905
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M lldb/test/API/lang/cpp/template-arguments/TestCppTemplateArguments.py

  Log Message:
  -----------
  [lldb][test] TestCppTemplateArguments.py: skip on older compilers

This test needs to be compiled with compilers that support floating point NTTP.


  Commit: 4b4432f2c650977d9de896dcde58e1746f7af8c2
      https://github.com/llvm/llvm-project/commit/4b4432f2c650977d9de896dcde58e1746f7af8c2
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXUtilities.cpp

  Log Message:
  -----------
  [NVPTX] Avoid repeated map lookups (NFC) (#127169)

Note that cacheAnnotationFromMD modifies AC.Cache.


  Commit: d3d2ea67585f119c99af66a343f19f237891890e
      https://github.com/llvm/llvm-project/commit/d3d2ea67585f119c99af66a343f19f237891890e
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

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

  Log Message:
  -----------
  [PartialInlining] Use DenseSet instead of DenseMap (NFC) (#127170)

This patch changes the type of VisitedMap to DenseSet from DenseMap
because the value side of the map is always "true".

Technically:

  if (VisitedMap[*SI])

inserts "false" as a value, but the value is immediately overridden
with:

  VisitedMap[*SI] = true;

While we are at it, this patch removes the repeated hash lookups
around the "if" statement.


  Commit: 2bcf62b43d5bec613a0079b4b91b3a0839faeaab
      https://github.com/llvm/llvm-project/commit/2bcf62b43d5bec613a0079b4b91b3a0839faeaab
  Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/Linalg/Transforms/Transforms.h

  Log Message:
  -----------
  [nfc][mlir][linalg][tiling] Fix example code. (#127194)


  Commit: 39ec9de7c23063b87f5c56f4e80c8d0f8b511a4b
      https://github.com/llvm/llvm-project/commit/39ec9de7c23063b87f5c56f4e80c8d0f8b511a4b
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/include/clang/CodeGen/CGFunctionInfo.h
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/ARC.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/AVR.cpp
    M clang/lib/CodeGen/Targets/BPF.cpp
    M clang/lib/CodeGen/Targets/CSKY.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/Lanai.cpp
    M clang/lib/CodeGen/Targets/LoongArch.cpp
    M clang/lib/CodeGen/Targets/Mips.cpp
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/lib/CodeGen/Targets/PNaCl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/CodeGen/Targets/Sparc.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/test/CodeGen/partial-reinitialization2.c
    M clang/test/CodeGen/sret.c
    M clang/test/CodeGenCXX/no-elide-constructors.cpp
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    A clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl

  Log Message:
  -----------
  [clang][CodeGen] `sret` args should always point to the `alloca` AS, so use that (#114062)

`sret` arguments are always going to reside in the stack/`alloca`
address space, which makes the current formulation where their AS is
derived from the pointee somewhat quaint. This patch ensures that `sret`
ends up pointing to the `alloca` AS in IR function signatures, and also
guards agains trying to pass a casted `alloca`d pointer to a `sret` arg,
which can happen for most languages, when compiled for targets that have
a non-zero `alloca` AS (e.g. AMDGCN) / map `LangAS::default` to a
non-zero value (SPIR-V). A target could still choose to do something
different here, by e.g. overriding `classifyReturnType` behaviour.

In a broader sense, this patch extends non-aliased indirect args to also
carry an AS, which leads to changing the `getIndirect()` interface. At
the moment we're only using this for (indirect) returns, but it allows
for future handling of indirect args themselves. We default to using the
AllocaAS as that matches what Clang is currently doing, however if, in
the future, a target would opt for e.g. placing indirect returns in some
other storage, with another AS, this will require revisiting.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
Co-authored-by: Matt Arsenault <Matthew.Arsenault at amd.com>


  Commit: 7e3735d1a1b85cea48feb45cb7c2b5d8eaa216ae
      https://github.com/llvm/llvm-project/commit/7e3735d1a1b85cea48feb45cb7c2b5d8eaa216ae
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M llvm/include/llvm/Analysis/CaptureTracking.h
    M llvm/include/llvm/IR/InstrTypes.h
    M llvm/include/llvm/Support/ModRef.h
    M llvm/lib/Analysis/AliasAnalysis.cpp
    M llvm/lib/Analysis/CaptureTracking.cpp
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/lib/IR/Instructions.cpp
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/IPO/FunctionAttrs.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/lib/Transforms/Scalar/MemCpyOptimizer.cpp
    M llvm/test/Transforms/FunctionAttrs/2009-01-02-LocalStores.ll
    M llvm/test/Transforms/FunctionAttrs/arg_returned.ll
    M llvm/test/Transforms/FunctionAttrs/nocapture.ll
    M llvm/test/Transforms/FunctionAttrs/nonnull.ll
    M llvm/test/Transforms/FunctionAttrs/noundef.ll
    M llvm/test/Transforms/FunctionAttrs/readattrs.ll
    M llvm/test/Transforms/FunctionAttrs/stats.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/block_scaling_decompr_8bit.ll
    M llvm/test/Transforms/PhaseOrdering/bitcast-store-branch.ll
    M llvm/test/Transforms/PhaseOrdering/dce-after-argument-promotion-loads.ll
    M llvm/test/Transforms/PhaseOrdering/enable-loop-header-duplication-oz.ll
    M llvm/unittests/Analysis/CaptureTrackingTest.cpp

  Log Message:
  -----------
  Reapply [CaptureTracking][FunctionAttrs] Add support for CaptureInfo (#125880)

Relative to the previous attempt, this adjusts isEscapeSource()
to not treat calls with captures(ret: address, provenance) or similar
arguments as escape sources. This addresses the miscompile reported at:
https://github.com/llvm/llvm-project/pull/125880#issuecomment-2656632577

The implementation uses a helper function on CallBase to make this
check a bit more efficient (e.g. by skipping the byval checks) as
checking attributes on all arguments if fairly expensive.

------

This extends CaptureTracking to support inferring non-trivial
CaptureInfos. The focus of this patch is to only support FunctionAttrs,
other users of CaptureTracking will be updated in followups.

The key API changes here are:

* DetermineUseCaptureKind() now returns a UseCaptureInfo where the UseCC
component specifies what is captured at that Use and the ResultCC
component specifies what may be captured via the return value of the
User. Usually only one or the other will be used (corresponding to
previous MAY_CAPTURE or PASSTHROUGH results), but both may be set for
call captures.
* The CaptureTracking::captures() extension point is passed this
UseCaptureInfo as well and then can decide what to do with it by
returning an Action, which is one of: Stop: stop traversal.
ContinueIgnoringReturn: continue traversal but don't follow the
instruction return value. Continue: continue traversal and follow the
instruction return value if it has additional CaptureComponents.

For now, this patch retains the (unsound) special logic for comparison
of null with a dereferenceable pointer. I'd like to switch key code to
take advantage of address/address_is_null before dropping it.

This PR mainly intends to introduce necessary API changes and basic
inference support, there are various possible improvements marked with
TODOs.


  Commit: 0b49001853fa4bff76d102f592d55949bfde5fde
      https://github.com/llvm/llvm-project/commit/0b49001853fa4bff76d102f592d55949bfde5fde
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    A llvm/test/CodeGen/X86/pr8925.ll

  Log Message:
  -----------
  [X86] Add test coverage for #9297

(using bugzilla id for PR)


  Commit: 50d10b5c1c26c12570d3d31ef24b1a880fd23e26
      https://github.com/llvm/llvm-project/commit/50d10b5c1c26c12570d3d31ef24b1a880fd23e26
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/builtin-assume-dereferenceable.c
    A clang/test/SemaCXX/builtin-assume-dereferenceable.cpp
    M llvm/include/llvm/IR/IRBuilder.h
    M llvm/lib/IR/IRBuilder.cpp

  Log Message:
  -----------
  [Clang] Add __builtin_assume_dereferenceable to encode deref assumption. (#121789)

This patch adds a new __builtin_assume_dereferenceable to encode
dereferenceability of a pointer using llvm.assume with an operand
bundle.

For now the builtin only accepts constant sizes, I am planning to drop
this restriction in a follow-up change.

This can be used to better optimize cases where a pointer is known to be
dereferenceable, e.g. unconditionally loading from p2 when vectorizing
the loop.

    int *get_ptr();

    void foo(int* src, int x) {
      int *p2 = get_ptr();
      __builtin_assume_aligned(p2, 4);
      __builtin_assume_dereferenceable(p2, 4000);
      for (unsigned I = 0; I != 1000; ++I) {
        int x = src[I];
        if (x == 0)
          x = p2[I];
	 src[I] = x;
      }
    }


PR: https://github.com/llvm/llvm-project/pull/121789


  Commit: e762a0e4ce32b0e3348cb9db58adcc4399473dba
      https://github.com/llvm/llvm-project/commit/e762a0e4ce32b0e3348cb9db58adcc4399473dba
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVBase.td

  Log Message:
  -----------
  [mlir][spirv] Drop support for the SPV_NV_mesh_shader extension (#127200)

The support is dropped in favour of newer `SPV_EXT_mesh_shader`
extension. The EXT patch already replaced conflicting enum values, and
the NV extensions is now fully removed to reduce a maintenance burden.


  Commit: afa3c10de70a73a77414e625c119f2d0b8411414
      https://github.com/llvm/llvm-project/commit/afa3c10de70a73a77414e625c119f2d0b8411414
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
    M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
    M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
    M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
    M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll

  Log Message:
  -----------
  Revert "[SLP]Improved reduction cost/codegen"

This reverts commit 2ad816648f2719e6c0da507a1a371f2cad4a3f1c to fix
bug/miscompiles, reported in
https://github.com/llvm/llvm-project/pull/118293#issuecomment-2658906033
and https://github.com/llvm/llvm-project/pull/118293#issuecomment-2659024785.


  Commit: 004a5fea236c5b890fb2aff1ab2ceb0f0ed82e74
      https://github.com/llvm/llvm-project/commit/004a5fea236c5b890fb2aff1ab2ceb0f0ed82e74
  Author: Devon Loehr <DKLoehr at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/SemaCXX/unique_object_duplication.h

  Log Message:
  -----------
  Enable -Wunique-object-duplication inside templated code (#125902)

Followup to #125526. This allows the unique object duplication warning
to fire on code inside of templates. Previously, it was disabled there
to prevent false positives if the template was never instantiated.

The patch has two parts: first, we move the check from
`FinalizeDeclaration` (which is only called during parsing) to
`CheckCompleteVariableDeclaration` (which is also called during template
instantiation). Since the code we're moving is fairly bulky, we abstract
it into a separate function for convenience.

Second, we disable the warning during template parsing, and add a check
later to see if the variable we're acting on on originated from a
template. If so, it has the potential to be duplicated just like an
inline variable.

## Testing
Unit tests for template have been added to the existing test suite. To
evaluate the patch on real code, I ran it on chromium and on clang
itself. As expected, in both cases we got strictly more warnings than
before. I manually looked through each new warning, and they all seemed
legitimate.

In chromium, we found [79 new warnings across 55
files](https://github.com/user-attachments/files/18676635/new_warnings_chromium.txt),
mostly in third-party code (for a total of 234 warnings across 137
files). In clang, we found [8 new warnings across 6
files](https://github.com/user-attachments/files/18676658/new_warnings_clang.txt),
for a total of 17 warnings across 11 files.


  Commit: 8a3d7cedb72add026c3f5bf7a82f0bf729b3f434
      https://github.com/llvm/llvm-project/commit/8a3d7cedb72add026c3f5bf7a82f0bf729b3f434
  Author: Sergio Afonso <safonsof at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    A flang/test/Lower/OpenMP/different_vars_lastprivate_barrier.f90

  Log Message:
  -----------
  [Flang][OpenMP] Per-sym checks to introduce barriers (#127074)

Whenever there is a `lastprivate` variable and another unrelated
variable sets the `mightHaveReadHostSym` flag during Flang lowering
privatization, this will result in the insertion of a barrier.

This patch modifies this behavior such that this barrier will not be
inserted unless the same symbol both sets the flag and has
`lastprivate`.


  Commit: 085e21b8326ef2327ee6082930e63d9e127eb06c
      https://github.com/llvm/llvm-project/commit/085e21b8326ef2327ee6082930e63d9e127eb06c
  Author: Stefan Gränitz <stefan.graenitz at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/tools/llvm-jitlink/CMakeLists.txt

  Log Message:
  -----------
  [llvm-jitlink] Explicit exports for builtin runtime functions in MinGW executables (#107375)

Use explicit exports to fix the symbol resolution part of
https://github.com/llvm/llvm-project/issues/98714 in MinGW


  Commit: 23cb0de7311bebb7bb1aecee3ad92c22de94f539
      https://github.com/llvm/llvm-project/commit/23cb0de7311bebb7bb1aecee3ad92c22de94f539
  Author: Shynur <one.last.kiss at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/include/clang/Basic/AttrDocs.td

  Log Message:
  -----------
  [clang][docs] Fix typo in AttrDocs.td (NFC) (#127183)


  Commit: 5767e4d4ca55cbd21dfbb13825993295146b6302
      https://github.com/llvm/llvm-project/commit/5767e4d4ca55cbd21dfbb13825993295146b6302
  Author: Tomás Longeri <tlongeri at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/MemRef/Transforms/IndependenceTransforms.cpp
    M mlir/lib/Dialect/MemRef/Transforms/MultiBuffer.cpp
    M mlir/lib/Dialect/Tensor/Transforms/BufferizableOpInterfaceImpl.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransferOpTransforms.cpp
    M mlir/lib/Dialect/Vector/Transforms/VectorTransforms.cpp

  Log Message:
  -----------
  [MLIR][NFC] Return MemRefType in memref.subview return type inference functions (#120024)

Avoids the need for cast, and matches the extra build functions, which
take a `MemRefType`


  Commit: 2077d405f0fa8482d71ccd2a1d228ffda2b0b496
      https://github.com/llvm/llvm-project/commit/2077d405f0fa8482d71ccd2a1d228ffda2b0b496
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    A llvm/test/Transforms/SLPVectorizer/X86/ctpop-non-power-of-2-reduction.ll

  Log Message:
  -----------
  [SLP]Add a test with non-power-of-2 reduction for ctpop, NFC

>From #127177


  Commit: 7ec60bf0166519317b5ae2505dd6ed4660e3ea39
      https://github.com/llvm/llvm-project/commit/7ec60bf0166519317b5ae2505dd6ed4660e3ea39
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ctpop-non-power-of-2-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
    M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
    M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
    M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
    M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll

  Log Message:
  -----------
  [SLP]Improved reduction cost/codegen

SLP vectorizer is able to combine several reductions from the list of
(potentially) reduced values with the different opcodes/values kind.
Currently, these reductions are handled independently of each other. But
instead the compiler can combine them into wide vector operations and
then perform only single reduction.
E.g, if the SLP vectorizer emits currently something like:
```
%r1 = reduce.add(<4 x i32> %v1)
%r2 = reduce.add(<4 x i32> %v2)
%r = add i32 %r1, %r2
```

it can be emitted as:
```
%v = add <4 x i32> %v1, %v2
%r = reduce.add(<4 x i32> %v)
```

It allows to improve the performance in some cases.

AVX512, -O3+LTO
Metric: size..text

Program                                                                                           size..text
                                                                                                  results     results0    diff
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test     4553.00     4615.00  1.4%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test   412708.00   416820.00  1.0%
        test-suite :: SingleSource/UnitTests/Vector/AVX512BWVL/Vector-AVX512BWVL-mask_set_bw.test    12901.00    12981.00  0.6%
                        test-suite :: MultiSource/Benchmarks/FreeBench/fourinarow/fourinarow.test    22717.00    22813.00  0.4%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test    39722.00    39850.00  0.3%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test    39725.00    39853.00  0.3%
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    15918.00    15967.00  0.3%
                                       test-suite :: External/SPEC/CFP2006/433.milc/433.milc.test   155491.00   155587.00  0.1%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test   227894.00   227942.00  0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1062188.00  1062364.00  0.0%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test   793672.00   793720.00  0.0%
                              test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   657371.00   657403.00  0.0%
                             test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   657371.00   657403.00  0.0%
                   test-suite :: External/SPEC/CINT2017speed/600.perlbench_s/600.perlbench_s.test  2074917.00  2074933.00  0.0%
                    test-suite :: External/SPEC/CINT2017rate/500.perlbench_r/500.perlbench_r.test  2074917.00  2074933.00  0.0%
                                     test-suite :: MultiSource/Applications/JM/lencod/lencod.test   855219.00   855203.00 -0.0%

Benchmarks/Shootout-C++ - same transformed reduction
Adobe-C++/loop_unroll - same transformed reductions, new vector code
AVX512BWVL/Vector-AVX512BWVL-mask_set_bw - same transformed reductions
FreeBench/fourinarow - same transformed reductions
MiBench/telecomm-gsm - same transformed reductions
execute/GCC-C-execute-builtin-bitops-1 - same transformed reductions
CFP2006/433.milc - better vector code, several x i64 reductions + trunc
to i32 gets trunced to x i32 reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions, extra 4 x vectorization
CINT2006/464.h264ref - same transformed reductions
CINT2017rate/525.x264_r
CINT2017speed/625.x264_s - same transformed reductions
CINT2017speed/600.perlbench_s
CINT2017rate/500.perlbench_r - transformed same reduction
JM/lencod - extra 4 x vectorization

RISC-V, SiFive-p670, -O3+LTO

Metric: size..text

Program                                                                                           size..text
                                                                                                  results    results0   diff
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    8990.00    9514.00   5.8%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test  588504.00  588488.00  -0.0%
                    test-suite :: MultiSource/Benchmarks/MiBench/consumer-lame/consumer-lame.test  147464.00  147440.00  -0.0%
              test-suite :: MultiSource/Benchmarks/MiBench/automotive-susan/automotive-susan.test   21496.00   21492.00  -0.0%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test  165420.00  165372.00  -0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  843928.00  843648.00  -0.0%
                                    test-suite :: External/SPEC/CINT2006/458.sjeng/458.sjeng.test  100712.00  100672.00  -0.0%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test   24384.00   24336.00  -0.2%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test   24380.00   24332.00  -0.2%
             test-suite :: SingleSource/UnitTests/Vectorizer/VPlanNativePath/outer-loop-vect.test   10348.00   10316.00  -0.3%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test  221304.00  220480.00  -0.4%
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test    3750.00    3736.00  -0.4%
                            test-suite :: SingleSource/Regression/C/Regression-C-DuffsDevice.test     678.00     370.00 -45.4%

execute/GCC-C-execute-builtin-bitops-1 - extra 4 x reductions, same
transformed reductions
CINT2006/464.h264ref - extra 4 x reductions, same transformed reductions
MiBench/consumer-lame - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/automotive-susan - same transformed reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions
CINT2006/458.sjeng - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/telecomm-gsm - same transformed reductions
Benchmarks/mediabench - same transformed reductions
Vectorizer/VPlanNativePath - same transformed reductions
Adobe-C++/loop_unroll - extra 4 x reductions, same transformed reductions
Benchmarks/Shootout-C++ - extra 4 x reductions, same transformed reductions
Regression/C/Regression-C-DuffsDevice - same transformed reductions

Reviewers: hiraditya, topperc, preames

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


  Commit: 053e03332162e3a0527f0ac76313dcf1b8c1ae8c
      https://github.com/llvm/llvm-project/commit/053e03332162e3a0527f0ac76313dcf1b8c1ae8c
  Author: Mikhail R. Gadelha <mikhail at igalia.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/CodeGen/BasicTTIImpl.h
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp

  Log Message:
  -----------
  [RISCV] Generalize cost model for vp_fneg. NFC. (#126915)

Move the cost model for vp_fneg from the riscv-specific implementation to the generic TTI layer.
This ensures consistent handling of vp_fneg across targets


  Commit: e52ad499ff00480175b630c2a941a10422d40a67
      https://github.com/llvm/llvm-project/commit/e52ad499ff00480175b630c2a941a10422d40a67
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libcxx/include/__config

  Log Message:
  -----------
  [libc++][NFC] Add reminder to remove _LIBCPP_HAS_EXPLICIT_THIS_PARAMETER macro (#127070)

`__cpp_explicit_this_parameter` has been set in LLVM20
https://github.com/llvm/llvm-project/pull/107451 /
https://github.com/llvm/llvm-project/commit/72e58e00c27c7f4dd9502c719ddd13dcfef33e85

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: 5870c190350f499284af455d339cc2f844f9fbbf
      https://github.com/llvm/llvm-project/commit/5870c190350f499284af455d339cc2f844f9fbbf
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
    M llvm/lib/Target/NVPTX/NVPTXAsmPrinter.h
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.cpp
    M llvm/lib/Target/NVPTX/NVPTXRegisterInfo.h

  Log Message:
  -----------
  Revert "Reland "[NVPTX] Cleanup/Refactoring in NVPTX AsmPrinter and RegisterInfo (NFC)" (#127089)"

This reverts commit ecdfa36ecaea7615b244f4cac26a4a023d30a9c1.

That introduced a breaking change in printer.

E.g. llvm/test/CodeGen/NVPTX/surf-read.ll started to output `.param .samplerref foo_param_0,` instead of `.param .surfref foo_param_0,`.

Looks like we don't have ptxas llvm build bot to catch this sort of NFC.


  Commit: ee76861da9dc2678f9982bf019a9ebcd7fdcede4
      https://github.com/llvm/llvm-project/commit/ee76861da9dc2678f9982bf019a9ebcd7fdcede4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/test/Transforms/InstCombine/X86/x86-vector-shifts.ll

  Log Message:
  -----------
  [InstCombine][X86] Add SSE shift test coverage for #125228

Pulled out of #125935 to show diff


  Commit: 922f339c4ef3631f66dc4b8caa4c356103dbf69d
      https://github.com/llvm/llvm-project/commit/922f339c4ef3631f66dc4b8caa4c356103dbf69d
  Author: Haojian Wu <hokein.wu at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/Parse/ParseExpr.cpp
    M clang/test/Parser/recovery.cpp

  Log Message:
  -----------
  Diagnose the code with trailing comma in the function call. (#125232)

This patch fixes a regression caused by
https://github.com/llvm/llvm-project/pull/114684 where clang accepts
trailing commas for function calls.

Fixes #125225


  Commit: d595d5a770d93c9564268fc631d85f3a6ce1f505
      https://github.com/llvm/llvm-project/commit/d595d5a770d93c9564268fc631d85f3a6ce1f505
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/release-binaries: Fix macos-14 build (#127157)

This was broken when pgo was enabled by
0572580dd040a81dc69b798e202550d51d17204a.


  Commit: 035bc529f7de71aac6161f8074725acdb5a11254
      https://github.com/llvm/llvm-project/commit/035bc529f7de71aac6161f8074725acdb5a11254
  Author: Javed Absar <106147771+javedabsar1 at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/SwapExtractSliceWithFillPatterns.cpp

  Log Message:
  -----------
  [nfc][mlir][linalg] Make example easier to read. (#127213)


  Commit: 1435c8ed95fa10a55c2f924984141e427b89c330
      https://github.com/llvm/llvm-project/commit/1435c8ed95fa10a55c2f924984141e427b89c330
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/openmp-offload.c
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M offload/test/offloading/bug51781.c

  Log Message:
  -----------
  Reapply "[LinkerWrapper] Clean up options after proper forwarding" (#126495)

Summary:
The test failed because it no longer passed Rpass by default without
LTO. I think that's desirable as it matches the standard behavior.
This reverts commit 6fd99de31864a5ef84ae8613b3a9034e05293461.


  Commit: 3e94fc0682952f6f996809f83e9e67f6d5e1989e
      https://github.com/llvm/llvm-project/commit/3e94fc0682952f6f996809f83e9e67f6d5e1989e
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaType.cpp
    A clang/test/Sema/pre-c2x-restrict-qualifier.c
    A clang/test/Sema/restrict-qualifier.c
    M clang/test/Sema/types.c

  Log Message:
  -----------
  [Clang] allow restrict qualifier for array types with pointer types as element types (#120896)

Fixes #92847

---

> Types other than pointer types whose referenced type is an object type
and (possibly multi-dimensional) array types with such pointer types as
element type shall not be restrict-qualified.


  Commit: 708dc651ba8f223109879278f3dc166c7d122e2a
      https://github.com/llvm/llvm-project/commit/708dc651ba8f223109879278f3dc166c7d122e2a
  Author: Alexander Peskov <apeskov at nvidia.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    M llvm/test/CodeGen/NVPTX/vaargs.ll

  Log Message:
  -----------
  [NVPTX] Fix vaarg store alignment (#127067)

There is an issue with different alignment applied to store and load of
vaargs in NVPTX backend.
Current `CodeGen/NVPTX/vaargs.ll` demonstrates this discrepancy. Store
occurs with offsets `0,4,12,20`, but load with `0,8,16,24`.

This patch attempts to unify the alignment approach for callee and
caller.


  Commit: b41b86a907f653f79bab10d4c80b3a41d146c71b
      https://github.com/llvm/llvm-project/commit/b41b86a907f653f79bab10d4c80b3a41d146c71b
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    A clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
    A clang/include/clang/Lex/LexHLSLRootSignature.h
    M clang/lib/Lex/CMakeLists.txt
    A clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/unittests/Lex/CMakeLists.txt
    A clang/unittests/Lex/LexHLSLRootSignatureTest.cpp

  Log Message:
  -----------
  [HLSL][RootSignature] Implement Lexing of DescriptorTables (#122981)

For the sake of scope, we will let the lexing of floating literals be
deferred until needed for Static Samplers. Other than that this pr
should allow us to simply define new enumerations/keywords in
`RootSignatureTokenKinds.def` for when they are used in the parser. We
could have defined all of these keywords here, but for the sake of
correctness in review we will let them be split up.

- Define `RootSignatureLexer` and provide a public `LexToken` method for
external use
- Define the file `RootSignatureTokenKinds` to define required tokens
and allow for future custom keywords/enums
- Implement the internal methods required to parse the different types
of tokens (integers, flag enums, puncuators...)
- Add test harness for unit testing and the respective unit tests for
lexing the tokens

Resolves #126563

---------

Co-authored-by: Chris B <beanz at abolishcrlf.org>


  Commit: 4d2d0afceeb732a5238c2167ab7a6b88cc66d976
      https://github.com/llvm/llvm-project/commit/4d2d0afceeb732a5238c2167ab7a6b88cc66d976
  Author: Sarah Spall <sarahspall at microsoft.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    A clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    A clang/test/SemaHLSL/Language/AggregateSplatCast-errors.hlsl
    A clang/test/SemaHLSL/Language/AggregateSplatCasts.hlsl
    M clang/test/SemaHLSL/Language/ElementwiseCast-errors.hlsl

  Log Message:
  -----------
  [HLSL] Implement HLSL Aggregate splatting (#118992)

Implement HLSL Aggregate Splat casting that handles splatting for arrays
and structs, and vectors if splatting from a vec1.
Closes #100609 and Closes #100619 
Depends on #118842


  Commit: fbd92d098500775501ba917f21e094f4d714f562
      https://github.com/llvm/llvm-project/commit/fbd92d098500775501ba917f21e094f4d714f562
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libcxx/include/version
    M libcxx/test/std/language.support/support.limits/support.limits.general/format.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/ostream.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/print.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py

  Log Message:
  -----------
  [libc++][format] Disables the FTM on older MacOS versions. (#126547)

On older MacOS versions where `std::to_chars` for floating-point types
is not available the format library can't be used. Due to some issue
with the availability macro used to disable format on MacOS the issue
triggers regardless of the type being formatted.

The print library has the same issue.

Fixes: #125353


  Commit: bedd3926f9eabf3f3965e0a817559c13073fc783
      https://github.com/llvm/llvm-project/commit/bedd3926f9eabf3f3965e0a817559c13073fc783
  Author: Sam Elliott <quic_aelliott at quicinc.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/MC/MCParser/MCTargetAsmParser.h
    M llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp

  Log Message:
  -----------
  [AsmParser][NFCI] Restructure DiagnosticPredicate (#126653)

This restructures the DiagnosticPredicate type to more closely match how
neatly ParseStatus is defined. The DiagnosticPredicateTy enum is moved
inside the class, and the boolean conversions are made explicit.

The main user of this code is AArch64, which I have also updated to use
the new structure of the code.


  Commit: a8aa2566b97ff47bf52d963abc4dd5b16d3e5ba9
      https://github.com/llvm/llvm-project/commit/a8aa2566b97ff47bf52d963abc4dd5b16d3e5ba9
  Author: schittir <sindhu.chittireddy at intel.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/Format/UnwrappedLineFormatter.cpp

  Log Message:
  -----------
  Revert "[NFC] Avoid potential null dereference." (#127228)

Reverts llvm/llvm-project#126872
The commit, though harmless, is unnecessary.


  Commit: 04bf00c7c4db7ab7c9d60cb0822400938afb4d52
      https://github.com/llvm/llvm-project/commit/04bf00c7c4db7ab7c9d60cb0822400938afb4d52
  Author: Mark de Wever <koraq at xs4all.nl>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libcxx/include/__format/formatter.h

  Log Message:
  -----------
  [NFC][libc++][format] Fixes comment typos.


  Commit: ec17161c6e87bb061daee4603ed21ab988f9d03d
      https://github.com/llvm/llvm-project/commit/ec17161c6e87bb061daee4603ed21ab988f9d03d
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Lex/BUILD.gn
    M llvm/utils/gn/secondary/clang/unittests/Lex/BUILD.gn

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


  Commit: 004afcbfb4abb67a1871f180dfbd026379027dc5
      https://github.com/llvm/llvm-project/commit/004afcbfb4abb67a1871f180dfbd026379027dc5
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M flang/module/__cuda_device.f90
    M flang/module/cudadevice.f90

  Log Message:
  -----------
  [flang][cuda] Set cudadevice interfaces as public by default (#127229)

Remove the PRIVATE statement from cudadevice as it hides any interfaces
from the used __cuda_device module.


  Commit: 40029800e7f9f0738340cc013221bd76060a38a0
      https://github.com/llvm/llvm-project/commit/40029800e7f9f0738340cc013221bd76060a38a0
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ctpop-non-power-of-2-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
    M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
    M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
    M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
    M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll

  Log Message:
  -----------
  Revert "[SLP]Improved reduction cost/codegen"

This reverts commit 7ec60bf0166519317b5ae2505dd6ed4660e3ea39 to fix
a bug reported in https://github.com/llvm/llvm-project/issues/127220.


  Commit: 4b3c6443a12e4871692429329a093af93222cb57
      https://github.com/llvm/llvm-project/commit/4b3c6443a12e4871692429329a093af93222cb57
  Author: Mikhail Goncharov <goncharov.mikhail at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

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

  Log Message:
  -----------
  [bazel] port b41b86a907f653f79bab10d4c80b3a41d146c71b


  Commit: 1042bd79722a08b989e034c644c35f3a4556d83c
      https://github.com/llvm/llvm-project/commit/1042bd79722a08b989e034c644c35f3a4556d83c
  Author: Georgiy Samoylov <g.samoylov at syntacore.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/tools/lldb-server/gdbremote_testcase.py

  Log Message:
  -----------
  [lldb] Fix broken pipe error (#127100)

During LLDB testing on slow machines with the remote-linux platform all
tests from llgs category fail with python exception `BrokenPipeError`.
The main reason of these failures is slow start of lldb-server in
gdbserver mode. Due to this desired gdbserver socket does not have time
to open by the time the Python script tries to establish a connection.

List of failed tests:

```
TestAppleSimulatorOSType.py
TestGdbRemoteAttach.py
TestGdbRemoteAuxvSupport.py
TestGdbRemoteCompletion.py
TestGdbRemoteExitCode.py
TestGdbRemoteExpeditedRegisters.py
TestGdbRemoteHostInfo.py
TestGdbRemoteKill.py
TestGdbRemoteLaunch.py
TestGdbRemoteModuleInfo.py
TestGdbRemotePlatformFile.py
TestGdbRemoteProcessInfo.py
TestGdbRemoteRegisterState.py
TestGdbRemoteSaveCore.py
TestGdbRemoteSingleStep.py
TestGdbRemoteThreadsInStopReply.py
TestGdbRemote_qThreadStopInfo.py
TestGdbRemote_vCont.py
TestLldbGdbServer.py
TestNonStop.py
TestPtyServer.py
TestGdbRemoteAttachWait.py
TestGdbRemoteConnection.py
TestStubSetSID.py
TestGdbRemoteAbort.py
TestGdbRemoteSegFault.py
TestGdbRemoteLibrariesSvr4Support.py
TestGdbRemoteMemoryAllocation.py
TestGdbRemoteMemoryTagging.py
TestGdbRemoteGPacket.py
TestGdbRemoteTargetXmlPacket.py
TestGdbRemote_QPassSignals.py
TestGdbRemoteThreadName.py
TestPartialResume.py
TestSignal.py
```

This patch implements an additional check for the opened socket on
lldb-server side and fixes this error.


  Commit: 8730fd7c64561f0dbfbe27c3d51a84b03b75ab9a
      https://github.com/llvm/llvm-project/commit/8730fd7c64561f0dbfbe27c3d51a84b03b75ab9a
  Author: Jens Reidel <adrian at travitia.xyz>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h

  Log Message:
  -----------
  [compiler-rt][Mips] Align definition of __sanitizer_sigaction with musl (#124494)

The definition of __sanitizer_sigaction for MIPS matches the one in
glibc [1]. musl however uses a single definition of sigaction for all
architectures [2] that is more similar to the other architectures
supported by glibc. Fix the conditional logic so that
__sanitizer_sigaction matches the musl definition on MIPS.

[1]:
https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/mips/bits/sigaction.h;h=f7e3ad88abbf3c497aaed44247bc1085efebe462;hb=dc650eb715df0a272ce43dfb55a209d5b018cc04
[2]: https://git.musl-libc.org/cgit/musl/tree/include/signal.h#n169

---------

Signed-off-by: Jens Reidel <adrian at travitia.xyz>


  Commit: 5742dc44e2fb571952990b4226b10476e15ac479
      https://github.com/llvm/llvm-project/commit/5742dc44e2fb571952990b4226b10476e15ac479
  Author: Finn Plummer <50529406+inbelic at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILShaderFlags.cpp
    A llvm/test/CodeGen/DirectX/ShaderFlags/wave-ops.ll

  Log Message:
  -----------
  [DirectX][ShaderFlags] Add analysis for `WaveOps` flag (#118140)

- Check each call instruction for a `WaveOp` intrinsic and set the
`WaveOps` flag if this is true for any intrinsic, Done in
DXILShaderFlags.cpp

Resolves #114565


  Commit: 1199bbb396fb9554401ad5ae1816b6648bab76a9
      https://github.com/llvm/llvm-project/commit/1199bbb396fb9554401ad5ae1816b6648bab76a9
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    A llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis-forked-pointers.ll

  Log Message:
  -----------
  [LAA] Add forked pointers tests with dep checks and runtime checks (NFC)

Add missing test coverage where generating runtime checks is tried again
after dependence analysis.


  Commit: d2dd8021fd9b9efe08e512021e732fcb02f1a3ef
      https://github.com/llvm/llvm-project/commit/d2dd8021fd9b9efe08e512021e732fcb02f1a3ef
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/utils/hdrgen/header.py
    A libc/utils/hdrgen/tests/expected_output/subdir/test.h
    M libc/utils/hdrgen/tests/expected_output/test_header.h
    A libc/utils/hdrgen/tests/input/subdir/test.h.def
    A libc/utils/hdrgen/tests/input/subdir/test.yaml
    M libc/utils/hdrgen/tests/test_integration.py
    M libc/utils/hdrgen/type.py

  Log Message:
  -----------
  [libc] Make hdrgen emit correct relative paths for llvm-libc-types (#127150)

This makes hdrgen emit `#include "..."` lines using the correct
relative path (number of `../` steps, if any) for the containing
header, and includes this in the sorted block of `#include` lines
also used for the macro headers.


  Commit: 3b18d47ecbaba4e519ebf0d1bc134a404a56a9da
      https://github.com/llvm/llvm-project/commit/3b18d47ecbaba4e519ebf0d1bc134a404a56a9da
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/AArch64/InstructionsState-is-invalid-0.ll
    M llvm/test/Transforms/SLPVectorizer/AArch64/reduce-fadd.ll
    M llvm/test/Transforms/SLPVectorizer/AMDGPU/reduction.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/RISCV/reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/bool-mask.ll
    M llvm/test/Transforms/SLPVectorizer/X86/ctpop-non-power-of-2-reduction.ll
    M llvm/test/Transforms/SLPVectorizer/X86/external-used-across-reductions.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extract-scalar-from-undef.ll
    M llvm/test/Transforms/SLPVectorizer/X86/extractelemets-extended-by-poison.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-list.ll
    M llvm/test/Transforms/SLPVectorizer/X86/horizontal-minmax.ll
    M llvm/test/Transforms/SLPVectorizer/X86/malformed_phis.ll
    M llvm/test/Transforms/SLPVectorizer/X86/multi-tracked-reduced-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/phi-node-reshuffled-part.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-val-extracted-and-externally-used.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduced-value-vectorized-later.ll
    M llvm/test/Transforms/SLPVectorizer/X86/reduction-extracted-value.ll
    M llvm/test/Transforms/SLPVectorizer/X86/revectorized_rdx_crash.ll
    M llvm/test/Transforms/SLPVectorizer/X86/undef_vect.ll
    M llvm/test/Transforms/SLPVectorizer/partial-register-extract.ll
    M llvm/test/Transforms/SLPVectorizer/reduction-modified-values.ll
    M llvm/test/Transforms/SLPVectorizer/scalarization-overhead.ll

  Log Message:
  -----------
  [SLP]Improved reduction cost/codegen

SLP vectorizer is able to combine several reductions from the list of
(potentially) reduced values with the different opcodes/values kind.
Currently, these reductions are handled independently of each other. But
instead the compiler can combine them into wide vector operations and
then perform only single reduction.
E.g, if the SLP vectorizer emits currently something like:
```
%r1 = reduce.add(<4 x i32> %v1)
%r2 = reduce.add(<4 x i32> %v2)
%r = add i32 %r1, %r2
```

it can be emitted as:
```
%v = add <4 x i32> %v1, %v2
%r = reduce.add(<4 x i32> %v)
```

It allows to improve the performance in some cases.

AVX512, -O3+LTO
Metric: size..text

Program                                                                                           size..text
                                                                                                  results     results0    diff
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test     4553.00     4615.00  1.4%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test   412708.00   416820.00  1.0%
        test-suite :: SingleSource/UnitTests/Vector/AVX512BWVL/Vector-AVX512BWVL-mask_set_bw.test    12901.00    12981.00  0.6%
                        test-suite :: MultiSource/Benchmarks/FreeBench/fourinarow/fourinarow.test    22717.00    22813.00  0.4%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test    39722.00    39850.00  0.3%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test    39725.00    39853.00  0.3%
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    15918.00    15967.00  0.3%
                                       test-suite :: External/SPEC/CFP2006/433.milc/433.milc.test   155491.00   155587.00  0.1%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test   227894.00   227942.00  0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  1062188.00  1062364.00  0.0%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test   793672.00   793720.00  0.0%
                              test-suite :: External/SPEC/CINT2017rate/525.x264_r/525.x264_r.test   657371.00   657403.00  0.0%
                             test-suite :: External/SPEC/CINT2017speed/625.x264_s/625.x264_s.test   657371.00   657403.00  0.0%
                   test-suite :: External/SPEC/CINT2017speed/600.perlbench_s/600.perlbench_s.test  2074917.00  2074933.00  0.0%
                    test-suite :: External/SPEC/CINT2017rate/500.perlbench_r/500.perlbench_r.test  2074917.00  2074933.00  0.0%
                                     test-suite :: MultiSource/Applications/JM/lencod/lencod.test   855219.00   855203.00 -0.0%

Benchmarks/Shootout-C++ - same transformed reduction
Adobe-C++/loop_unroll - same transformed reductions, new vector code
AVX512BWVL/Vector-AVX512BWVL-mask_set_bw - same transformed reductions
FreeBench/fourinarow - same transformed reductions
MiBench/telecomm-gsm - same transformed reductions
execute/GCC-C-execute-builtin-bitops-1 - same transformed reductions
CFP2006/433.milc - better vector code, several x i64 reductions + trunc
to i32 gets trunced to x i32 reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions, extra 4 x vectorization
CINT2006/464.h264ref - same transformed reductions
CINT2017rate/525.x264_r
CINT2017speed/625.x264_s - same transformed reductions
CINT2017speed/600.perlbench_s
CINT2017rate/500.perlbench_r - transformed same reduction
JM/lencod - extra 4 x vectorization

RISC-V, SiFive-p670, -O3+LTO

Metric: size..text

Program                                                                                           size..text
                                                                                                  results    results0   diff
test-suite :: SingleSource/Regression/C/gcc-c-torture/execute/GCC-C-execute-builtin-bitops-1.test    8990.00    9514.00   5.8%
                                test-suite :: External/SPEC/CINT2006/464.h264ref/464.h264ref.test  588504.00  588488.00  -0.0%
                    test-suite :: MultiSource/Benchmarks/MiBench/consumer-lame/consumer-lame.test  147464.00  147440.00  -0.0%
              test-suite :: MultiSource/Benchmarks/MiBench/automotive-susan/automotive-susan.test   21496.00   21492.00  -0.0%
                                     test-suite :: MicroBenchmarks/ImageProcessing/Blur/blur.test  165420.00  165372.00  -0.0%
                                    test-suite :: MultiSource/Benchmarks/7zip/7zip-benchmark.test  843928.00  843648.00  -0.0%
                                    test-suite :: External/SPEC/CINT2006/458.sjeng/458.sjeng.test  100712.00  100672.00  -0.0%
                      test-suite :: MultiSource/Benchmarks/MiBench/telecomm-gsm/telecomm-gsm.test   24384.00   24336.00  -0.2%
                             test-suite :: MultiSource/Benchmarks/mediabench/gsm/toast/toast.test   24380.00   24332.00  -0.2%
             test-suite :: SingleSource/UnitTests/Vectorizer/VPlanNativePath/outer-loop-vect.test   10348.00   10316.00  -0.3%
                                 test-suite :: SingleSource/Benchmarks/Adobe-C++/loop_unroll.test  221304.00  220480.00  -0.4%
                      test-suite :: SingleSource/Benchmarks/Shootout-C++/Shootout-C++-matrix.test    3750.00    3736.00  -0.4%
                            test-suite :: SingleSource/Regression/C/Regression-C-DuffsDevice.test     678.00     370.00 -45.4%

execute/GCC-C-execute-builtin-bitops-1 - extra 4 x reductions, same
transformed reductions
CINT2006/464.h264ref - extra 4 x reductions, same transformed reductions
MiBench/consumer-lame - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/automotive-susan - same transformed reductions
ImageProcessing/Blur - same transformed reductions
Benchmarks/7zip - same transformed reductions
CINT2006/458.sjeng - 2 4 x i1 merged to 8 x i1 reductions (bitcast + ctpop)
MiBench/telecomm-gsm - same transformed reductions
Benchmarks/mediabench - same transformed reductions
Vectorizer/VPlanNativePath - same transformed reductions
Adobe-C++/loop_unroll - extra 4 x reductions, same transformed reductions
Benchmarks/Shootout-C++ - extra 4 x reductions, same transformed reductions
Regression/C/Regression-C-DuffsDevice - same transformed reductions

Reviewers: hiraditya, topperc, preames

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


  Commit: 044b52832a779ac49fec9472e9e374c1b4609450
      https://github.com/llvm/llvm-project/commit/044b52832a779ac49fec9472e9e374c1b4609450
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp
    M llvm/test/Analysis/LoopAccessAnalysis/retry-runtime-checks-after-dependence-analysis.ll

  Log Message:
  -----------
  [LAA] Perform checks for no-wrap separately from getPtrStride. (#126971)

Reorganize the code in isNoWrap to perform the no-wrap checks without
relying on getPtrStride directly. getPtrStride now uses isNoWrap.

The new structure allows deriving no-wrap in more cases in LAA, because
there are some cases where getPtrStride bails out early because it
cannot return a constant stride, but we can still prove no-wrap for the
pointer.

An example are AddRecs with non-ConstantInt strides with inbound GEPs,
in the improved test cases.

This enables vectorization with runtime checks in a few more cases.

PR: https://github.com/llvm/llvm-project/pull/126971


  Commit: db1e15a1da20ff15c9bac8e6d731ec11871431bb
      https://github.com/llvm/llvm-project/commit/db1e15a1da20ff15c9bac8e6d731ec11871431bb
  Author: Manupa Karunaratne <manupa.karunaratne at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Vector/Transforms/LowerVectorMultiReduction.cpp
    M mlir/test/Dialect/Vector/vector-multi-reduction-pass-lowering.mlir

  Log Message:
  -----------
  [MLIR][Vector] Add support for inner-parallel masked multi-reductions (#126722)

This commit adds support to lower inner-parallel flavor of masked vector
multi-reductions.


  Commit: 0931a2a5a26f4926fc74087017a8a6ba3ab874df
      https://github.com/llvm/llvm-project/commit/0931a2a5a26f4926fc74087017a8a6ba3ab874df
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/SandboxIR/Context.h
    M llvm/lib/SandboxIR/Context.cpp
    M llvm/lib/SandboxIR/User.cpp
    M llvm/lib/SandboxIR/Value.cpp
    M llvm/unittests/SandboxIR/SandboxIRTest.cpp

  Log Message:
  -----------
  [SandboxIR] SetUse callback (#126985)

This patch implements a callback mechanism similar to the existing ones,
but for getting notified whenever a Use edge gets updated. This is going
to be used in a follow up patch by the Dependency Graph.


  Commit: 9ad83f7fcf95f14d410bd2a301c8851f48dd975d
      https://github.com/llvm/llvm-project/commit/9ad83f7fcf95f14d410bd2a301c8851f48dd975d
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp

  Log Message:
  -----------
  [LAA] Get pointer address space from AddRec (NFC).

Retrieve the address space from the pointer AddRec instead of the IR
pointer value, to prepare to make the IR pointer value optional.


  Commit: 48c92dda0086d0ec2e8c1032ec53edec743c85f3
      https://github.com/llvm/llvm-project/commit/48c92dda0086d0ec2e8c1032ec53edec743c85f3
  Author: vporpo <vporpodas at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.h
    M llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
    M llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp

  Log Message:
  -----------
  [SandboxVec][DAG] Update DAG whenever a Use is set (#127247)

This patch implements automatic DAG updating whenever a Use is set. This
maintains the UnscheduledSuccs counter that the scheduler relies on.


  Commit: 0301bf977aa9842003462a2a7a3c3ce56abfaae0
      https://github.com/llvm/llvm-project/commit/0301bf977aa9842003462a2a7a3c3ce56abfaae0
  Author: Benoit Jacob <jacob.benoit.1 at gmail.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/lib/Dialect/Math/Transforms/ExpandPatterns.cpp
    M mlir/test/Dialect/Math/expand-math.mlir

  Log Message:
  -----------
  [MLIR] Lower `math.powf(x, 3.0)` to `x * x * x`. (#127256)

`math.powf(x, y)` never really supported negative values of `x`, but
that was unclear (happened to work for some values of `y`) until
https://github.com/llvm/llvm-project/pull/126338 was merged yesterday
and lowered it to the usual `exp(y * log(x))` outside of a few special
exponent values, such as y == 2.0` lowering to `x * x`.

It turns out that code in the wild has been relying on `math.powf(x, y)`
with negative `x` for some integral values of `y` for which a lowering
to muls was intended: https://github.com/iree-org/iree/issues/19996

This PR adds such a lowering for `y == 3.0`. It "fixes" such cases, and
it is a more efficient lowering anyway.

There needs to be a wider project to stop altogether using `powf` with
negative `x`, use `math.fpowi` for that.

Signed-off-by: Benoit Jacob <jacob.benoit.1 at gmail.com>


  Commit: 778001514f4f2954be88fdc1e143c180165dadc4
      https://github.com/llvm/llvm-project/commit/778001514f4f2954be88fdc1e143c180165dadc4
  Author: Kazu Hirata <kazu at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Analysis/LoopAccessAnalysis.cpp

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

This patch fixes:

  llvm/lib/Analysis/LoopAccessAnalysis.cpp:1530:9: error: unused
  variable 'Ty' [-Werror,-Wunused-variable]


  Commit: aa500a79fcb4caf8fdb782808d2ee3c58fe9a2b6
      https://github.com/llvm/llvm-project/commit/aa500a79fcb4caf8fdb782808d2ee3c58fe9a2b6
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/utils/hdrgen/function.py
    M libc/utils/hdrgen/header.py
    M libc/utils/hdrgen/tests/expected_output/test_header.h
    M libc/utils/hdrgen/tests/input/subdir/test.yaml
    M libc/utils/hdrgen/tests/input/test_small.h.def
    M libc/utils/hdrgen/type.py

  Log Message:
  -----------
  [libc] Make hdrgen deduce header type lists from function signatures (#127251)

With this, the `types` list in YAML files should only be used to
list the types that a standard specifies should be in that header
per se.  All the types referenced in function signatures will be
collected automatically.


  Commit: 947695a37f1f95505826f170598e1ec126914ba1
      https://github.com/llvm/llvm-project/commit/947695a37f1f95505826f170598e1ec126914ba1
  Author: Justin Bogner <mail at justinbogner.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/test/CodeGenHLSL/basic-target.c

  Log Message:
  -----------
  [HLSL] Update target test to use `-cc1` rather than the clang driver (#127262)

This test was unnecessarily invoking `dxv` if it was in your path since
it used the driver rather than the `-cc1` command.


  Commit: 344058d490997e7dbef0f012ec117e1d523cbdb9
      https://github.com/llvm/llvm-project/commit/344058d490997e7dbef0f012ec117e1d523cbdb9
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    R llvm/utils/count_running_jobs.py

  Log Message:
  -----------
  [Github] Delete count_running_jobs.py script

This patch deletes the count_running_jobs.py script. Its functionality has
been mostly subsumed by the metrics container running in the new premerge
infra. This script also has not been used in a while.


  Commit: 18f60bc33530c2b1785bffcbd7146f65ccacee51
      https://github.com/llvm/llvm-project/commit/18f60bc33530c2b1785bffcbd7146f65ccacee51
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp

  Log Message:
  -----------
  [WebKit Checkers] Treat offsetof as a trivial expression. (#126996)


  Commit: da6ac9564bf31e8b063b73e9b2fb7fc67edd5d55
      https://github.com/llvm/llvm-project/commit/da6ac9564bf31e8b063b73e9b2fb7fc67edd5d55
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp

  Log Message:
  -----------
  [webkit.UncountedLambdaCapturesChecker] Support [[clang::noescape]] on a constructor (#126869)

Added the support for annotating a constructor's argument with
[[clang::noescape]].

We explicitly ignore CXXConstructExpr which is visited as a part of
CallExpr so that construction of closures like Function,
CompletionHandler, etc... don't result in a warning.


  Commit: dcfc30ca6b19bd8ee9ab9788cb4923a848af3f20
      https://github.com/llvm/llvm-project/commit/dcfc30ca6b19bd8ee9ab9788cb4923a848af3f20
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/utils/hdrgen/header.py

  Log Message:
  -----------
  [libc] Fix hdrgen to be compatible with Python 3.8 (#127265)


  Commit: c662103c6ead3bbfad9bc24d7770552163dbb92b
      https://github.com/llvm/llvm-project/commit/c662103c6ead3bbfad9bc24d7770552163dbb92b
  Author: Tyler Nowicki <tyler.nowicki at amd.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/LazyCallGraph.h
    M llvm/lib/Analysis/LazyCallGraph.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp

  Log Message:
  -----------
  [Coroutines][LazyCallGraph] addSplitRefRecursiveFunctions allows spurious ref edges between new functions. (#116285)

The addSplitRefRecursiveFunctions LazyCallGraph helper should not
require a reference between every new function. Spurious ref edges
between the new functions are allowed and the new function are
considered to be a RefSCC. This change clarifies that this is the case
in the method's description and its DEBUG mode verifier.


  Commit: 303f2415448ac79fa85abd22ad7108fbb9dab3d3
      https://github.com/llvm/llvm-project/commit/303f2415448ac79fa85abd22ad7108fbb9dab3d3
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    R libc/include/ctype.h.def
    M libc/include/ctype.yaml
    M libc/utils/hdrgen/header.py
    M libc/utils/hdrgen/main.py
    M libc/utils/hdrgen/tests/expected_output/subdir/test.h
    R libc/utils/hdrgen/tests/input/subdir/test.h.def
    M libc/utils/hdrgen/tests/input/subdir/test.yaml
    M libc/utils/hdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] Make template_header optional for hdrgen (#127259)

This allows a YAML file to omit `template_header` and have no
`.h.def` file.  A default template is generated based purely on
the information in the YAML file.  This should handle most of the
cases.  For now, it's exercised (aside from the hdrgen tests)
only for one of the simplest cases: <ctype.h>.

This includes making the parser notice the "standards" YAML field
at the top (header) level, not just in "functions" lists.  The
standards listed for the header overall and for the individual
functions both feed into how a fully-generated header describes
itself in comments.  To go with this, files using the default
generated template must stick to a new uniform set of spellings
for the "standards" lists.  As more custom template files are
retired, the corresponding YAML files will need all their
standards lists normalized.  For now, ctype.yaml is updated
with correct attribution for the POSIX `_l` extensions.


  Commit: 496fec53846a98ba58db95d98f45db221bbdd510
      https://github.com/llvm/llvm-project/commit/496fec53846a98ba58db95d98f45db221bbdd510
  Author: Teresa Johnson <tejohnson at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/test/ThinLTO/X86/memprof-recursive.ll
    M llvm/test/Transforms/MemProfContextDisambiguation/recursive.ll

  Log Message:
  -----------
  [MemProf] Fix recursion tests (#127270)

The implicit-check-not had a typo which meant it didn't fail as expected
when I tested better recursion handling. Fix that here (no change for
current head).


  Commit: 2f911ad2e75da87859706e99dd4fb45a632032b7
      https://github.com/llvm/llvm-project/commit/2f911ad2e75da87859706e99dd4fb45a632032b7
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M mlir/test/Dialect/Vector/vector-transfer-permutation-lowering.mlir

  Log Message:
  -----------
  [mlir][vector] Update tests for xfer permutation lowering (2/N) (#123237)

Unifies test function names so that it's easier to identify what
different cases are. Also improves consistency. The following naming
scheme has been adopted:
* `@xfer_{read|write}_{map_type}_{masked|with_mask|}_{out_of_bounds}_{scalable}`

Also updated some comments to better document the patterns that are
being exercised.


  Commit: 9106ee25e9581cccc73836e87ce9b74bbac5ff19
      https://github.com/llvm/llvm-project/commit/9106ee25e9581cccc73836e87ce9b74bbac5ff19
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-loop-init-opaque-value.cpp

  Log Message:
  -----------
  [alpha.webkit.UncountedCallArgsChecker] Allow ArrayInitLoopExpr and OpaqueValueExpr in trivial expressions (#127182)

Allow VisitArrayInitLoopExpr, VisitArrayInitIndexExpr, and
VisitOpaqueValueExpr in trivial functions and statements.


  Commit: 50b1763d9dcfc5dfae6a42a0edf9f139a1e76a6d
      https://github.com/llvm/llvm-project/commit/50b1763d9dcfc5dfae6a42a0edf9f139a1e76a6d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M .github/workflows/premerge.yaml

  Log Message:
  -----------
  [Github][CI] Fix Typo in MacOS Job Name

This patch changes the name of the MacOS premerge job from
permerge-checks-macos to (the presumably correct) premerge-checks-macos.


  Commit: d9b55b72103f7d2b35cdc7a6311f217016308d9c
      https://github.com/llvm/llvm-project/commit/d9b55b72103f7d2b35cdc7a6311f217016308d9c
  Author: Henrich Lauko <xlauko at mail.muni.cz>
  Date:   2025-02-15 (Sat, 15 Feb 2025)

  Changed paths:
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp

  Log Message:
  -----------
  [CIR] Fix extra `;` warning, and replace `new` with emplaceBlock (NFC) (#127207)


  Commit: 9f6e72bd0c1e6e52ac5aa0e29dc3d128ee868ee5
      https://github.com/llvm/llvm-project/commit/9f6e72bd0c1e6e52ac5aa0e29dc3d128ee868ee5
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/utils/hdrgen/enumeration.py
    M libc/utils/hdrgen/function.py
    M libc/utils/hdrgen/header.py
    M libc/utils/hdrgen/macro.py
    M libc/utils/hdrgen/main.py
    M libc/utils/hdrgen/object.py
    A libc/utils/hdrgen/tests/input/merge1.yaml
    A libc/utils/hdrgen/tests/input/merge2.yaml
    M libc/utils/hdrgen/tests/input/test_small.yaml
    M libc/utils/hdrgen/type.py
    M libc/utils/hdrgen/yaml_to_classes.py

  Log Message:
  -----------
  [libc] Add merge_yaml_files feature to hdrgen (#127269)

This allows a sort of "include" mechanism in the YAML files.  A
file can have a "merge_yaml_files" list of paths (relative to the
containing file's location).  These are YAML files in the same
syntax, except they cannot have their own "header" entry.  Only
the lists (types, enums, macros, functions, objects) can appear.
The main YAML file is then processed just as if each of its lists
were the (sorted) union of each YAML file's corresponding list.

This will enable maintaining a single source of truth for each
function signature and other such details, where it is necessary
to generate the same declaration in more than one header.


  Commit: 77ddffc946fe6763c6c0ce04aa23315903762c6f
      https://github.com/llvm/llvm-project/commit/77ddffc946fe6763c6c0ce04aa23315903762c6f
  Author: joaosaffran <126493771+joaosaffran at users.noreply.github.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILRootSignature.cpp
    M llvm/test/CodeGen/DirectX/ContainerData/RootSignature-MultipleEntryFunctions.ll

  Log Message:
  -----------
  [HLSL] Fix Root signature test error (#127261)

Fixing error detected in build bot in file
`RootSignature-MultipleEntryFunctions.ll`

closes: [127260](https://github.com/llvm/llvm-project/issues/127260)

---------

Co-authored-by: joaosaffran <joao.saffran at microsoft.com>


  Commit: 398f865499e6d7c35df2496cdff29ed0239423de
      https://github.com/llvm/llvm-project/commit/398f865499e6d7c35df2496cdff29ed0239423de
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/docs/dev/undefined_behavior.rst
    M libc/include/time.yaml
    M libc/src/time/CMakeLists.txt
    A libc/src/time/strftime.cpp
    A libc/src/time/strftime.h
    A libc/src/time/strftime_core/CMakeLists.txt
    A libc/src/time/strftime_core/composite_converter.h
    A libc/src/time/strftime_core/converter.cpp
    A libc/src/time/strftime_core/converter.h
    A libc/src/time/strftime_core/core_structs.h
    A libc/src/time/strftime_core/num_converter.h
    A libc/src/time/strftime_core/parser.h
    A libc/src/time/strftime_core/str_converter.h
    A libc/src/time/strftime_core/strftime_main.cpp
    A libc/src/time/strftime_core/strftime_main.h
    M libc/src/time/time_constants.h
    M libc/test/src/time/CMakeLists.txt
    A libc/test/src/time/strftime_test.cpp

  Log Message:
  -----------
  [libc] Implement strftime (#122556)

Implements the posix-specified strftime conversions for the default
locale, along with comprehensive unit tests. This reuses a lot of design
from printf, as well as the printf writer.

Roughly based on #111305, but with major rewrites.


  Commit: 60af83506a3aa379c59e0f9793ce7815d726aee1
      https://github.com/llvm/llvm-project/commit/60af83506a3aa379c59e0f9793ce7815d726aee1
  Author: Michael Jones <michaelrj at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/src/time/strftime_core/composite_converter.h

  Log Message:
  -----------
  [libc] Fix implicit cast warning in strftime (#127282)

Forgot to change a size_t to an int, which caused warnings on gcc but
not clang for some reason. Regardless, this patch fixes the issue.


  Commit: 77041da98932f77896d48366703d956ae7a82036
      https://github.com/llvm/llvm-project/commit/77041da98932f77896d48366703d956ae7a82036
  Author: Ryosuke Niwa <rniwa at webkit.org>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp

  Log Message:
  -----------
  [webkit.UncountedLambdaCapturesChecker] Recognize nested protectedThis pattern (#126443)

In WebKit, it's pretty common to capture "this" and "protectedThis"
where "protectedThis" is a guardian variable of type Ref or RefPtr for
"this". Furthermore, it's common for this "protectedThis" variable from
being passed to an inner lambda by std::move. Recognize this pattern so
that we don't emit warnings for nested inner lambdas.

To recognize this pattern, we introduce a new DenseSet,
ProtectedThisDecls, which contains every "protectedThis" we've
recognized to our subclass of DynamicRecursiveASTVisitor. This set is
now populated in "hasProtectedThis" and "declProtectsThis" uses this
DenseSet to determine a given value declaration constitutes a
"protectedThis" pattern or not.

Because hasProtectedThis and declProtectsThis had to be moved from the
checker class to the visitor class, it's now a responsibility of each
caller of visitLambdaExpr to check whether a given lambda captures
"this" without a "protectedThis" or not.

Finally, this PR improves the code to recognize "protectedThis" pattern
by allowing more nested CXXBindTemporaryExpr, CXXOperatorCallExpr, and
UnaryOperator expressions.


  Commit: 28c52edbe33e671ace58309e60598f3342e9ca73
      https://github.com/llvm/llvm-project/commit/28c52edbe33e671ace58309e60598f3342e9ca73
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/CodeGen/X86/codemodel.cpp
    M clang/test/Sema/attr-model.cpp

  Log Message:
  -----------
  [clang][X86] Support __attribute__((model("small"/"large"))) (#124834)

Following up #72078, on x86-64 this allows a global to be considered
small or large regardless of the code model. For example, x86-64's
medium code model by default classifies globals as small or large
depending on their size relative to -mlarge-data-threshold.

GPU compilations compile the same TU for both the host and device, but
only codegen the host or device portions of it depending on attributes.
However, we still Sema the TU, and will warn on an unknown attribute for
the device compilation since this attribute is target-specific. Since
they're intended for the host, accept but ignore this attribute for
device compilations where the host is either unknown or known to
support the attribute.

Co-authored-by: @pranavk


  Commit: caaa288fa3658b40a35a8e327bf140921ecfaaf9
      https://github.com/llvm/llvm-project/commit/caaa288fa3658b40a35a8e327bf140921ecfaaf9
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/include/llvm/Analysis/LazyCallGraph.h
    M llvm/lib/Analysis/LazyCallGraph.cpp
    M llvm/unittests/Analysis/LazyCallGraphTest.cpp

  Log Message:
  -----------
  Revert "[Coroutines][LazyCallGraph] addSplitRefRecursiveFunctions allows spurious ref edges between new functions." (#127285)

Reverts llvm/llvm-project#116285

Breaks expensive checks build, e.g.
https://lab.llvm.org/buildbot/#/builders/16/builds/13821


  Commit: 625cb5a18576dd5d193da8d0249585cb5245da5c
      https://github.com/llvm/llvm-project/commit/625cb5a18576dd5d193da8d0249585cb5245da5c
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    R libc/include/malloc.h.def
    M libc/include/malloc.yaml
    A libc/include/stdlib-malloc.yaml
    M libc/include/stdlib.yaml

  Log Message:
  -----------
  [libc] Share hdrgen declarations between stdlib.h and malloc.h (#127278)

This uses the new merge_yaml_files feature in hdrgen to share the
source of truth for the malloc suite of functions declared in
both stdlib.h and in malloc.h (without either header including
the other).  It also modernizes the malloc.yaml definition a bit,
including dropping the custom template malloc.h.def file in favor
of using the explicit macros list to generate the includes.


  Commit: 25e43334a86804c77d460493e37b57274257461a
      https://github.com/llvm/llvm-project/commit/25e43334a86804c77d460493e37b57274257461a
  Author: Philip Reames <preames at rivosinc.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-int-shuffles.ll

  Log Message:
  -----------
  [RISCV] Lower shuffle which splats a single span (without exact VLEN) (#127108)

If we have a shuffle which repeats the same pattern of elements, all of
which come from the first register in the source register group, we can
lower this to a single vrgather at m1 to perform the element
rearrangement, and reuse that for each register in the result vector
register group.


  Commit: 68a82a2298327c74bf25b8d376ffa3dc1e1b6388
      https://github.com/llvm/llvm-project/commit/68a82a2298327c74bf25b8d376ffa3dc1e1b6388
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2025-02-14 (Fri, 14 Feb 2025)

  Changed paths:
    M libc/utils/hdrgen/function.py
    M libc/utils/hdrgen/tests/expected_output/subdir/test.h
    M libc/utils/hdrgen/tests/input/subdir/test.yaml

  Log Message:
  -----------
  [libc] Elide extra space in hdrgen function declarations (#127287)

When the return type's rendering already doesn't end with an
identifier character, such as when it's `T *`, then idiomatic
syntax does not include a space before the `(` and arguments.


  Commit: 6c54ab548fa6d1b6d84864a93dbc436dc47c64b0
      https://github.com/llvm/llvm-project/commit/6c54ab548fa6d1b6d84864a93dbc436dc47c64b0
  Author: Zhaoxin Yang <yangzhaoxin at loongson.cn>
  Date:   2025-02-15 (Sat, 15 Feb 2025)

  Changed paths:
    M lld/ELF/Arch/LoongArch.cpp
    M lld/test/ELF/loongarch-relax-align.s
    M lld/test/ELF/loongarch-relax-emit-relocs.s
    A lld/test/ELF/loongarch-relax-pc-hi20-lo12-got-symbols.s
    A lld/test/ELF/loongarch-relax-pc-hi20-lo12.s

  Log Message:
  -----------
  [lld][LoongArch] Relax R_LARCH_{PCALA,GOT_PC}_{HI20,LO12} (#123566)

Support relaxation optimization for two types of code sequences.
```
From:
   pcalau12i $a0, %pc_hi20(sym)
       R_LARCH_PCALA_HI20, R_LARCH_RELAX
   addi.w/d $a0, $a0, %pc_lo12(sym)
       R_LARCH_PCALA_LO12, R_LARCH_RELAX
To:
   pcaddi $a0, %pc_lo12(sym)
       R_LARCH_PCREL20_S2
    
From:
   pcalau12i $a0, %got_pc_hi20(sym_got)
       R_LARCH_GOT_PC_HI20, R_LARCH_RELAX
   ld.w/d $a0, $a0, %got_pc_lo12(sym_got)
       R_LARCH_GOT_PC_LO12, R_LARCH_RELAX
To:
   pcaddi $a0, %got_pc_hi20(sym_got)
       R_LARCH_PCREL20_S2
```
Others:
- `loongarch-relax-pc-hi20-lo12-got-symbols.s` is inspired by
`aarch64-adrp-ldr-got-symbols.s`.

Co-authored-by: Xin Wang
[wangxin03 at loongson.cn](mailto:wangxin03 at loongson.cn)


  Commit: 03645eff7e50ebe0563bbee02ca978d1b5c15f25
      https://github.com/llvm/llvm-project/commit/03645eff7e50ebe0563bbee02ca978d1b5c15f25
  Author: yangzhaoxin <yangzhaoxin at loongson.cn>
  Date:   2025-02-15 (Sat, 15 Feb 2025)

  Changed paths:
    M .ci/generate-buildkite-pipeline-premerge
    M .ci/metrics/metrics.py
    M .ci/monolithic-windows.sh
    M .github/CODEOWNERS
    M .github/new-prs-labeler.yml
    M .github/workflows/build-ci-container-windows.yml
    M .github/workflows/build-ci-container.yml
    R .github/workflows/clang-tests.yml
    A .github/workflows/commit-access-greeter.yml
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libc-overlay-tests.yml
    M .github/workflows/libclang-abi-tests.yml
    R .github/workflows/libclc-tests.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M .github/workflows/libcxx-build-containers.yml
    M .github/workflows/libcxx-restart-preempted-jobs.yaml
    R .github/workflows/lld-tests.yml
    R .github/workflows/lldb-tests.yml
    M .github/workflows/llvm-tests.yml
    M .github/workflows/premerge.yaml
    M .github/workflows/release-asset-audit.py
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/spirv-tests.yml
    M .mailmap
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/BinarySection.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/include/bolt/Profile/DataAggregator.h
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Passes/PLTCall.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/RuntimeLibs/RuntimeLibrary.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    A bolt/test/AArch64/data-in-code.s
    A bolt/test/AArch64/exceptions-plt.cpp
    A bolt/test/AArch64/jump-table-heuristic-fail.s
    M bolt/test/AArch64/pad-before-funcs.s
    M bolt/test/AArch64/plt-call.test
    A bolt/test/AArch64/remove-nops.s
    M bolt/test/AArch64/test-indirect-branch.s
    M bolt/test/X86/callcont-fallthru.s
    M bolt/test/X86/cfi-instrs-reordered.s
    M bolt/test/X86/dynamic-relocs-on-entry.s
    M bolt/test/X86/plt-call.test
    M bolt/test/link_fdata.py
    A bolt/test/runtime/exceptions-plt.cpp
    M bolt/test/runtime/plt-lld.test
    M bolt/tools/driver/llvm-bolt.cpp
    M bolt/unittests/Core/BinaryContext.cpp
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    M clang-tools-extra/clang-doc/MDGenerator.cpp
    M clang-tools-extra/clang-doc/YAMLGenerator.cpp
    M clang-tools-extra/clang-include-fixer/FuzzySymbolIndex.cpp
    M clang-tools-extra/clang-include-fixer/YamlSymbolIndex.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/tool/FindAllSymbolsMain.cpp
    M clang-tools-extra/clang-include-fixer/tool/ClangIncludeFixer.cpp
    M clang-tools-extra/clang-reorder-fields/ReorderFieldsAction.cpp
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.h
    M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnsafeFunctionsCheck.h
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.h
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/Diagnostics.h
    M clang-tools-extra/clangd/FindTarget.cpp
    M clang-tools-extra/clangd/GlobalCompilationDatabase.cpp
    M clang-tools-extra/clangd/GlobalCompilationDatabase.h
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/ProjectModules.h
    M clang-tools-extra/clangd/ScanningProjectModules.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/unittests/ConfigCompileTests.cpp
    M clang-tools-extra/clangd/unittests/PrerequisiteModulesTest.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/assert-side-effect.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/string-constructor.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/redundant-expression.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-integer-sign-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/for-range-copy.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-copy-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-value-param.rst
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Analysis.h
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/lib/AnalysisInternal.h
    M clang-tools-extra/include-cleaner/lib/FindHeaders.cpp
    M clang-tools-extra/include-cleaner/lib/HTMLReport.cpp
    M clang-tools-extra/include-cleaner/lib/LocateSymbol.cpp
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang-tools-extra/include-cleaner/tool/IncludeCleaner.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang-tools-extra/include-cleaner/unittests/FindHeadersTest.cpp
    M clang-tools-extra/include-cleaner/unittests/LocateSymbolTest.cpp
    M clang-tools-extra/modularize/CoverageChecker.cpp
    M clang-tools-extra/test/clang-doc/Inputs/basic-project/src/Circle.cpp
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/test/clang-reorder-fields/Comments.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-constructor.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions-custom-regex.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor.cpp
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
    M clang/CMakeLists.txt
    M clang/bindings/python/clang/cindex.py
    M clang/cmake/caches/Android.cmake
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/cmake/caches/Fuchsia.cmake
    M clang/docs/BoundsSafety.rst
    A clang/docs/BoundsSafetyAdoptionGuide.rst
    M clang/docs/BoundsSafetyImplPlans.rst
    M clang/docs/ClangFormatStyleOptions.rst
    M clang/docs/ClangOffloadBundler.rst
    M clang/docs/ConstantInterpreter.rst
    M clang/docs/ControlFlowIntegrity.rst
    M clang/docs/HIPSupport.rst
    M clang/docs/HLSL/FunctionCalls.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SourceBasedCodeCoverage.rst
    A clang/docs/TypeSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/analyzer/developer-docs.rst
    A clang/docs/analyzer/developer-docs/PerformanceInvestigation.rst
    A clang/docs/analyzer/images/flamegraph.png
    A clang/docs/analyzer/images/speedscope.png
    A clang/docs/analyzer/images/uftrace_detailed.png
    M clang/docs/analyzer/user-docs/Annotations.rst
    M clang/docs/index.rst
    M clang/include/clang-c/Index.h
    R clang/include/clang/ARCMigrate/ARCMT.h
    R clang/include/clang/ARCMigrate/ARCMTActions.h
    R clang/include/clang/ARCMigrate/FileRemapper.h
    M clang/include/clang/AST/APValue.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTLambda.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/Decl.h
    M clang/include/clang/AST/DeclBase.h
    M clang/include/clang/AST/DeclCXX.h
    M clang/include/clang/AST/DeclTemplate.h
    M clang/include/clang/AST/DynamicRecursiveASTVisitor.h
    M clang/include/clang/AST/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/Mangle.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/StmtOpenACC.h
    M clang/include/clang/AST/StmtOpenMP.h
    A clang/include/clang/AST/StmtSYCL.h
    M clang/include/clang/AST/StmtVisitor.h
    M clang/include/clang/AST/TextNodeDumper.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/UnresolvedSet.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    M clang/include/clang/Analysis/Analyses/ExprMutationAnalyzer.h
    M clang/include/clang/Analysis/FlowSensitive/CachedConstAccessorsLattice.h
    M clang/include/clang/Analysis/ProgramPoint.h
    M clang/include/clang/Basic/AArch64SVEACLETypes.def
    M clang/include/clang/Basic/AddressSpaces.h
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/AttrDocs.td
    M clang/include/clang/Basic/AttributeCommonInfo.h
    M clang/include/clang/Basic/Attributes.h
    M clang/include/clang/Basic/Builtins.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsARM.def
    M clang/include/clang/Basic/BuiltinsBase.td
    R clang/include/clang/Basic/BuiltinsHexagon.def
    A clang/include/clang/Basic/BuiltinsHexagon.td
    R clang/include/clang/Basic/BuiltinsHexagonDep.def
    R clang/include/clang/Basic/BuiltinsLoongArch.def
    R clang/include/clang/Basic/BuiltinsNEON.def
    R clang/include/clang/Basic/BuiltinsNVPTX.def
    A clang/include/clang/Basic/BuiltinsNVPTX.td
    M clang/include/clang/Basic/BuiltinsPPC.def
    R clang/include/clang/Basic/BuiltinsRISCVVector.def
    R clang/include/clang/Basic/BuiltinsSME.def
    R clang/include/clang/Basic/BuiltinsSVE.def
    M clang/include/clang/Basic/BuiltinsSystemZ.def
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/BuiltinsX86Base.td
    M clang/include/clang/Basic/CMakeLists.txt
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/CodeGenOptions.h
    M clang/include/clang/Basic/Cuda.h
    M clang/include/clang/Basic/DeclNodes.td
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticCategories.h
    M clang/include/clang/Basic/DiagnosticCommonKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    M clang/include/clang/Basic/DiagnosticIDs.h
    M clang/include/clang/Basic/DiagnosticLexKinds.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Basic/FPOptions.def
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/IdentifierTable.h
    M clang/include/clang/Basic/LangOptions.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/Sanitizers.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/Version.inc.in
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_neon_incl.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    A clang/include/clang/CIR/Dialect/IR/CIRAttrVisitor.h
    A clang/include/clang/CIR/FrontendAction/.clang-tidy
    M clang/include/clang/CIR/FrontendAction/CIRGenAction.h
    A clang/include/clang/CIR/LowerToLLVM.h
    A clang/include/clang/CIR/MissingFeatures.h
    R clang/include/clang/CIRFrontendAction/.clang-tidy
    M clang/include/clang/CodeGen/BackendUtil.h
    M clang/include/clang/CodeGen/CGFunctionInfo.h
    M clang/include/clang/Config/config.h.cmake
    M clang/include/clang/Driver/Action.h
    M clang/include/clang/Driver/Driver.h
    M clang/include/clang/Driver/OffloadBundler.h
    M clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/ExtractAPI/ExtractAPIVisitor.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/FrontendOptions.h
    A clang/include/clang/Lex/HLSLRootSignatureTokenKinds.def
    A clang/include/clang/Lex/LexHLSLRootSignature.h
    M clang/include/clang/Lex/Lexer.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/HeuristicResolver.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaCodeCompletion.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaInternal.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/SemaSYCL.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Sema/TemplateDeduction.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTRecordReader.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/AnalyzerOptions.def
    M clang/include/clang/StaticAnalyzer/Core/BugReporter/BugReporter.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallDescription.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/MemRegion.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConstraintManager.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
    M clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesManager.cpp
    R clang/lib/ARCMigrate/ARCMT.cpp
    R clang/lib/ARCMigrate/ARCMTActions.cpp
    R clang/lib/ARCMigrate/CMakeLists.txt
    R clang/lib/ARCMigrate/FileRemapper.cpp
    R clang/lib/ARCMigrate/Internals.h
    R clang/lib/ARCMigrate/ObjCMT.cpp
    R clang/lib/ARCMigrate/PlistReporter.cpp
    R clang/lib/ARCMigrate/TransAPIUses.cpp
    R clang/lib/ARCMigrate/TransARCAssign.cpp
    R clang/lib/ARCMigrate/TransAutoreleasePool.cpp
    R clang/lib/ARCMigrate/TransBlockObjCVariable.cpp
    R clang/lib/ARCMigrate/TransEmptyStatementsAndDealloc.cpp
    R clang/lib/ARCMigrate/TransGCAttrs.cpp
    R clang/lib/ARCMigrate/TransGCCalls.cpp
    R clang/lib/ARCMigrate/TransProperties.cpp
    R clang/lib/ARCMigrate/TransProtectedScope.cpp
    R clang/lib/ARCMigrate/TransRetainReleaseDealloc.cpp
    R clang/lib/ARCMigrate/TransUnbridgedCasts.cpp
    R clang/lib/ARCMigrate/TransUnusedInitDelegate.cpp
    R clang/lib/ARCMigrate/TransZeroOutPropsInDealloc.cpp
    R clang/lib/ARCMigrate/TransformActions.cpp
    R clang/lib/ARCMigrate/Transforms.cpp
    R clang/lib/ARCMigrate/Transforms.h
    M clang/lib/AST/APValue.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Compiler.h
    M clang/lib/AST/ByteCode/Context.cpp
    M clang/lib/AST/ByteCode/Descriptor.cpp
    M clang/lib/AST/ByteCode/Descriptor.h
    M clang/lib/AST/ByteCode/Disasm.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.cpp
    M clang/lib/AST/ByteCode/EvalEmitter.h
    M clang/lib/AST/ByteCode/FixedPoint.h
    M clang/lib/AST/ByteCode/Function.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    M clang/lib/AST/ByteCode/InterpState.cpp
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/Opcodes.td
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/lib/AST/ByteCode/Pointer.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/CommentLexer.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/DynamicRecursiveASTVisitor.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/ParentMapContext.cpp
    M clang/lib/AST/RawCommentList.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtOpenACC.cpp
    M clang/lib/AST/StmtOpenMP.cpp
    M clang/lib/AST/StmtPrinter.cpp
    M clang/lib/AST/StmtProfile.cpp
    M clang/lib/AST/TemplateBase.cpp
    M clang/lib/AST/TemplateName.cpp
    M clang/lib/AST/TextNodeDumper.cpp
    M clang/lib/AST/Type.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowAnalysisContext.cpp
    M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
    M clang/lib/Analysis/LiveVariables.cpp
    M clang/lib/Analysis/ProgramPoint.cpp
    M clang/lib/Analysis/UninitializedValues.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/Attributes.cpp
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/DiagnosticIDs.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/Sanitizers.cpp
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/Basic/Targets/AArch64.h
    M clang/lib/Basic/Targets/AMDGPU.cpp
    M clang/lib/Basic/Targets/AMDGPU.h
    M clang/lib/Basic/Targets/ARC.h
    M clang/lib/Basic/Targets/ARM.cpp
    M clang/lib/Basic/Targets/ARM.h
    M clang/lib/Basic/Targets/AVR.h
    M clang/lib/Basic/Targets/BPF.cpp
    M clang/lib/Basic/Targets/BPF.h
    M clang/lib/Basic/Targets/CSKY.cpp
    M clang/lib/Basic/Targets/CSKY.h
    M clang/lib/Basic/Targets/DirectX.h
    M clang/lib/Basic/Targets/Hexagon.cpp
    M clang/lib/Basic/Targets/Hexagon.h
    M clang/lib/Basic/Targets/Lanai.h
    M clang/lib/Basic/Targets/LoongArch.cpp
    M clang/lib/Basic/Targets/LoongArch.h
    M clang/lib/Basic/Targets/M68k.cpp
    M clang/lib/Basic/Targets/M68k.h
    M clang/lib/Basic/Targets/MSP430.h
    M clang/lib/Basic/Targets/Mips.cpp
    M clang/lib/Basic/Targets/Mips.h
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/lib/Basic/Targets/OSTargets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Basic/Targets/PNaCl.h
    M clang/lib/Basic/Targets/PPC.cpp
    M clang/lib/Basic/Targets/PPC.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.cpp
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/Sparc.h
    M clang/lib/Basic/Targets/SystemZ.cpp
    M clang/lib/Basic/Targets/SystemZ.h
    M clang/lib/Basic/Targets/TCE.h
    M clang/lib/Basic/Targets/VE.cpp
    M clang/lib/Basic/Targets/VE.h
    M clang/lib/Basic/Targets/WebAssembly.cpp
    M clang/lib/Basic/Targets/WebAssembly.h
    M clang/lib/Basic/Targets/X86.cpp
    M clang/lib/Basic/Targets/X86.h
    M clang/lib/Basic/Targets/XCore.cpp
    M clang/lib/Basic/Targets/XCore.h
    M clang/lib/Basic/Targets/Xtensa.h
    M clang/lib/Basic/Warnings.cpp
    M clang/lib/CIR/CMakeLists.txt
    A clang/lib/CIR/FrontendAction/.clang-tidy
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/FrontendAction/CMakeLists.txt
    A clang/lib/CIR/Lowering/CMakeLists.txt
    A clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
    A clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CMakeLists.txt
    M clang/lib/CodeGen/ABIInfo.cpp
    M clang/lib/CodeGen/ABIInfo.h
    M clang/lib/CodeGen/ABIInfoImpl.cpp
    M clang/lib/CodeGen/Address.h
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCleanup.cpp
    M clang/lib/CodeGen/CGCleanup.h
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDecl.cpp
    M clang/lib/CodeGen/CGDeclCXX.cpp
    M clang/lib/CodeGen/CGException.cpp
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGExprAgg.cpp
    M clang/lib/CodeGen/CGExprCXX.cpp
    M clang/lib/CodeGen/CGExprComplex.cpp
    M clang/lib/CodeGen/CGExprConstant.cpp
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.cpp
    M clang/lib/CodeGen/CGObjCRuntime.h
    M clang/lib/CodeGen/CGOpenCLRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenModule.cpp
    M clang/lib/CodeGen/CodeGenModule.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/EHScopeStack.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/ObjectFilePCHContainerWriter.cpp
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/TargetInfo.h
    M clang/lib/CodeGen/Targets/AArch64.cpp
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M clang/lib/CodeGen/Targets/ARC.cpp
    M clang/lib/CodeGen/Targets/ARM.cpp
    M clang/lib/CodeGen/Targets/AVR.cpp
    M clang/lib/CodeGen/Targets/BPF.cpp
    M clang/lib/CodeGen/Targets/CSKY.cpp
    M clang/lib/CodeGen/Targets/Hexagon.cpp
    M clang/lib/CodeGen/Targets/Lanai.cpp
    M clang/lib/CodeGen/Targets/LoongArch.cpp
    M clang/lib/CodeGen/Targets/Mips.cpp
    M clang/lib/CodeGen/Targets/NVPTX.cpp
    M clang/lib/CodeGen/Targets/PNaCl.cpp
    M clang/lib/CodeGen/Targets/PPC.cpp
    M clang/lib/CodeGen/Targets/RISCV.cpp
    M clang/lib/CodeGen/Targets/SPIR.cpp
    M clang/lib/CodeGen/Targets/Sparc.cpp
    M clang/lib/CodeGen/Targets/SystemZ.cpp
    M clang/lib/CodeGen/Targets/WebAssembly.cpp
    M clang/lib/CodeGen/Targets/X86.cpp
    M clang/lib/CodeGen/Targets/XCore.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Driver/Action.cpp
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/OffloadBundler.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.cpp
    M clang/lib/Driver/ToolChains/AMDGPU.h
    M clang/lib/Driver/ToolChains/AMDGPUOpenMP.cpp
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.h
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cuda.h
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/ROCm.h
    M clang/lib/Driver/ToolChains/SPIRVOpenMP.cpp
    M clang/lib/Driver/ToolChains/UEFI.h
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/ContinuationIndenter.h
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/QualifierAlignmentFixer.cpp
    M clang/lib/Format/TokenAnnotator.cpp
    M clang/lib/Format/UnwrappedLineFormatter.cpp
    M clang/lib/Format/UnwrappedLineParser.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/LogDiagnosticPrinter.cpp
    M clang/lib/Frontend/PrintPreprocessedOutput.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    M clang/lib/Frontend/TextDiagnosticPrinter.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/amdgpuintrin.h
    M clang/lib/Headers/amxtf32transposeintrin.h
    M clang/lib/Headers/avx10_2_512bf16intrin.h
    M clang/lib/Headers/avx10_2_512convertintrin.h
    M clang/lib/Headers/avx10_2_512minmaxintrin.h
    M clang/lib/Headers/avx10_2_512satcvtintrin.h
    M clang/lib/Headers/avx10_2bf16intrin.h
    M clang/lib/Headers/avx10_2convertintrin.h
    M clang/lib/Headers/avx10_2minmaxintrin.h
    M clang/lib/Headers/avx10_2satcvtintrin.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/nvptxintrin.h
    M clang/lib/Headers/vecintrin.h
    M clang/lib/Index/FileIndexRecord.cpp
    M clang/lib/Index/IndexBody.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/Lex/CMakeLists.txt
    A clang/lib/Lex/LexHLSLRootSignature.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExpr.cpp
    M clang/lib/Parse/ParseOpenACC.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HeuristicResolver.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAVR.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaCast.cpp
    M clang/lib/Sema/SemaChecking.cpp
    M clang/lib/Sema/SemaCodeComplete.cpp
    M clang/lib/Sema/SemaConcept.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/SemaExceptionSpec.cpp
    M clang/lib/Sema/SemaExpr.cpp
    M clang/lib/Sema/SemaExprCXX.cpp
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/lib/Sema/SemaInit.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/lib/Sema/SemaLookup.cpp
    M clang/lib/Sema/SemaMIPS.cpp
    M clang/lib/Sema/SemaMSP430.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    A clang/lib/Sema/SemaOpenACCAtomic.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaSystemZ.cpp
    M clang/lib/Sema/SemaTemplate.cpp
    M clang/lib/Sema/SemaTemplateDeduction.cpp
    M clang/lib/Sema/SemaTemplateDeductionGuide.cpp
    M clang/lib/Sema/SemaTemplateInstantiate.cpp
    M clang/lib/Sema/SemaTemplateInstantiateDecl.cpp
    M clang/lib/Sema/SemaTemplateVariadic.cpp
    M clang/lib/Sema/SemaType.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Serialization/ASTCommon.cpp
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/lib/Serialization/ASTReaderStmt.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/lib/Serialization/ASTWriterDecl.cpp
    M clang/lib/Serialization/ASTWriterStmt.cpp
    M clang/lib/StaticAnalyzer/Checkers/ArrayBoundChecker.cpp
    R clang/lib/StaticAnalyzer/Checkers/ArrayBoundCheckerV2.cpp
    M clang/lib/StaticAnalyzer/Checkers/CMakeLists.txt
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ExprInspectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSKeychainAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/UncountedLambdaCapturesChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporter.cpp
    M clang/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
    M clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerContext.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/CoreEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExplodedGraph.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngine.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineC.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineObjC.cpp
    M clang/lib/StaticAnalyzer/Core/MemRegion.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/TextDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
    M clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    M clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/Tooling/Inclusions/Stdlib/StdSpecialSymbolMap.inc
    R clang/test/ARCMT/Common.h
    R clang/test/ARCMT/GC-check-warn-nsalloc.m
    R clang/test/ARCMT/GC-check.m
    R clang/test/ARCMT/GC-no-arc-runtime.m
    R clang/test/ARCMT/GC-no-arc-runtime.m.result
    R clang/test/ARCMT/GC-no-finalize-removal.m
    R clang/test/ARCMT/GC-no-finalize-removal.m.result
    R clang/test/ARCMT/GC.h
    R clang/test/ARCMT/GC.m
    R clang/test/ARCMT/GC.m.result
    R clang/test/ARCMT/Inputs/Module.framework/Frameworks/SubFramework.framework/Headers/SubFramework.h
    R clang/test/ARCMT/Inputs/Module.framework/Headers/Buried/Treasure.h
    R clang/test/ARCMT/Inputs/Module.framework/Headers/Module.h
    R clang/test/ARCMT/Inputs/Module.framework/Headers/NotInModule.h
    R clang/test/ARCMT/Inputs/Module.framework/Headers/Sub.h
    R clang/test/ARCMT/Inputs/Module.framework/Headers/Sub2.h
    R clang/test/ARCMT/Inputs/Module.framework/Module
    R clang/test/ARCMT/Inputs/Module.framework/PrivateHeaders/ModulePrivate.h
    R clang/test/ARCMT/Inputs/module.modulemap
    R clang/test/ARCMT/Inputs/test.h
    R clang/test/ARCMT/Inputs/test.h.result
    R clang/test/ARCMT/Inputs/test1.m.in
    R clang/test/ARCMT/Inputs/test1.m.in.result
    R clang/test/ARCMT/Inputs/test2.m.in
    R clang/test/ARCMT/Inputs/test2.m.in.result
    R clang/test/ARCMT/Inputs/with space/test.h
    R clang/test/ARCMT/Inputs/with space/test.h.result
    R clang/test/ARCMT/Inputs/with space/test1.m.in
    R clang/test/ARCMT/Inputs/with space/test1.m.in.result
    R clang/test/ARCMT/Inputs/with space/test2.m.in
    R clang/test/ARCMT/Inputs/with space/test2.m.in.result
    R clang/test/ARCMT/allowlisted/Inputs/header1.h
    R clang/test/ARCMT/allowlisted/header1.h
    R clang/test/ARCMT/allowlisted/header1.h.result
    R clang/test/ARCMT/allowlisted/header2.h
    R clang/test/ARCMT/allowlisted/header2.h.result
    R clang/test/ARCMT/allowlisted/objcmt-with-allowlist-impl.m
    R clang/test/ARCMT/allowlisted/objcmt-with-allowlist-impl.m.result
    R clang/test/ARCMT/allowlisted/objcmt-with-allowlist.m
    R clang/test/ARCMT/api.m
    R clang/test/ARCMT/api.m.result
    R clang/test/ARCMT/assign-prop-no-arc-runtime.m
    R clang/test/ARCMT/assign-prop-no-arc-runtime.m.result
    R clang/test/ARCMT/assign-prop-with-arc-runtime.m
    R clang/test/ARCMT/assign-prop-with-arc-runtime.m.result
    R clang/test/ARCMT/atautorelease-2.m
    R clang/test/ARCMT/atautorelease-2.m.result
    R clang/test/ARCMT/atautorelease-3.m
    R clang/test/ARCMT/atautorelease-3.m.result
    R clang/test/ARCMT/atautorelease-check.m
    R clang/test/ARCMT/atautorelease.m
    R clang/test/ARCMT/atautorelease.m.result
    R clang/test/ARCMT/autoreleases.m
    R clang/test/ARCMT/autoreleases.m.result
    R clang/test/ARCMT/block_copy_release.m
    R clang/test/ARCMT/block_copy_release.m.result
    R clang/test/ARCMT/check-api.m
    R clang/test/ARCMT/check-with-pch.m
    R clang/test/ARCMT/check-with-serialized-diag.m
    R clang/test/ARCMT/checking-in-arc.m
    R clang/test/ARCMT/checking.m
    R clang/test/ARCMT/cxx-checking.mm
    R clang/test/ARCMT/cxx-rewrite.mm
    R clang/test/ARCMT/cxx-rewrite.mm.result
    R clang/test/ARCMT/dealloc.m
    R clang/test/ARCMT/dealloc.m.result
    R clang/test/ARCMT/designated-init-in-header/designated-init-in-header.m
    R clang/test/ARCMT/designated-init-in-header/file1.m.in
    R clang/test/ARCMT/designated-init-in-header/file2.m.in
    R clang/test/ARCMT/designated-init-in-header/file2.m.in.result
    R clang/test/ARCMT/designated-init-in-header/header1.h
    R clang/test/ARCMT/designated-init-in-header/header1.h.result
    R clang/test/ARCMT/dispatch.m
    R clang/test/ARCMT/dispatch.m.result
    R clang/test/ARCMT/driver-migrate.m
    R clang/test/ARCMT/init.m
    R clang/test/ARCMT/init.m.result
    R clang/test/ARCMT/lit.local.cfg
    R clang/test/ARCMT/migrate-emit-errors.m
    R clang/test/ARCMT/migrate-on-pch-and-module.m
    R clang/test/ARCMT/migrate-plist-output.m
    R clang/test/ARCMT/migrate-space-in-path.m
    R clang/test/ARCMT/migrate-with-pch.m
    R clang/test/ARCMT/migrate.m
    R clang/test/ARCMT/no-canceling-bridge-to-bridge-cast.m
    R clang/test/ARCMT/nonobjc-to-objc-cast-2.m
    R clang/test/ARCMT/nonobjc-to-objc-cast.m
    R clang/test/ARCMT/nonobjc-to-objc-cast.m.result
    R clang/test/ARCMT/objcmt-arc-cf-annotations.m
    R clang/test/ARCMT/objcmt-arc-cf-annotations.m.result
    R clang/test/ARCMT/objcmt-atomic-property.m
    R clang/test/ARCMT/objcmt-atomic-property.m.result
    R clang/test/ARCMT/objcmt-boxing.m
    R clang/test/ARCMT/objcmt-boxing.m.result
    R clang/test/ARCMT/objcmt-designated-initializer.m
    R clang/test/ARCMT/objcmt-designated-initializer.m.result
    R clang/test/ARCMT/objcmt-instancetype-2.m
    R clang/test/ARCMT/objcmt-instancetype-2.m.result
    R clang/test/ARCMT/objcmt-instancetype-unnecessary-diff.m
    R clang/test/ARCMT/objcmt-instancetype.m
    R clang/test/ARCMT/objcmt-instancetype.m.result
    R clang/test/ARCMT/objcmt-invalid-code.mm
    R clang/test/ARCMT/objcmt-invalid-code.mm.result
    R clang/test/ARCMT/objcmt-migrate-all.m
    R clang/test/ARCMT/objcmt-migrate-all.m.result
    R clang/test/ARCMT/objcmt-ns-enum-crash.m
    R clang/test/ARCMT/objcmt-ns-enum-crash.m.result
    R clang/test/ARCMT/objcmt-ns-macros.m
    R clang/test/ARCMT/objcmt-ns-macros.m.result
    R clang/test/ARCMT/objcmt-ns-nonatomic-iosonly.m
    R clang/test/ARCMT/objcmt-ns-nonatomic-iosonly.m.result
    R clang/test/ARCMT/objcmt-ns-returns-inner-pointer.m
    R clang/test/ARCMT/objcmt-ns-returns-inner-pointer.m.result
    R clang/test/ARCMT/objcmt-numeric-literals.m
    R clang/test/ARCMT/objcmt-numeric-literals.m.result
    R clang/test/ARCMT/objcmt-property-availability.m
    R clang/test/ARCMT/objcmt-property-availability.m.result
    R clang/test/ARCMT/objcmt-property-dot-syntax.m
    R clang/test/ARCMT/objcmt-property-dot-syntax.m.result
    R clang/test/ARCMT/objcmt-property.m
    R clang/test/ARCMT/objcmt-property.m.result
    R clang/test/ARCMT/objcmt-protocol-conformance.m
    R clang/test/ARCMT/objcmt-protocol-conformance.m.result
    R clang/test/ARCMT/objcmt-subscripting-literals-in-arc.m
    R clang/test/ARCMT/objcmt-subscripting-literals-in-arc.m.result
    R clang/test/ARCMT/objcmt-subscripting-literals.m
    R clang/test/ARCMT/objcmt-subscripting-literals.m.result
    R clang/test/ARCMT/objcmt-subscripting-unavailable.m
    R clang/test/ARCMT/objcmt-subscripting-unavailable.m.result
    R clang/test/ARCMT/objcmt-undefined-ns-macros.m
    R clang/test/ARCMT/objcmt-undefined-ns-macros.m.result
    R clang/test/ARCMT/objcmt-with-pch.m
    R clang/test/ARCMT/objcmt-with-pch.m.result
    R clang/test/ARCMT/protected-scope.m
    R clang/test/ARCMT/protected-scope.m.result
    R clang/test/ARCMT/releases-driver.m
    R clang/test/ARCMT/releases-driver.m.result
    R clang/test/ARCMT/releases.m
    R clang/test/ARCMT/releases.m.result
    R clang/test/ARCMT/remap-applying.c
    R clang/test/ARCMT/remap-applying.c.result
    R clang/test/ARCMT/remove-dealloc-method.m
    R clang/test/ARCMT/remove-dealloc-method.m.result
    R clang/test/ARCMT/remove-dealloc-zerouts.m
    R clang/test/ARCMT/remove-dealloc-zerouts.m.result
    R clang/test/ARCMT/remove-statements.m
    R clang/test/ARCMT/remove-statements.m.result
    R clang/test/ARCMT/retains.m
    R clang/test/ARCMT/retains.m.result
    R clang/test/ARCMT/rewrite-block-var.m
    R clang/test/ARCMT/rewrite-block-var.m.result
    R clang/test/ARCMT/safe-arc-assign.m
    R clang/test/ARCMT/safe-arc-assign.m.result
    R clang/test/ARCMT/verify.m
    R clang/test/ARCMT/with-arc-mode-modify.m
    R clang/test/ARCMT/with-arc-mode-modify.m.result
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/c23.c
    M clang/test/AST/ByteCode/constexpr.c
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx26.cpp
    M clang/test/AST/ByteCode/cxx2a.cpp
    M clang/test/AST/ByteCode/lifetimes.cpp
    M clang/test/AST/ByteCode/literals.cpp
    A clang/test/AST/ByteCode/neon.c
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ByteCode/records.cpp
    M clang/test/AST/ByteCode/unions.cpp
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    A clang/test/AST/HLSL/TypdefArrayParam.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    R clang/test/AST/HLSL/ast-dump-comment-cbuffe-tbufferr.hlsl
    A clang/test/AST/HLSL/ast-dump-comment-cbuffer.hlsl
    A clang/test/AST/HLSL/cbuffer.hlsl
    A clang/test/AST/HLSL/cbuffer_and_namespaces.hlsl
    R clang/test/AST/HLSL/cbuffer_tbuffer.hlsl
    M clang/test/AST/HLSL/packoffset.hlsl
    M clang/test/AST/HLSL/pch_hlsl_buffer.hlsl
    M clang/test/AST/HLSL/resource_binding_attr.hlsl
    A clang/test/AST/ast-dump-APValue-lvalue.cpp
    M clang/test/AST/ast-dump-APValue-todo.cpp
    A clang/test/AST/ast-dump-binding-pack.cpp
    M clang/test/AST/ast-dump-comment.cpp
    M clang/test/AST/ast-dump-ctad-alias.cpp
    M clang/test/AST/ast-dump-cxx2b-deducing-this.cpp
    M clang/test/AST/ast-dump-decl.c
    M clang/test/AST/ast-dump-records.c
    M clang/test/AST/ast-dump-records.cpp
    M clang/test/AST/ast-dump-templates.cpp
    A clang/test/AST/ast-print-openacc-atomic-construct.cpp
    M clang/test/AST/attr-counted-by-late-parsed-struct-ptrs.c
    M clang/test/AST/attr-counted-by-or-null-late-parsed-struct-ptrs.c
    M clang/test/AST/attr-counted-by-or-null-struct-ptrs.c
    M clang/test/AST/attr-counted-by-struct-ptrs.c
    M clang/test/AST/attr-print-emit.cpp
    M clang/test/AST/attr-sized-by-late-parsed-struct-ptrs.c
    M clang/test/AST/attr-sized-by-or-null-late-parsed-struct-ptrs.c
    M clang/test/AST/attr-sized-by-or-null-struct-ptrs.c
    M clang/test/AST/attr-sized-by-struct-ptrs.c
    M clang/test/AST/gen_ast_dump_json_test.py
    A clang/test/ASTSYCL/ast-dump-sycl-kernel-call-stmt.cpp
    M clang/test/ASTSYCL/ast-dump-sycl-kernel-entry-point.cpp
    M clang/test/Analysis/Checkers/WebKit/call-args-counted-const-member.cpp
    A clang/test/Analysis/Checkers/WebKit/call-args-loop-init-opaque-value.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.mm
    A clang/test/Analysis/Inputs/ctu-test-import-failure-import.cpp
    A clang/test/Analysis/Inputs/ctu-test-import-failure-import.cpp.externalDefMap.ast-dump.txt
    M clang/test/Analysis/NewDelete-checker-test.cpp
    M clang/test/Analysis/analyzer-config.c
    A clang/test/Analysis/anonymous-decls.cpp
    R clang/test/Analysis/array-bound-v2-constraint-check.c
    A clang/test/Analysis/bugfix-124477.m
    M clang/test/Analysis/copy-elision.cpp
    A clang/test/Analysis/ctu-test-import-failure.cpp
    A clang/test/Analysis/dtor-union.cpp
    A clang/test/Analysis/ftime-trace-bind.cpp
    A clang/test/Analysis/ftime-trace-removeDead.cpp
    A clang/test/Analysis/ftime-trace.cpp
    M clang/test/Analysis/index-type.c
    M clang/test/Analysis/live-stmts.cpp
    M clang/test/Analysis/loop-assumptions.c
    M clang/test/Analysis/misc-ps-region-store.m
    R clang/test/Analysis/no-outofbounds.c
    M clang/test/Analysis/null-deref-path-notes.cpp
    A clang/test/Analysis/out-of-bounds-constraint-check.c
    M clang/test/Analysis/out-of-bounds-diagnostics.c
    M clang/test/Analysis/out-of-bounds-new.cpp
    M clang/test/Analysis/out-of-bounds-notes.c
    M clang/test/Analysis/out-of-bounds.c
    M clang/test/Analysis/outofbound-notwork.c
    M clang/test/Analysis/outofbound.c
    R clang/test/Analysis/rdar-6541136-region.c
    M clang/test/Analysis/runtime-regression.c
    M clang/test/Analysis/stack-addr-ps.cpp
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/stackaddrleak.cpp
    M clang/test/Analysis/taint-diagnostic-visitor.c
    M clang/test/Analysis/taint-generic.c
    M clang/test/Analysis/taint-generic.cpp
    A clang/test/CIR/Lowering/global-var-simple.cpp
    A clang/test/CIR/Lowering/hello.c
    M clang/test/CMakeLists.txt
    A clang/test/CXX/class/class.init/p1.cpp
    M clang/test/CXX/dcl.decl/dcl.init/p14-0x.cpp
    M clang/test/CXX/drs/cwg0xx.cpp
    M clang/test/CXX/drs/cwg12xx.cpp
    M clang/test/CXX/drs/cwg26xx.cpp
    M clang/test/CXX/drs/cwg3xx.cpp
    M clang/test/CXX/expr/expr.const/p3-0x.cpp
    A clang/test/CXX/stmt.stmt/stmt.select/stmt.switch/p4.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.nontype/p1.cpp
    M clang/test/CXX/temp/temp.arg/temp.arg.template/p3-0x.cpp
    M clang/test/CXX/temp/temp.decls/temp.variadic/fixed-expansion.cpp
    M clang/test/CXX/temp/temp.param/p12.cpp
    A clang/test/ClangScanDeps/modules-context-hash-cwd.c
    M clang/test/ClangScanDeps/strip-input-args.m
    A clang/test/ClangScanDeps/tu-buffer.c
    M clang/test/ClangScanDeps/working-dir.m
    M clang/test/CodeCompletion/member-access.cpp
    M clang/test/CodeGen/AArch64/args.cpp
    A clang/test/CodeGen/AArch64/builtin-shufflevector-fp8.c
    M clang/test/CodeGen/AArch64/cpu-supports-target.c
    M clang/test/CodeGen/AArch64/cpu-supports.c
    M clang/test/CodeGen/AArch64/fmv-dependencies.c
    M clang/test/CodeGen/AArch64/fmv-features.c
    M clang/test/CodeGen/AArch64/fmv-priority.c
    A clang/test/CodeGen/AArch64/fp8-cast.c
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_cvt.c
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_fdot.c
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_fmla.c
    A clang/test/CodeGen/AArch64/fp8-intrinsics/acle_neon_fp8_reinterpret.c
    M clang/test/CodeGen/AArch64/pure-scalable-args.c
    A clang/test/CodeGen/AArch64/sme-attributes-member-function-pointer.cpp
    M clang/test/CodeGen/AArch64/sme-intrinsics/aarch64-sme-attrs.cpp
    M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_read.c
    M clang/test/CodeGen/AArch64/sme-intrinsics/acle_sme_write.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti2_lane_zt_x4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_luti4_lane_zt_x2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_read.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_selx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_uzpx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx2.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_vector_zipx4.c
    M clang/test/CodeGen/AArch64/sme2-intrinsics/acle_sme2_write.c
    M clang/test/CodeGen/AArch64/sme2p1-intrinsics/acle_sme2p1_movaz.c
    M clang/test/CodeGen/AArch64/sve-acle-__ARM_FEATURE_SVE_VECTOR_OPERATORS.c
    M clang/test/CodeGen/AArch64/sve2-intrinsics/acle_sve2_revd.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_dupq.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_extq.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tblq.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_tbxq.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq1.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_uzpq2.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq1.c
    M clang/test/CodeGen/AArch64/sve2p1-intrinsics/acle_sve2p1_zipq2.c
    M clang/test/CodeGen/AArch64/targetattr.c
    M clang/test/CodeGen/PowerPC/aix-vaargs.c
    M clang/test/CodeGen/RISCV/riscv-inline-asm.c
    A clang/test/CodeGen/SystemZ/builtins-systemz-bitop.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector2-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-vector2.c
    A clang/test/CodeGen/SystemZ/builtins-systemz-vector5-error.c
    A clang/test/CodeGen/SystemZ/builtins-systemz-vector5.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector-error.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-constrained.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector2-error.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector2.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector3-error.c
    M clang/test/CodeGen/SystemZ/builtins-systemz-zvector3.c
    A clang/test/CodeGen/SystemZ/builtins-systemz-zvector5-error.c
    A clang/test/CodeGen/SystemZ/builtins-systemz-zvector5.c
    M clang/test/CodeGen/SystemZ/systemz-abi-vector.c
    M clang/test/CodeGen/SystemZ/systemz-abi.c
    M clang/test/CodeGen/SystemZ/systemz-inline-asm.c
    M clang/test/CodeGen/SystemZ/zvector.c
    A clang/test/CodeGen/X86/avx-cxx-record.cpp
    M clang/test/CodeGen/X86/avx10_2_512bf16-builtins.c
    M clang/test/CodeGen/X86/avx10_2_512convert-builtins.c
    M clang/test/CodeGen/X86/avx10_2_512minmax-builtins.c
    M clang/test/CodeGen/X86/avx10_2_512minmax-error.c
    M clang/test/CodeGen/X86/avx10_2_512satcvt-builtins.c
    M clang/test/CodeGen/X86/avx10_2bf16-builtins.c
    M clang/test/CodeGen/X86/avx10_2convert-builtins.c
    M clang/test/CodeGen/X86/avx10_2minmax-builtins.c
    M clang/test/CodeGen/X86/avx10_2satcvt-builtins.c
    A clang/test/CodeGen/X86/codemodel.cpp
    M clang/test/CodeGen/X86/ms-x86-intrinsics.c
    M clang/test/CodeGen/allow-ubsan-check-inline.c
    M clang/test/CodeGen/allow-ubsan-check.c
    M clang/test/CodeGen/arm-bf16-convert-intrinsics.c
    M clang/test/CodeGen/arm-cmse-attr.c
    A clang/test/CodeGen/arm-empty-args.cpp
    M clang/test/CodeGen/arm-mfp8.c
    M clang/test/CodeGen/arm-vfp16-arguments.c
    M clang/test/CodeGen/arm-vfp16-arguments2.cpp
    A clang/test/CodeGen/atomic-test-and-set.c
    M clang/test/CodeGen/attr-counted-by-pr110385.c
    M clang/test/CodeGen/attr-counted-by.c
    M clang/test/CodeGen/attr-target-clones-aarch64.c
    M clang/test/CodeGen/attr-target-version.c
    M clang/test/CodeGen/blocks-windows.c
    A clang/test/CodeGen/builtin-assume-dereferenceable.c
    M clang/test/CodeGen/builtins-elementwise-math.c
    M clang/test/CodeGen/builtins-nvptx.c
    A clang/test/CodeGen/debug-info-enum-extensibility.c
    A clang/test/CodeGen/extend-variable-liveness-except.cpp
    A clang/test/CodeGen/extend-variable-liveness-wide-scalar.cpp
    A clang/test/CodeGen/extend-variable-liveness.c
    A clang/test/CodeGen/fake-use-determinism.c
    A clang/test/CodeGen/fake-use-lambda.cpp
    A clang/test/CodeGen/fake-use-landingpad.c
    A clang/test/CodeGen/fake-use-noreturn.cpp
    A clang/test/CodeGen/fake-use-return-line.c
    A clang/test/CodeGen/fake-use-sanitizer.cpp
    A clang/test/CodeGen/fake-use-scalar.c
    A clang/test/CodeGen/fake-use-this.cpp
    A clang/test/CodeGen/fake-use-while.c
    M clang/test/CodeGen/fat-lto-objects-cfi.cpp
    A clang/test/CodeGen/import-call-optimization.c
    M clang/test/CodeGen/integer-overflow.c
    M clang/test/CodeGen/isfpclass.c
    A clang/test/CodeGen/kcfi-arity.c
    M clang/test/CodeGen/math-libcalls-tbaa-indirect-args.c
    M clang/test/CodeGen/math-libcalls-tbaa.c
    M clang/test/CodeGen/mips-vector-return.c
    M clang/test/CodeGen/mips64-nontrivial-return.cpp
    M clang/test/CodeGen/ms-intrinsics-other.c
    M clang/test/CodeGen/ms-intrinsics.c
    M clang/test/CodeGen/nofpclass.c
    M clang/test/CodeGen/partial-reinitialization2.c
    A clang/test/CodeGen/pointer-overflow.c
    M clang/test/CodeGen/pragma-comment.c
    A clang/test/CodeGen/profile-continuous.c
    M clang/test/CodeGen/sanitize-metadata-nosanitize.c
    M clang/test/CodeGen/sret.c
    M clang/test/CodeGen/struct-copy.c
    M clang/test/CodeGen/target-data.c
    M clang/test/CodeGen/tbaa-pointers.c
    M clang/test/CodeGen/tbaa-struct-bitfield-endianness.cpp
    M clang/test/CodeGen/transparent-union-type.c
    M clang/test/CodeGen/union-tbaa1.c
    A clang/test/CodeGen/xfail-alloc-align-fn-pointers.cpp
    M clang/test/CodeGenCUDA/amdgpu-kernel-arg-pointer-type.cu
    M clang/test/CodeGenCUDA/launch-bounds.cu
    M clang/test/CodeGenCUDA/offloading-entries.cu
    A clang/test/CodeGenCUDA/redux-f32-builtins.cu
    M clang/test/CodeGenCXX/RelativeVTablesABI/dynamic-cast.cpp
    M clang/test/CodeGenCXX/RelativeVTablesABI/type-info.cpp
    M clang/test/CodeGenCXX/aarch64-mangle-neon-vectors.cpp
    A clang/test/CodeGenCXX/aarch64-ms-mangle-mfp8.cpp
    M clang/test/CodeGenCXX/attr-annotate2.cpp
    M clang/test/CodeGenCXX/attr-target-clones-aarch64.cpp
    M clang/test/CodeGenCXX/bitfield-ir.cpp
    A clang/test/CodeGenCXX/cxx2c-decomposition.cpp
    A clang/test/CodeGenCXX/debug-info-ms-novtable.cpp
    M clang/test/CodeGenCXX/debug-info-template-parameter.cpp
    M clang/test/CodeGenCXX/dynamic-cast-address-space.cpp
    A clang/test/CodeGenCXX/gh119046.cpp
    M clang/test/CodeGenCXX/inline-then-fold-variadics.cpp
    M clang/test/CodeGenCXX/mangle-neon-vectors.cpp
    M clang/test/CodeGenCXX/matrix-vector-bit-int.cpp
    M clang/test/CodeGenCXX/no-elide-constructors.cpp
    M clang/test/CodeGenCXX/noescape.cpp
    M clang/test/CodeGenCXX/ptrauth-member-function-pointer.cpp
    M clang/test/CodeGenCXX/template-param-objects.cpp
    M clang/test/CodeGenCXX/wasm-args-returns.cpp
    A clang/test/CodeGenHLSL/BasicFeatures/AggregateSplatCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/ArrayElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/StructElementwiseCast.hlsl
    A clang/test/CodeGenHLSL/BasicFeatures/VectorElementwiseCast.hlsl
    M clang/test/CodeGenHLSL/basic-target.c
    M clang/test/CodeGenHLSL/builtins/ByteAddressBuffers-constructors.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor-opt.hlsl
    M clang/test/CodeGenHLSL/builtins/RWBuffer-constructor.hlsl
    M clang/test/CodeGenHLSL/builtins/StructuredBuffers-constructors.hlsl
    A clang/test/CodeGenHLSL/builtins/WaveActiveMax.hlsl
    M clang/test/CodeGenHLSL/builtins/dot-builtin.hlsl
    M clang/test/CodeGenHLSL/cbuf.hlsl
    M clang/test/CodeGenHLSL/cbuf_in_namespace.hlsl
    R clang/test/CodeGenHLSL/disable_opt.hlsl
    M clang/test/CodeGenHLSL/implicit-norecurse-attrib.hlsl
    M clang/test/CodeGenHLSL/inline-functions.hlsl
    M clang/test/CodeGenHLSL/resource-bindings.hlsl
    M clang/test/CodeGenHLSL/static_global_and_function_in_cb.hlsl
    M clang/test/CodeGenObjC/noescape.m
    M clang/test/CodeGenOpenCL/addr-space-struct-arg.cl
    M clang/test/CodeGenOpenCL/amdgcn-buffer-rsrc-type.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-arg-byref.cl
    M clang/test/CodeGenOpenCL/amdgpu-abi-struct-coerce.cl
    M clang/test/CodeGenOpenCL/amdgpu-alignment.cl
    M clang/test/CodeGenOpenCL/amdgpu-call-kernel.cl
    M clang/test/CodeGenOpenCL/amdgpu-enqueue-kernel.cl
    M clang/test/CodeGenOpenCL/as_type.cl
    M clang/test/CodeGenOpenCL/atomic-builtins-default-to-device-scope.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx11-err.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx12.cl
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx950-read-tr.cl
    A clang/test/CodeGenOpenCL/implicit-addrspacecast-function-parameter.cl
    M clang/test/CodeGenOpenCL/kernel-param-alignment.cl
    M clang/test/CodeGenOpenCL/kernels-have-spir-cc-by-default.cl
    M clang/test/CodeGenOpenCL/preserve_vec3.cl
    M clang/test/CodeGenOpenCLCXX/array-type-infinite-loop.clcpp
    A clang/test/Driver/Inputs/multilib/multilib-custom-flags.yaml
    M clang/test/Driver/Xarch.c
    M clang/test/Driver/aarch64-ptrauth.c
    A clang/test/Driver/amdgpu-openmp-sanitize-options.c
    M clang/test/Driver/amdgpu-openmp-system-arch-fail.c
    M clang/test/Driver/amdgpu-openmp-toolchain.c
    M clang/test/Driver/arm-mfpu.c
    M clang/test/Driver/cl-options.c
    M clang/test/Driver/clang-offload-bundler-zlib.c
    M clang/test/Driver/clang_f_opts.c
    M clang/test/Driver/clang_wrapv_opts.c
    M clang/test/Driver/csky-toolchain.c
    M clang/test/Driver/cuda-cross-compiling.c
    M clang/test/Driver/darwin-version.c
    A clang/test/Driver/dep-file-flag-with-multiple-offload-archs.hip
    A clang/test/Driver/extend-variable-liveness.c
    A clang/test/Driver/fno-plt.c
    A clang/test/Driver/fprofile-continuous.c
    M clang/test/Driver/freebsd.c
    R clang/test/Driver/frelaxed-template-template-args.cpp
    A clang/test/Driver/hexagon-cpu-default.c
    M clang/test/Driver/hip-sanitize-options.hip
    M clang/test/Driver/linker-wrapper-image.c
    M clang/test/Driver/linker-wrapper.c
    M clang/test/Driver/linux-as.c
    M clang/test/Driver/loongarch-march.c
    A clang/test/Driver/loongarch-mscq.c
    A clang/test/Driver/loongarch-relax-features.c
    R clang/test/Driver/objc-sdk-migration-options.m
    A clang/test/Driver/offload-Xarch.c
    M clang/test/Driver/openbsd.c
    M clang/test/Driver/openmp-offload-gpu.c
    M clang/test/Driver/openmp-offload-jit.c
    M clang/test/Driver/openmp-offload.c
    M clang/test/Driver/openmp-system-arch.c
    M clang/test/Driver/print-enabled-extensions/aarch64-ampere1b.c
    M clang/test/Driver/print-enabled-extensions/aarch64-apple-m4.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520.c
    M clang/test/Driver/print-enabled-extensions/aarch64-cortex-a520ae.c
    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-riscv.c
    M clang/test/Driver/ps4-sdk-root.c
    M clang/test/Driver/ps5-linker.c
    M clang/test/Driver/ps5-sdk-root.c
    M clang/test/Driver/rocm-device-libs.cl
    A clang/test/Driver/sparc-ias-Wa.s
    M clang/test/Driver/sycl-offload-jit.cpp
    M clang/test/Driver/systemz-march.c
    M clang/test/Driver/tls-dialect.c
    M clang/test/Driver/uefi-constructed-args.c
    M clang/test/Driver/unsupported-target-arch.c
    A clang/test/Driver/warning-suppression-mappings-not-parsed.cpp
    M clang/test/Driver/wasm-toolchain.c
    M clang/test/Driver/x86-target-features.c
    M clang/test/ExtractAPI/anonymous_record_no_typedef.c
    A clang/test/ExtractAPI/typedef_underscore.c
    A clang/test/Frontend/aarch64-ignore-branch-protection-attribute.c
    A clang/test/Frontend/custom-diag-werror-interaction.c
    A clang/test/Headers/crash-instantiated-in-scope-cxx-modules5.cpp
    M clang/test/Headers/gpuintrin.c
    M clang/test/Import/cxx-anon-namespace/test.cpp
    M clang/test/Index/crash-recovery-modules.m
    A clang/test/Index/index-deduction-guide.cpp
    A clang/test/Index/openmp-stripe.c
    M clang/test/Interpreter/simple-exception.cpp
    M clang/test/Lexer/cxx-features.cpp
    M clang/test/Misc/target-invalid-cpu-note/nvptx.c
    M clang/test/Misc/target-invalid-cpu-note/riscv.c
    M clang/test/Misc/target-invalid-cpu-note/systemz.c
    M clang/test/Misc/warning-flags.c
    M clang/test/Modules/cxx-templates.cpp
    M clang/test/Modules/empty.modulemap
    A clang/test/Modules/gmodules-codegenopts.c
    A clang/test/Modules/module-local-hidden-friend-2.cppm
    A clang/test/Modules/module-local-hidden-friend.cppm
    M clang/test/Modules/odr_hash.cpp
    A clang/test/Modules/pr120277-2.cpp
    A clang/test/Modules/pr125521.cppm
    A clang/test/Modules/pr126373.cppm
    M clang/test/Modules/preferred_name.cppm
    A clang/test/Modules/visibility-for-implicit-global-module.cppm
    A clang/test/Modules/vtable-in-explicit-instantiation.cppm
    M clang/test/OpenMP/assume_lambda.cpp
    M clang/test/OpenMP/assume_nesting_tmpl.cpp
    M clang/test/OpenMP/assume_template.cpp
    M clang/test/OpenMP/assumes_codegen.cpp
    M clang/test/OpenMP/assumes_include_nvptx.cpp
    M clang/test/OpenMP/assumes_messages.c
    M clang/test/OpenMP/assumes_messages_attr.c
    M clang/test/OpenMP/assumes_print.cpp
    M clang/test/OpenMP/attr-assume.cpp
    M clang/test/OpenMP/barrier_codegen.cpp
    M clang/test/OpenMP/begin_declare_variant_messages.c
    M clang/test/OpenMP/bug54082.c
    M clang/test/OpenMP/declare_mapper_codegen.cpp
    M clang/test/OpenMP/declare_mapper_messages.c
    M clang/test/OpenMP/declare_target_ast_print.cpp
    M clang/test/OpenMP/declare_target_codegen.cpp
    M clang/test/OpenMP/declare_target_link_codegen.cpp
    M clang/test/OpenMP/declare_target_messages.cpp
    M clang/test/OpenMP/declare_variant_ast_print.c
    M clang/test/OpenMP/declare_variant_bind_to_decl.cpp
    M clang/test/OpenMP/declare_variant_messages.c
    M clang/test/OpenMP/declare_variant_messages.cpp
    M clang/test/OpenMP/depobj_messages.cpp
    M clang/test/OpenMP/distribute_parallel_for_ast_print.cpp
    M clang/test/OpenMP/distribute_parallel_for_simd_ast_print.cpp
    M clang/test/OpenMP/distribute_simd_ast_print.cpp
    M clang/test/OpenMP/distribute_simd_misc_messages.c
    M clang/test/OpenMP/driver.c
    M clang/test/OpenMP/error_ast_print.cpp
    M clang/test/OpenMP/error_codegen.cpp
    M clang/test/OpenMP/error_message.cpp
    M clang/test/OpenMP/flush_ast_print.cpp
    M clang/test/OpenMP/flush_codegen.cpp
    M clang/test/OpenMP/for_linear_messages.cpp
    M clang/test/OpenMP/for_order_messages.cpp
    M clang/test/OpenMP/for_simd_ast_print.cpp
    M clang/test/OpenMP/metadirective_messages.cpp
    M clang/test/OpenMP/nvptx_declare_variant_name_mangling.cpp
    M clang/test/OpenMP/nvptx_target_firstprivate_codegen.cpp
    M clang/test/OpenMP/nvptx_target_requires_unified_shared_memory.cpp
    M clang/test/OpenMP/openmp_offload_registration.cpp
    M clang/test/OpenMP/ordered_codegen.cpp
    A clang/test/OpenMP/spirv_target_codegen_basic.cpp
    A clang/test/OpenMP/spirv_variant_match.cpp
    A clang/test/OpenMP/stripe_ast_print.cpp
    A clang/test/OpenMP/stripe_codegen.cpp
    A clang/test/OpenMP/stripe_messages.cpp
    M clang/test/OpenMP/target_codegen.cpp
    M clang/test/OpenMP/target_codegen_registration.cpp
    M clang/test/OpenMP/target_depend_codegen.cpp
    M clang/test/OpenMP/target_indirect_codegen.cpp
    M clang/test/OpenMP/target_parallel_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_parallel_for_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen.cpp
    M clang/test/OpenMP/target_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_parallel_for_simd_depend_codegen.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_codegen_registration.cpp
    M clang/test/OpenMP/target_teams_distribute_simd_depend_codegen.cpp
    M clang/test/PCH/cuda-kernel-call.cu
    A clang/test/Parser/cxx2c-binding-pack.cpp
    M clang/test/Parser/recovery.cpp
    M clang/test/ParserOpenACC/parse-constructs.c
    M clang/test/Preprocessor/arm-target-features.c
    A clang/test/Preprocessor/deprecate-threads-macro-definition-msvc1939.c
    M clang/test/Preprocessor/embed_preprocess_to_file.c
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Preprocessor/init-arm.c
    M clang/test/Preprocessor/init-csky.c
    M clang/test/Preprocessor/init-loongarch.c
    M clang/test/Preprocessor/init-mips.c
    M clang/test/Preprocessor/init-ppc.c
    M clang/test/Preprocessor/init-ppc64.c
    M clang/test/Preprocessor/init-s390x.c
    M clang/test/Preprocessor/init-v7k-compat.c
    M clang/test/Preprocessor/init-ve.c
    M clang/test/Preprocessor/init-x86.c
    M clang/test/Preprocessor/init.c
    A clang/test/Preprocessor/macro-reserved-attrs-cxx11.cpp
    M clang/test/Preprocessor/predefined-arch-macros.c
    M clang/test/Preprocessor/x86_target_features.c
    M clang/test/Rewriter/lit.local.cfg
    R clang/test/Rewriter/missing-dllimport.c
    M clang/test/Sema/Inputs/lifetime-analysis.h
    M clang/test/Sema/MicrosoftCompatibility.c
    M clang/test/Sema/MicrosoftCompatibility.cpp
    A clang/test/Sema/aarch64-fp8-cast.c
    A clang/test/Sema/aarch64-fp8-intrinsics/acle_neon_fp8_cvt.c
    A clang/test/Sema/aarch64-fp8-intrinsics/acle_neon_fp8_fdot.c
    A clang/test/Sema/aarch64-fp8-intrinsics/acle_neon_fp8_fmla.c
    R clang/test/Sema/aarch64-incompat-sm-builtin-calls.c
    A clang/test/Sema/aarch64-incompat-sm-builtin-calls.cpp
    A clang/test/Sema/aarch64-sme-attrs-openmp-captured-region.c
    A clang/test/Sema/arm-execute-only-tls.c
    M clang/test/Sema/arm-mfp8.cpp
    M clang/test/Sema/atomic-ops.c
    M clang/test/Sema/attr-cpuspecific.c
    M clang/test/Sema/attr-model.cpp
    M clang/test/Sema/attr-target-mv.c
    M clang/test/Sema/attr-target-version.c
    A clang/test/Sema/avr-interript-signal-attr.c
    R clang/test/Sema/avr-interrupt-attr.c
    R clang/test/Sema/avr-signal-attr.c
    M clang/test/Sema/builtins-elementwise-math.c
    M clang/test/Sema/diagnose_if.c
    A clang/test/Sema/missing-dllimport.c
    M clang/test/Sema/nullptr-prec2x.c
    M clang/test/Sema/nullptr.c
    M clang/test/Sema/pragma-clang-section.c
    A clang/test/Sema/pre-c2x-restrict-qualifier.c
    A clang/test/Sema/restrict-qualifier.c
    M clang/test/Sema/tautological-pointer-comparison.c
    M clang/test/Sema/types.c
    M clang/test/Sema/warn-infinity-nan-disabled-lnx.cpp
    M clang/test/Sema/warn-infinity-nan-disabled-win.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/zvector.c
    M clang/test/SemaCUDA/device-var-init.cu
    M clang/test/SemaCUDA/inherited-ctor.cu
    M clang/test/SemaCXX/alias-template.cpp
    A clang/test/SemaCXX/array-type-trait-with-template.cpp
    M clang/test/SemaCXX/attr-annotate.cpp
    M clang/test/SemaCXX/attr-cxx0x.cpp
    M clang/test/SemaCXX/attr-no-sanitize.cpp
    M clang/test/SemaCXX/builtin-assume-aligned.cpp
    A clang/test/SemaCXX/builtin-assume-dereferenceable.cpp
    M clang/test/SemaCXX/constant-expression-cxx11.cpp
    M clang/test/SemaCXX/constant-expression-cxx2a.cpp
    A clang/test/SemaCXX/constant-expression-p2280r4.cpp
    M clang/test/SemaCXX/cxx1z-constexpr-lambdas.cpp
    M clang/test/SemaCXX/cxx1z-decomposition.cpp
    M clang/test/SemaCXX/cxx20-ctad-type-alias.cpp
    M clang/test/SemaCXX/cxx2a-constexpr-dynalloc.cpp
    M clang/test/SemaCXX/cxx2b-consteval-propagate.cpp
    A clang/test/SemaCXX/cxx2c-binding-pack-nontemplate.cpp
    A clang/test/SemaCXX/cxx2c-binding-pack.cpp
    A clang/test/SemaCXX/diagnose_if-warning-group.cpp
    M clang/test/SemaCXX/fold_lambda_with_variadics.cpp
    M clang/test/SemaCXX/make_integer_seq.cpp
    A clang/test/SemaCXX/member-enum-declarations.cpp
    M clang/test/SemaCXX/reinterpret-cast.cpp
    R clang/test/SemaCXX/remove_pointer.mm
    M clang/test/SemaCXX/type-traits.cpp
    M clang/test/SemaCXX/uninitialized.cpp
    A clang/test/SemaCXX/unique_object_duplication.cpp
    A clang/test/SemaCXX/unique_object_duplication.h
    A clang/test/SemaCXX/warn-base-type-qualifiers.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-array.cpp
    M clang/test/SemaCXX/warn-unused-private-field.cpp
    A clang/test/SemaHLSL/BuiltIns/WaveActiveMax-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/mad-errors.hlsl
    M clang/test/SemaHLSL/BuiltIns/vector-constructors-erros.hlsl
    A clang/test/SemaHLSL/Language/AggregateSplatCast-errors.hlsl
    A clang/test/SemaHLSL/Language/AggregateSplatCasts.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCast-errors.hlsl
    A clang/test/SemaHLSL/Language/ElementwiseCasts.hlsl
    A clang/test/SemaHLSL/use-cxx-alt-operator-names.hlsl
    M clang/test/SemaObjCXX/noescape.mm
    A clang/test/SemaObjCXX/type-traits.mm
    A clang/test/SemaOpenACC/atomic-construct-ast.cpp
    A clang/test/SemaOpenACC/atomic-construct.cpp
    M clang/test/SemaOpenCL/invalid-block.cl
    M clang/test/SemaSYCL/sycl-kernel-entry-point-attr-appertainment.cpp
    A clang/test/SemaTemplate/GH55509.cpp
    M clang/test/SemaTemplate/address_space-dependent.cpp
    M clang/test/SemaTemplate/aggregate-deduction-candidate.cpp
    M clang/test/SemaTemplate/concepts-lambda.cpp
    M clang/test/SemaTemplate/concepts-out-of-line-def.cpp
    M clang/test/SemaTemplate/cwg2398.cpp
    M clang/test/SemaTemplate/deduction-crash.cpp
    M clang/test/SemaTemplate/deduction-guide.cpp
    M clang/test/SemaTemplate/default-arguments.cpp
    M clang/test/SemaTemplate/instantiate-template-template-parm.cpp
    M clang/test/SemaTemplate/instantiation-default-2.cpp
    M clang/test/SemaTemplate/nested-template.cpp
    M clang/test/SemaTemplate/temp_arg_nontype.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx1z.cpp
    M clang/test/SemaTemplate/temp_arg_nontype_cxx20.cpp
    M clang/test/SemaTemplate/temp_arg_template.cpp
    M clang/test/SemaTemplate/temp_arg_template_p0522.cpp
    M clang/test/TableGen/target-builtins-prototype-parser.td
    M clang/test/Templight/templight-empty-entries-fix.cpp
    M clang/test/Templight/templight-prior-template-arg.cpp
    A clang/test/Tooling/clang-linker-wrapper-spirv-elf.cpp
    M clang/test/Tooling/lit.local.cfg
    M clang/test/lit.cfg.py
    M clang/test/lit.site.cfg.py.in
    M clang/tools/CMakeLists.txt
    R clang/tools/arcmt-test/CMakeLists.txt
    R clang/tools/arcmt-test/arcmt-test.cpp
    R clang/tools/c-arcmt-test/CMakeLists.txt
    R clang/tools/c-arcmt-test/c-arcmt-test.c
    M clang/tools/c-index-test/c-index-test.c
    M clang/tools/clang-format/clang-format.el
    M clang/tools/clang-installapi/Options.cpp
    M clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
    M clang/tools/clang-linker-wrapper/LinkerWrapperOpts.td
    M clang/tools/clang-scan-deps/ClangScanDeps.cpp
    M clang/tools/clang-scan-deps/Opts.td
    M clang/tools/diagtool/DiagnosticNames.cpp
    M clang/tools/diagtool/ListWarnings.cpp
    M clang/tools/diagtool/ShowEnabledWarnings.cpp
    M clang/tools/driver/CMakeLists.txt
    M clang/tools/driver/driver.cpp
    R clang/tools/libclang/ARCMigrate.cpp
    M clang/tools/libclang/CIndex.cpp
    M clang/tools/libclang/CIndexDiagnostic.cpp
    M clang/tools/libclang/CMakeLists.txt
    M clang/tools/libclang/CXCursor.cpp
    M clang/tools/libclang/CXStoredDiagnostic.cpp
    M clang/tools/libclang/libclang.map
    M clang/unittests/AST/ASTImporterTest.cpp
    M clang/unittests/AST/CommentLexer.cpp
    M clang/unittests/AST/CommentParser.cpp
    M clang/unittests/Analysis/CFGBuildResult.h
    M clang/unittests/Analysis/CFGTest.cpp
    M clang/unittests/Analysis/ExprMutationAnalyzerTest.cpp
    M clang/unittests/Analysis/FlowSensitive/CachedConstAccessorsLatticeTest.cpp
    M clang/unittests/Analysis/FlowSensitive/SmartPointerAccessorCachingTest.cpp
    M clang/unittests/Basic/DiagnosticTest.cpp
    M clang/unittests/CodeGen/TBAAMetadataTest.cpp
    M clang/unittests/Driver/ToolChainTest.cpp
    M clang/unittests/Format/ConfigParseTest.cpp
    M clang/unittests/Format/FormatTest.cpp
    M clang/unittests/Format/FormatTestTableGen.cpp
    M clang/unittests/Format/QualifierFixerTest.cpp
    M clang/unittests/Format/TokenAnnotatorTest.cpp
    M clang/unittests/Interpreter/InterpreterTest.cpp
    M clang/unittests/Lex/CMakeLists.txt
    A clang/unittests/Lex/LexHLSLRootSignatureTest.cpp
    M clang/unittests/Lex/LexerTest.cpp
    M clang/unittests/Sema/HeuristicResolverTest.cpp
    M clang/unittests/StaticAnalyzer/CMakeLists.txt
    A clang/unittests/StaticAnalyzer/ObjcBug-124477.cpp
    M clang/unittests/Tooling/DependencyScanning/DependencyScannerTest.cpp
    M clang/utils/TableGen/ClangAttrEmitter.cpp
    M clang/utils/TableGen/ClangBuiltinsEmitter.cpp
    M clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
    M clang/utils/TableGen/ClangOptionDocEmitter.cpp
    M clang/utils/TableGen/MveEmitter.cpp
    M clang/utils/TableGen/NeonEmitter.cpp
    M clang/utils/TableGen/RISCVVEmitter.cpp
    M clang/utils/TableGen/SveEmitter.cpp
    M clang/utils/TableGen/TableGen.cpp
    M clang/utils/TableGen/TableGenBackends.h
    M clang/utils/analyzer/entrypoint.py
    M clang/utils/perf-training/CMakeLists.txt
    M clang/utils/perf-training/perf-helper.py
    M clang/www/OpenProjects.html
    M clang/www/analyzer/open_projects.html
    M clang/www/analyzer/potential_checkers.html
    M clang/www/cxx_dr_status.html
    M clang/www/cxx_status.html
    M cmake/Modules/LLVMVersion.cmake
    M compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
    M compiler-rt/lib/asan/asan_allocator.cpp
    M compiler-rt/lib/asan/asan_suppressions.cpp
    M compiler-rt/lib/asan/asan_suppressions.h
    M compiler-rt/lib/asan/tests/asan_test.cpp
    M compiler-rt/lib/builtins/arm/adddf3vfp.S
    M compiler-rt/lib/builtins/arm/aeabi_dcmp.S
    M compiler-rt/lib/builtins/arm/divdf3vfp.S
    M compiler-rt/lib/builtins/arm/eqdf2vfp.S
    M compiler-rt/lib/builtins/arm/extendsfdf2vfp.S
    M compiler-rt/lib/builtins/arm/fixdfsivfp.S
    M compiler-rt/lib/builtins/arm/fixunsdfsivfp.S
    M compiler-rt/lib/builtins/arm/floatsidfvfp.S
    M compiler-rt/lib/builtins/arm/floatunssidfvfp.S
    M compiler-rt/lib/builtins/arm/gedf2vfp.S
    M compiler-rt/lib/builtins/arm/gtdf2vfp.S
    M compiler-rt/lib/builtins/arm/ledf2vfp.S
    M compiler-rt/lib/builtins/arm/ltdf2vfp.S
    M compiler-rt/lib/builtins/arm/muldf3vfp.S
    M compiler-rt/lib/builtins/arm/nedf2vfp.S
    M compiler-rt/lib/builtins/arm/subdf3vfp.S
    M compiler-rt/lib/builtins/arm/truncdfsf2vfp.S
    M compiler-rt/lib/builtins/arm/unorddf2vfp.S
    M compiler-rt/lib/builtins/assembly.h
    M compiler-rt/lib/builtins/cpu_model/AArch64CPUFeatures.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/apple.inc
    M compiler-rt/lib/builtins/cpu_model/aarch64/fmv/mrs.inc
    M compiler-rt/lib/builtins/cpu_model/riscv.c
    M compiler-rt/lib/fuzzer/FuzzerFlags.def
    M compiler-rt/lib/interception/interception_win.cpp
    M compiler-rt/lib/interception/tests/interception_win_test.cpp
    M compiler-rt/lib/lsan/lsan_common_linux.cpp
    M compiler-rt/lib/memprof/memprof_allocator.cpp
    M compiler-rt/lib/orc/macho_platform.cpp
    M compiler-rt/lib/profile/InstrProfiling.h
    M compiler-rt/lib/profile/InstrProfilingFile.c
    M compiler-rt/lib/rtsan/rtsan_interceptors_posix.cpp
    M compiler-rt/lib/rtsan/tests/rtsan_test_interceptors_posix.cpp
    M compiler-rt/lib/safestack/safestack_platform.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_local_cache.h
    M compiler-rt/lib/sanitizer_common/sanitizer_common.h
    M compiler-rt/lib/sanitizer_common/sanitizer_getauxval.h
    M compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_mac.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.cpp
    M compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
    M compiler-rt/lib/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp
    M compiler-rt/lib/sanitizer_common/symbolizer/scripts/global_symbols.txt
    M compiler-rt/lib/sanitizer_common/tests/sanitizer_libc_test.cpp
    M compiler-rt/lib/scudo/standalone/allocator_config.def
    M compiler-rt/lib/scudo/standalone/allocator_config_wrapper.h
    M compiler-rt/lib/scudo/standalone/chunk.h
    M compiler-rt/lib/scudo/standalone/report.cpp
    M compiler-rt/lib/scudo/standalone/report.h
    M compiler-rt/lib/scudo/standalone/secondary.h
    M compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/report_test.cpp
    M compiler-rt/lib/scudo/standalone/tests/scudo_unit_test.h
    M compiler-rt/lib/scudo/standalone/tests/secondary_test.cpp
    M compiler-rt/lib/tsan/go/buildgo.sh
    M compiler-rt/lib/tsan/rtl/tsan_interceptors_mac.cpp
    R compiler-rt/lib/tsan/rtl/tsan_spinlock_defs_mac.h
    M compiler-rt/lib/xray/CMakeLists.txt
    M compiler-rt/lib/xray/xray_interface.cpp
    M compiler-rt/lib/xray/xray_interface_internal.h
    A compiler-rt/lib/xray/xray_s390x.cpp
    A compiler-rt/lib/xray/xray_trampoline_s390x.S
    M compiler-rt/lib/xray/xray_tsc.h
    M compiler-rt/test/asan/TestCases/Posix/fake_stack_gc.cpp
    M compiler-rt/test/asan/TestCases/Posix/unpoison-alternate-stack.cpp
    M compiler-rt/test/asan/TestCases/Windows/coverage-basic.cpp
    M compiler-rt/test/asan/TestCases/Windows/crash_read_write.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_host.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_intercept_memcpy.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_intercept_memset.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_null_deref.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_operator_array_new_with_dtor_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/dll_stack_use_after_return.cpp
    M compiler-rt/test/asan/TestCases/Windows/global_const_string_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/illegal_instruction.cpp
    M compiler-rt/test/asan/TestCases/Windows/issue64990.cpp
    M compiler-rt/test/asan/TestCases/Windows/msvc/seh.cpp
    R compiler-rt/test/asan/TestCases/Windows/null_deref.cpp
    M compiler-rt/test/asan/TestCases/Windows/null_deref_multiple_dlls.cpp
    M compiler-rt/test/asan/TestCases/Windows/operator_array_new_with_dtor_left_oob.cpp
    M compiler-rt/test/asan/TestCases/Windows/sse_misalignment.cpp
    M compiler-rt/test/asan/TestCases/Windows/stack_use_after_return.cpp
    M compiler-rt/test/asan/TestCases/Windows/unsymbolized.cpp
    M compiler-rt/test/asan/TestCases/alloca_big_alignment.cpp
    M compiler-rt/test/asan/TestCases/alloca_constant_size.cpp
    M compiler-rt/test/asan/TestCases/alloca_detect_custom_size_.cpp
    M compiler-rt/test/asan/TestCases/alloca_instruments_all_paddings.cpp
    M compiler-rt/test/asan/TestCases/alloca_loop_unpoisoning.cpp
    M compiler-rt/test/asan/TestCases/alloca_overflow_partial.cpp
    M compiler-rt/test/asan/TestCases/alloca_overflow_right.cpp
    M compiler-rt/test/asan/TestCases/alloca_safe_access.cpp
    M compiler-rt/test/asan/TestCases/alloca_underflow_left.cpp
    M compiler-rt/test/asan/TestCases/alloca_vla_interact.cpp
    M compiler-rt/test/asan/TestCases/contiguous_container.cpp
    M compiler-rt/test/asan/TestCases/coverage-trace-pc.cpp
    M compiler-rt/test/asan/TestCases/debug_locate.cpp
    M compiler-rt/test/asan/TestCases/debug_stacks.cpp
    M compiler-rt/test/asan/TestCases/deep_tail_call.cpp
    M compiler-rt/test/asan/TestCases/default_ignorelist.cpp
    M compiler-rt/test/asan/TestCases/default_options.cpp
    A compiler-rt/test/asan/TestCases/defines.h
    M compiler-rt/test/asan/TestCases/error_report_callback.cpp
    M compiler-rt/test/asan/TestCases/exitcode.cpp
    M compiler-rt/test/asan/TestCases/force_inline_opt0.cpp
    M compiler-rt/test/asan/TestCases/global-location-nodebug.cpp
    M compiler-rt/test/asan/TestCases/global-underflow.cpp
    M compiler-rt/test/asan/TestCases/halt_on_error-1.c
    M compiler-rt/test/asan/TestCases/heavy_uar_test.cpp
    M compiler-rt/test/asan/TestCases/ignorelist.cpp
    M compiler-rt/test/asan/TestCases/ill.cpp
    M compiler-rt/test/asan/TestCases/initialization-bug.cpp
    M compiler-rt/test/asan/TestCases/inline.cpp
    M compiler-rt/test/asan/TestCases/intercept-rethrow-exception.cpp
    M compiler-rt/test/asan/TestCases/interception_failure_test.cpp
    M compiler-rt/test/asan/TestCases/interface_test.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs-compare-errors.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs-subtract-errors.cpp
    M compiler-rt/test/asan/TestCases/invalid-pointer-pairs.cpp
    M compiler-rt/test/asan/TestCases/large_func_test.cpp
    M compiler-rt/test/asan/TestCases/null_deref.cpp
    M compiler-rt/test/asan/TestCases/pass-struct-byval.cpp
    M compiler-rt/test/asan/TestCases/report_error_summary.cpp
    M compiler-rt/test/asan/TestCases/speculative_load.cpp
    M compiler-rt/test/asan/TestCases/stack-buffer-overflow-with-position.cpp
    M compiler-rt/test/asan/TestCases/stack-oob-frames.cpp
    M compiler-rt/test/asan/TestCases/strcat-overlap.cpp
    M compiler-rt/test/asan/TestCases/strcpy-overlap.cpp
    M compiler-rt/test/asan/TestCases/strncat-overlap.cpp
    M compiler-rt/test/asan/TestCases/strncpy-overflow.cpp
    M compiler-rt/test/asan/TestCases/strncpy-overlap.cpp
    A compiler-rt/test/asan/TestCases/suppressions-alloc-dealloc-mismatch.cpp
    M compiler-rt/test/asan/TestCases/suppressions-exec-relative-location.cpp
    M compiler-rt/test/asan/TestCases/suppressions-function.cpp
    M compiler-rt/test/asan/TestCases/suppressions-interceptor.cpp
    M compiler-rt/test/asan/TestCases/suppressions-library.cpp
    M compiler-rt/test/asan/TestCases/throw_call_test.cpp
    M compiler-rt/test/asan/TestCases/throw_catch.cpp
    M compiler-rt/test/asan/TestCases/throw_invoke_test.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-capture.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-dtor-order.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-inlined.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop-bug.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop-removed.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-loop.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-temp.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-temp2.cpp
    M compiler-rt/test/asan/TestCases/use-after-scope-types.cpp
    M compiler-rt/test/asan/TestCases/vla_chrome_testcase.cpp
    M compiler-rt/test/asan/TestCases/vla_condition_overflow.cpp
    M compiler-rt/test/asan/TestCases/vla_loop_overfow.cpp
    M compiler-rt/test/asan/TestCases/zero_page_pc.cpp
    M compiler-rt/test/asan/lit.cfg.py
    M compiler-rt/test/builtins/Unit/arm/aeabi_idivmod_test.c
    M compiler-rt/test/builtins/Unit/arm/aeabi_uidivmod_test.c
    M compiler-rt/test/builtins/Unit/arm/aeabi_uldivmod_test.c
    M compiler-rt/test/lsan/TestCases/leak_check_before_thread_started.cpp
    A compiler-rt/test/orc/TestCases/Darwin/Generic/exceptions-stress-test-tower.cpp
    A compiler-rt/test/orc/TestCases/Darwin/Generic/exceptions.cpp
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/ehframe-default.cpp
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/ehframe-libunwind.cpp
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/lit.local.cfg.py
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/lljit-ehframe.cpp
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/lljit-initialize-deinitialize.ll
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/priority-static-initializer.S
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/trivial-atexit.S
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/trivial-cxa-atexit.S
    A compiler-rt/test/orc/TestCases/Linux/loongarch64/trivial-static-initializer.S
    M compiler-rt/test/profile/Linux/Inputs/instrprof-value-merge.c
    A compiler-rt/test/profile/Linux/binary-id-path.c
    M compiler-rt/test/profile/Linux/binary-id.c
    M compiler-rt/test/profile/Linux/profile-version.c
    M compiler-rt/test/profile/Windows/binary-id.c
    A compiler-rt/test/tysan/ignorelist.c
    A compiler-rt/test/tysan/ignorelist.h
    A compiler-rt/test/tysan/preprocessor.c
    M flang/CMakeLists.txt
    M flang/cmake/modules/AddFlang.cmake
    M flang/docs/Directives.md
    M flang/docs/Extensions.md
    M flang/docs/FlangDriver.md
    M flang/docs/GettingStarted.md
    M flang/docs/Intrinsics.md
    M flang/docs/ModFiles.md
    M flang/docs/OpenACC-descriptor-management.md
    M flang/docs/Real16MathSupport.md
    M flang/docs/ReleaseNotes.md
    M flang/examples/CMakeLists.txt
    M flang/examples/ExternalHelloWorld/CMakeLists.txt
    M flang/examples/FeatureList/FeatureList.cpp
    M flang/examples/FlangOmpReport/FlangOmpReportVisitor.cpp
    R flang/include/flang/Common/Fortran-features.h
    R flang/include/flang/Common/Fortran.h
    A flang/include/flang/Common/ISO_Fortran_binding_wrapper.h
    R flang/include/flang/Common/LangOptions.def
    R flang/include/flang/Common/LangOptions.h
    R flang/include/flang/Common/MathOptionsBase.def
    R flang/include/flang/Common/MathOptionsBase.h
    R flang/include/flang/Common/OpenMP-features.h
    R flang/include/flang/Common/OpenMP-utils.h
    R flang/include/flang/Common/Version.h
    M flang/include/flang/Common/api-attrs.h
    R flang/include/flang/Common/default-kinds.h
    M flang/include/flang/Common/erfc-scaled.h
    M flang/include/flang/Common/fast-int-set.h
    M flang/include/flang/Common/format.h
    M flang/include/flang/Common/optional.h
    M flang/include/flang/Common/real.h
    M flang/include/flang/Common/reference-wrapper.h
    M flang/include/flang/Common/restorer.h
    M flang/include/flang/Common/target-rounding.h
    M flang/include/flang/Common/template.h
    M flang/include/flang/Common/uint128.h
    M flang/include/flang/Common/visit.h
    M flang/include/flang/Evaluate/call.h
    M flang/include/flang/Evaluate/characteristics.h
    M flang/include/flang/Evaluate/check-expression.h
    M flang/include/flang/Evaluate/common.h
    M flang/include/flang/Evaluate/constant.h
    M flang/include/flang/Evaluate/expression.h
    M flang/include/flang/Evaluate/intrinsics.h
    M flang/include/flang/Evaluate/shape.h
    M flang/include/flang/Evaluate/target.h
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Evaluate/type.h
    M flang/include/flang/Frontend/CompilerInvocation.h
    M flang/include/flang/Frontend/FrontendOptions.h
    M flang/include/flang/Frontend/TargetOptions.h
    M flang/include/flang/ISO_Fortran_binding.h
    R flang/include/flang/ISO_Fortran_binding_wrapper.h
    M flang/include/flang/Lower/AbstractConverter.h
    M flang/include/flang/Lower/Bridge.h
    M flang/include/flang/Lower/ConvertType.h
    M flang/include/flang/Lower/DirectivesCommon.h
    M flang/include/flang/Lower/LoweringOptions.def
    M flang/include/flang/Lower/LoweringOptions.h
    M flang/include/flang/Lower/Support/Utils.h
    A flang/include/flang/Optimizer/Builder/DirectivesCommon.h
    M flang/include/flang/Optimizer/Builder/FIRBuilder.h
    M flang/include/flang/Optimizer/Builder/HLFIRTools.h
    M flang/include/flang/Optimizer/Builder/IntrinsicCall.h
    M flang/include/flang/Optimizer/Builder/Runtime/Intrinsics.h
    M flang/include/flang/Optimizer/Builder/Runtime/Main.h
    M flang/include/flang/Optimizer/Builder/Runtime/RTBuilder.h
    M flang/include/flang/Optimizer/CodeGen/DescriptorModel.h
    M flang/include/flang/Optimizer/Dialect/CMakeLists.txt
    M flang/include/flang/Optimizer/Dialect/CUF/Attributes/CUFAttr.h
    M flang/include/flang/Optimizer/Dialect/CUF/CUFOps.td
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/include/flang/Optimizer/Dialect/FIRType.h
    M flang/include/flang/Optimizer/Dialect/FIRTypes.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROpBase.td
    M flang/include/flang/Optimizer/HLFIR/HLFIROps.td
    M flang/include/flang/Optimizer/HLFIR/Passes.td
    M flang/include/flang/Optimizer/OpenACC/FIROpenACCTypeInterfaces.h
    M flang/include/flang/Optimizer/Support/DataLayout.h
    M flang/include/flang/Optimizer/Support/TypeCode.h
    M flang/include/flang/Optimizer/Support/Utils.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/message.h
    M flang/include/flang/Parser/parse-state.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/include/flang/Parser/parsing.h
    M flang/include/flang/Parser/user-state.h
    M flang/include/flang/Runtime/CUDA/allocatable.h
    A flang/include/flang/Runtime/CUDA/init.h
    M flang/include/flang/Runtime/CUDA/kernel.h
    A flang/include/flang/Runtime/CUDA/pointer.h
    M flang/include/flang/Runtime/descriptor-consts.h
    M flang/include/flang/Runtime/descriptor.h
    M flang/include/flang/Runtime/extensions.h
    M flang/include/flang/Runtime/random.h
    M flang/include/flang/Runtime/support.h
    M flang/include/flang/Runtime/type-code.h
    M flang/include/flang/Semantics/expression.h
    M flang/include/flang/Semantics/openmp-directive-sets.h
    M flang/include/flang/Semantics/openmp-modifiers.h
    M flang/include/flang/Semantics/scope.h
    M flang/include/flang/Semantics/semantics.h
    M flang/include/flang/Semantics/symbol.h
    M flang/include/flang/Semantics/tools.h
    M flang/include/flang/Semantics/type.h
    A flang/include/flang/Support/Fortran-features.h
    A flang/include/flang/Support/Fortran.h
    A flang/include/flang/Support/LangOptions.def
    A flang/include/flang/Support/LangOptions.h
    A flang/include/flang/Support/MathOptionsBase.def
    A flang/include/flang/Support/MathOptionsBase.h
    A flang/include/flang/Support/OpenMP-features.h
    A flang/include/flang/Support/OpenMP-utils.h
    A flang/include/flang/Support/Version.h
    A flang/include/flang/Support/default-kinds.h
    A flang/include/flang/Testing/fp-testing.h
    A flang/include/flang/Testing/testing.h
    M flang/include/flang/Tools/CrossToolHelpers.h
    M flang/include/flang/Tools/PointerModels.h
    M flang/include/flang/Tools/TargetSetup.h
    M flang/lib/CMakeLists.txt
    R flang/lib/Common/CMakeLists.txt
    R flang/lib/Common/Fortran-features.cpp
    R flang/lib/Common/Fortran.cpp
    R flang/lib/Common/LangOptions.cpp
    R flang/lib/Common/OpenMP-utils.cpp
    R flang/lib/Common/Version.cpp
    R flang/lib/Common/default-kinds.cpp
    R flang/lib/Common/idioms.cpp
    M flang/lib/Decimal/CMakeLists.txt
    M flang/lib/Evaluate/CMakeLists.txt
    M flang/lib/Evaluate/call.cpp
    M flang/lib/Evaluate/characteristics.cpp
    M flang/lib/Evaluate/check-expression.cpp
    M flang/lib/Evaluate/fold-implementation.h
    M flang/lib/Evaluate/formatting.cpp
    M flang/lib/Evaluate/intrinsics-library.cpp
    M flang/lib/Evaluate/intrinsics.cpp
    M flang/lib/Evaluate/shape.cpp
    M flang/lib/Evaluate/tools.cpp
    M flang/lib/Evaluate/type.cpp
    M flang/lib/Frontend/CMakeLists.txt
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/lib/Frontend/CompilerInvocation.cpp
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/Frontend/TextDiagnosticPrinter.cpp
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/CMakeLists.txt
    M flang/lib/Lower/CallInterface.cpp
    M flang/lib/Lower/ConvertCall.cpp
    M flang/lib/Lower/ConvertExpr.cpp
    M flang/lib/Lower/ConvertExprToHLFIR.cpp
    M flang/lib/Lower/ConvertVariable.cpp
    M flang/lib/Lower/HlfirIntrinsics.cpp
    M flang/lib/Lower/IterationSpace.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/ClauseProcessor.h
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M flang/lib/Lower/OpenMP/Clauses.h
    M flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
    M flang/lib/Lower/OpenMP/DataSharingProcessor.h
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/lib/Lower/OpenMP/PrivateReductionUtils.cpp
    M flang/lib/Lower/OpenMP/PrivateReductionUtils.h
    M flang/lib/Lower/OpenMP/ReductionProcessor.cpp
    M flang/lib/Lower/OpenMP/ReductionProcessor.h
    M flang/lib/Lower/OpenMP/Utils.cpp
    A flang/lib/Lower/Support/Utils.cpp
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Analysis/CMakeLists.txt
    M flang/lib/Optimizer/Builder/FIRBuilder.cpp
    M flang/lib/Optimizer/Builder/HLFIRTools.cpp
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Intrinsics.cpp
    M flang/lib/Optimizer/Builder/Runtime/Main.cpp
    M flang/lib/Optimizer/CodeGen/BoxedProcedure.cpp
    M flang/lib/Optimizer/CodeGen/CMakeLists.txt
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/lib/Optimizer/CodeGen/CodeGenOpenMP.cpp
    M flang/lib/Optimizer/CodeGen/TargetRewrite.cpp
    M flang/lib/Optimizer/CodeGen/TypeConverter.cpp
    M flang/lib/Optimizer/Dialect/CUF/CUFToLLVMIRTranslation.cpp
    M flang/lib/Optimizer/Dialect/FIROps.cpp
    M flang/lib/Optimizer/Dialect/FIRType.cpp
    M flang/lib/Optimizer/HLFIR/IR/HLFIROps.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/BufferizeHLFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/ConvertToFIR.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/LowerHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/OptimizedBufferization.cpp
    M flang/lib/Optimizer/HLFIR/Transforms/SimplifyHLFIRIntrinsics.cpp
    M flang/lib/Optimizer/OpenACC/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/FIROpenACCTypeInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/RegisterOpenACCExtensions.cpp
    M flang/lib/Optimizer/OpenMP/CMakeLists.txt
    M flang/lib/Optimizer/OpenMP/GenericLoopConversion.cpp
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/lib/Optimizer/OpenMP/MapsForPrivatizedSymbols.cpp
    M flang/lib/Optimizer/Passes/CMakeLists.txt
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Support/DataLayout.cpp
    M flang/lib/Optimizer/Transforms/AbstractResult.cpp
    M flang/lib/Optimizer/Transforms/AddDebugInfo.cpp
    M flang/lib/Optimizer/Transforms/AssumedRankOpConversion.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    M flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
    M flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    M flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    M flang/lib/Optimizer/Transforms/CUFOpConversion.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.cpp
    M flang/lib/Optimizer/Transforms/DebugTypeGenerator.h
    M flang/lib/Optimizer/Transforms/ExternalNameConversion.cpp
    M flang/lib/Optimizer/Transforms/LoopVersioning.cpp
    M flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
    M flang/lib/Optimizer/Transforms/SimplifyIntrinsics.cpp
    M flang/lib/Optimizer/Transforms/StackReclaim.cpp
    M flang/lib/Optimizer/Transforms/VScaleAttr.cpp
    M flang/lib/Parser/CMakeLists.txt
    M flang/lib/Parser/Fortran-parsers.cpp
    M flang/lib/Parser/basic-parsers.h
    M flang/lib/Parser/openmp-parsers.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/CMakeLists.txt
    M flang/lib/Semantics/assignment.cpp
    M flang/lib/Semantics/assignment.h
    M flang/lib/Semantics/canonicalize-directives.cpp
    M flang/lib/Semantics/check-call.cpp
    M flang/lib/Semantics/check-coarray.cpp
    M flang/lib/Semantics/check-cuda.cpp
    M flang/lib/Semantics/check-declarations.cpp
    M flang/lib/Semantics/check-io.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M flang/lib/Semantics/check-omp-structure.h
    M flang/lib/Semantics/check-return.cpp
    M flang/lib/Semantics/check-select-rank.cpp
    M flang/lib/Semantics/check-stop.cpp
    M flang/lib/Semantics/data-to-inits.h
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/mod-file.cpp
    M flang/lib/Semantics/openmp-modifiers.cpp
    M flang/lib/Semantics/resolve-directives.cpp
    M flang/lib/Semantics/resolve-labels.cpp
    M flang/lib/Semantics/resolve-names-utils.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/semantics.cpp
    M flang/lib/Semantics/symbol.cpp
    M flang/lib/Semantics/tools.cpp
    M flang/lib/Support/CMakeLists.txt
    A flang/lib/Support/Fortran-features.cpp
    A flang/lib/Support/Fortran.cpp
    A flang/lib/Support/LangOptions.cpp
    A flang/lib/Support/OpenMP-utils.cpp
    A flang/lib/Support/Version.cpp
    A flang/lib/Support/default-kinds.cpp
    A flang/lib/Support/idioms.cpp
    A flang/lib/Testing/CMakeLists.txt
    A flang/lib/Testing/fp-testing.cpp
    A flang/lib/Testing/testing.cpp
    M flang/module/__cuda_device.f90
    M flang/module/cudadevice.f90
    M flang/runtime/CMakeLists.txt
    M flang/runtime/CUDA/CMakeLists.txt
    M flang/runtime/CUDA/allocatable.cpp
    M flang/runtime/CUDA/allocator.cpp
    A flang/runtime/CUDA/init.cpp
    M flang/runtime/CUDA/kernel.cpp
    A flang/runtime/CUDA/pointer.cpp
    M flang/runtime/Float128Math/CMakeLists.txt
    M flang/runtime/ISO_Fortran_binding.cpp
    M flang/runtime/ISO_Fortran_util.h
    M flang/runtime/allocatable.cpp
    M flang/runtime/environment.cpp
    M flang/runtime/environment.h
    M flang/runtime/exceptions.cpp
    M flang/runtime/extensions.cpp
    M flang/runtime/io-api.cpp
    M flang/runtime/pointer.cpp
    M flang/runtime/stat.h
    M flang/runtime/stop.cpp
    M flang/runtime/temporary-stack.cpp
    M flang/runtime/time-intrinsic.cpp
    M flang/runtime/tools.h
    M flang/test/Analysis/AliasAnalysis/alias-analysis-2.fir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-private-allocatable.mlir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-teams-distribute-private-ptr.mlir
    M flang/test/Analysis/AliasAnalysis/alias-analysis-omp-teams-distribute-private.mlir
    A flang/test/Analysis/AliasAnalysis/alias-analysis-target.fir
    A flang/test/Analysis/AliasAnalysis/load-ptr-alloca.fir
    M flang/test/CMakeLists.txt
    M flang/test/Driver/ctofortran.f90
    M flang/test/Driver/dump-pft.f90
    M flang/test/Driver/exec.f90
    M flang/test/Driver/fast-math.f90
    A flang/test/Driver/fno-zero-init.f90
    M flang/test/Driver/fsave-main-program.f90
    M flang/test/Driver/func-attr-fast-math.f90
    M flang/test/Driver/gcc-toolchain-install-dir.f90
    M flang/test/Driver/linker-flags.f90
    A flang/test/Driver/mabi-riscv.f90
    M flang/test/Driver/msvc-dependent-lib-flags.f90
    M flang/test/Driver/nostdlib.f90
    R flang/test/Driver/omp-cse-region-boundary.f90
    M flang/test/Driver/omp-driver-offload.f90
    A flang/test/Evaluate/bug123766.f90
    A flang/test/Evaluate/bug124191.f90
    A flang/test/Evaluate/bug124618.f90
    M flang/test/Evaluate/errors01.f90
    A flang/test/Evaluate/fold-arr-char-component.f90
    M flang/test/Evaluate/fold-ieee.f90
    M flang/test/Evaluate/folding09.f90
    M flang/test/Evaluate/folding18.f90
    M flang/test/Evaluate/rewrite-out_of_range.F90
    M flang/test/Fir/CUDA/cuda-alloc-free.fir
    M flang/test/Fir/CUDA/cuda-allocate.fir
    M flang/test/Fir/CUDA/cuda-code-gen.mlir
    M flang/test/Fir/CUDA/cuda-data-transfer.fir
    M flang/test/Fir/CUDA/cuda-gpu-launch-func.mlir
    M flang/test/Fir/CUDA/cuda-implicit-device-global.f90
    M flang/test/Fir/CUDA/cuda-launch.fir
    M flang/test/Fir/OpenACC/openacc-mappable.fir
    A flang/test/Fir/OpenACC/openacc-type-categories.f90
    M flang/test/Fir/alloc.fir
    M flang/test/Fir/arrayset.fir
    M flang/test/Fir/arrexp.fir
    M flang/test/Fir/box-offset-codegen.fir
    M flang/test/Fir/box.fir
    M flang/test/Fir/boxproc-openmp.fir
    M flang/test/Fir/boxproc.fir
    M flang/test/Fir/commute.fir
    M flang/test/Fir/convert-to-llvm.fir
    M flang/test/Fir/coordinateof.fir
    M flang/test/Fir/embox.fir
    M flang/test/Fir/field-index.fir
    M flang/test/Fir/fir-ops.fir
    M flang/test/Fir/ignore-missing-type-descriptor.fir
    M flang/test/Fir/pdt.fir
    M flang/test/Fir/polymorphic.fir
    M flang/test/Fir/rebox-global.fir
    M flang/test/Fir/rebox.fir
    M flang/test/Fir/simplify-region-lite-after-inliner.fir
    M flang/test/Fir/struct-passing-x86-64-byval.fir
    M flang/test/Fir/target-rewrite-complex-10-x86.fir
    A flang/test/Fir/target-rewrite-indirect-calls.fir
    M flang/test/Fir/target.fir
    M flang/test/Fir/type-descriptor.fir
    M flang/test/HLFIR/assign-codegen.fir
    A flang/test/HLFIR/elemental-with-empty-check-codegen.fir
    M flang/test/HLFIR/get_length_codegen.fir
    A flang/test/HLFIR/getextent-codegen.fir
    M flang/test/HLFIR/invalid.fir
    M flang/test/HLFIR/maxval-elemental.fir
    M flang/test/HLFIR/maxval-lowering.fir
    M flang/test/HLFIR/minval-elemental.fir
    M flang/test/HLFIR/opt-variable-assign-omp.fir
    A flang/test/HLFIR/reshape-lowering.fir
    A flang/test/HLFIR/reshape.fir
    A flang/test/HLFIR/simplify-hlfir-intrinsics-reshape.fir
    R flang/test/HLFIR/unroll-loops.fir
    M flang/test/Integration/OpenMP/copyprivate.f90
    M flang/test/Integration/OpenMP/map-types-and-sizes.f90
    M flang/test/Integration/OpenMP/parallel-private-reduction-worstcase.f90
    M flang/test/Integration/OpenMP/private-global.f90
    A flang/test/Integration/abi-indirect-call.f90
    A flang/test/Integration/debug-common-block-1.f90
    A flang/test/Integration/debug-cyclic-derived-type-3.f90
    M flang/test/Integration/debug-local-var-2.f90
    M flang/test/Integration/unroll-loops.f90
    A flang/test/Integration/unroll.f90
    M flang/test/Intrinsics/math-codegen.fir
    M flang/test/Lower/CUDA/cuda-allocatable.cuf
    M flang/test/Lower/CUDA/cuda-device-proc.cuf
    M flang/test/Lower/CUDA/cuda-devptr.cuf
    A flang/test/Lower/CUDA/cuda-init.cuf
    M flang/test/Lower/CUDA/cuda-intrinsic.cuf
    A flang/test/Lower/HLFIR/call-issue-124043.f90
    M flang/test/Lower/HLFIR/calls-constant-expr-arg.f90
    M flang/test/Lower/HLFIR/calls-f77.f90
    M flang/test/Lower/HLFIR/convert-variable.f90
    M flang/test/Lower/HLFIR/elemental-intrinsics.f90
    M flang/test/Lower/HLFIR/maxloc.f90
    M flang/test/Lower/HLFIR/maxval.f90
    M flang/test/Lower/HLFIR/minloc.f90
    M flang/test/Lower/HLFIR/minval.f90
    A flang/test/Lower/HLFIR/reshape.f90
    M flang/test/Lower/HLFIR/sum.f90
    A flang/test/Lower/HLFIR/unroll-loops.fir
    M flang/test/Lower/Intrinsics/abs.f90
    M flang/test/Lower/Intrinsics/acos.f90
    M flang/test/Lower/Intrinsics/acosh.f90
    M flang/test/Lower/Intrinsics/adjustl.f90
    M flang/test/Lower/Intrinsics/adjustr.f90
    M flang/test/Lower/Intrinsics/aint.f90
    M flang/test/Lower/Intrinsics/anint.f90
    M flang/test/Lower/Intrinsics/any.f90
    M flang/test/Lower/Intrinsics/asin.f90
    M flang/test/Lower/Intrinsics/asinh.f90
    M flang/test/Lower/Intrinsics/atanh.f90
    A flang/test/Lower/Intrinsics/chdir.f90
    M flang/test/Lower/Intrinsics/dot_product.f90
    M flang/test/Lower/Intrinsics/exponent.f90
    M flang/test/Lower/Intrinsics/fma_real16.f90
    M flang/test/Lower/Intrinsics/fraction.f90
    M flang/test/Lower/Intrinsics/ieee_class_queries.f90
    M flang/test/Lower/Intrinsics/ieee_is_normal.f90
    M flang/test/Lower/Intrinsics/ieee_next.f90
    A flang/test/Lower/Intrinsics/ierrno.f90
    M flang/test/Lower/Intrinsics/isnan.f90
    M flang/test/Lower/Intrinsics/mod.f90
    M flang/test/Lower/Intrinsics/modulo.f90
    M flang/test/Lower/Intrinsics/nearest.f90
    M flang/test/Lower/Intrinsics/norm2.f90
    M flang/test/Lower/Intrinsics/parity.f90
    M flang/test/Lower/Intrinsics/powi_real16.f90
    M flang/test/Lower/Intrinsics/random_number_real16.f90
    M flang/test/Lower/Intrinsics/reduce.f90
    M flang/test/Lower/Intrinsics/rrspacing.f90
    M flang/test/Lower/Intrinsics/scale.f90
    M flang/test/Lower/Intrinsics/set_exponent.f90
    M flang/test/Lower/Intrinsics/sign.f90
    M flang/test/Lower/Intrinsics/spacing.f90
    M flang/test/Lower/Intrinsics/storage_size-2.f90
    M flang/test/Lower/OpenACC/acc-bounds.f90
    A flang/test/Lower/OpenACC/acc-data-operands-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-data-operands.f90
    A flang/test/Lower/OpenACC/acc-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-data.f90
    A flang/test/Lower/OpenACC/acc-declare-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-declare.f90
    A flang/test/Lower/OpenACC/acc-enter-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-enter-data.f90
    A flang/test/Lower/OpenACC/acc-exit-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-exit-data.f90
    A flang/test/Lower/OpenACC/acc-host-data-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-host-data.f90
    M flang/test/Lower/OpenACC/acc-kernels-loop.f90
    M flang/test/Lower/OpenACC/acc-kernels.f90
    M flang/test/Lower/OpenACC/acc-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel-loop.f90
    M flang/test/Lower/OpenACC/acc-parallel.f90
    A flang/test/Lower/OpenACC/acc-private-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-private.f90
    A flang/test/Lower/OpenACC/acc-reduction-unwrap-defaultbounds.f90
    M flang/test/Lower/OpenACC/acc-reduction.f90
    M flang/test/Lower/OpenACC/acc-serial-loop.f90
    M flang/test/Lower/OpenACC/acc-serial.f90
    M flang/test/Lower/OpenACC/acc-set.f90
    M flang/test/Lower/OpenACC/acc-update.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/distribute-standalone-private.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/equivalence.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-allocatable.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-multiple-variables.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/target-private-simple.f90
    M flang/test/Lower/OpenMP/DelayedPrivatization/wsloop.f90
    A flang/test/Lower/OpenMP/Todo/allocate-clause-align.f90
    A flang/test/Lower/OpenMP/Todo/allocate-clause-allocator.f90
    A flang/test/Lower/OpenMP/Todo/dispatch.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-exec.f90
    A flang/test/Lower/OpenMP/Todo/metadirective-spec.f90
    R flang/test/Lower/OpenMP/Todo/reduction-inscan.f90
    R flang/test/Lower/OpenMP/Todo/reduction-modifiers.f90
    M flang/test/Lower/OpenMP/Todo/reduction-task.f90
    R flang/test/Lower/OpenMP/Todo/task_untied.f90
    M flang/test/Lower/OpenMP/cfg-conversion-omp.private.f90
    M flang/test/Lower/OpenMP/copyin.f90
    M flang/test/Lower/OpenMP/copyprivate.f90
    M flang/test/Lower/OpenMP/default-clause-byref.f90
    M flang/test/Lower/OpenMP/delayed-privatization-allocatable-array.f90
    M flang/test/Lower/OpenMP/delayed-privatization-allocatable-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-allocatable-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-array.f90
    M flang/test/Lower/OpenMP/delayed-privatization-character-array.f90
    M flang/test/Lower/OpenMP/delayed-privatization-character.f90
    M flang/test/Lower/OpenMP/delayed-privatization-default-init.f90
    M flang/test/Lower/OpenMP/delayed-privatization-firstprivate.f90
    A flang/test/Lower/OpenMP/delayed-privatization-lastprivate-of-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-pointer.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private-firstprivate.f90
    M flang/test/Lower/OpenMP/delayed-privatization-private.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction-byref.f90
    M flang/test/Lower/OpenMP/delayed-privatization-reduction.f90
    M flang/test/Lower/OpenMP/derived-type-allocatable.f90
    A flang/test/Lower/OpenMP/different_vars_lastprivate_barrier.f90
    M flang/test/Lower/OpenMP/firstprivate-alloc-comp.f90
    M flang/test/Lower/OpenMP/implicit-dsa.f90
    A flang/test/Lower/OpenMP/lastprivate-simd.f90
    M flang/test/Lower/OpenMP/loop-directive.f90
    M flang/test/Lower/OpenMP/parallel-firstprivate-clause-scalar.f90
    M flang/test/Lower/OpenMP/parallel-private-clause-fixes.f90
    M flang/test/Lower/OpenMP/parallel-private-clause-str.f90
    M flang/test/Lower/OpenMP/parallel-private-clause.f90
    M flang/test/Lower/OpenMP/parallel-reduction-allocatable-array.f90
    M flang/test/Lower/OpenMP/parallel-reduction-mixed.f90
    M flang/test/Lower/OpenMP/parallel-reduction-pointer-array.f90
    M flang/test/Lower/OpenMP/parallel-wsloop-firstpriv.f90
    A flang/test/Lower/OpenMP/pointer-to-array.f90
    M flang/test/Lower/OpenMP/private-commonblock.f90
    M flang/test/Lower/OpenMP/private-derived-type.f90
    M flang/test/Lower/OpenMP/same_var_first_lastprivate.f90
    A flang/test/Lower/OpenMP/scan.f90
    M flang/test/Lower/OpenMP/sections.f90
    M flang/test/Lower/OpenMP/simd.f90
    M flang/test/Lower/OpenMP/task.f90
    M flang/test/Lower/OpenMP/task2.f90
    M flang/test/Lower/OpenMP/unstructured.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-allocatable-array-minmax.f90
    M flang/test/Lower/OpenMP/wsloop-reduction-array.f90
    M flang/test/Lower/PowerPC/ppc-vec-load-elem-order.f90
    M flang/test/Lower/PowerPC/ppc-vec-load.f90
    M flang/test/Lower/PowerPC/ppc-vec-splat-elem-order.f90
    M flang/test/Lower/PowerPC/ppc-vec-splat.f90
    A flang/test/Lower/RISCV/riscv-target-abi.f90
    M flang/test/Lower/allocatable-polymorphic.f90
    M flang/test/Lower/array.f90
    M flang/test/Lower/assignment.f90
    M flang/test/Lower/basic-function.f90
    M flang/test/Lower/common-block.f90
    M flang/test/Lower/components.f90
    M flang/test/Lower/control-flow.f90
    M flang/test/Lower/derived-assignments.f90
    M flang/test/Lower/dummy-procedure.f90
    A flang/test/Lower/entry-statement-init.f90
    M flang/test/Lower/equivalence-static-init.f90
    M flang/test/Lower/forall/array-subscripts.f90
    M flang/test/Lower/forall/character-1.f90
    M flang/test/Lower/fsave-main-program.f90
    M flang/test/Lower/math-lowering/abs.f90
    M flang/test/Lower/math-lowering/aint.f90
    M flang/test/Lower/math-lowering/anint.f90
    M flang/test/Lower/math-lowering/sign.f90
    M flang/test/Lower/module_use.f90
    M flang/test/Lower/pause-statement.f90
    M flang/test/Lower/polymorphic.f90
    M flang/test/Lower/real-descriptors.f90
    M flang/test/Lower/real-operations-1.f90
    M flang/test/Lower/trigonometric-intrinsics.f90
    A flang/test/Lower/unroll.f90
    A flang/test/Lower/zero_init.f90
    A flang/test/Lower/zero_init_default_init.f90
    M flang/test/Parser/OpenMP/declare-mapper-unparse.f90
    A flang/test/Parser/OpenMP/dispatch.f90
    M flang/test/Parser/OpenMP/in-reduction-clause.f90
    A flang/test/Parser/OpenMP/metadirective-dirspec.f90
    A flang/test/Parser/OpenMP/metadirective-v50.f90
    A flang/test/Parser/OpenMP/metadirective.f90
    M flang/test/Parser/OpenMP/sentinels.f
    M flang/test/Parser/compiler-directives.f90
    M flang/test/Runtime/no-cpp-dep.c
    A flang/test/Semantics/OpenMP/cray-pointer-usage.f90
    A flang/test/Semantics/OpenMP/declare-target08.f90
    A flang/test/Semantics/OpenMP/dispatch.f90
    M flang/test/Semantics/OpenMP/doconcurrent01.f90
    A flang/test/Semantics/OpenMP/forall.f90
    A flang/test/Semantics/OpenMP/metadirective-common.f90
    A flang/test/Semantics/OpenMP/metadirective-construct.f90
    A flang/test/Semantics/OpenMP/metadirective-device.f90
    A flang/test/Semantics/OpenMP/metadirective-implementation.f90
    A flang/test/Semantics/OpenMP/metadirective-user.f90
    M flang/test/Semantics/OpenMP/nested-target.f90
    M flang/test/Semantics/OpenMP/nested-teams.f90
    A flang/test/Semantics/OpenMP/reduction-derived-component.f90
    A flang/test/Semantics/OpenMP/task-untied01.f90
    M flang/test/Semantics/atomic01.f90
    M flang/test/Semantics/atomic02.f90
    M flang/test/Semantics/atomic03.f90
    M flang/test/Semantics/atomic04.f90
    M flang/test/Semantics/atomic05.f90
    M flang/test/Semantics/atomic06.f90
    M flang/test/Semantics/atomic07.f90
    M flang/test/Semantics/atomic08.f90
    M flang/test/Semantics/atomic09.f90
    M flang/test/Semantics/atomic10.f90
    M flang/test/Semantics/atomic11.f90
    M flang/test/Semantics/bind-c06.f90
    A flang/test/Semantics/bug123534.f90
    A flang/test/Semantics/bug123538.f90
    A flang/test/Semantics/bug124487.f90
    A flang/test/Semantics/bug124621.f90
    A flang/test/Semantics/bug124716.f90
    A flang/test/Semantics/bug124731.f90
    A flang/test/Semantics/bug12477.f90
    A flang/test/Semantics/bug124976.f90
    M flang/test/Semantics/call04.f90
    M flang/test/Semantics/call08.f90
    M flang/test/Semantics/call13.f90
    M flang/test/Semantics/call38.f90
    M flang/test/Semantics/complex01.f90
    M flang/test/Semantics/critical02.f90
    M flang/test/Semantics/cuf-device-procedures01.cuf
    M flang/test/Semantics/cuf03.cuf
    M flang/test/Semantics/cuf09.cuf
    A flang/test/Semantics/cuf18.cuf
    M flang/test/Semantics/doconcurrent01.f90
    M flang/test/Semantics/event01b.f90
    M flang/test/Semantics/event02b.f90
    M flang/test/Semantics/event_query.f90
    A flang/test/Semantics/implicit17.f90
    M flang/test/Semantics/kinds01.f90
    M flang/test/Semantics/kinds02.f90
    M flang/test/Semantics/kinds04_q10.f90
    A flang/test/Semantics/label19.f90
    M flang/test/Semantics/loop-directives.f90
    A flang/test/Semantics/modfile71.F90
    M flang/test/Semantics/reduce.cuf
    M flang/test/Semantics/resolve110.f90
    M flang/test/Semantics/resolve41.f90
    M flang/test/Semantics/self-use.f90
    M flang/test/Semantics/sync-stat-list.f90
    M flang/test/Transforms/constant-argument-globalisation.fir
    A flang/test/Transforms/debug-common-block.fir
    M flang/test/Transforms/debug-module-1.fir
    M flang/test/Transforms/debug-module-2.fir
    M flang/test/Transforms/generic-loop-rewriting-todo.mlir
    M flang/test/Transforms/generic-loop-rewriting.mlir
    M flang/test/Transforms/loop-versioning.fir
    M flang/test/Transforms/omp-maps-for-privatized-symbols.fir
    M flang/test/Transforms/simplifyintrinsics.fir
    M flang/test/lib/OpenACC/TestOpenACCInterfaces.cpp
    M flang/test/lit.cfg.py
    M flang/test/lit.site.cfg.py.in
    M flang/tools/bbc/CMakeLists.txt
    M flang/tools/bbc/bbc.cpp
    M flang/tools/f18-parse-demo/CMakeLists.txt
    M flang/tools/f18-parse-demo/f18-parse-demo.cpp
    M flang/tools/f18/CMakeLists.txt
    M flang/tools/tco/CMakeLists.txt
    M flang/unittests/CMakeLists.txt
    M flang/unittests/Evaluate/CMakeLists.txt
    M flang/unittests/Evaluate/ISO-Fortran-binding.cpp
    M flang/unittests/Evaluate/bit-population-count.cpp
    M flang/unittests/Evaluate/expression.cpp
    M flang/unittests/Evaluate/folding.cpp
    R flang/unittests/Evaluate/fp-testing.cpp
    R flang/unittests/Evaluate/fp-testing.h
    M flang/unittests/Evaluate/integer.cpp
    M flang/unittests/Evaluate/intrinsics.cpp
    M flang/unittests/Evaluate/leading-zero-bit-count.cpp
    M flang/unittests/Evaluate/logical.cpp
    M flang/unittests/Evaluate/real.cpp
    M flang/unittests/Evaluate/reshape.cpp
    R flang/unittests/Evaluate/testing.cpp
    R flang/unittests/Evaluate/testing.h
    M flang/unittests/Evaluate/uint128.cpp
    M flang/unittests/Frontend/CMakeLists.txt
    M flang/unittests/Runtime/CMakeLists.txt
    M flang/unittests/Runtime/CUDA/Allocatable.cpp
    M flang/unittests/Runtime/CUDA/AllocatorCUF.cpp
    M flang/unittests/Runtime/CUDA/CMakeLists.txt
    M flang/unittests/Runtime/CUDA/Memory.cpp
    M flang/unittests/Runtime/Pointer.cpp
    M flang/unittests/Runtime/TemporaryStack.cpp
    M libc/CMakeLists.txt
    M libc/benchmarks/distributions/README.md
    M libc/benchmarks/gpu/CMakeLists.txt
    A libc/cmake/caches/gpu.cmake
    A libc/cmake/modules/LLVMLibCCheckMPC.cmake
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/cmake/modules/LLVMLibCFlagRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/config/baremetal/aarch64/entrypoints.txt
    M libc/config/baremetal/aarch64/headers.txt
    M libc/config/baremetal/arm/entrypoints.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/config.json
    M libc/config/baremetal/riscv/entrypoints.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/config/config.json
    M libc/config/gpu/amdgpu/entrypoints.txt
    M libc/config/gpu/nvptx/entrypoints.txt
    M libc/config/linux/aarch64/entrypoints.txt
    M libc/config/linux/aarch64/headers.txt
    M libc/config/linux/arm/entrypoints.txt
    M libc/config/linux/riscv/entrypoints.txt
    M libc/config/linux/x86_64/entrypoints.txt
    M libc/config/linux/x86_64/headers.txt
    M libc/docs/CMakeLists.txt
    M libc/docs/configure.rst
    M libc/docs/dev/printf_behavior.rst
    M libc/docs/dev/undefined_behavior.rst
    M libc/docs/gpu/building.rst
    M libc/docs/gpu/rpc.rst
    M libc/docs/headers/index.rst
    M libc/docs/headers/math/index.rst
    M libc/docs/headers/math/stdfix.rst
    M libc/docs/index.rst
    M libc/docs/platform_support.rst
    M libc/fuzzing/__support/CMakeLists.txt
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/nfds_t.h
    R libc/hdr/types/sighandler_t.h
    A libc/hdr/types/struct_pollfd.h
    M libc/include/CMakeLists.txt
    M libc/include/__llvm-libc-common.h
    R libc/include/ctype.h.def
    M libc/include/ctype.yaml
    M libc/include/dlfcn.yaml
    A libc/include/endian.h.def
    A libc/include/endian.yaml
    M libc/include/llvm-libc-macros/CMakeLists.txt
    A libc/include/llvm-libc-macros/endian-macros.h
    M libc/include/llvm-libc-macros/features-macros.h
    M libc/include/llvm-libc-macros/gpu/signal-macros.h
    M libc/include/llvm-libc-macros/limits-macros.h
    M libc/include/llvm-libc-macros/linux/CMakeLists.txt
    A libc/include/llvm-libc-macros/linux/poll-macros.h
    M libc/include/llvm-libc-macros/linux/signal-macros.h
    M libc/include/llvm-libc-macros/linux/sys-wait-macros.h
    A libc/include/llvm-libc-macros/poll-macros.h
    M libc/include/llvm-libc-macros/pthread-macros.h
    M libc/include/llvm-libc-macros/unistd-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    R libc/include/llvm-libc-types/__sighandler_t.h
    A libc/include/llvm-libc-types/nfds_t.h
    A libc/include/llvm-libc-types/sighandler_t.h
    A libc/include/llvm-libc-types/struct_pollfd.h
    M libc/include/llvm-libc-types/struct_sigaction.h
    M libc/include/llvm-libc-types/struct_tm.h
    M libc/include/locale.h.def
    M libc/include/locale.yaml
    R libc/include/malloc.h.def
    M libc/include/malloc.yaml
    M libc/include/math.h.def
    M libc/include/math.yaml
    A libc/include/poll.h.def
    A libc/include/poll.yaml
    M libc/include/pthread.yaml
    M libc/include/setjmp.h.def
    M libc/include/setjmp.yaml
    M libc/include/signal.yaml
    M libc/include/spawn.yaml
    M libc/include/stdfix.yaml
    A libc/include/stdlib-malloc.yaml
    M libc/include/stdlib.h.def
    M libc/include/stdlib.yaml
    M libc/include/string.h.def
    M libc/include/string.yaml
    M libc/include/strings.yaml
    M libc/include/sys/resource.yaml
    M libc/include/sys/time.h.def
    M libc/include/sys/time.yaml
    M libc/include/sys/uio.yaml
    M libc/include/time.yaml
    M libc/include/unistd.yaml
    M libc/include/wchar.h.def
    M libc/include/wchar.yaml
    M libc/src/CMakeLists.txt
    M libc/src/__support/CMakeLists.txt
    M libc/src/__support/CPP/CMakeLists.txt
    M libc/src/__support/CPP/algorithm.h
    M libc/src/__support/CPP/bit.h
    M libc/src/__support/CPP/span.h
    M libc/src/__support/CPP/type_traits.h
    M libc/src/__support/FPUtil/CMakeLists.txt
    M libc/src/__support/FPUtil/FMA.h
    M libc/src/__support/FPUtil/double_double.h
    M libc/src/__support/FPUtil/dyadic_float.h
    M libc/src/__support/FPUtil/except_value_utils.h
    M libc/src/__support/FPUtil/multiply_add.h
    M libc/src/__support/GPU/utils.h
    M libc/src/__support/big_int.h
    A libc/src/__support/complex_basic_ops.h
    M libc/src/__support/complex_type.h
    M libc/src/__support/fixed_point/CMakeLists.txt
    M libc/src/__support/fixed_point/fx_bits.h
    M libc/src/__support/fixed_point/fx_rep.h
    M libc/src/__support/integer_to_string.h
    M libc/src/__support/macros/null_check.h
    M libc/src/__support/macros/optimization.h
    M libc/src/__support/sign.h
    M libc/src/__support/threads/linux/CMakeLists.txt
    M libc/src/__support/threads/spin_lock.h
    M libc/src/__support/time/windows/CMakeLists.txt
    M libc/src/complex/generic/CMakeLists.txt
    M libc/src/complex/generic/conj.cpp
    M libc/src/complex/generic/conjf.cpp
    M libc/src/complex/generic/conjf128.cpp
    M libc/src/complex/generic/conjf16.cpp
    M libc/src/complex/generic/conjl.cpp
    M libc/src/complex/generic/cproj.cpp
    M libc/src/complex/generic/cprojf.cpp
    M libc/src/complex/generic/cprojf128.cpp
    M libc/src/complex/generic/cprojf16.cpp
    M libc/src/complex/generic/cprojl.cpp
    M libc/src/dirent/readdir.h
    M libc/src/math/CMakeLists.txt
    A libc/src/math/asinf16.h
    M libc/src/math/generic/CMakeLists.txt
    A libc/src/math/generic/asinf16.cpp
    M libc/src/math/generic/atan2f.cpp
    A libc/src/math/generic/atan2f_float.h
    M libc/src/math/generic/pow.cpp
    M libc/src/math/generic/range_reduction_double_common.h
    M libc/src/math/generic/range_reduction_double_fma.h
    M libc/src/math/generic/range_reduction_double_nofma.h
    M libc/src/math/generic/sqrtf128.cpp
    M libc/src/math/nvptx/CMakeLists.txt
    A libc/src/poll/CMakeLists.txt
    A libc/src/poll/linux/CMakeLists.txt
    A libc/src/poll/linux/poll.cpp
    A libc/src/poll/poll.h
    M libc/src/setjmp/setjmp_impl.h
    M libc/src/signal/linux/CMakeLists.txt
    M libc/src/signal/linux/signal.cpp
    M libc/src/signal/signal.h
    M libc/src/stdfix/CMakeLists.txt
    A libc/src/stdfix/countlshk.cpp
    A libc/src/stdfix/countlshk.h
    A libc/src/stdfix/countlshr.cpp
    A libc/src/stdfix/countlshr.h
    A libc/src/stdfix/countlsk.cpp
    A libc/src/stdfix/countlsk.h
    A libc/src/stdfix/countlslk.cpp
    A libc/src/stdfix/countlslk.h
    A libc/src/stdfix/countlslr.cpp
    A libc/src/stdfix/countlslr.h
    A libc/src/stdfix/countlsr.cpp
    A libc/src/stdfix/countlsr.h
    A libc/src/stdfix/countlsuhk.cpp
    A libc/src/stdfix/countlsuhk.h
    A libc/src/stdfix/countlsuhr.cpp
    A libc/src/stdfix/countlsuhr.h
    A libc/src/stdfix/countlsuk.cpp
    A libc/src/stdfix/countlsuk.h
    A libc/src/stdfix/countlsulk.cpp
    A libc/src/stdfix/countlsulk.h
    A libc/src/stdfix/countlsulr.cpp
    A libc/src/stdfix/countlsulr.h
    A libc/src/stdfix/countlsur.cpp
    A libc/src/stdfix/countlsur.h
    M libc/src/stdio/printf_core/CMakeLists.txt
    M libc/src/stdio/printf_core/converter_atlas.h
    A libc/src/stdio/printf_core/float_dec_converter_limited.h
    M libc/src/stdlib/CMakeLists.txt
    M libc/src/stdlib/gpu/free.cpp
    M libc/src/stdlib/gpu/malloc.cpp
    M libc/src/string/CMakeLists.txt
    M libc/src/string/allocating_string_utils.h
    M libc/src/string/memory_utils/aarch64/inline_bcmp.h
    M libc/src/string/memory_utils/aarch64/inline_memset.h
    M libc/src/string/memory_utils/generic/builtin.h
    M libc/src/string/memory_utils/inline_bcmp.h
    M libc/src/string/memory_utils/inline_bzero.h
    M libc/src/string/memory_utils/inline_memmem.h
    M libc/src/string/memory_utils/inline_memmove.h
    M libc/src/string/memory_utils/inline_strcmp.h
    M libc/src/string/memory_utils/inline_strstr.h
    M libc/src/string/memory_utils/op_aarch64.h
    M libc/src/string/memory_utils/op_builtin.h
    M libc/src/string/memory_utils/op_generic.h
    M libc/src/string/memory_utils/op_riscv.h
    M libc/src/string/memory_utils/op_x86.h
    M libc/src/string/memory_utils/riscv/inline_bcmp.h
    M libc/src/string/memory_utils/riscv/inline_memcmp.h
    M libc/src/string/memory_utils/riscv/inline_memcpy.h
    M libc/src/string/memory_utils/riscv/inline_memmove.h
    M libc/src/string/memory_utils/riscv/inline_memset.h
    M libc/src/string/memory_utils/utils.h
    M libc/src/string/memory_utils/x86_64/inline_bcmp.h
    M libc/src/string/memory_utils/x86_64/inline_memset.h
    M libc/src/string/string_utils.h
    M libc/src/sys/uio/CMakeLists.txt
    M libc/src/sys/uio/linux/CMakeLists.txt
    A libc/src/sys/uio/linux/readv.cpp
    M libc/src/sys/uio/linux/writev.cpp
    A libc/src/sys/uio/readv.h
    M libc/src/sys/wait/wait4Impl.h
    M libc/src/time/CMakeLists.txt
    M libc/src/time/mktime.cpp
    A libc/src/time/strftime.cpp
    A libc/src/time/strftime.h
    A libc/src/time/strftime_core/CMakeLists.txt
    A libc/src/time/strftime_core/composite_converter.h
    A libc/src/time/strftime_core/converter.cpp
    A libc/src/time/strftime_core/converter.h
    A libc/src/time/strftime_core/core_structs.h
    A libc/src/time/strftime_core/num_converter.h
    A libc/src/time/strftime_core/parser.h
    A libc/src/time/strftime_core/str_converter.h
    A libc/src/time/strftime_core/strftime_main.cpp
    A libc/src/time/strftime_core/strftime_main.h
    M libc/src/time/time_constants.h
    M libc/src/time/time_utils.cpp
    M libc/src/time/time_utils.h
    M libc/src/unistd/CMakeLists.txt
    M libc/src/unistd/linux/CMakeLists.txt
    A libc/src/unistd/linux/setsid.cpp
    A libc/src/unistd/setsid.h
    M libc/src/wchar/CMakeLists.txt
    A libc/src/wchar/wcslen.cpp
    A libc/src/wchar/wcslen.h
    M libc/test/UnitTest/FPExceptMatcher.cpp
    M libc/test/UnitTest/FPMatcher.h
    M libc/test/UnitTest/LibcTest.h
    M libc/test/integration/src/__support/GPU/CMakeLists.txt
    A libc/test/integration/src/__support/GPU/shuffle.cpp
    M libc/test/integration/src/pthread/pthread_mutex_test.cpp
    M libc/test/src/CMakeLists.txt
    M libc/test/src/__support/CMakeLists.txt
    M libc/test/src/__support/CPP/bit_test.cpp
    M libc/test/src/__support/File/CMakeLists.txt
    M libc/test/src/__support/integer_to_string_test.cpp
    M libc/test/src/compiler/stack_chk_guard_test.cpp
    M libc/test/src/complex/CMakeLists.txt
    M libc/test/src/complex/cprojf_test.cpp
    M libc/test/src/math/CMakeLists.txt
    M libc/test/src/math/SqrtTest.h
    A libc/test/src/math/asinf16_test.cpp
    M libc/test/src/math/exhaustive/CMakeLists.txt
    M libc/test/src/math/exhaustive/exhaustive_test.h
    M libc/test/src/math/performance_testing/CMakeLists.txt
    A libc/test/src/math/performance_testing/sqrtf128_perf.cpp
    M libc/test/src/math/smoke/CMakeLists.txt
    M libc/test/src/math/smoke/SqrtTest.h
    A libc/test/src/math/smoke/asinf16_test.cpp
    M libc/test/src/math/smoke/cospif16_test.cpp
    M libc/test/src/math/smoke/exp2m1f16_test.cpp
    M libc/test/src/math/smoke/generic_sqrt_test.cpp
    M libc/test/src/math/smoke/generic_sqrtf128_test.cpp
    M libc/test/src/math/smoke/generic_sqrtf_test.cpp
    M libc/test/src/math/smoke/generic_sqrtl_test.cpp
    M libc/test/src/math/smoke/nan_test.cpp
    M libc/test/src/math/smoke/nanf128_test.cpp
    M libc/test/src/math/smoke/nanf16_test.cpp
    M libc/test/src/math/smoke/nanf_test.cpp
    M libc/test/src/math/smoke/nanl_test.cpp
    M libc/test/src/math/smoke/sinpif16_test.cpp
    M libc/test/src/math/smoke/sqrt_test.cpp
    M libc/test/src/math/smoke/sqrtf128_test.cpp
    M libc/test/src/math/smoke/sqrtf16_test.cpp
    M libc/test/src/math/smoke/sqrtf_test.cpp
    M libc/test/src/math/smoke/sqrtl_test.cpp
    A libc/test/src/poll/CMakeLists.txt
    A libc/test/src/poll/poll_test.cpp
    M libc/test/src/setjmp/CMakeLists.txt
    M libc/test/src/setjmp/setjmp_test.cpp
    M libc/test/src/signal/CMakeLists.txt
    M libc/test/src/signal/signal_test.cpp
    M libc/test/src/stdbit/stdc_bit_ceil_uc_test.cpp
    M libc/test/src/stdbit/stdc_bit_ceil_us_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_one_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_one_us_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_zero_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_leading_zero_us_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_one_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_one_us_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_zero_uc_test.cpp
    M libc/test/src/stdbit/stdc_first_trailing_zero_us_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_uc_test.cpp
    M libc/test/src/stdbit/stdc_has_single_bit_us_test.cpp
    M libc/test/src/stdbit/stdc_leading_ones_uc_test.cpp
    M libc/test/src/stdbit/stdc_leading_ones_us_test.cpp
    M libc/test/src/stdbit/stdc_leading_zeros_uc_test.cpp
    M libc/test/src/stdbit/stdc_leading_zeros_us_test.cpp
    M libc/test/src/stdbit/stdc_trailing_ones_uc_test.cpp
    M libc/test/src/stdbit/stdc_trailing_ones_us_test.cpp
    M libc/test/src/stdbit/stdc_trailing_zeros_uc_test.cpp
    M libc/test/src/stdbit/stdc_trailing_zeros_us_test.cpp
    M libc/test/src/stdfix/CMakeLists.txt
    A libc/test/src/stdfix/CountlsTest.h
    A libc/test/src/stdfix/countlshk_test.cpp
    A libc/test/src/stdfix/countlshr_test.cpp
    A libc/test/src/stdfix/countlsk_test.cpp
    A libc/test/src/stdfix/countlslk_test.cpp
    A libc/test/src/stdfix/countlslr_test.cpp
    A libc/test/src/stdfix/countlsr_test.cpp
    A libc/test/src/stdfix/countlsuhk_test.cpp
    A libc/test/src/stdfix/countlsuhr_test.cpp
    A libc/test/src/stdfix/countlsuk_test.cpp
    A libc/test/src/stdfix/countlsulk_test.cpp
    A libc/test/src/stdfix/countlsulr_test.cpp
    A libc/test/src/stdfix/countlsur_test.cpp
    M libc/test/src/stdio/CMakeLists.txt
    M libc/test/src/stdio/fileop_test.cpp
    M libc/test/src/stdio/sprintf_test.cpp
    M libc/test/src/stdlib/CMakeLists.txt
    M libc/test/src/sys/resource/CMakeLists.txt
    M libc/test/src/sys/select/CMakeLists.txt
    M libc/test/src/sys/sendfile/CMakeLists.txt
    M libc/test/src/sys/uio/CMakeLists.txt
    A libc/test/src/sys/uio/readv_test.cpp
    M libc/test/src/sys/uio/writev_test.cpp
    M libc/test/src/sys/wait/CMakeLists.txt
    M libc/test/src/time/CMakeLists.txt
    A libc/test/src/time/strftime_test.cpp
    M libc/test/src/unistd/CMakeLists.txt
    A libc/test/src/unistd/setsid_test.cpp
    M libc/test/src/wchar/CMakeLists.txt
    A libc/test/src/wchar/wcslen_test.cpp
    M libc/utils/CMakeLists.txt
    A libc/utils/MPCWrapper/CMakeLists.txt
    A libc/utils/MPCWrapper/MPCUtils.cpp
    A libc/utils/MPCWrapper/MPCUtils.h
    A libc/utils/MPCWrapper/check_mpc.cpp
    M libc/utils/MPFRWrapper/CMakeLists.txt
    A libc/utils/MPFRWrapper/MPCommon.cpp
    A libc/utils/MPFRWrapper/MPCommon.h
    M libc/utils/MPFRWrapper/MPFRUtils.cpp
    M libc/utils/MPFRWrapper/MPFRUtils.h
    M libc/utils/docgen/aio.yaml
    A libc/utils/docgen/cpio.yaml
    M libc/utils/docgen/docgen.py
    A libc/utils/docgen/endian.yaml
    M libc/utils/docgen/net/if.yaml
    M libc/utils/docgen/netinet/in.yaml
    M libc/utils/docgen/sys/resource.yaml
    M libc/utils/docgen/sys/stat.yaml
    A libc/utils/docgen/sys/statvfs.yaml
    M libc/utils/docgen/sys/time.yaml
    M libc/utils/docgen/sys/wait.yaml
    M libc/utils/docgen/termios.yaml
    A libc/utils/docgen/unistd.yaml
    M libc/utils/gpu/server/CMakeLists.txt
    M libc/utils/hdrgen/enumeration.py
    M libc/utils/hdrgen/function.py
    M libc/utils/hdrgen/gpu_headers.py
    M libc/utils/hdrgen/header.py
    M libc/utils/hdrgen/macro.py
    M libc/utils/hdrgen/main.py
    M libc/utils/hdrgen/object.py
    A libc/utils/hdrgen/tests/expected_output/subdir/test.h
    M libc/utils/hdrgen/tests/expected_output/test_header.h
    A libc/utils/hdrgen/tests/input/merge1.yaml
    A libc/utils/hdrgen/tests/input/merge2.yaml
    A libc/utils/hdrgen/tests/input/subdir/test.yaml
    M libc/utils/hdrgen/tests/input/test_small.h.def
    M libc/utils/hdrgen/tests/input/test_small.yaml
    M libc/utils/hdrgen/tests/test_integration.py
    M libc/utils/hdrgen/type.py
    M libc/utils/hdrgen/yaml_to_classes.py
    M libc/utils/mathtools/worst_case.sollya
    M libclc/CMakeLists.txt
    R libclc/amdgcn-mesa3d
    M libclc/amdgcn/lib/SOURCES
    R libclc/amdgcn/lib/integer/popcount.cl
    R libclc/amdgcn/lib/integer/popcount.inc
    M libclc/amdgpu/lib/SOURCES
    R libclc/amdgpu/lib/math/nextafter.cl
    A libclc/clc/include/clc/clc_convert.h
    M libclc/clc/include/clc/clcmacro.h
    M libclc/clc/include/clc/common/clc_degrees.h
    M libclc/clc/include/clc/common/clc_radians.h
    A libclc/clc/include/clc/common/clc_sign.h
    A libclc/clc/include/clc/float/definitions.h
    M libclc/clc/include/clc/integer/clc_abs.h
    M libclc/clc/include/clc/integer/clc_abs_diff.h
    A libclc/clc/include/clc/integer/clc_add_sat.h
    A libclc/clc/include/clc/integer/clc_clz.h
    A libclc/clc/include/clc/integer/clc_hadd.h
    A libclc/clc/include/clc/integer/clc_mad24.h
    A libclc/clc/include/clc/integer/clc_mad_hi.h
    A libclc/clc/include/clc/integer/clc_mad_sat.h
    A libclc/clc/include/clc/integer/clc_mul24.h
    A libclc/clc/include/clc/integer/clc_mul_hi.h
    A libclc/clc/include/clc/integer/clc_popcount.h
    A libclc/clc/include/clc/integer/clc_rhadd.h
    A libclc/clc/include/clc/integer/clc_rotate.h
    A libclc/clc/include/clc/integer/clc_sub_sat.h
    A libclc/clc/include/clc/integer/clc_upsample.h
    A libclc/clc/include/clc/integer/definitions.h
    A libclc/clc/include/clc/integer/gentype24.inc
    A libclc/clc/include/clc/math/binary_decl_with_scalar_second_arg.inc
    A libclc/clc/include/clc/math/clc_copysign.h
    A libclc/clc/include/clc/math/clc_mad.h
    A libclc/clc/include/clc/math/clc_nextafter.h
    A libclc/clc/include/clc/math/clc_subnormal_config.h
    M libclc/clc/include/clc/math/gentype.inc
    A libclc/clc/include/clc/math/math.h
    A libclc/clc/include/clc/math/tables.h
    M libclc/clc/include/clc/relational/clc_all.h
    M libclc/clc/include/clc/relational/clc_any.h
    M libclc/clc/include/clc/relational/clc_isequal.h
    M libclc/clc/include/clc/relational/clc_isfinite.h
    M libclc/clc/include/clc/relational/clc_isgreater.h
    M libclc/clc/include/clc/relational/clc_isgreaterequal.h
    M libclc/clc/include/clc/relational/clc_isinf.h
    M libclc/clc/include/clc/relational/clc_isless.h
    M libclc/clc/include/clc/relational/clc_islessequal.h
    M libclc/clc/include/clc/relational/clc_islessgreater.h
    M libclc/clc/include/clc/relational/clc_isnan.h
    M libclc/clc/include/clc/relational/clc_isnormal.h
    M libclc/clc/include/clc/relational/clc_isnotequal.h
    M libclc/clc/include/clc/relational/clc_isordered.h
    M libclc/clc/include/clc/relational/clc_isunordered.h
    M libclc/clc/include/clc/relational/clc_select.h
    R libclc/clc/include/clc/relational/clc_select.inc
    A libclc/clc/include/clc/relational/clc_select_decl.inc
    A libclc/clc/include/clc/relational/clc_select_impl.inc
    M libclc/clc/include/clc/relational/clc_signbit.h
    M libclc/clc/include/clc/relational/relational.h
    A libclc/clc/include/clc/shared/binary_decl.inc
    A libclc/clc/include/clc/shared/binary_def.inc
    M libclc/clc/include/clc/shared/clc_max.h
    M libclc/clc/include/clc/shared/clc_min.h
    A libclc/clc/include/clc/shared/ternary_decl.inc
    A libclc/clc/include/clc/shared/ternary_def.inc
    A libclc/clc/include/clc/shared/unary_decl.inc
    A libclc/clc/include/clc/shared/unary_def.inc
    R libclc/clc/lib/clspv/SOURCES
    R libclc/clc/lib/clspv64
    M libclc/clc/lib/generic/SOURCES
    A libclc/clc/lib/generic/common/clc_sign.cl
    A libclc/clc/lib/generic/common/clc_sign.inc
    A libclc/clc/lib/generic/integer/clc_add_sat.cl
    A libclc/clc/lib/generic/integer/clc_clz.cl
    A libclc/clc/lib/generic/integer/clc_hadd.cl
    A libclc/clc/lib/generic/integer/clc_hadd.inc
    A libclc/clc/lib/generic/integer/clc_mad24.cl
    A libclc/clc/lib/generic/integer/clc_mad24.inc
    A libclc/clc/lib/generic/integer/clc_mad_sat.cl
    A libclc/clc/lib/generic/integer/clc_mul24.cl
    A libclc/clc/lib/generic/integer/clc_mul24.inc
    A libclc/clc/lib/generic/integer/clc_mul_hi.cl
    A libclc/clc/lib/generic/integer/clc_popcount.cl
    A libclc/clc/lib/generic/integer/clc_rhadd.cl
    A libclc/clc/lib/generic/integer/clc_rhadd.inc
    A libclc/clc/lib/generic/integer/clc_rotate.cl
    A libclc/clc/lib/generic/integer/clc_rotate.inc
    A libclc/clc/lib/generic/integer/clc_sub_sat.cl
    A libclc/clc/lib/generic/integer/clc_upsample.cl
    A libclc/clc/lib/generic/math/clc_copysign.cl
    A libclc/clc/lib/generic/math/clc_mad.cl
    A libclc/clc/lib/generic/math/clc_mad.inc
    A libclc/clc/lib/generic/math/clc_nextafter.cl
    M libclc/clc/lib/generic/relational/clc_all.cl
    M libclc/clc/lib/generic/relational/clc_any.cl
    M libclc/clc/lib/generic/relational/clc_bitselect.cl
    M libclc/clc/lib/generic/relational/clc_isequal.cl
    M libclc/clc/lib/generic/relational/clc_isfinite.cl
    M libclc/clc/lib/generic/relational/clc_isgreater.cl
    M libclc/clc/lib/generic/relational/clc_isgreaterequal.cl
    M libclc/clc/lib/generic/relational/clc_isinf.cl
    M libclc/clc/lib/generic/relational/clc_isless.cl
    M libclc/clc/lib/generic/relational/clc_islessequal.cl
    M libclc/clc/lib/generic/relational/clc_islessgreater.cl
    M libclc/clc/lib/generic/relational/clc_isnan.cl
    M libclc/clc/lib/generic/relational/clc_isnormal.cl
    M libclc/clc/lib/generic/relational/clc_isnotequal.cl
    M libclc/clc/lib/generic/relational/clc_isordered.cl
    M libclc/clc/lib/generic/relational/clc_isunordered.cl
    M libclc/clc/lib/generic/relational/clc_select.cl
    R libclc/clc/lib/generic/relational/clc_select.inc
    M libclc/clc/lib/generic/relational/clc_signbit.cl
    R libclc/clc/lib/spirv/SOURCES
    R libclc/clc/lib/spirv64/SOURCES
    M libclc/clspv/lib/SOURCES
    M libclc/clspv/lib/math/fma.cl
    R libclc/clspv/lib/math/nextafter.cl
    R libclc/clspv/lib/math/nextafter.inc
    M libclc/clspv/lib/subnormal_config.cl
    R libclc/clspv64
    M libclc/generic/include/clc/convert.h
    R libclc/generic/include/clc/float/definitions.h
    M libclc/generic/include/clc/integer/clz.h
    R libclc/generic/include/clc/integer/clz.inc
    R libclc/generic/include/clc/integer/definitions.h
    M libclc/generic/include/clc/integer/hadd.h
    R libclc/generic/include/clc/integer/hadd.inc
    M libclc/generic/include/clc/integer/mad24.h
    R libclc/generic/include/clc/integer/mad24.inc
    M libclc/generic/include/clc/integer/mad_hi.h
    M libclc/generic/include/clc/integer/mul24.h
    R libclc/generic/include/clc/integer/mul24.inc
    M libclc/generic/include/clc/integer/mul_hi.h
    R libclc/generic/include/clc/integer/mul_hi.inc
    M libclc/generic/include/clc/integer/popcount.h
    M libclc/generic/include/clc/integer/rhadd.h
    R libclc/generic/include/clc/integer/rhadd.inc
    M libclc/generic/include/clc/integer/upsample.h
    R libclc/generic/include/clc/math/binary_decl.inc
    M libclc/generic/include/clc/math/fma.h
    M libclc/generic/include/clc/math/fmax.h
    M libclc/generic/include/clc/math/fmin.h
    M libclc/generic/include/clc/math/mad.h
    R libclc/generic/include/clc/math/ternary_decl.inc
    M libclc/generic/include/clc/relational/select.h
    R libclc/generic/include/clc/relational/select.inc
    R libclc/generic/include/config.h
    R libclc/generic/include/integer/popcount.h
    R libclc/generic/include/integer/unary_intrin.inc
    M libclc/generic/include/math/clc_fma.h
    M libclc/generic/include/math/clc_ldexp.h
    R libclc/generic/include/math/clc_nextafter.h
    M libclc/generic/lib/SOURCES
    M libclc/generic/lib/common/mix.cl
    M libclc/generic/lib/common/mix.inc
    M libclc/generic/lib/common/sign.cl
    M libclc/generic/lib/gen_convert.py
    M libclc/generic/lib/integer/add_sat.cl
    M libclc/generic/lib/integer/clz.cl
    M libclc/generic/lib/integer/hadd.cl
    R libclc/generic/lib/integer/hadd.inc
    M libclc/generic/lib/integer/mad24.cl
    R libclc/generic/lib/integer/mad24.inc
    A libclc/generic/lib/integer/mad_hi.cl
    M libclc/generic/lib/integer/mad_sat.cl
    M libclc/generic/lib/integer/mul24.cl
    R libclc/generic/lib/integer/mul24.inc
    M libclc/generic/lib/integer/mul_hi.cl
    M libclc/generic/lib/integer/popcount.cl
    M libclc/generic/lib/integer/rhadd.cl
    R libclc/generic/lib/integer/rhadd.inc
    M libclc/generic/lib/integer/rotate.cl
    R libclc/generic/lib/integer/rotate.inc
    M libclc/generic/lib/integer/sub_sat.cl
    M libclc/generic/lib/integer/upsample.cl
    M libclc/generic/lib/math/acos.cl
    M libclc/generic/lib/math/acosh.cl
    M libclc/generic/lib/math/acospi.cl
    M libclc/generic/lib/math/asin.cl
    M libclc/generic/lib/math/asinh.cl
    M libclc/generic/lib/math/asinpi.cl
    M libclc/generic/lib/math/atan.cl
    M libclc/generic/lib/math/atan2.cl
    M libclc/generic/lib/math/atan2pi.cl
    M libclc/generic/lib/math/atanh.cl
    M libclc/generic/lib/math/atanpi.cl
    M libclc/generic/lib/math/cbrt.cl
    M libclc/generic/lib/math/clc_exp10.cl
    M libclc/generic/lib/math/clc_fma.cl
    M libclc/generic/lib/math/clc_fmod.cl
    M libclc/generic/lib/math/clc_hypot.cl
    M libclc/generic/lib/math/clc_ldexp.cl
    R libclc/generic/lib/math/clc_nextafter.cl
    M libclc/generic/lib/math/clc_pow.cl
    M libclc/generic/lib/math/clc_pown.cl
    M libclc/generic/lib/math/clc_powr.cl
    M libclc/generic/lib/math/clc_remainder.cl
    M libclc/generic/lib/math/clc_remquo.cl
    M libclc/generic/lib/math/clc_rootn.cl
    M libclc/generic/lib/math/clc_tan.cl
    M libclc/generic/lib/math/clc_tanpi.cl
    M libclc/generic/lib/math/copysign.cl
    M libclc/generic/lib/math/cos.cl
    M libclc/generic/lib/math/cosh.cl
    M libclc/generic/lib/math/cospi.cl
    M libclc/generic/lib/math/ep_log.cl
    M libclc/generic/lib/math/ep_log.h
    M libclc/generic/lib/math/erf.cl
    M libclc/generic/lib/math/erfc.cl
    M libclc/generic/lib/math/exp.cl
    M libclc/generic/lib/math/exp2.cl
    M libclc/generic/lib/math/exp_helper.cl
    M libclc/generic/lib/math/expm1.cl
    M libclc/generic/lib/math/fdim.cl
    M libclc/generic/lib/math/fma.cl
    M libclc/generic/lib/math/ilogb.cl
    M libclc/generic/lib/math/ldexp.cl
    M libclc/generic/lib/math/lgamma.cl
    M libclc/generic/lib/math/lgamma_r.cl
    M libclc/generic/lib/math/log10.cl
    M libclc/generic/lib/math/log1p.cl
    M libclc/generic/lib/math/log2.cl
    M libclc/generic/lib/math/log_base.h
    M libclc/generic/lib/math/logb.cl
    M libclc/generic/lib/math/mad.cl
    R libclc/generic/lib/math/mad.inc
    R libclc/generic/lib/math/math.h
    M libclc/generic/lib/math/modf.cl
    M libclc/generic/lib/math/nextafter.cl
    M libclc/generic/lib/math/sin.cl
    M libclc/generic/lib/math/sincos_helpers.cl
    M libclc/generic/lib/math/sincos_helpers.h
    M libclc/generic/lib/math/sincospiF_piby4.h
    M libclc/generic/lib/math/sinh.cl
    M libclc/generic/lib/math/sinpi.cl
    M libclc/generic/lib/math/tables.cl
    R libclc/generic/lib/math/tables.h
    M libclc/generic/lib/math/tanh.cl
    M libclc/generic/lib/math/tgamma.cl
    M libclc/generic/lib/relational/bitselect.cl
    M libclc/generic/lib/relational/bitselect.inc
    M libclc/generic/lib/relational/select.cl
    R libclc/generic/lib/relational/select.inc
    M libclc/generic/lib/subnormal_config.cl
    R libclc/ptx/lib/SOURCES
    R libclc/ptx/lib/math/nextafter.cl
    M libclc/r600/lib/math/fmax.cl
    M libclc/r600/lib/math/fmin.cl
    M libclc/spirv/lib/subnormal_config.cl
    R libclc/spirv64/lib/SOURCES
    R libclc/spirv64/lib/math/fma.cl
    R libclc/spirv64/lib/math/fma.inc
    R libclc/spirv64/lib/subnormal_config.cl
    M libcxx/docs/CodingGuidelines.rst
    M libcxx/docs/FeatureTestMacroTable.rst
    M libcxx/docs/Hardening.rst
    M libcxx/docs/ReleaseNotes.rst
    M libcxx/docs/ReleaseNotes/20.rst
    A libcxx/docs/ReleaseNotes/21.rst
    M libcxx/docs/Status/Cxx17Papers.csv
    M libcxx/docs/Status/Cxx20Issues.csv
    M libcxx/docs/Status/Cxx23Papers.csv
    M libcxx/docs/Status/FormatPaper.csv
    M libcxx/docs/TestingLibcxx.rst
    M libcxx/docs/index.rst
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/copy.h
    M libcxx/include/__algorithm/copy_backward.h
    M libcxx/include/__algorithm/fill_n.h
    M libcxx/include/__algorithm/make_projected.h
    M libcxx/include/__algorithm/pstl.h
    M libcxx/include/__algorithm/radix_sort.h
    M libcxx/include/__algorithm/stable_sort.h
    M libcxx/include/__bit_reference
    M libcxx/include/__chrono/convert_to_tm.h
    M libcxx/include/__chrono/exception.h
    M libcxx/include/__chrono/formatter.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__chrono/local_info.h
    M libcxx/include/__chrono/ostream.h
    M libcxx/include/__chrono/sys_info.h
    A libcxx/include/__chrono/tai_clock.h
    M libcxx/include/__chrono/time_zone.h
    M libcxx/include/__chrono/time_zone_link.h
    M libcxx/include/__chrono/tzdb.h
    M libcxx/include/__chrono/tzdb_list.h
    A libcxx/include/__chrono/utc_clock.h
    M libcxx/include/__chrono/zoned_time.h
    M libcxx/include/__compare/compare_three_way_result.h
    M libcxx/include/__config
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__configuration/compiler.h
    M libcxx/include/__cxx03/__locale_dir/locale_base_api/android.h
    M libcxx/include/__cxx03/__memory/uninitialized_algorithms.h
    M libcxx/include/__filesystem/path.h
    M libcxx/include/__flat_map/flat_map.h
    A libcxx/include/__flat_map/flat_multimap.h
    A libcxx/include/__flat_map/sorted_equivalent.h
    A libcxx/include/__flat_map/utils.h
    M libcxx/include/__format/buffer.h
    M libcxx/include/__format/escaped_output_table.h
    M libcxx/include/__format/extended_grapheme_cluster_table.h
    M libcxx/include/__format/format_arg.h
    M libcxx/include/__format/format_functions.h
    M libcxx/include/__format/formatter.h
    M libcxx/include/__format/indic_conjunct_break_table.h
    M libcxx/include/__format/width_estimation_table.h
    M libcxx/include/__functional/bind.h
    M libcxx/include/__functional/function.h
    M libcxx/include/__functional/hash.h
    M libcxx/include/__functional/is_transparent.h
    M libcxx/include/__functional/mem_fn.h
    M libcxx/include/__functional/reference_wrapper.h
    M libcxx/include/__fwd/bit_reference.h
    M libcxx/include/__hash_table
    M libcxx/include/__locale
    M libcxx/include/__locale_dir/locale_base_api.h
    M libcxx/include/__locale_dir/locale_base_api/android.h
    M libcxx/include/__locale_dir/support/bsd_like.h
    M libcxx/include/__locale_dir/support/fuchsia.h
    M libcxx/include/__locale_dir/support/windows.h
    M libcxx/include/__memory/construct_at.h
    A libcxx/include/__memory/destroy.h
    M libcxx/include/__memory/ranges_construct_at.h
    A libcxx/include/__memory/ranges_destroy.h
    M libcxx/include/__memory/shared_ptr.h
    M libcxx/include/__memory/uninitialized_algorithms.h
    M libcxx/include/__memory/unique_ptr.h
    M libcxx/include/__new/allocate.h
    M libcxx/include/__numeric/pstl.h
    M libcxx/include/__pstl/backends/libdispatch.h
    M libcxx/include/__ranges/range_adaptor.h
    M libcxx/include/__string/constexpr_c_functions.h
    M libcxx/include/__tree
    M libcxx/include/__type_traits/add_cv_quals.h
    M libcxx/include/__type_traits/add_lvalue_reference.h
    M libcxx/include/__type_traits/add_pointer.h
    M libcxx/include/__type_traits/add_rvalue_reference.h

  Log Message:
  -----------
  Merge branch 'main' into users/ylzsx/r-call36


Compare: https://github.com/llvm/llvm-project/compare/a624904d2aee...03645eff7e50

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