[all-commits] [llvm/llvm-project] ba1b86: [AMDGPU] Modifies fdot2 builtin def to take _Float...

Peter Collingbourne via All-commits all-commits at lists.llvm.org
Tue Jan 13 11:13:09 PST 2026


  Branch: refs/heads/users/pcc/spr/main.codegen-introduce-machinefunctiongetpreferredalignment
  Home:   https://github.com/llvm/llvm-project
  Commit: ba1b867cea3ed91d228b1468a8ba21213f57ea4a
      https://github.com/llvm/llvm-project/commit/ba1b867cea3ed91d228b1468a8ba21213f57ea4a
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/test/CodeGenHIP/builtins-amdgcn-dl-insts.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx11-dl-insts.hip

  Log Message:
  -----------
  [AMDGPU] Modifies fdot2 builtin def to take _Float16 for HIP/C++ (#174527)

For dl `__builtin_amdgcn_fdot2` builtins, using 'x' in the def so that
it will take _Float16 for HIP/C++ and half for OpenCL.


  Commit: 686ba67a1aef82d13e9368e1babaf6ce96ecf738
      https://github.com/llvm/llvm-project/commit/686ba67a1aef82d13e9368e1babaf6ce96ecf738
  Author: Simon Wallis <simon.wallis2 at arm.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
    M llvm/test/tools/llvm-exegesis/AArch64/all-opcodes.test
    M llvm/test/tools/llvm-exegesis/AArch64/setReg_init_check.s
    M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp

  Log Message:
  -----------
  [llvm-exegesis] Add AArch64 operand initializers, SetRegTo (#169912)

Make llvm-exegesis more usable on AArch64 by doing the following:

Add some missing exegesis handling of register classes;
Add some missing LLVM AArch64 OperandTypes.

Llvm-exegesis can now handle many more AArch64 instructions.

AArch64 load/store instructions are not yet supported by llvm-exegesis,
until https://github.com/llvm/llvm-project/pull/144895 lands.

---------

Co-authored-by: Cullen Rhodes <cullen.rhodes at arm.com>


  Commit: 2bfb984a7c81a94a987a0aa33bfc1cb278bc2b45
      https://github.com/llvm/llvm-project/commit/2bfb984a7c81a94a987a0aa33bfc1cb278bc2b45
  Author: Stefan Schmidt <thrimbor.github at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/CodeGen/fat-lto-objects.c
    M clang/test/Driver/fat-lto-objects.c

  Log Message:
  -----------
  [clang] Enable fat-lto-object support for COFF targets (#172936)

This change allows using clang's `-ffat-lto-objects` flag with COFF
targets such as `i386-pc-win32`.

Follow-up to 759fb0a224e85c01fffcd42b1e71a4bea6fc757e from which it was
split off. The added tests are adapted from the pre-existing ELF tests.


  Commit: 9373dbdc000fcd85b70c7a39722bf774c9d6f5f9
      https://github.com/llvm/llvm-project/commit/9373dbdc000fcd85b70c7a39722bf774c9d6f5f9
  Author: Marcell Leleszi <mleleszi at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libc/.gitignore
    M libc/cmake/modules/LLVMLibCCompileOptionRules.cmake
    M libc/src/__support/CMakeLists.txt
    A libc/src/__support/wctype/CMakeLists.txt
    A libc/src/__support/wctype/wctype_classification_utils.h
    M libc/test/src/__support/CMakeLists.txt
    A libc/test/src/__support/wctype/CMakeLists.txt
    A libc/test/src/__support/wctype/wctype_classification_utils_test.cpp
    A libc/utils/wctype_utils/classification/__init__.py
    A libc/utils/wctype_utils/classification/gen_classification_data.py
    M libc/utils/wctype_utils/gen.py

  Log Message:
  -----------
  [libc][wctype] Create generation script for classification lookup tables (#172042)

[#172040](https://github.com/llvm/llvm-project/issues/172040)

This patch implements the scripts for generating the lookup tables and
associated utils for wctype classification functions. Not all Unicode
properties are covered as not all need a lookup table, the rest will be
hardcoded. The size of the generated tables is 47,8KB.


  Commit: 25becc3a854060c22b2a49568955a792a904d25a
      https://github.com/llvm/llvm-project/commit/25becc3a854060c22b2a49568955a792a904d25a
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/__configuration/availability.h

  Log Message:
  -----------
  [libc++] Warn when users request a deployment target below the minimum supported version (#172664)


  Commit: 56ce7ed72b8d17c7b55e74b58b35291f6c853f64
      https://github.com/llvm/llvm-project/commit/56ce7ed72b8d17c7b55e74b58b35291f6c853f64
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/test/Analysis/DependenceAnalysis/FlipFlopBaseAddress.ll
    M llvm/test/CodeGen/AArch64/aggressive-interleaving.ll
    M llvm/test/CodeGen/AArch64/apply-terminal-rule.mir
    M llvm/test/CodeGen/AArch64/speculation-hardening-sls-blr.mir
    M llvm/test/CodeGen/AArch64/tail-dup-redundant-phi.mir
    M llvm/test/CodeGen/AMDGPU/amdgpu-miscellaneous-uniform-intrinsic.ll
    M llvm/test/CodeGen/AMDGPU/amdgpu-uniform-intrinsic-combine.ll
    M llvm/test/CodeGen/AMDGPU/merge-load-store.mir
    M llvm/test/CodeGen/AMDGPU/wait-xcnt.mir
    M llvm/test/CodeGen/AMDGPU/waitcnt-looptest.ll
    M llvm/test/CodeGen/AMDGPU/wqm.ll
    M llvm/test/CodeGen/BPF/BTF/ptr-named-2.ll
    M llvm/test/CodeGen/BPF/unaligned_load_store.ll
    M llvm/test/CodeGen/Hexagon/and_mask_cmp0_sink.ll
    M llvm/test/CodeGen/Hexagon/autohvx/addi-offset-opt-addr-mode.ll
    M llvm/test/CodeGen/Hexagon/bittracker-regclass.ll
    M llvm/test/CodeGen/Hexagon/isel-fold-shl-zext.ll
    M llvm/test/CodeGen/Hexagon/mpy-operand-hoist.ll
    M llvm/test/CodeGen/Hexagon/swp-pragma-disable.ii
    M llvm/test/CodeGen/Hexagon/swp-pragma-initiation-interval.ii
    M llvm/test/CodeGen/MLRegAlloc/Inputs/input.ll
    M llvm/test/CodeGen/MLRegAlloc/Inputs/two-large-fcts.ll
    M llvm/test/CodeGen/MLRegAlloc/default-eviction-advisor.ll
    M llvm/test/CodeGen/MLRegAlloc/default-priority-advisor.ll
    M llvm/test/CodeGen/MLRegAlloc/dev-mode-log-2-fcts.ll
    M llvm/test/CodeGen/MLRegAlloc/empty-log.ll
    M llvm/test/CodeGen/Mips/GlobalISel/legalizer/load_split_because_of_memsize_or_align
    M llvm/test/CodeGen/RISCV/xandesbfhcvt.ll
    M llvm/test/CodeGen/RISCV/xqcilo.ll
    M llvm/test/CodeGen/RISCV/xqcisls.ll
    M llvm/test/CodeGen/SystemZ/debuginstr-cgp.mir
    M llvm/test/CodeGen/X86/conditional-tailcall-samedest.mir
    M llvm/test/CodeGen/X86/isel-fabs-x87.ll
    M llvm/test/CodeGen/X86/non-value-mem-operand.mir
    M llvm/test/Feature/testalloca.ll
    M llvm/test/Instrumentation/NumericalStabilitySanitizer/cfg.ll
    M llvm/test/Instrumentation/NumericalStabilitySanitizer/memory.ll
    M llvm/test/LTO/Resolution/X86/comdat.ll
    M llvm/test/Linker/2003-08-23-GlobalVarLinking.ll
    M llvm/test/Transforms/LoopVersioning/add-phi-update-users.ll
    M llvm/test/Transforms/PGOProfile/Inputs/cspgo_bar_sample.ll

  Log Message:
  -----------
  llvm: Convert some assorted lit tests to opaque pointers (#174564)

Some of the MIR test hit a bug where it errors if there is a
raw global reference as the referenced value. Worked around some
of those by just keeping a no-op bitcast constant expression.


  Commit: 3d59a4da940c2f4a56be13ab8cc3984405df6226
      https://github.com/llvm/llvm-project/commit/3d59a4da940c2f4a56be13ab8cc3984405df6226
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass.ll

  Log Message:
  -----------
  ValueTracking: Reapply remainder of fadd handling from #174290 (#174569)

Reapply the zero handling, reverted in
108a22ed5fa1836b4cfcd05e9d96f98a533068d5

The failing libc test should have been fixed by
e25eacf10c0d6718bad4e18e63757f97be9f9596


  Commit: b8f5cbba2abbe43e7b8475f7cd8cc1e9a7f463d7
      https://github.com/llvm/llvm-project/commit/b8f5cbba2abbe43e7b8475f7cd8cc1e9a7f463d7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  AMDGPU: clang-format AMDGPULowerKernelAttributes (#174567)


  Commit: 1caf2704dd6791baa4b958d6a666ea64ec24795d
      https://github.com/llvm/llvm-project/commit/1caf2704dd6791baa4b958d6a666ea64ec24795d
  Author: Qihan Cai <caiqihan021 at hotmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512dqvl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/masked_compressstore.ll
    M llvm/test/CodeGen/X86/masked_expandload.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter_widen.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    M llvm/test/CodeGen/X86/vector-reduce-and-bool.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v1.ll

  Log Message:
  -----------
  [X86] Allow EVEX compression for mask registers (#171980)

This patch extends the X86CompressEVEX pass to recognize and compress multi-instruction masking patterns to MOVMSK instructions. 

Fixes #171746


  Commit: 0e789a8a9c8a24d5538050df29c8a728deb3c922
      https://github.com/llvm/llvm-project/commit/0e789a8a9c8a24d5538050df29c8a728deb3c922
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/Constants.h

  Log Message:
  -----------
  Revert "Reapply [ConstantInt] Disable implicit truncation in ConstantInt::get() (#171456)"

This reverts commit d189b4966dc353145d645176dcb47d1269d33381.

Still causes assertion failures on some buildbots.


  Commit: 9a9376985388493c438efb4f4ddfcfef0b4569ed
      https://github.com/llvm/llvm-project/commit/9a9376985388493c438efb4f4ddfcfef0b4569ed
  Author: Adam Paszke <adam.paszke at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/GPU/IR/GPUBase.td
    M mlir/include/mlir/Dialect/GPU/IR/GPUOps.td
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.cpp
    M mlir/lib/Conversion/GPUCommon/GPUOpsLowering.h
    M mlir/lib/Conversion/GPUCommon/IndexIntrinsicsOpLowering.h
    M mlir/lib/Conversion/GPUToLLVMSPV/GPUToLLVMSPV.cpp
    M mlir/lib/Conversion/GPUToNVVM/LowerGpuOpsToNVVMOps.cpp
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/GPU/IR/InferIntRangeInterfaceImpls.cpp
    M mlir/test/Conversion/GPUToNVVM/gpu-to-nvvm.mlir
    A mlir/test/Dialect/GPU/int-range-interface-cluster.mlir

  Log Message:
  -----------
  [MLIR] Propagate known cluster sizes from gpu.launch to gpu.func (#174404)

This lets us properly annotate ranges for gpu.cluster_block_id and
gpu.cluster_dim_blocks. It also allows us to fill in the
nvvm.cluster_dim attribute for use in the NVVM backend.


  Commit: 047aaa5feac6c42707bdf2830982b575c066eca2
      https://github.com/llvm/llvm-project/commit/047aaa5feac6c42707bdf2830982b575c066eca2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/unittests/Analysis/AssumeBundleQueriesTest.cpp
    M llvm/unittests/Analysis/IRSimilarityIdentifierTest.cpp
    M llvm/unittests/Analysis/LoadsTest.cpp
    M llvm/unittests/Analysis/LoopInfoTest.cpp
    M llvm/unittests/Analysis/LoopNestTest.cpp
    M llvm/unittests/Analysis/MemoryProfileInfoTest.cpp
    M llvm/unittests/Analysis/MemorySSATest.cpp
    M llvm/unittests/Analysis/PluginInlineAdvisorAnalysisTest.cpp
    M llvm/unittests/Analysis/PluginInlineOrderAnalysisTest.cpp
    M llvm/unittests/Analysis/SparsePropagation.cpp
    M llvm/unittests/Bitcode/BitReaderTest.cpp
    M llvm/unittests/CodeGen/SelectionDAGTestBase.h
    M llvm/unittests/CodeGen/X86MCInstLowerTest.cpp
    M llvm/unittests/FuzzMutate/StrategiesTest.cpp
    M llvm/unittests/IR/AbstractCallSiteTest.cpp
    M llvm/unittests/IR/AttributesTest.cpp
    M llvm/unittests/IR/ConstantsTest.cpp
    M llvm/unittests/IR/DebugInfoTest.cpp
    M llvm/unittests/IR/LegacyPassManagerTest.cpp
    M llvm/unittests/IR/PatternMatch.cpp
    M llvm/unittests/IR/VPIntrinsicTest.cpp
    M llvm/unittests/IR/VerifierTest.cpp
    M llvm/unittests/Linker/LinkModulesTest.cpp
    M llvm/unittests/Transforms/Utils/CallPromotionUtilsTest.cpp
    M llvm/unittests/Transforms/Utils/CloningTest.cpp

  Log Message:
  -----------
  unittests: Convert some IR in unit tests to opaque pointers (#174562)


  Commit: 6f01dea5e2879ac84baca92f0e2d5336b586b484
      https://github.com/llvm/llvm-project/commit/6f01dea5e2879ac84baca92f0e2d5336b586b484
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/avx512-skx-insert-subvec.ll
    M llvm/test/CodeGen/X86/combine-rndscale.ll

  Log Message:
  -----------
  [X86] combineOr - attempt to concat `OR(X,KSHIFTL(Y,Elts/2))` sub-16-element masks (#174570)

We can't convert these to CONCAT_VECTORS/KUNPCK, but we might be able to
concat the operands directly.


  Commit: 1db53f1a6f8f9c7beb0d8d0919ea4e97abf0120d
      https://github.com/llvm/llvm-project/commit/1db53f1a6f8f9c7beb0d8d0919ea4e97abf0120d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/SPIRV/AtomicBuiltinsFloat.ll
    M llvm/test/CodeGen/SPIRV/ComparePointers.ll
    M llvm/test/CodeGen/SPIRV/EnqueueEmptyKernel.ll
    M llvm/test/CodeGen/SPIRV/ExecutionMode.ll
    M llvm/test/CodeGen/SPIRV/FOrdGreaterThanEqual_int.ll
    M llvm/test/CodeGen/SPIRV/SpecConstants/bool-spirv-specconstant.ll
    M llvm/test/CodeGen/SPIRV/TruncToBool.ll
    M llvm/test/CodeGen/SPIRV/atomicrmw.ll
    M llvm/test/CodeGen/SPIRV/basic_int_types_spirvdis.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitch32.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitch64.ll
    M llvm/test/CodeGen/SPIRV/branching/OpSwitchChar.ll
    M llvm/test/CodeGen/SPIRV/builtin_intrinsics_32.ll
    M llvm/test/CodeGen/SPIRV/builtin_intrinsics_64.ll
    M llvm/test/CodeGen/SPIRV/builtin_vars-decorate.ll
    M llvm/test/CodeGen/SPIRV/capability-Int64Atomics-store.ll
    M llvm/test/CodeGen/SPIRV/capability-Int64Atomics.ll
    M llvm/test/CodeGen/SPIRV/capability-kernel.ll
    M llvm/test/CodeGen/SPIRV/constant/global-constants.ll
    M llvm/test/CodeGen/SPIRV/debug-info/opname-filtering.ll
    M llvm/test/CodeGen/SPIRV/empty.ll
    M llvm/test/CodeGen/SPIRV/event_no_group_cap.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_EXT_shader_atomic_float_add/atomicrmw_faddfsub_float.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_fp_max_error/IntelFPMaxErrorFPMath.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_bit_instructions.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/decoration.ll
    M llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_float_controls2/disabled-on-amd.ll
    M llvm/test/CodeGen/SPIRV/function/alloca-load-store.ll
    M llvm/test/CodeGen/SPIRV/half_extension.ll
    M llvm/test/CodeGen/SPIRV/half_no_extension.ll
    M llvm/test/CodeGen/SPIRV/image-unoptimized.ll
    M llvm/test/CodeGen/SPIRV/instructions/atomic.ll
    M llvm/test/CodeGen/SPIRV/instructions/atomic_acqrel.ll
    M llvm/test/CodeGen/SPIRV/instructions/atomic_seq.ll
    M llvm/test/CodeGen/SPIRV/instructions/bitwise-i1.ll
    M llvm/test/CodeGen/SPIRV/instructions/ptrcmp.ll
    M llvm/test/CodeGen/SPIRV/linkage/linkage-types.ll
    M llvm/test/CodeGen/SPIRV/linked-list.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/abs.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/assume.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/bitreverse_small_type.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/bswap.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/ctpop.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/expect.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/fp-to-int-intrinsics.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/invariant.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memcpy.align.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memmove.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/memset.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/sqrt.ll
    M llvm/test/CodeGen/SPIRV/lshr-constexpr.ll
    M llvm/test/CodeGen/SPIRV/multi_md.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/get_global_offset.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/progvar_prog_scope_init.ll
    M llvm/test/CodeGen/SPIRV/opencl/basic/progvar_prog_scope_uninit.ll
    M llvm/test/CodeGen/SPIRV/opencl/device_execution/execute_block.ll
    M llvm/test/CodeGen/SPIRV/opencl/image.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-bitcast-or-param-users.ll
    M llvm/test/CodeGen/SPIRV/pointers/two-subsequent-bitcasts.ll
    M llvm/test/CodeGen/SPIRV/scoped_atomicrmw.ll
    M llvm/test/CodeGen/SPIRV/select-builtin.ll
    M llvm/test/CodeGen/SPIRV/simple.ll
    M llvm/test/CodeGen/SPIRV/sitofp-with-bool.ll
    M llvm/test/CodeGen/SPIRV/spec_const_decoration.ll
    M llvm/test/CodeGen/SPIRV/spirv-load-store.ll
    M llvm/test/CodeGen/SPIRV/spirv-tools-dis.ll
    M llvm/test/CodeGen/SPIRV/spirv_param_decorations_quals.ll
    M llvm/test/CodeGen/SPIRV/store.ll
    M llvm/test/CodeGen/SPIRV/transcoding/AtomicCompareExchangeExplicit_cl20.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BitReversePref.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange.ll
    M llvm/test/CodeGen/SPIRV/transcoding/BuildNDRange_2.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ConvertPtr.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationAlignment.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DecorationMaxByteOffset.ll
    M llvm/test/CodeGen/SPIRV/transcoding/DivRem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/GlobalFunAnnotate.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpAllAny.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpConstantBool.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpDot.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpGroupAllAny.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpGroupAsyncCopy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpImageQuerySize.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpImageReadMS.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpImageSampleExplicitLod.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpPhi_ArgumentsPlaceholders.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpVectorExtractDynamic.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpVectorInsertDynamic_i16.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_cmpxchg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/atomic_legacy.ll
    M llvm/test/CodeGen/SPIRV/transcoding/OpenCL/sub_group_mask.ll
    M llvm/test/CodeGen/SPIRV/transcoding/RelationalOperators.ll
    M llvm/test/CodeGen/SPIRV/transcoding/RelationalOperatorsFUnord.ll
    M llvm/test/CodeGen/SPIRV/transcoding/SampledImage.ll
    M llvm/test/CodeGen/SPIRV/transcoding/SpecConstantComposite.ll
    M llvm/test/CodeGen/SPIRV/transcoding/TransFNeg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/atomic_load_store.ll
    M llvm/test/CodeGen/SPIRV/transcoding/bitcast.ll
    M llvm/test/CodeGen/SPIRV/transcoding/block_w_struct_return.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_arithmetics.ll
    M llvm/test/CodeGen/SPIRV/transcoding/builtin_vars_opt.ll
    M llvm/test/CodeGen/SPIRV/transcoding/clk_event_t.ll
    M llvm/test/CodeGen/SPIRV/transcoding/enqueue_kernel.ll
    M llvm/test/CodeGen/SPIRV/transcoding/explicit-conversions.ll
    M llvm/test/CodeGen/SPIRV/transcoding/extract_insert_value.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fadd.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fclamp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fdiv.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fmul.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fneg.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fp_contract_reassoc_fast_mode.ll
    M llvm/test/CodeGen/SPIRV/transcoding/frem.ll
    M llvm/test/CodeGen/SPIRV/transcoding/fsub.ll
    M llvm/test/CodeGen/SPIRV/transcoding/global_block.ll
    M llvm/test/CodeGen/SPIRV/transcoding/group_ops.ll
    M llvm/test/CodeGen/SPIRV/transcoding/isequal.ll
    M llvm/test/CodeGen/SPIRV/transcoding/ldexp.ll
    M llvm/test/CodeGen/SPIRV/transcoding/memory_access.ll
    M llvm/test/CodeGen/SPIRV/transcoding/readonly.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_double.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_float.ll
    M llvm/test/CodeGen/SPIRV/transcoding/relationals_half.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spec_const.ll
    M llvm/test/CodeGen/SPIRV/transcoding/spirv-private-array-initialization.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_ballot.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_clustered_reduce.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_extended_types.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_non_uniform_arithmetic.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_non_uniform_vote.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_shuffle.ll
    M llvm/test/CodeGen/SPIRV/transcoding/sub_group_shuffle_relative.ll
    M llvm/test/CodeGen/SPIRV/transcoding/vec8.ll
    M llvm/test/CodeGen/SPIRV/uitofp-with-bool.ll

  Log Message:
  -----------
  SPIRV: Convert tests to opaque pointers (#174563)


  Commit: 6752fd7d1ff6e44f84b8ea564245370f9da3cf14
      https://github.com/llvm/llvm-project/commit/6752fd7d1ff6e44f84b8ea564245370f9da3cf14
  Author: nataliakokoromyti <126305457+nataliakokoromyti at users.noreply.github.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDeclAttr.cpp
    A clang/test/Sema/sentinel-attribute-block.c

  Log Message:
  -----------
  [Clang][Sema] Fix crash when applying sentinel to block variable (#173866)

This PR avoids the crash in Clang Sema when the sentinel attribute is
applied to a block variable, see https://github.com/llvm/llvm-project/issues/173820.

Basically, handleSentinelAttr always treated the type as a function with
a prototype which is not true for block variables like void (^a)() and
it caused Clang to crash. Now Clang will print a warning instead of
crashing.


  Commit: a3569fac5360eb53ad0ce0e762d5bb616c7a56df
      https://github.com/llvm/llvm-project/commit/a3569fac5360eb53ad0ce0e762d5bb616c7a56df
  Author: Ties Stuij <ties.stuij at arm.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SelectionDAGInfo.cpp
    M llvm/test/CodeGen/AArch64/aarch64-mops.ll

  Log Message:
  -----------
  [AArch64] Add command-line flag to disable MOPS for memory intrinsics (#172722)

Add -aarch64-use-mops flag (default true) to control whether the AArch64
backend uses Memory Copy and Set instructions (MOPS) introduced in
Armv8.8-A/Armv9.3-A for lowering memory intrinsics (memcpy, memset,
memmove).

When MOPS is disabled, we will either inline the operation or calls the
library function based on size thresholds.


  Commit: f444467a3812ed98396be7c838c31ac0fa8d1218
      https://github.com/llvm/llvm-project/commit/f444467a3812ed98396be7c838c31ac0fa8d1218
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    A llvm/test/CodeGen/X86/vector-extract-last-active.ll

  Log Message:
  -----------
  [ISel] Handle TypeWidenVector in expandVectorFindLastActive. (#174384)

When widening extract.last.active, the element count changes. Create a
step vector with only the original elements valid and zeros for padding.
Also widen the mask accordingly. This fixes a hang when lowering on X86,
where widening is required in some cases.

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

PR: https://github.com/llvm/llvm-project/pull/174384


  Commit: 3a9718bc9cf207c114cdd23033ef2edb2260f5bc
      https://github.com/llvm/llvm-project/commit/3a9718bc9cf207c114cdd23033ef2edb2260f5bc
  Author: Henry <33919933+sfu2 at users.noreply.github.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Scalar/ConstantHoisting.h

  Log Message:
  -----------
  [ConstantHoisting] Remove redundant cleanup (NFC) (#173823)

ConstGEPCandMap and ConstGEPInfoMap of type MapVector will free up the
inner vector/SmallVector when calling clear(). Existing for-loops
introduce redundant container copy and ineffective cleanup.

Fixes: f5297fb

Co-authored-by: sfu <afwbu8tp6 at mozmail.com>


  Commit: 8f189940090375821bebbc8ae88c4dd5a6aea1ec
      https://github.com/llvm/llvm-project/commit/8f189940090375821bebbc8ae88c4dd5a6aea1ec
  Author: Balázs Benics <benicsbalazs at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [analyzer][docs] CSA release notes for clang-22 (#174450)

The commits were gathered using:
```sh
git log --reverse --oneline llvmorg-22-init..llvm/main \
    clang/{lib/StaticAnalyzer,include/clang/StaticAnalyzer} | grep -v NFC | \
    grep -v OpenACC | grep -v -i revert | grep -v -i "webkit"
```

I used the `LLVM_ENABLE_SPHINX=ON` and `LLVM_ENABLE_DOXYGEN=ON` cmake
options to enable the `docs-clang-html` build target, which generates
the html into `build/tools/clang/docs/html/ReleaseNotes.html` of which I
attach the screenshots to let you judge if it looks all good or not.


  Commit: bdc7681d6347822bb1ed20f63ccd7cfa2a1b3394
      https://github.com/llvm/llvm-project/commit/bdc7681d6347822bb1ed20f63ccd7cfa2a1b3394
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/test/Transforms/LoopVectorize/widen-gep-all-indices-invariant.ll

  Log Message:
  -----------
  [VPlan] Restore all-operands-inv WidenGEP logic (#174416)

Restore the all-operands-invariant handling in WidenGEP::execute prior
to 37f7b31 (Reland [VPlan] Handle WidenGEP in narrowToSingleScalars), as
crashes have been reported.

Fixes #173761.


  Commit: af3a0e61f4e08afb53d4efe815fcc6269c63f739
      https://github.com/llvm/llvm-project/commit/af3a0e61f4e08afb53d4efe815fcc6269c63f739
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M polly/lib/Exchange/JSONExporter.cpp
    A polly/test/JSONExporter/ImportAccesses/change-array-dims.ll
    A polly/test/JSONExporter/ImportAccesses/change-array-dims___%outer.for---%return.jscop
    A polly/test/JSONExporter/ImportAccesses/change-array-dims___%outer.for---%return.jscop.transformed

  Log Message:
  -----------
  [Polly] Allow changing array dims when importing JScop (#174582)

This is in preparation to avoid relying on GEPs to derive dependency
information; Clang will eventually emit `ptradd` instead of
`getelementptr`.


  Commit: 73c44217272f43f17764f911fe3580c16acc1f6d
      https://github.com/llvm/llvm-project/commit/73c44217272f43f17764f911fe3580c16acc1f6d
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
    A llvm/test/CodeGen/SPIRV/lifetime-poison.ll

  Log Message:
  -----------
  [SPIRV] Handle poison values in lifetime intrinsics (#174578)

The toSpvLifetimeIntrinsic function crashed when attempting to cast a
poison value to AllocaInst. This patch adds a check to detect poison
values in the first argument of lifetime intrinsics and erases the
intrinsic early, as lifetime intrinsics with poison arguments have no
effect per LLVM semantics.


  Commit: 5ff486d08e97b0d63f9799381d407e69ec5b1e28
      https://github.com/llvm/llvm-project/commit/5ff486d08e97b0d63f9799381d407e69ec5b1e28
  Author: Jorn Tuyls <jorn.tuyls at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp

  Log Message:
  -----------
  [NFC][AMDGPU] Use getMixedSize in FatRawBufferCastOp dim reification (#174548)

After https://github.com/llvm/llvm-project/pull/174477, I found similar
logic that can be replaced by `memref::getMixedSize` in the
FatRawBufferCastOp dimension reification function.


  Commit: 86f12c536f2d5821f5f23b7a1cec76d4cb2bad6b
      https://github.com/llvm/llvm-project/commit/86f12c536f2d5821f5f23b7a1cec76d4cb2bad6b
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGLOps.td
    M mlir/test/Dialect/SPIRV/IR/gl-ops.mlir
    M mlir/test/Target/SPIRV/gl-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add definition for GL Pack/UnpackSnorm4x8 (#174574)


  Commit: 92da91f93ec7dc3ed9cadbe1e85c4caea506b17a
      https://github.com/llvm/llvm-project/commit/92da91f93ec7dc3ed9cadbe1e85c4caea506b17a
  Author: Muhammad Abdul <alilo.ghazali at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [DAG] SDPatternMatch - add a m_SpecificNeg() matcher (#173807)

Resolves #173770 

Adds m_SpecificNeg(SDValue V) to match either m_Neg(m_Specific(V)) or
constant/build-vector where elements are the negation of V's constants

Has unit test coverage on SelectionDAGPatternMatchTest.cpp


  Commit: 87be941768a48a4989f77c2d1cfe98aceeab76a6
      https://github.com/llvm/llvm-project/commit/87be941768a48a4989f77c2d1cfe98aceeab76a6
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/LowerTypeTests.cpp
    A llvm/test/Transforms/LowerTypeTests/import-32bit.ll

  Log Message:
  -----------
  [LowerTypeTests] Avoid implicit truncation for absolute_symbol (#174589)

Use the bit mask instead of ~0ull, same as WPD. This avoids an
assertion failure with https://github.com/llvm/llvm-project/pull/171456.


  Commit: dff081c26f11e1679411e7c0b4012e6a740b6cc3
      https://github.com/llvm/llvm-project/commit/dff081c26f11e1679411e7c0b4012e6a740b6cc3
  Author: theRonShark <ron.lieberman at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
    R llvm/test/CodeGen/AMDGPU/amdgpu-attributor-intrinsic-missing-nocallback.ll
    R llvm/test/CodeGen/AMDGPU/amdgpu-attributor-nocallback-intrinsics.ll

  Log Message:
  -----------
  Revert "AMDGPU: Do not infer implicit inputs for !nocallback intrinsics" (#174224)

Reverts llvm/llvm-project#131759

seeing regressions in : Pytorch UT- 8 test cases failed in "test_ops"
test suite


  Commit: 256ec23ebecd53b0fbb5cb0557c7cb34b80baa78
      https://github.com/llvm/llvm-project/commit/256ec23ebecd53b0fbb5cb0557c7cb34b80baa78
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M flang/test/Lower/always-execute-loop-body.f90
    M flang/test/Lower/arithmetic-goto.f90
    M flang/test/Lower/array-constructor-1.f90
    M flang/test/Lower/array-constructor-index.f90
    M flang/test/Lower/array-derived.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 3) (#174345)

Tests converted: always-execute-loop-body.f90, arithmetic-goto.f90,
array-constructor-1.f90, array-constructor-index.f90, array-derived.f90


  Commit: 7c5eb6ab0cbfeb29f980c8fa17c0ee3ca5270984
      https://github.com/llvm/llvm-project/commit/7c5eb6ab0cbfeb29f980c8fa17c0ee3ca5270984
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [Clang][Driver] Add gcc-13 toolset path on RHEL (#174464)

Adding this additional path to enable clang+offload to be easily
buildable in RHEL-based distros with GCC 13 toolset.


  Commit: 0753286b8e27f995d25b33a4cbd8d07ca0346aa7
      https://github.com/llvm/llvm-project/commit/0753286b8e27f995d25b33a4cbd8d07ca0346aa7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M openmp/device/src/Misc.cpp

  Log Message:
  -----------
  [OpenMP] Add default stub for virtual methods (#174594)

Summary:
Recent OpenMP patches have added real support for virtual functions on
the device side. However, we don't provide some of the C++ ABI functions
that are emitted when using these. In practice these functions just call
`std::terminate` so we can just trap here. These are marked weak so they
will be overridden by a more correct implementation if not defined and
will also not extract on their own from a static library.


  Commit: 8da47b51c36d77d3c946fcd1292a1dc5da5ba0f4
      https://github.com/llvm/llvm-project/commit/8da47b51c36d77d3c946fcd1292a1dc5da5ba0f4
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp

  Log Message:
  -----------
  [CIR] Implement support for ComplexType in CatchParam (#173736)

Implement support for ComplexType in CatchParam

Issue https://github.com/llvm/llvm-project/issues/154992


  Commit: c958a7c66ec443a1f935f42f7bf15e23ef4bbb3d
      https://github.com/llvm/llvm-project/commit/c958a7c66ec443a1f935f42f7bf15e23ef4bbb3d
  Author: Folkert de Vries <folkert at folkertdev.nl>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-pmadd.ll

  Log Message:
  -----------
  [X86] use `VPMADDWD` for widening adjacent addition (#174149)

The `_mm256_madd_epi16` intrinsic performs first a pointwise widening
multiplication, and then adds adjacent elements. In SIMD versions of the
adler32 checksum algorithm, a trivial multiplication by an all-ones
vector is used to get just the widening and addition behavior.

In the rust standard library, we like to implement intrinsics in terms
of simpler building blocks, so that all backends can implement a small
set of primitives instead of supporting all of LLVM's intrinsics. When
we try that for `_mm256_madd_epi16` in isolation it works, but when one
of the arguments is an all-ones vector, the multiplication is optimized
out long before the `vpmaddwd` instruction can be selected.

This PR recognizes the widening adjacent addition pattern that adler32
uses directly, and manually inserts a trivial multiplication by an
all-ones vector. Experimentally, performing this optimization increases
adler32 throughput from 41 gb/s to 67 gb/s
(https://github.com/rust-lang/rust/issues/150560#issue-3774170588)

cc https://github.com/rust-lang/stdarch/pull/1985
cc https://github.com/rust-lang/rust/issues/150560


  Commit: 53f84636eb86e6c64c1ec405f70b3dd2b27f4ddc
      https://github.com/llvm/llvm-project/commit/53f84636eb86e6c64c1ec405f70b3dd2b27f4ddc
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/include/clang/Driver/CommonArgs.h
    M clang/lib/Driver/Driver.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.h
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/SPIRV.h
    M clang/test/Driver/hipspv-link-static-library.hip
    M clang/test/Driver/hipspv-toolchain-rdc.hip
    M clang/test/Driver/hipspv-toolchain.hip
    A clang/test/Driver/spirv-llvm-link-emit-asm.c
    A clang/test/Driver/spirv-llvm-link.c

  Log Message:
  -----------
  [clang][Driver][SPIR-V] Allow linking IR using llvm-link (#169572)

SPIR-V does not have a production-grade linker so it is often necessary
to stay in LLVM-IR as long as possible and only convert to SPIR-V at the
very end.

As such, it is common that we want to create a BC library that is linked
into a user program (motivating example here is the OpenMP device RTL).
We only convert to SPIR-V at the very end when we have a fully linked
program.

Other targets can achieve a similar goal by using LTO to get a linked-BC
file, but the SPIR-V linker does not support LTO, so we have no way to
do it with `clang`. We can do it with `llvm-link` directly, but my
understanding is that it is not intended to be directly called in
production workflows and does not fit well into code that supports
multiple targets.

Extend the existing behavior for `HIP` that allows `-emit-llvm` without
`-c`.

---------

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


  Commit: 5f0bfc85d61ede15a5e0c182bab7fb112f4ea1ff
      https://github.com/llvm/llvm-project/commit/5f0bfc85d61ede15a5e0c182bab7fb112f4ea1ff
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/MCTargetDesc/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 75d025124aa3


  Commit: 187942dd03f78e75484155d5065d87ade069b294
      https://github.com/llvm/llvm-project/commit/187942dd03f78e75484155d5065d87ade069b294
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Support/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Support/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 7f9a00e59c56


  Commit: a9bdc41beedcfc05acbba61183b8035b2bef5e85
      https://github.com/llvm/llvm-project/commit/a9bdc41beedcfc05acbba61183b8035b2bef5e85
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/CodeGen/BUILD.gn

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


  Commit: b1ff9277f5b4dea96cb2abb57609508be9e73a87
      https://github.com/llvm/llvm-project/commit/b1ff9277f5b4dea96cb2abb57609508be9e73a87
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    A clang/test/Driver/rocm-detect-lib-llvm.hip

  Log Message:
  -----------
  [clang][Driver] Add ROCm lib/llvm/bin detection test (#169705)

Add a lit test that exercises RocmInstallationDetector when clang is
installed under /opt/rocm/lib/llvm/bin, using a synthetic sysroot so it
does not depend on any real /opt/rocm installation. The test copies the
built clang binary into the test tree so the driver observes the
expected InstalledDir and real path, following the precedent of other
driver tests that copy %clang into a temporary layout.

This is for testing https://github.com/llvm/llvm-project/pull/138928


  Commit: 474c6ad61c73afc9238a9e067b2675841a5c804c
      https://github.com/llvm/llvm-project/commit/474c6ad61c73afc9238a9e067b2675841a5c804c
  Author: Michael Liao <michael.hliao at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [TwoAddressInstruction] Remove AA from twoaddressinstruction. NFC

- AA is not actually used.


  Commit: d4f39b9bd64c17d1b0d8374159879b9c3a625bf2
      https://github.com/llvm/llvm-project/commit/d4f39b9bd64c17d1b0d8374159879b9c3a625bf2
  Author: Shafik Yaghmour <shafik.yaghmour at intel.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [NFC][Clang][Sema] Apply Rule of Three to various classes (#174516)

Static analysis flagged a case where we had defined the destructor but
not copy ctor or copy assignment, which violates the Rule of Three. I
applied this to all the cases I found. With the exception to destructors
with empty bodies. These should be defaulted but that should be done
seperately.


  Commit: eabd8a9af85fad659d7cc4f166b72d4481b641fe
      https://github.com/llvm/llvm-project/commit/eabd8a9af85fad659d7cc4f166b72d4481b641fe
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/__chrono/duration.h
    M libcxx/include/__chrono/file_clock.h
    M libcxx/include/__chrono/leap_second.h
    M libcxx/include/__chrono/steady_clock.h
    M libcxx/include/__chrono/system_clock.h
    M libcxx/include/__chrono/time_point.h
    M libcxx/include/__chrono/zoned_time.h
    M libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][chrono] Applied `[[nodiscard]]` to clocks, `time_point`, some `hash` specializations (#174120)

In this release:
- [x] `file_clock`
- [x] `steady_clock`
- [x] `system_clock`
- [x] `time_point`
- [x] some `hash` specializations 

Any other existing clocks are already annotated. Annotated some `hash`
specializations for already annotated classes.

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/time.point
- https://wg21.link/time.clock.file
- https://wg21.link/time.clock.steady
- https://wg21.link/time.clock.system

Towards #172124


  Commit: 7bf6ad5c808d5816424c902b9c98a4279b636ba5
      https://github.com/llvm/llvm-project/commit/7bf6ad5c808d5816424c902b9c98a4279b636ba5
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/__algorithm/copy.h
    M libcxx/include/__algorithm/find.h
    M libcxx/include/__algorithm/move.h

  Log Message:
  -----------
  [libc++][NFC] Use lambdas when calling a segmented iterator algorithm (#173345)

Clang provides lambdas as an extension in C++03 now, so we can use them
to simplify our code a bit.


  Commit: 2b01e7cf2b7053dc350b658c96e3db8404cc2594
      https://github.com/llvm/llvm-project/commit/2b01e7cf2b7053dc350b658c96e3db8404cc2594
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/__new/allocate.h
    M libcxx/include/__new/global_new_delete.h

  Log Message:
  -----------
  [libc++] Remove _LIBCPP_HAS_SIZED_DEALLOCATION (#172285)

This macro provides relatively little value. Using the standard FTM
directly removes one level of indicretion, making it easier to
understand what is actually happening.


  Commit: 67404745171125f1d68c629973b0e978986869f6
      https://github.com/llvm/llvm-project/commit/67404745171125f1d68c629973b0e978986869f6
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/__new/interference_size.h
    M libcxx/include/version
    M libcxx/modules/std/new.inc
    M libcxx/src/atomic.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/new.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++][NFC] Assume that __GCC_{CON,DE}STRUCTIVE_SIZE are available (#171625)

Clang provides these macros since LLVM 19, so we can assume they are
available.


  Commit: 7f6afc499f1e07ad6c509362f2019f6375a9acc9
      https://github.com/llvm/llvm-project/commit/7f6afc499f1e07ad6c509362f2019f6375a9acc9
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/CodeGenPrepare.cpp
    A llvm/test/Transforms/CodeGenPrepare/ARM/sink-negative-scale.ll

  Log Message:
  -----------
  [CGP] Use getSigned() for scale during address sinking

The scale is a signed quantity.

This avoids an assertion failure with github.com/llvm/llvm-project/pull/171456.


  Commit: 448f5fe41b826fc42c4b6c1c5bc3e357cd0e367e
      https://github.com/llvm/llvm-project/commit/448f5fe41b826fc42c4b6c1c5bc3e357cd0e367e
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll

  Log Message:
  -----------
  [NFC][PowerPC] Pre-commit adding test case: use millicode for strcpy (#174243)

add test case to test lib call are used for the ___strcpy milicode.


  Commit: 3f5d91bfbc17a487fc14ac2c7f2d866fb97e3906
      https://github.com/llvm/llvm-project/commit/3f5d91bfbc17a487fc14ac2c7f2d866fb97e3906
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M flang/docs/OpenMPSupport.md
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    M flang/test/Lower/OpenMP/target.f90
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/unittests/Frontend/OpenMPIRBuilderTest.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/omptarget-device.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [Flang][OpenMP] Implement device clause lowering for target directive (#173509)

Add lowering support for the OpenMP `device` clause on the `target`
directive in Flang.

The device expression is propagated through MLIR OpenMP and passed to
the host-side `__tgt_target_kernel` call.


  Commit: 305c413c92acfdd1df15b26080601bc66fb86dd1
      https://github.com/llvm/llvm-project/commit/305c413c92acfdd1df15b26080601bc66fb86dd1
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M compiler-rt/test/asan/CMakeLists.txt
    M compiler-rt/test/asan/lit.site.cfg.py.in
    M compiler-rt/test/asan_abi/CMakeLists.txt
    M compiler-rt/test/asan_abi/lit.site.cfg.py.in
    M compiler-rt/test/fuzzer/CMakeLists.txt
    M compiler-rt/test/fuzzer/lit.site.cfg.py.in
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/lit.common.configured.in
    M compiler-rt/test/sanitizer_common/CMakeLists.txt
    M compiler-rt/test/sanitizer_common/lit.site.cfg.py.in
    M compiler-rt/test/tsan/CMakeLists.txt
    M compiler-rt/test/tsan/lit.site.cfg.py.in
    M compiler-rt/test/ubsan/CMakeLists.txt
    M compiler-rt/test/ubsan/lit.site.cfg.py.in

  Log Message:
  -----------
  [NFCI] [Darwin] Add APPLE_TARGET_IS_HOST lit option to compiler-rt (#174522)

Darwin supports running tests on targets other than the host machine
e.g. simulators. In such configurations, tests are run via a wrapper
script (e.g. iossim_run.py).

This refactors the lit test config to use a dedicated option to
distinguish test suites that run on the host from those that run in any
other configuration. This will allow the test suites to distinguish a
local osx configuration from a "remote" one.

rdar://167591463


  Commit: 99e8aa5ab4e88dad023140fff9e3657eec262dcf
      https://github.com/llvm/llvm-project/commit/99e8aa5ab4e88dad023140fff9e3657eec262dcf
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/ThreadSanitizer.cpp
    A llvm/test/Instrumentation/ThreadSanitizer/tsan_address_space_attr_cast.ll

  Log Message:
  -----------
  [TSan] Fix TSan instrumenting pointers from non-default address spaces (#174518)

Casting a pointer to a different address space is a nice trick to
prevent an access from being instrumented by sanitizers such as ASan.
However, this trick is currently broken, as the test demonstrates.

A minimal C PoC of the issue is:

```
void access(void *p) {
  auto tmp = (unsigned long __attribute__((address_space(1))) volatile *)p;
  *tmp = 0;
}
```

Under fsanitize=address, the access does not get instrumented, but under
fsanitize=thread, it does.

(Note: Before this patch, this test will actually hit a CallInst
assertion if you have them turned on, because the TSan runtime functions
are defined to take pointer arguments, and non-default address space
pointers are not compatible).

rdar://166743781


  Commit: a165f8ccd892f215b21163e42071465aea41e907
      https://github.com/llvm/llvm-project/commit/a165f8ccd892f215b21163e42071465aea41e907
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [llvm] Bypass sandbox in `sys::fs::createTemporaryFile()` (#174491)

Based on the name of the function, I think it's safe to assume
`sys::fs::createTemporaryFile()` is not to be used for formal compiler
outputs and should only be used for compiler-internal outputs (caches,
debugging output, etc.). Thus, it should be fine to disable the IO
sandbox and allow bypassing `vfs::OutputBackend` here.


  Commit: 8a93a7aec806ff7c4bc8813386531dd3857f2737
      https://github.com/llvm/llvm-project/commit/8a93a7aec806ff7c4bc8813386531dd3857f2737
  Author: TMJ <tedmjohnson at protonmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M flang/docs/GettingInvolved.md

  Log Message:
  -----------
  [flang] [documentation] Update the biweekly community call Google Docs link (#174616)

The old link is still dead/protected. Use the new link.


  Commit: 4b31ad94e0da77692da577caf5b330bb599cd4bd
      https://github.com/llvm/llvm-project/commit/4b31ad94e0da77692da577caf5b330bb599cd4bd
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
    A llvm/test/DebugInfo/X86/uefi-no-codeview-crash.ll

  Log Message:
  -----------
  [UEFI] Codeview do not crash when no llvm.dbg.cu (#174460)

PR #142970 Added for Windows targets to emit minimal codeview metadata
even when debug info is disabled. This crashes the backend for UEFI
x86_64-uefi triple as llvm.dbg.cu is expected unconditionally there.
Handling it correctly in AsmPrinter and adding a regression test.


  Commit: ef55a0be4e67ff5bda8583fb90412b69d20040f4
      https://github.com/llvm/llvm-project/commit/ef55a0be4e67ff5bda8583fb90412b69d20040f4
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl

  Log Message:
  -----------
  [NFC] Update `clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl`


  Commit: e14c09f63069d182ff67898176dc8e60f87f0013
      https://github.com/llvm/llvm-project/commit/e14c09f63069d182ff67898176dc8e60f87f0013
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M lldb/examples/python/crashlog.py

  Log Message:
  -----------
  [lldb][crashlog] Account for alternate format of 'Triggered by Thread:' string (#174572)

When the crashing thread was submitted to a libdispatch queue, the
`Triggered by Thread:` string looks like:
```
Triggered by Thread: 0, Dispatch Queue: com.apple.main-thread
```

Trying to run the `crashlog` command on such crashlog file fails with:
```
(lldb) crashlog -i '/tmp/lldb.crash'
Traceback (most recent call last):
  File "Git/llvm-worktrees/main/builds/release/lib/python3.13/site-packages/lldb/macosx/crashlog.py", line 1444, in __call__
    SymbolicateCrashLogs(debugger, shlex.split(command), result, True)
    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "Git/llvm-worktrees/main/builds/release/lib/python3.13/site-packages/lldb/macosx/crashlog.py", line 1888, in SymbolicateCrashLogs
    load_crashlog_in_scripted_process(
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^
        debugger, crashlog_path, options, result
        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    )
    ^
  File "Git/llvm-worktrees/main/builds/release/lib/python3.13/site-packages/lldb/macosx/crashlog.py", line 1495, in load_crashlog_in_scripted_process
    crashlog = CrashLogParser.create(debugger, crashlog_path, options).parse()
  File "Git/llvm-worktrees/main/builds/release/lib/python3.13/site-packages/lldb/macosx/crashlog.py", line 1043, in parse
    self.parsers[self.parse_mode](line)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^
  File "Git/llvm-worktrees/main/builds/release/lib/python3.13/site-packages/lldb/macosx/crashlog.py", line 1121, in parse_normal
    self.crashlog.crashed_thread_idx = int(line[20:].strip().split()[0])
                                       ~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
ValueError: invalid literal for int() with base 10: '0,'
```

This patch strips the possibly trailing comma in when parsing this
string.

Tested locally that this fixes the issue. LLDB test suggestions welcome


  Commit: 2529fc4467cdaf58196c779a6234ebea7c047257
      https://github.com/llvm/llvm-project/commit/2529fc4467cdaf58196c779a6234ebea7c047257
  Author: DannyDaoBoYang <daobo.yang41 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp

  Log Message:
  -----------
  [CIR] [Fix] W64 Compiler error for std::max (#174519)

In W64, size_t and ul are different sizes. So, std::max cannot correctly
deduce the operator type, resulting an error at compile time.

The fix was originally added in
https://github.com/llvm/llvm-project/pull/173802, but as suggested it's
best to keep unrelated changes separate.


  Commit: aa5bcffa06aa5750121a0c4ff418fa66940deffe
      https://github.com/llvm/llvm-project/commit/aa5bcffa06aa5750121a0c4ff418fa66940deffe
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/test/CIR/CodeGen/constant-expr.cpp

  Log Message:
  -----------
  [CIR] Implement part of ConstantExpr support for ScalarExpr (#173009)

Implement part of the ConstantExpr support for the ScalarExpr


  Commit: 27cbe6e8f6c7d50bd305a2f39e9e47e35c4ca997
      https://github.com/llvm/llvm-project/commit/27cbe6e8f6c7d50bd305a2f39e9e47e35c4ca997
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__atomic/atomic.h
    M libcxx/include/__atomic/atomic_flag.h
    M libcxx/include/__atomic/atomic_ref.h
    M libcxx/include/__atomic/atomic_sync.h
    A libcxx/include/__atomic/atomic_waitable_traits.h
    M libcxx/include/atomic
    M libcxx/include/module.modulemap.in

  Log Message:
  -----------
  [libc++] Refactor atomic_waitable_traits into its own header and remove pre 20 support (#173157)

It makes sense to decouple traits from the things they describe, since
that's the purpose of traits. Furthermore, this will make it possible to
reuse these traits from other places in the library (e.g. <semaphore>)
outside of the synchronization library.

Pre-C++20 support is removed as a drive-by since the synchronization
library does not support pre-C++20 anymore. This makes it possible to
simplify a few constructs by using concepts.

Requested in https://github.com/llvm/llvm-project/pull/172214#discussion_r2635968291


  Commit: 128cc16c2588472df1b20878fba5facb04da6157
      https://github.com/llvm/llvm-project/commit/128cc16c2588472df1b20878fba5facb04da6157
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/Rewrite/Rewriter.cpp

  Log Message:
  -----------
  [clang] Bypass sandbox in the rewriter (#174496)

Clang's rewriter currently violates the IO sandbox due to a call to
`llvm::writeToOutput()`. Since the "blessed" `llvm::vfs::OutputBackend`
isn't easily available in that particular spot, this PR instead disables
the sandbox and leaves a FIXME behind.


  Commit: 3eeec298e67877ab033bcdbc34240cf4ce925a9e
      https://github.com/llvm/llvm-project/commit/3eeec298e67877ab033bcdbc34240cf4ce925a9e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/arrayref.cpp
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/arrayref.test
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/lit.local.cfg

  Log Message:
  -----------
  [cross-project] Add tests for LLDB data-formatters for llvm::ArrayRef (#173238)

This patch adds the bare-minimum tests for the LLDB `llvm::ArrayRef`
formatters. Since this would be the first LLVM data fromatter test for
LLDB, I wanted to keep the test itself minimal and mainly set up/agree
on the infrastructure (i.e., CMake machinery, etc.).

The setup mimicks that of GDB. The main differences are:
1. the GDB formatter tests put all the test cases in one monolithic test
file, whereas I'm planning on having one test-file per LLVM container.
2. the GDB formatter tests currently only get run if LLVM was built with
debug-info. Not sure we have any build-bots out there running this
configuration. In this patch we rely on just the debug-info from the
LLVM headers (see latest commit). That way the tests get more
consistently run (at least our public macOS buildbot runs the
cross-project-tests in Release+Asserts).


  Commit: 5f0f0fcd62227fb864203acc1a57e3ebf7a254a3
      https://github.com/llvm/llvm-project/commit/5f0f0fcd62227fb864203acc1a57e3ebf7a254a3
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M lldb/docs/resources/lldbdap.md
    R lldb/tools/lldb-dap/.prettierrc.json
    R lldb/tools/lldb-dap/.vscode/launch.json
    R lldb/tools/lldb-dap/.vscode/tasks.json
    R lldb/tools/lldb-dap/.vscodeignore
    R lldb/tools/lldb-dap/LICENSE.TXT
    A lldb/tools/lldb-dap/extension/.prettierrc.json
    A lldb/tools/lldb-dap/extension/.vscode/launch.json
    A lldb/tools/lldb-dap/extension/.vscode/tasks.json
    A lldb/tools/lldb-dap/extension/.vscodeignore
    A lldb/tools/lldb-dap/extension/LICENSE.TXT
    A lldb/tools/lldb-dap/extension/llvm-logo.png
    A lldb/tools/lldb-dap/extension/package-lock.json
    A lldb/tools/lldb-dap/extension/package.json
    A lldb/tools/lldb-dap/extension/src/debug-adapter-factory.ts
    A lldb/tools/lldb-dap/extension/src/debug-configuration-provider.ts
    A lldb/tools/lldb-dap/extension/src/debug-session-tracker.ts
    A lldb/tools/lldb-dap/extension/src/disposable-context.ts
    A lldb/tools/lldb-dap/extension/src/extension.ts
    A lldb/tools/lldb-dap/extension/src/index.d.ts
    A lldb/tools/lldb-dap/extension/src/lldb-dap-server.ts
    A lldb/tools/lldb-dap/extension/src/logging.ts
    A lldb/tools/lldb-dap/extension/src/ui/error-with-notification.ts
    A lldb/tools/lldb-dap/extension/src/ui/modules-data-provider.ts
    A lldb/tools/lldb-dap/extension/src/ui/show-error-message.ts
    A lldb/tools/lldb-dap/extension/src/ui/symbols-provider.ts
    A lldb/tools/lldb-dap/extension/src/ui/symbols-webview-html.ts
    A lldb/tools/lldb-dap/extension/src/uri-launch-handler.ts
    A lldb/tools/lldb-dap/extension/src/utils.ts
    A lldb/tools/lldb-dap/extension/src/webview/symbols-table-view.ts
    A lldb/tools/lldb-dap/extension/src/webview/tsconfig.json
    A lldb/tools/lldb-dap/extension/syntaxes/arm.disasm
    A lldb/tools/lldb-dap/extension/syntaxes/arm64.disasm
    A lldb/tools/lldb-dap/extension/syntaxes/disassembly.json
    A lldb/tools/lldb-dap/extension/syntaxes/x86.disasm
    A lldb/tools/lldb-dap/extension/tsconfig.json
    R lldb/tools/lldb-dap/llvm-logo.png
    R lldb/tools/lldb-dap/package-lock.json
    R lldb/tools/lldb-dap/package.json
    R lldb/tools/lldb-dap/src-ts/debug-adapter-factory.ts
    R lldb/tools/lldb-dap/src-ts/debug-configuration-provider.ts
    R lldb/tools/lldb-dap/src-ts/debug-session-tracker.ts
    R lldb/tools/lldb-dap/src-ts/disposable-context.ts
    R lldb/tools/lldb-dap/src-ts/extension.ts
    R lldb/tools/lldb-dap/src-ts/index.d.ts
    R lldb/tools/lldb-dap/src-ts/lldb-dap-server.ts
    R lldb/tools/lldb-dap/src-ts/logging.ts
    R lldb/tools/lldb-dap/src-ts/ui/error-with-notification.ts
    R lldb/tools/lldb-dap/src-ts/ui/modules-data-provider.ts
    R lldb/tools/lldb-dap/src-ts/ui/show-error-message.ts
    R lldb/tools/lldb-dap/src-ts/ui/symbols-provider.ts
    R lldb/tools/lldb-dap/src-ts/ui/symbols-webview-html.ts
    R lldb/tools/lldb-dap/src-ts/uri-launch-handler.ts
    R lldb/tools/lldb-dap/src-ts/utils.ts
    R lldb/tools/lldb-dap/src-ts/webview/symbols-table-view.ts
    R lldb/tools/lldb-dap/src-ts/webview/tsconfig.json
    R lldb/tools/lldb-dap/syntaxes/arm.disasm
    R lldb/tools/lldb-dap/syntaxes/arm64.disasm
    R lldb/tools/lldb-dap/syntaxes/disassembly.json
    R lldb/tools/lldb-dap/syntaxes/x86.disasm
    R lldb/tools/lldb-dap/tsconfig.json

  Log Message:
  -----------
  [lldb-dap] Add lldb-dap extension directory. (#174219)

Move all lldb-dap vscode extension files to the extension directory. 

Follow up from
https://github.com/llvm/llvm-project/pull/162635#discussion_r2482141750


  Commit: a6cfca8b8e31b3179c89033a925a42b18d0aa749
      https://github.com/llvm/llvm-project/commit/a6cfca8b8e31b3179c89033a925a42b18d0aa749
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libc/docs/hand_in_hand.rst

  Log Message:
  -----------
  [libc][docs] Fix typo (#174631)

There was a typo introduced in #168637, this PR fixes it. Thanks to
Nikolas for pointing it out.


  Commit: 2dff018322e34e3d5bd75ee12620de9976ecbed9
      https://github.com/llvm/llvm-project/commit/2dff018322e34e3d5bd75ee12620de9976ecbed9
  Author: Bill Wendling <morbo at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/attr-counted-by.c

  Log Message:
  -----------
  [Clang][counted-by][NFC] Add testcase for non-forward record decl  (#153338)

This tests that we don't ICE if a struct hasn't been forward declared.
Originally fixed in 160fb11

Link: ClangBuiltLinux/linux#2114


  Commit: 142a4053d7c0f834d7af90dbf21fee7bf1643100
      https://github.com/llvm/llvm-project/commit/142a4053d7c0f834d7af90dbf21fee7bf1643100
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/ValueTypes.td
    M llvm/test/TableGen/CPtrWildcard.td

  Log Message:
  -----------
  [NFCI][CodeGen] Add more value types (#174533)

This PR adds more value types for future use.


  Commit: 9937769cca7b89686c83bcaf85df975a9eb0914b
      https://github.com/llvm/llvm-project/commit/9937769cca7b89686c83bcaf85df975a9eb0914b
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/string_view/TestDataFormatterStdStringView.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/u8string_view/TestDataFormatterStdU8StringView.py

  Log Message:
  -----------
  [lldb] Add libstdcpp string view summary provider (#171854)

This patch adds libstdcpp string view summary provider.


  Commit: 01d34eb38fa0587cb95eedd3bada8257abc122f8
      https://github.com/llvm/llvm-project/commit/01d34eb38fa0587cb95eedd3bada8257abc122f8
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll

  Log Message:
  -----------
  [VPlan] Only use isAddressSCEVForCost in legacy getAddressAccSCEV (NFCI)

Follow-up to https://github.com/llvm/llvm-project/pull/171204 and
1f331e453f to only rely on isAddressSCEVForCost in legacy isAddressSCEVForCost,
completely aligning the decisions of VPlan and legacy cost model.


  Commit: 9c7b48e3adf5e96c98ffe71beb2d892ee0275e2c
      https://github.com/llvm/llvm-project/commit/9c7b48e3adf5e96c98ffe71beb2d892ee0275e2c
  Author: Kartik <agarwala.kartik at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaType.cpp
    A clang/test/SemaCXX/crash-GH173943.cpp
    M clang/test/SemaCXX/cxx2b-deducing-this.cpp

  Log Message:
  -----------
  [Clang] Disallow explicit object parameters irrespective of whether return type is valid (#174603)

Fixes: #173943


  Commit: 2d26a7b74e10a6ae1efd800d5b1e409dfe690d6f
      https://github.com/llvm/llvm-project/commit/2d26a7b74e10a6ae1efd800d5b1e409dfe690d6f
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libc/src/stdlib/exit.cpp

  Log Message:
  -----------
  [libc] Provide empty weak definition for __cxa_thread_finalize (#174373)

This avoids the GOT slot being generated which is undesirable when using
static linking. A better solution would be to reorganize the code to
avoid the use of weak symbols altogether.

Fixes #173409


  Commit: dfc0abd325962bfef7b18fbc13db9776ee63647f
      https://github.com/llvm/llvm-project/commit/dfc0abd325962bfef7b18fbc13db9776ee63647f
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseDecl.cpp
    A clang/test/Parser/enableif-attr.cpp

  Log Message:
  -----------
  [Clang] prevent crash in early parsing of enable_if for C function declarators with identifier-list parameters (#174017)

Fixes #173826

---

This patch resolves an issue where Clang could crash while parsing the
`enable_if` attribute on C function declarators with identifier-list
parameters.

In C, identifier-list function declarators use parameter identifiers
rather than full parameter declarations, as specified by the C spec.
Since `enable_if` is parsed early to participate in redeclaration checks


https://github.com/llvm/llvm-project/blob/0f3a9f658a7f459b9aa701ec42a999b645653862/clang/lib/Parse/ParseDecl.cpp#L674-L675

the parser could encounter such identifiers before their parameter
declarations exist and incorrectly assume they were already formed,
leading to an assertion failure.

This change makes the early `enable_if` parsing path handle parameters
that have not yet been declared, preventing the crash while preserving
existing behavior for well-formed function prototypes.


  Commit: 1f5126dae135364b0df4127cf5cc62605b349ced
      https://github.com/llvm/llvm-project/commit/1f5126dae135364b0df4127cf5cc62605b349ced
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M lldb/source/Expression/UserExpression.cpp
    M lldb/test/Shell/Expr/TestExecProgress.test

  Log Message:
  -----------
  [lldb] Don't trim expression in progress event (#174609)

Trimming the content of the progress event is the responsibility of the
consumer, not the producer. For example, when using the statusline,
there's plenty of space to show longer expressions.

rdar://166879951


  Commit: c262893f4b40552fda320216e77d030c7979c4ac
      https://github.com/llvm/llvm-project/commit/c262893f4b40552fda320216e77d030c7979c4ac
  Author: saxlungs <152745038+saxlungs at users.noreply.github.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.h
    M llvm/lib/Target/AMDGPU/AMDGPURegisterBankInfo.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    A llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll

  Log Message:
  -----------
  Reland "[AMDGPU] Add new llvm.amdgcn.wave.shuffle intrinsic (#167372)" (#174614)

This change adds a new intrinsic for AMDGPU that implements a wave
shuffle, allowing arbitrary swizzling between lanes using an index. In
the initial version of this commit, there was an issue in one of the
tests added that returned a signal, causing testing to fail when
combined with another recent change to 'not'.

For context on the initial commit see #167372

---------

Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>
Co-authored-by: Jay Foad <jay.foad at gmail.com>


  Commit: 38305944221fc18b5be3ddb4a7d169eacfb6ddc8
      https://github.com/llvm/llvm-project/commit/38305944221fc18b5be3ddb4a7d169eacfb6ddc8
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    R lldb/tools/lldb-dap/.gitignore
    A lldb/tools/lldb-dap/extension/.gitignore

  Log Message:
  -----------
  [lldb-dap] Move .gitingore into extension subdir (#174643)

The files in the lldb-dap local .gitignore are only relevant to the
extension. Moving it into the extension dir also makes it easier to
mirror to the lldb-vscode repo.


  Commit: 28368dc351c5b6b14dcf5ccc9076e34c2b132ec0
      https://github.com/llvm/llvm-project/commit/28368dc351c5b6b14dcf5ccc9076e34c2b132ec0
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/test/CIR/CodeGen/try-catch-tmp.cpp

  Log Message:
  -----------
  [CIR] Support Type with PointerRepresentation in CatchParam (#173774)

Support Type with PointerRepresentation in CatchParam

Issue https://github.com/llvm/llvm-project/issues/154992


  Commit: 71219bd7c210616829a569c05b8ceb7fde907d98
      https://github.com/llvm/llvm-project/commit/71219bd7c210616829a569c05b8ceb7fde907d98
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64AsmPrinter.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp

  Log Message:
  -----------
  [AArch64] Add ZCM/ZCZ lowering statistics (#172863)

Keeping them conservatively simple and coarse grained.


  Commit: 8b907a3a2072fcf05b7c85cbb7ad46c379eafaee
      https://github.com/llvm/llvm-project/commit/8b907a3a2072fcf05b7c85cbb7ad46c379eafaee
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/GPUToROCDL/LowerGpuOpsToROCDLOps.cpp
    M mlir/test/Conversion/GPUToROCDL/gpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir] GPUToROCDL: repack usupported types when lowering `subgroup_broadcast` (#174206)

Use the same repacking logic as for shuffle/swizzle.


  Commit: 68141cb2fd105bce1a04d8ea7e0449827209a67e
      https://github.com/llvm/llvm-project/commit/68141cb2fd105bce1a04d8ea7e0449827209a67e
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-platform-reg.ll

  Log Message:
  -----------
  [AArch64][RegAlloc] Reserve LR reservation reserve W30 subreg (#173725)

This change fixes the reservation of LR by `-mlr-for-calls-only`, also
reserving its sub-register W30. Otherwise, the register allocator could
allocate W30. Adding a regression test for general sub-register
reservation, including LR.


  Commit: d12e99376f973903eae65c998435b72643a140b0
      https://github.com/llvm/llvm-project/commit/d12e99376f973903eae65c998435b72643a140b0
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/conditional-branches-cost.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/eliminate-tail-predication.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/gather-do-not-vectorize-addressing.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs-sve.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/invalid-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/load-cast-context.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/low_trip_count_predicates.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked-call.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/masked_ldst_sme.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-constant-ops.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-epilogue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product-mixed.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-incomplete-chains.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-sub.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/reduction-recurrence-costs-sve.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-reduction-inloop-cond.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-strict-fadd.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-struct-return.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/simple_early_exit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/single-early-exit-interleave.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-epilog-vscale-fixed.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-fneg.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inv-store.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-live-out-pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-low-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-multiexit.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-predicated-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-runtime-check-size-based-threshold.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-forced.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-optsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-reductions.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding-unroll.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-vscale-based-trip-counts.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-wide-lane-mask.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-extractvalue.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-gep.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-widen-phi.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/tail-folding-styles.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/transform-narrow-interleave-to-widen-memory-with-wide-ops-chained.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/type-shrinkage-zext-costs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/widen-gep-all-indices-invariant.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/wider-VF-for-callinst.ll
    M llvm/test/Transforms/LoopVectorize/ARM/mve-gather-scatter-tailpred.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/first-order-recurrence-scalable-vf1.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/fminimumnum.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/interleaved-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/partial-reduce-dot-product.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/riscv-vector-reverse.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-bin-unary-ops-args.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-call-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-div.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-inloop-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-intermediate-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-iv32.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-masked-loadstore.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-ordered-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-reverse-load-store.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-safe-dep-distance.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/transform-narrow-interleave-to-widen-memory.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/truncate-to-minimal-bitwidth-evl-crash.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/vectorize-vp-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/SystemZ/scalar-steps-with-users-demanding-all-lanes-and-first-lane-only.ll
    M llvm/test/Transforms/LoopVectorize/X86/cost-constant-known-via-scev.ll
    M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/X86/uniform_mem_op.ll
    M llvm/test/Transforms/LoopVectorize/create-induction-resume.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-chains-vplan.ll
    M llvm/test/Transforms/LoopVectorize/hoist-predicated-loads.ll
    M llvm/test/Transforms/LoopVectorize/if-reduction.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/load-deref-pred-align.ll
    M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/pr30654-phiscev-sext-trunc.ll
    M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/scalable-inductions.ll
    M llvm/test/Transforms/LoopVectorize/scalable-iv-outside-user.ll
    M llvm/test/Transforms/LoopVectorize/scalable-lifetime.ll
    M llvm/test/Transforms/LoopVectorize/scalable-loop-unpredicated-body-scalar-tail.ll
    M llvm/test/Transforms/LoopVectorize/scalable-predication.ll
    M llvm/test/Transforms/LoopVectorize/scalable-reduction-inloop.ll
    M llvm/test/Transforms/LoopVectorize/scalable-trunc-min-bitwidth.ll
    M llvm/test/Transforms/LoopVectorize/scev-predicate-reasoning.ll
    M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1.ll
    M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction1_div_urem.ll
    M llvm/test/Transforms/LoopVectorize/uniform_across_vf_induction2.ll
    M llvm/test/Transforms/LoopVectorize/vectorize-force-tail-with-evl.ll
    M llvm/test/Transforms/LoopVectorize/vplan-printing-reductions.ll
    M llvm/test/Transforms/LoopVectorize/vplan-sink-scalars-and-merge.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/sve-interleave-vectorization.ll

  Log Message:
  -----------
  Reland [VPlan] Simplify pow-of-2 (mul|udiv) -> (shl|lshr) (#174581)

The original patch, landed as a2db31b0 ([VPlan] Simplify pow-of-2
(mul|udiv) -> (shl|lshr), #172477) had a critical commutative matcher
bug, which has now been fixed. An assert has also been strengthened,
following a post-commit review.


  Commit: 64a224a2fdf3519e1efb3079ad92a6778568f3a4
      https://github.com/llvm/llvm-project/commit/64a224a2fdf3519e1efb3079ad92a6778568f3a4
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap] Bump qs to 6.14.1


  Commit: 701040d48f759369dce755f185a21aa6b92ba3ae
      https://github.com/llvm/llvm-project/commit/701040d48f759369dce755f185a21aa6b92ba3ae
  Author: Iñaki V Arrechea <inakiarrechea at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/FunctionPropertiesAnalysis.h
    A llvm/include/llvm/IR/FunctionProperties.def
    M llvm/lib/Analysis/FunctionPropertiesAnalysis.cpp
    M llvm/lib/Passes/PassBuilderPipelines.cpp
    M llvm/lib/Passes/PassRegistry.def
    A llvm/test/Other/functionpropertiesanalysis.ll

  Log Message:
  -----------
  [LLVM] Successor count added to InstCount (#171670)

Counts the number of Basic Block successors when stats are enabled
We want to track this metric for a project in which we analyze the
effects of having LLVM Intermediate Representation (IR) code with a high
number of branches. We plan to use these capabilities to learn how
enabling memory safety features increases the branchiness in LLVM IR and
further how it affects binary compilation time and the resulting binary
performance.


  Commit: 371fad28244a16f64e707eb8e9889202fdacf85f
      https://github.com/llvm/llvm-project/commit/371fad28244a16f64e707eb8e9889202fdacf85f
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    A llvm/test/Analysis/UniformityAnalysis/AMDGPU/incorrect-assertion-issue-170048.ll

  Log Message:
  -----------
  [UniformityAnalysis] Remove an incorrect assertion in uniformity analysis (#174117)

The join block could be not a header of a cycle, as shown in the newly
added test case.


  Commit: ccca3b8c6746cc27262ea36e8b5a0781d455c48a
      https://github.com/llvm/llvm-project/commit/ccca3b8c6746cc27262ea36e8b5a0781d455c48a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-wmma-w32-param.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    A llvm/test/Bitcode/amdgpu-wmma-clamp-upgrade.ll
    M llvm/test/CodeGen/AMDGPU/wmma-coececution-valu-hazards.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx1250-w32.mir
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  [AMDGPU] Rework the clamp support for WMMA instructions (#174310)

Fixes #166989.


  Commit: 0aea22f13ebad57e973cfc8a3a04a97361a503bf
      https://github.com/llvm/llvm-project/commit/0aea22f13ebad57e973cfc8a3a04a97361a503bf
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M compiler-rt/test/lit.common.configured.in

  Log Message:
  -----------
  [compiler-rt] Support default-True lit config options (follow up to #174522) (#174642)

The option added in #174522 breaks simulator tests, since `set_default`
overrides `False` values with the default.

Since these options are either string or boolean, this patches
set_default to override only un-set or empty string values (empty string
is not truth-y and therefore would be overwritten by defaults currently,
so this is NFCI)


  Commit: c2d060c50e07c614c1c13b431f1102b6808276fe
      https://github.com/llvm/llvm-project/commit/c2d060c50e07c614c1c13b431f1102b6808276fe
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Mark variable unused in release build [[maybe_unused]] (#174648)

To prevent compiler warnings when building without assertions turned on.


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

  Changed paths:
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUDA/CUFFunctionRewrite.cpp
    A flang/test/Fir/CUDA/cuda-function-rewrite.mlir

  Log Message:
  -----------
  [flang][cuda] Add CUFFunctionRewrite pass (#174650)

This rewrite some CUDA Fortran specific like `on_device` function to
constant boolean values.


  Commit: 3e840d2957100cb1e246c7a171f743fe28607698
      https://github.com/llvm/llvm-project/commit/3e840d2957100cb1e246c7a171f743fe28607698
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M bolt/include/bolt/Core/MCPlusBuilder.h
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT] Remove unnecessary dependency. NFC (#174645)

There's no need for a full definition of `BinaryBasicBlock` in
`MCPlusBuilder.h`. Use `InstructionListType::iterator` instead of
`BinaryBasicBlock::iterator` in `findMemcpySizeInBytes()`.


  Commit: e667c39e495d5c8ba47dba6107ca3dc2e9c91048
      https://github.com/llvm/llvm-project/commit/e667c39e495d5c8ba47dba6107ca3dc2e9c91048
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang/include/clang/DependencyScanning/InProcessModuleCache.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/include/clang/Serialization/ModuleManager.h
    M clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    M clang/lib/DependencyScanning/InProcessModuleCache.cpp
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/Rewrite/FrontendActions.cpp
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/lib/Serialization/ModuleManager.cpp
    M clang/unittests/Serialization/ModuleCacheTest.cpp

  Log Message:
  -----------
  [clang] Reference-count `ModuleCache` non-intrusively (#164889)

The `ModuleCache` class is currently reference-counted intrusively. As
explained in https://github.com/llvm/llvm-project/pull/139584, this is
problematic. This PR uses `std::shared_ptr` to reference-count
`ModuleCache` instead, which clarifies what happens to its lifetime when
constructing `CompilerInstance`, for example. This also makes the
reference in `ModuleManager` non-owning, simplifying the ownership
relationship further. The
`ASTUnit::transferASTDataFromCompilerInstance()` function now accounts
for that by taking care to keep it alive.


  Commit: 8ed9a400c175727b53c79b438362a0cb7f189057
      https://github.com/llvm/llvm-project/commit/8ed9a400c175727b53c79b438362a0cb7f189057
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/index-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/index.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/mustache-index.cpp
    M clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
    M clang-tools-extra/test/clang-doc/typedef-alias.cpp

  Log Message:
  -----------
  [clang-doc] Make sidebar sections collapsible (#174531)

Collapsible lists are achieved via `<details>` and their child
`<summary>` tags. `<details>` tags allow for a section to be designated
as collapsible, while the `<summary>` tag is used as the sidebar
section's header. This approach was chosen over making the lists
stateful through various CSS properties.

This patch also refactors the `<li>` tag structure of sidebar sections.
Previously, the section header and list items were in separate `<li>`
tags without sharing a parent. Now, the header and items are under a
single `<li>` tag which makes more sense semantically.


  Commit: 9c2b1bab1bbf674a3f4e7c60d359a9b21b08f9a9
      https://github.com/llvm/llvm-project/commit/9c2b1bab1bbf674a3f4e7c60d359a9b21b08f9a9
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/SourceLocation.h
    M clang/unittests/Basic/SourceManagerTest.cpp

  Log Message:
  -----------
  [LLVM][ADT] Add specialization of `DenseMapInfo` for `SourceRange` (#174524)

So that `SourceRange` can be used in `DenseMap` and `DenseSet`.


  Commit: 30fe41b90ed2244a6e8bafe8371c36274996847d
      https://github.com/llvm/llvm-project/commit/30fe41b90ed2244a6e8bafe8371c36274996847d
  Author: Valentin Clement (バレンタイン クレメン) <clementval at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/CUDA/CUFAddConstructor.cpp
    A flang/lib/Optimizer/Transforms/CUDA/CUFComputeSharedMemoryOffsetsAndSize.cpp
    A flang/lib/Optimizer/Transforms/CUDA/CUFDeviceGlobal.cpp
    A flang/lib/Optimizer/Transforms/CUDA/CUFGPUToLLVMConversion.cpp
    A flang/lib/Optimizer/Transforms/CUDA/CUFOpConversion.cpp
    R flang/lib/Optimizer/Transforms/CUFAddConstructor.cpp
    R flang/lib/Optimizer/Transforms/CUFComputeSharedMemoryOffsetsAndSize.cpp
    R flang/lib/Optimizer/Transforms/CUFDeviceGlobal.cpp
    R flang/lib/Optimizer/Transforms/CUFGPUToLLVMConversion.cpp
    R flang/lib/Optimizer/Transforms/CUFOpConversion.cpp

  Log Message:
  -----------
  [flang][cuda][NFC] Move CUDA Fortran passes into CUDA directory (#174657)

Move CUDA Fortran related passes with others in CUDA directory.


  Commit: 50281de363f7bd91da2bcf2e02f73bbca53915f1
      https://github.com/llvm/llvm-project/commit/50281de363f7bd91da2bcf2e02f73bbca53915f1
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    R clang/test/CIR/CodeGen/X86/avx512-reduceIntrin.c
    R clang/test/CIR/CodeGen/X86/avx512-reduceMinMaxIntrin.c
    R clang/test/CIR/CodeGen/X86/cir-sqrt-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceIntrin.c
    A clang/test/CIR/CodeGenBuiltins/X86/avx512-reduceMinMaxIntrin.c
    A clang/test/CIR/CodeGenBuiltins/X86/sqrt-builtins.c

  Log Message:
  -----------
  [CIR][NFC] Move some builtin tests to the CodeGenBuitins folder (#174660)

This moves a few tests that were created in the wrong location.


  Commit: 423b2dad40941210f5df13a2b521949688d54e16
      https://github.com/llvm/llvm-project/commit/423b2dad40941210f5df13a2b521949688d54e16
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/avg.ll
    M llvm/test/CodeGen/PowerPC/vavg.ll
    M llvm/test/CodeGen/X86/avgceils.ll
    M llvm/test/CodeGen/X86/avgceilu.ll

  Log Message:
  -----------
  [AArch64][PPC][X86] Add test coverage for #128377 (#174661)


  Commit: 08215e5093b6415441e3c5969ed10ce0180416e8
      https://github.com/llvm/llvm-project/commit/08215e5093b6415441e3c5969ed10ce0180416e8
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/C/C23/n3029.c
    A clang/test/Sema/c23-fixed-underlying-enum.c
    A clang/test/Sema/c23-switch.c
    M clang/test/SemaCXX/bitfield-preferred-type-sizing.cpp

  Log Message:
  -----------
  [Clang] treat fixed-underlying enum constants as the enumerated type in C23 to follow the spec (#172211)

Fixes #172118

--- 

This patch resolves an issue where C23 fixed-underlying enum constants
were incorrectly treated as the underlying integer type instead of the
enumeration type.

According to C23 `6.7.2.2p15`:

> The enumeration member type of an enumerated type with a fixed
underlying type is the same as the type itself.


  Commit: 9471f530b7b6253be553514baba20ca0187fe217
      https://github.com/llvm/llvm-project/commit/9471f530b7b6253be553514baba20ca0187fe217
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.test
    M llvm/utils/lldbDataFormatters.py

  Log Message:
  -----------
  [llvm][formatters] Add LLDB data-formatter for llvm::PointerIntPair (#173261)

Depends on:
* https://github.com/llvm/llvm-project/pull/173238

(only last commit relevant for review)

This patch revives the `llvm::PointerIntPair` LLDB data-formatter. The
previous version was commented out because it relied on expression
evaluation and was hence slow/brittle. The formatter in this PR doesn't
rely on evaluating expressions.

Drive-by change:
* removes the `llvm::PointerUnion` formatter which was also commented
out. A future version of it will look very different than it does now,
so there's no point in keeping it because the diff won't be helpful in a
review.


  Commit: 4dc9a0ed927d7237fa70959696870bf878441f4b
      https://github.com/llvm/llvm-project/commit/4dc9a0ed927d7237fa70959696870bf878441f4b
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
    M mlir/include/mlir/Interfaces/Utils/InferIntRangeCommon.h
    M mlir/lib/Dialect/Affine/IR/CMakeLists.txt
    A mlir/lib/Dialect/Affine/IR/InferIntRangeInterfaceImpls.cpp
    M mlir/lib/Interfaces/Utils/InferIntRangeCommon.cpp
    A mlir/test/Dialect/Affine/int-range-interface.mlir

  Log Message:
  -----------
  [mlir][affine] Add an integer range interface to `affine.apply` (#174277)


  Commit: 3bdda61f8cdbab6adca9a6b579c14f579c299974
      https://github.com/llvm/llvm-project/commit/3bdda61f8cdbab6adca9a6b579c14f579c299974
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/avx512f16c-builtins.c

  Log Message:
  -----------
  [X86][CIR]Implement handling for F16 halfs to float conversion builtins  (#173572)

Related to: #167765 
This PR implements-
`BI__builtin_ia32_vcvtph2ps_mask`
`BI__builtin_ia32_vcvtph2ps256_mask`
`BI__builtin_ia32_vcvtph2ps512_mask`


  Commit: a4cc033408fe0a69aad6865ddc7e020d64098f20
      https://github.com/llvm/llvm-project/commit/a4cc033408fe0a69aad6865ddc7e020d64098f20
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    R cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp
    R cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.test
    M llvm/utils/lldbDataFormatters.py

  Log Message:
  -----------
  Revert "[llvm][formatters] Add LLDB data-formatter for llvm::PointerIntPair" (#174673)

Reverts llvm/llvm-project#173261

Some bots were failing with:
```
Step 6 (build-unified-tree) failure: build (failure)
...
2.874 [7103/10/382] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CallingConvEmitter.cpp.o
2.875 [7102/10/383] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeEmitterGen.cpp.o
2.895 [7101/10/384] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CodeGenMapTable.cpp.o
2.896 [7100/10/385] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CompressInstEmitter.cpp.o
2.898 [7099/10/386] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/CTagsEmitter.cpp.o
2.901 [7098/10/387] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelEmitter.cpp.o
2.905 [7097/10/388] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherEmitter.cpp.o
2.918 [7096/10/389] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherGen.cpp.o
2.920 [7095/10/390] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderTree.cpp.o
2.932 [7094/10/391] Building CXX object projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o
FAILED: projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o 
/opt/ccache/bin/g++ -D_DEBUG -D_GLIBCXX_ASSERTIONS -D_GLIBCXX_USE_CXX11_ABI=1 -D_GNU_SOURCE -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D__STDC_LIMIT_MACROS -I/home/buildbot/buildbot-root/abi-test/build/projects/cross-project-tests -I/home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests -I/home/buildbot/buildbot-root/abi-test/build/include -I/home/buildbot/buildbot-root/abi-test/llvm/llvm/include -fPIC -fno-semantic-interposition -fvisibility-inlines-hidden -Werror=date-time -Wall -Wextra -Wno-unused-parameter -Wwrite-strings -Wcast-qual -Wno-missing-field-initializers -pedantic -Wno-long-long -Wimplicit-fallthrough -Wno-uninitialized -Wno-nonnull -Wno-class-memaccess -Wno-redundant-move -Wno-pessimizing-move -Wno-array-bounds -Wno-stringop-overread -Wno-noexcept-type -Wdelete-non-virtual-dtor -Wsuggest-override -Wno-comment -Wno-misleading-indentation -Wctad-maybe-unsupported -fdiagnostics-color -ffunction-sections -fdata-sections -O3 -DNDEBUG -UNDEBUG -g -O0 -std=c++17 -MD -MT projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o -MF projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o.d -o projects/cross-project-tests/CMakeFiles/check-lldb-llvm-support-pointer-int-pair.dir/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp.o -c /home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp
/home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp: In function ‘int main()’:
/home/buildbot/buildbot-root/abi-test/llvm/cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp:25:3: error: ‘__builtin_debugtrap’ was not declared in this scope; did you mean ‘__builtin_trap’?
   25 |   __builtin_debugtrap();
      |   ^~~~~~~~~~~~~~~~~~~
      |   __builtin_trap
2.932 [7094/9/392] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DAGISelMatcherOpt.cpp.o
2.933 [7094/8/393] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderTableEmitter.cpp.o
2.936 [7094/7/394] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DecoderEmitter.cpp.o
2.937 [7094/6/395] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAEmitter.cpp.o
2.944 [7094/5/396] Building CXX object utils/TableGen/CMakeFiles/llvm-tblgen.dir/DFAPacketizerEmitter.cpp.o
3.340 [7094/4/397] Building PPCGenTargetFeatures.inc...
3.450 [7094/3/398] Building ARMTargetParserDef.inc...
3.780 [7094/2/399] Building AArch64TargetParserDef.inc...
5.093 [7094/1/400] Building RISCVTargetParserDef.inc...
ninja: build stopped: subcommand failed.
```


  Commit: 551d55397a91895779f5b2a83a59cd0bc5fefb91
      https://github.com/llvm/llvm-project/commit/551d55397a91895779f5b2a83a59cd0bc5fefb91
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add SimplifyDemandedBits and hasAllNBitUsers support for CLSW. (#174542)

This matches what we do for CLZW and other W instructions.


  Commit: 0b2f3cfb72a76fa90f3ec2a234caabe0d0712590
      https://github.com/llvm/llvm-project/commit/0b2f3cfb72a76fa90f3ec2a234caabe0d0712590
  Author: dyung <douglas.yung at sony.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-wmma-w32-param.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    R llvm/test/Bitcode/amdgpu-wmma-clamp-upgrade.ll
    M llvm/test/CodeGen/AMDGPU/wmma-coececution-valu-hazards.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx1250-w32.mir
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  Revert "[AMDGPU] Rework the clamp support for WMMA instructions" (#174674)

Reverts llvm/llvm-project#174310

This change is causing 2 cross-project-test failures on
https://lab.llvm.org/buildbot/#/builders/174/builds/29695


  Commit: 8136cb901b58ef586347e2b2106ab2babb386596
      https://github.com/llvm/llvm-project/commit/8136cb901b58ef586347e2b2106ab2babb386596
  Author: John Harrison <harjohn at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/docs/index.rst
    A lldb/docs/resources/lldbdap-contributing.md
    R lldb/docs/resources/lldbdap.md
    A lldb/docs/use/lldbdap.md
    M lldb/tools/lldb-dap/README.md

  Log Message:
  -----------
  [lldb] Update LLDB DAP documentation. (#172580)

This adds a new page to lldb.llvm.org that includes a user guide for
lldb-dap.

The overall structure for documentation:

* https://lldb.llvm.org/resources/lldbdap.html - represents the user
facing documentation for lldb-dap, a high level overview of lldb-dap and
a place we can point users to for basic usage information.
* https://lldb.llvm.org/resources/lldbdap-contributing.html - represents
the contributing documentation for lldb-dap.
* llvm-project/lldb/tools/lldb-dap/README.md - The lldb-dap VSCode
Extension specific documentation.

This is a first pass at the documentation, I expect to expand on it
further as needed.


  Commit: 1ec343ddb5f1cddf14db5f776424121f8acbb9f4
      https://github.com/llvm/llvm-project/commit/1ec343ddb5f1cddf14db5f776424121f8acbb9f4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Add support for `nvptx64-nvidia-cuda` triple (#174611)

Summary:
The OS here is the standard CUDA support target, which is the ABI used
for all of the same intrinsics the `nvidiacl` target uses. These can be
aliases asn `cuda` in the triple is the canonical form for most all GPU
compute.


  Commit: 6e86037962ad124d39d81b0b6c21b1be45321722
      https://github.com/llvm/llvm-project/commit/6e86037962ad124d39d81b0b6c21b1be45321722
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    M llvm/test/CodeGen/RISCV/xqcilsm-lwmi-swmi.mir

  Log Message:
  -----------
  [RISCV] Improve load/store pairing for Xqcilsm instructions in RISCVLoadStoreOptimizer (#174612)

If we did not pair two viable `Xqcilsm` load/store instructions in
`RISCVLoadStoreOptimizer` we iterated over the second instruction when
looking for other pairs to merge. This leads to us missing out on
opportunities where the second instruction could have been the start of
another potential pair that could have been merged.


  Commit: 4435d434ed86eeff6be6552739e3b83c612fb812
      https://github.com/llvm/llvm-project/commit/4435d434ed86eeff6be6552739e3b83c612fb812
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rv64p.ll

  Log Message:
  -----------
  [RISCV] Add computeKnownBits for CLSW. (#174636)


  Commit: e8bf7e81e2d78ae4575815222ee17d0f032aed97
      https://github.com/llvm/llvm-project/commit/e8bf7e81e2d78ae4575815222ee17d0f032aed97
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses.cpp

  Log Message:
  -----------
  [clang-tidy] fix false positives for bugprone-macro-parentheses in C++ templates (#174329)

Closes #91155


  Commit: 1eb0bbdea52123899ff28f74d2dbf4634e5e2fe0
      https://github.com/llvm/llvm-project/commit/1eb0bbdea52123899ff28f74d2dbf4634e5e2fe0
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Fix typo from 6e86037. NFC (#174679)


  Commit: 39d6f10e335e7b86a9abb09d44fbd7d418f4e970
      https://github.com/llvm/llvm-project/commit/39d6f10e335e7b86a9abb09d44fbd7d418f4e970
  Author: Shih-Po Hung <shihpo.hung at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/RISCV/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-div.ll
    M llvm/test/Transforms/LoopVectorize/X86/divs-with-tail-folding.ll
    M llvm/test/Transforms/LoopVectorize/first-order-recurrence-sink-replicate-region.ll
    M llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
    A llvm/test/Transforms/LoopVectorize/tail-folding-div.ll

  Log Message:
  -----------
  [LV] Conservatively predicate SDiv/SRem (#170818)

Conservatively predicate sdiv/srem:
- RHS may carry poison in masked‑off lanes.
- RHS could be −1 while LHS has masked‑off lanes (risking INT_MIN/−1
overflow).

We’ll relax this once we can prove non‑wrap/non‑poison conditions.

Fixes #170775.


  Commit: 42d8bc926bc8bb21cce2e018f6fa1bb82d416387
      https://github.com/llvm/llvm-project/commit/42d8bc926bc8bb21cce2e018f6fa1bb82d416387
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/comment-template.mustache
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/comments-in-macros.cpp
    M clang-tools-extra/test/clang-doc/conversion_function.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    M clang-tools-extra/test/clang-doc/typedef-alias.cpp

  Log Message:
  -----------
  [clang-doc] Add a border box to comments in HTML (#174541)

Comments weren't very visually distinctive in HTML. They immediately
proceeded the declaration header and didn't have spacing between them.
To visually organize them, they now have a thin border around them.
Different comment types are also now separated by a small gap. This also
allows them to be easily changed in the future. Some extraneous `<div>`
tags are also removed or merged.


  Commit: af8bb1d5219353a099d63f9da6c9dd5dff77c600
      https://github.com/llvm/llvm-project/commit/af8bb1d5219353a099d63f9da6c9dd5dff77c600
  Author: Pranav Kant <prka at google.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for 4dc9a0e (#174691)


  Commit: afe82570c1ee8e8cacb46634a56a580688f3f8d1
      https://github.com/llvm/llvm-project/commit/afe82570c1ee8e8cacb46634a56a580688f3f8d1
  Author: Feng Zou <feng.zou at intel.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.td
    M llvm/lib/Target/X86/X86FastISel.cpp
    M llvm/lib/Target/X86/X86FixupSetCC.cpp
    M llvm/lib/Target/X86/X86FlagsCopyLowering.cpp
    M llvm/lib/Target/X86/X86InstrCMovSetCC.td
    M llvm/lib/Target/X86/X86InstrPredicates.td
    M llvm/test/CodeGen/X86/apx/ccmp.ll
    M llvm/test/CodeGen/X86/apx/ctest.ll
    M llvm/test/CodeGen/X86/apx/setzucc.ll
    M llvm/test/CodeGen/X86/fast-isel-fcmp.ll
    M llvm/test/CodeGen/X86/fast-isel-select-cmov2.ll
    M llvm/test/CodeGen/X86/pr27591.ll
    M llvm/test/CodeGen/X86/pr32284.ll
    M llvm/test/CodeGen/X86/pr54369.ll
    M llvm/test/CodeGen/X86/scmp.ll

  Log Message:
  -----------
  [X86][APX] Emit SetZUCC instead of legacy setcc when ZU is enabled (#173965)

To avoid false dependency.


  Commit: 00e3a3c5e6cdf2d04036dd19c88cec2b001a7559
      https://github.com/llvm/llvm-project/commit/00e3a3c5e6cdf2d04036dd19c88cec2b001a7559
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/algorithms/nodiscard.verify.cpp
    A libcxx/test/libcxx/algorithms/pstl.nodiscard.verify.cpp
    M libcxx/test/libcxx/atomics/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/associative/map/map.nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/associative/map/multimap.nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/associative/set/multiset.nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/associative/set/set.nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.map/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.multimap/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.multiset/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/flat.set/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/queue/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/container.adaptors/stack/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/sequences/array/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/sequences/deque/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/sequences/forwardlist/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/sequences/list/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/sequences/vector/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/unord/unord.map/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/unord/unord.multimap/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/unord/unord.multiset/nodiscard.verify.cpp
    A libcxx/test/libcxx/containers/unord/unord.set/nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/algorithm.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/array.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/atomic.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/bit.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/chrono.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/cmath.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/cstddef.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/cstdlib.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/deque.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/filesystem.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/flat_map.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/flat_multimap.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/flat_multiset.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/flat_set.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/format.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/forward_list.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/functional.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/future.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/limits.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/list.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/map.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/multimap.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/multiset.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/mutex.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/new.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/pstl.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/queue.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/regex.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/set.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/stack.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/string.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/string_view.nodiscard.verify.cpp
    A libcxx/test/libcxx/diagnostics/syserr/system_error_win_codes.pass.cpp
    R libcxx/test/libcxx/diagnostics/system_error_win_codes.pass.cpp
    R libcxx/test/libcxx/diagnostics/unordered_map.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/unordered_multimap.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/unordered_multiset.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/unordered_set.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/utility.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/vector.nodiscard.verify.cpp
    A libcxx/test/libcxx/input.output/filesystems/nodiscard.verify.cpp
    A libcxx/test/libcxx/language.support/limits/nodiscard.verify.cpp
    M libcxx/test/libcxx/language.support/nodiscard.verify.cpp
    A libcxx/test/libcxx/numerics/c.math/nodiscard.verify.cpp
    A libcxx/test/libcxx/re/nodiscard.verify.cpp
    A libcxx/test/libcxx/strings/basic.string/nodiscard.verify.cpp
    A libcxx/test/libcxx/strings/string.view/nodiscard.verify.cpp
    M libcxx/test/libcxx/thread/nodiscard.verify.cpp
    A libcxx/test/libcxx/time/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/bit/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/format/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/function.objects/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/utility/nodiscard.verify.cpp
    A libcxx/test/std/language.support/support.types/cstddef.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][NFC] Refactor `[[nodiscard]]` tests (#173451)

Originally some `[[nodiscard]]` tests were implemented in
`*/test/libcxx/diagnostics`. The Standard has a library `Diagnostics`
and this folder should be reserved for it by convention. Most newer
tests were added to their respective sub-folders. This patch moves
around the already implemented `[[nodiscard]]` tests to their respective
folders where they belong and standardizes the name to
`nodiscard.verify.cpp` wherever possible.

N.B. This refactors only tests, which were merged. The remaining
(in-progress) ones will be moved in a future patch to reduce merge
conflicts.


  Commit: 7d6dc2579e1beb8ea3e21eac14d642fd27eba6a7
      https://github.com/llvm/llvm-project/commit/7d6dc2579e1beb8ea3e21eac14d642fd27eba6a7
  Author: Kito Cheng <kito.cheng at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/test/MC/RISCV/custom_reloc.s
    M llvm/test/MC/RISCV/rv32-relaxation-xqci.s
    M llvm/test/MC/RISCV/vendor-symbol.s
    M llvm/test/MC/RISCV/xandesperf-relocation.s
    M llvm/test/MC/RISCV/xqcibi-linker-relaxation.s
    M llvm/test/MC/RISCV/xqcibi-relocations.s
    M llvm/test/MC/RISCV/xqcilb-relocations.s
    M llvm/test/MC/RISCV/xqcili-linker-relaxation.s
    M llvm/test/MC/RISCV/xqcili-relocations.s
    A llvm/test/tools/llvm-objdump/ELF/RISCV/riscv-vendor-reloc.s
    A llvm/test/tools/llvm-readobj/ELF/RISCV/riscv-vendor-reloc.s
    M llvm/tools/llvm-objdump/llvm-objdump.cpp
    M llvm/tools/llvm-readobj/ELFDumper.cpp

  Log Message:
  -----------
  [RISCV][llvm-readobj,llvm-objdump] Use getRISCVVendorRelocationTypeName for RISCV vendor relocations (#172811)

Use getRISCVVendorRelocationTypeName to resolve RISCV vendor-specific
relocation names (R_RISCV_CUSTOM192-255) when preceded by
R_RISCV_VENDOR.

This improves the output of llvm-readobj and llvm-objdump to show
vendor-specific names like R_RISCV_QC_ABS20_U, R_RISCV_QC_E_BRANCH
(QUALCOMM) and R_RISCV_NDS_BRANCH_10 (ANDES) instead of generic
R_RISCV_CUSTOM* names.

Per RISC-V psABI, R_RISCV_VENDOR must be placed immediately before its
associated vendor-specific relocation, so the vendor symbol is consumed
after one use. Unknown vendors fall back to R_RISCV_CUSTOM*.


  Commit: 5ab8368d80f88bd9edf8bf96227da3072a7579c3
      https://github.com/llvm/llvm-project/commit/5ab8368d80f88bd9edf8bf96227da3072a7579c3
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp
    M llvm/lib/Target/RISCV/RISCVTargetObjectFile.h

  Log Message:
  -----------
  [RISC-V][Mach-O] Implement and select the RISCVMachOTargetObjectFile. (#174677)

The RISCVTargetMachine was still selecting RISCVELFTargetObjectFile,
which was making llc crash when running the test at
llvm/test/CodeGen/RISCV/riscv-macho.ll


  Commit: 5a63367b15875417cd699af3cde01ed10782d8d8
      https://github.com/llvm/llvm-project/commit/5a63367b15875417cd699af3cde01ed10782d8d8
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/test/CodeGenOpenCL/builtins-amdgcn-gfx1250-wmma-w32.cl
    M clang/test/SemaOpenCL/builtins-amdgcn-error-gfx1250-wmma-w32-param.cl
    M llvm/include/llvm/IR/IntrinsicsAMDGPU.td
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/lib/Target/AMDGPU/VOP3PInstructions.td
    M llvm/test/Analysis/UniformityAnalysis/AMDGPU/intrinsics.ll
    A llvm/test/Bitcode/amdgpu-wmma-clamp-upgrade.ll
    M llvm/test/CodeGen/AMDGPU/wmma-coececution-valu-hazards.mir
    M llvm/test/CodeGen/AMDGPU/wmma-hazards-gfx1250-w32.mir
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_wmma_w32.txt
    M mlir/include/mlir/Dialect/LLVMIR/ROCDLOps.td
    M mlir/test/Target/LLVMIR/rocdl.mlir

  Log Message:
  -----------
  Reapply "[AMDGPU] Rework the clamp support for WMMA instructions" (#174674) (#174697)

This reverts commit 0b2f3cfb72a76fa90f3ec2a234caabe0d0712590.


  Commit: 16be2c0555080cdc0f0588dc0b4416e8c28d3cf9
      https://github.com/llvm/llvm-project/commit/16be2c0555080cdc0f0588dc0b4416e8c28d3cf9
  Author: Fangrui Song <i at maskray.me>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M lld/ELF/ScriptLexer.cpp
    M lld/ELF/ScriptLexer.h
    M lld/ELF/ScriptParser.cpp
    M lld/test/ELF/dynamic-list-extern.s
    M lld/test/ELF/linkerscript/version-script.s
    M lld/test/ELF/version-script.s

  Log Message:
  -----------
  [ELF] Add VersionNode lexer state for better version script parsing

... so that `local:*;` will be lexed as three tokens instead of a single
one in a version node. This is used by both version scripts and dynamic
lists. Fix #174363

In addition, clean up special code for space-separated `local :` and `global :`.

This patch brings our lexer behavior closer to GNU ld. While GNU ld
additionally rejects more characters like `~/+,=`, we don't implement
this additional validation.

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


  Commit: 4ac64317550a39934cac34227dc8d770c1110206
      https://github.com/llvm/llvm-project/commit/4ac64317550a39934cac34227dc8d770c1110206
  Author: Ben Vanik <ben.vanik at gmail.com>
  Date:   2026-01-06 (Tue, 06 Jan 2026)

  Changed paths:
    M mlir/lib/Transforms/Utils/RegionUtils.cpp
    M mlir/test/Transforms/canonicalize-block-merge.mlir

  Log Message:
  -----------
  [mlir] Fix crash in dropRedundantArguments with produced operands. (#172759)

dropRedundantArguments was incorrectly indexing into forwardedOperands
using the block argument index directly. This crashes when the block has
produced operands (generated by the terminator, not forwarded from
predecessors) because forwardedOperands doesn't include them.

The fix checks isOperandProduced() to skip produced arguments and uses
SuccessorOperands::operator[] which handles the offset correctly.


  Commit: 2451172df73445bc2e28bf3f9b7caf2e4bff7469
      https://github.com/llvm/llvm-project/commit/2451172df73445bc2e28bf3f9b7caf2e4bff7469
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ASTWriterDecl.cpp
    A clang/test/Modules/class-instantiate-no-change.cppm
    M clang/test/Modules/malformed-constraint-template-non-type-parm-decl.cpp

  Log Message:
  -----------
  [C++20] [Modules] Don't update MarkAsUsed information for decls from named modules (#174687)

Declarations from named modules are used naturally. Thet are
declarations in other TU. We don't need to record the information for
updating them.


  Commit: 050195053c8aff21bb02ade4c90cb7f42343849c
      https://github.com/llvm/llvm-project/commit/050195053c8aff21bb02ade4c90cb7f42343849c
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    R llvm/test/Analysis/UniformityAnalysis/AMDGPU/incorrect-assertion-issue-170048.ll

  Log Message:
  -----------
  Revert "[UniformityAnalysis] Remove an incorrect assertion in uniformity analysis (#174117)"

This reverts commit 371fad28244a16f64e707eb8e9889202fdacf85f.

The change only fixes the superficial assertion. The real problem is that bb.3
and bb.4 should not have been identified as joins of bb.5


  Commit: 62ac81311535c52f6648135352f70cfbb0e32b10
      https://github.com/llvm/llvm-project/commit/62ac81311535c52f6648135352f70cfbb0e32b10
  Author: Hendrik_Klug <43926224+Jimmy2027 at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/lib/Target/Cpp/TranslateToCpp.cpp
    M mlir/test/Target/Cpp/global.mlir

  Log Message:
  -----------
  [mlir][emitc] Fix creating pointer from constant array (#162083)

Modify the C++ emitter to detect when an AddressOf op traces back to a const global. If it does, emit a C-style cast `(T*)(&...)` to strip the const qualification.


  Commit: 3fbe927443a9dd3ab2e6ee7d95fbfcb505b7e54d
      https://github.com/llvm/llvm-project/commit/3fbe927443a9dd3ab2e6ee7d95fbfcb505b7e54d
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-complex-mask.ll

  Log Message:
  -----------
  [LV][EVL] Add test case for issue #173260. nfc (#173262)


  Commit: b4ed102b1ebf92759786d750798b76bba6f1867c
      https://github.com/llvm/llvm-project/commit/b4ed102b1ebf92759786d750798b76bba6f1867c
  Author: Chuanqi Xu <yedeng.yd at linux.alibaba.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaModule.cpp
    A clang/test/Modules/pr174543.cppm

  Log Message:
  -----------
  [C++20] [Modules] Avoid infinite loop when checking TU local exposures (#174704)

Close https://github.com/llvm/llvm-project/issues/174543

The root cause of the problem is that the recursion in the code pattern
triggers infinite loop in the checking process for TU local exposure.


  Commit: 55eaa6c27b365d4ef4b0075115ae18543e6f599f
      https://github.com/llvm/llvm-project/commit/55eaa6c27b365d4ef4b0075115ae18543e6f599f
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/AArch64/neon-shift-intrinsics.ll

  Log Message:
  -----------
  [InstCombine][AArch64] Lower NEON shift intrinsics when possible (#172465)


  Commit: eb13822b511f59399cbb09301a6c1f25b2be0850
      https://github.com/llvm/llvm-project/commit/eb13822b511f59399cbb09301a6c1f25b2be0850
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx950-cvt.hip

  Log Message:
  -----------
  [AMDGPU] Modifies cvt and atomic builtin def to take _Float16 for HIP/C++ (#174707)

For cvt and atomic `__builtin_amdgcn_cvt` builtins, using 'x' in the def
to take _Float16 for HIP/C++ and half for OpenCL.


  Commit: b919d62eae98519013a6e80453458304df5d7485
      https://github.com/llvm/llvm-project/commit/b919d62eae98519013a6e80453458304df5d7485
  Author: Twice <twice at apache.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir-c/BuiltinTypes.h
    M mlir/include/mlir-c/Dialect/AMDGPU.h
    M mlir/include/mlir-c/Dialect/EmitC.h
    M mlir/include/mlir-c/Dialect/GPU.h
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir-c/Dialect/NVGPU.h
    M mlir/include/mlir-c/Dialect/PDL.h
    M mlir/include/mlir-c/Dialect/Quant.h
    M mlir/include/mlir-c/Dialect/SMT.h
    M mlir/include/mlir-c/Dialect/Transform.h
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/include/mlir/Bindings/Python/IRTypes.h
    M mlir/lib/Bindings/Python/DialectAMDGPU.cpp
    M mlir/lib/Bindings/Python/DialectGPU.cpp
    M mlir/lib/Bindings/Python/DialectLLVM.cpp
    M mlir/lib/Bindings/Python/DialectNVGPU.cpp
    M mlir/lib/Bindings/Python/DialectPDL.cpp
    M mlir/lib/Bindings/Python/DialectQuant.cpp
    M mlir/lib/Bindings/Python/DialectSMT.cpp
    M mlir/lib/Bindings/Python/DialectTransform.cpp
    M mlir/lib/CAPI/Dialect/AMDGPU.cpp
    M mlir/lib/CAPI/Dialect/EmitC.cpp
    M mlir/lib/CAPI/Dialect/GPU.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/Dialect/NVGPU.cpp
    M mlir/lib/CAPI/Dialect/PDL.cpp
    M mlir/lib/CAPI/Dialect/Quant.cpp
    M mlir/lib/CAPI/Dialect/SMT.cpp
    M mlir/lib/CAPI/Dialect/Transform.cpp
    M mlir/lib/CAPI/IR/BuiltinTypes.cpp
    M mlir/test/python/ir/builtin_types.py

  Log Message:
  -----------
  [MLIR][Python] Forward the name of MLIR types to Python side (#174700)

In this PR, I added a C API for each (upstream) MLIR type to retrieve
its type name (for example, `IntegerType` -> `mlirIntegerTypeGetName()`
-> `"builtin.integer"`), and exposed a corresponding `type_name` class
attribute in the Python bindings (e.g., `IntegerType.type_name` ->
`"builtin.integer"`). This can be used in various places to avoid
hard-coded strings, such as eliminating the manual string in
`irdl.base("!builtin.integer")`.

Note that parts of this PR (mainly mechanical changes) were produced via
GitHub Copilot and GPT-5.2. I have manually reviewed the changes and
verified them with tests to ensure correctness.


  Commit: c85b8ff4d74bea08ac690a6c2a612313241237cc
      https://github.com/llvm/llvm-project/commit/c85b8ff4d74bea08ac690a6c2a612313241237cc
  Author: Jorn Tuyls <jorn.tuyls at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/MemRef/IR/MemRefOps.td
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/resolve-dim-ops.mlir

  Log Message:
  -----------
  [MemRef] Add dim reification for AssumeAlignmentOp (#174477)


  Commit: c55c2ab8067eef649a8b04fc8173b8e164cb56b3
      https://github.com/llvm/llvm-project/commit/c55c2ab8067eef649a8b04fc8173b8e164cb56b3
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A .ci/buildbot/README.md
    A .ci/buildbot/worker.py
    A polly/ci/.gitignore
    A polly/ci/polly-x86_64-linux-test-suite.cmake
    A polly/ci/polly-x86_64-linux-test-suite.py

  Log Message:
  -----------
  [Buildbot][Polly] Move polly-x86_64-linux-test-suite build instructions into main repository (#166809)

Allow the main llvm-project repository to contain the buildbot builder
instructions, instead of storing them in llvm-zorg. The corresponding
llvm-zorg PR is https://github.com/llvm/llvm-zorg/pull/648.

Using polly-x86_64-linux-test-suite as a proof-of-concept because that
builder is currently offline, I am its maintainer, and is easier to
build than an configuration supporting offload. Once the design has been
decided, more builders can follow.

Advantages are:
* It is easier to make changes in the llvm-project repository. There are
  more reviewers than for the llvm-zorg repository.
* Buildbot changes can be made in the same PR with changes that require
  updating the buildbot, e.g. changing the name of a CMake option.
* Configuration changes take effect immeditately when landing; no
  buildbot master restart needed.
* Some builders store a CMake cache file in the llvm-project repository
  for the reasons above. However, the number of changes that can be made
  with a CMake cache file alone are limited.

Compared to AnnotatedBuilder, advantages are:
* Reproducing a buildbot configuration locally made easy: just execute
  the script in-place. No llvm-zorg, local buildbot worker, or buildbot
  master needed.
* Same for testing a change of a builder before landing it in llvm-zorg.
  Doing so with an AnnotatedBuilder requires two llvm-zorg checkouts:
  One for making the change of the builder script itself, which then is
  pushed to a private llvm-zorg branch on GitHub, and a second that is
  modified to fetch that branch instead of
  https://github.com/llvm/llvm-zorg/tree/main.
* The AnnotatedBuilder scripts are located in the llvm-zorg repository
  and the buildbot-workers always checkout is always the top-of-trunk.
  This means that a buildbot configuration is split over three checkouts:
     * The checkout of llvm-project to be tested
     * The checkout of llvm-zorg by the buildbot-worker fetches; always the
        top-of-trunk, i.e may not match the revision of llvm-project that is
        executed (such as the CMake cache files located there), especially when
        using the "Force build" feature.
     * The checkout of llvm-zorg that the buildbot-master is running, which
       is updated only when the master is manually restarted.
* The "Force Build" feature also allows for test-building any
  llvm-project PR. This is correctly handled by zorg's
  `addGetSourcecodeSteps`, but does not work with AnnotatedBuilders that
  checkout the llvm-project source on their own.

The goal is to move as much as possible into the llvm-project repository
such that there cannot be a mismatch between checkouts of different
repositories. Ideally, the buildbot-master only needs to be
updated+restarted for adding/removing workers, not for build
configuration changes.

---------

Co-authored-by: Jan Patrick Lehr <jp.lehr at gmail.com>


  Commit: 164cfda88e7a339d0c4beed6bb0a5fe3c25c73a2
      https://github.com/llvm/llvm-project/commit/164cfda88e7a339d0c4beed6bb0a5fe3c25c73a2
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A bolt/test/AArch64/rseq.s

  Log Message:
  -----------
  [BOLT][AArch64] Add rseq test (#174413)


  Commit: a83c89495ba6fe0134dcaa02372c320cc7ff0dbf
      https://github.com/llvm/llvm-project/commit/a83c89495ba6fe0134dcaa02372c320cc7ff0dbf
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/Constants.h

  Log Message:
  -----------
  Reapply [ConstantInt] Disable implicit truncation in ConstantInt::get() (#171456)

Reapply after additional fixes.

-----

Disable implicit truncation in the ConstantInt constructor by default.
This means that it needs to be passed a signed/unsigned (depending on
the IsSigned flag) value matching the bit width.

The intention is to prevent the recurring bug where people write
something like `ConstantInt::get(Ty, -1)`, and this "works" until `Ty`
is larger than 64-bit and then the value is incorrect due to missing
type extension.

This is the continuation of
https://github.com/llvm/llvm-project/pull/112670, which originally
allowed implicit truncation in this constructor to reduce initial scope
of the change.


  Commit: 029e529978cb0fd3e699a6e1c39532de9bb4261c
      https://github.com/llvm/llvm-project/commit/029e529978cb0fd3e699a6e1c39532de9bb4261c
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaLambda.cpp
    M clang/test/SemaCXX/lambda-unevaluated.cpp

  Log Message:
  -----------
  [Clang] prevent assertion failure by avoiding always-dependent lambdas in constraint-related nested scopes (#173776)

Fixes #172814

--- 

This patch resolves an issue in which a lambda could be classified as
always-dependent while traversing nested scopes, causing an assertion
failure during capture handling.

Changes in PR #93206 expanded scope-based dependency handling in a way
that could mark certain lambdas as always-dependent when no
template-dependent context was present.

This update refines the criteria for assigning
`LambdaDependencyKind::LDK_AlwaysDependent` and applies it only after
traversal reaches a distinct enclosing function scope with
template-dependent parameters.


  Commit: 72f18a05d6dcf96d0f5722ff425a6c7388933ab1
      https://github.com/llvm/llvm-project/commit/72f18a05d6dcf96d0f5722ff425a6c7388933ab1
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/CodeGen/AMDGPU/combine-scalar-selects-asm.ll
    A llvm/test/CodeGen/AMDGPU/combine-scalar-selects.ll

  Log Message:
  -----------
  [VectorCombine] Fold scalar selects from bitcast into vector select (#173990)


  Commit: ad2c2b2b1c6bb95f58150cdf172785cabef40d4a
      https://github.com/llvm/llvm-project/commit/ad2c2b2b1c6bb95f58150cdf172785cabef40d4a
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/test/CodeGen/codegen-plugins.c
    M clang/test/CodeGen/pass-plugins.c

  Log Message:
  -----------
  [Clang][NFC] XFAIL plugin tests on AIX

See: https://github.com/llvm/llvm-project/pull/171872#issuecomment-3716175811


  Commit: 76c300c8c71c7a3283a8236cbb7d7cb7a2cb30d8
      https://github.com/llvm/llvm-project/commit/76c300c8c71c7a3283a8236cbb7d7cb7a2cb30d8
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M bolt/lib/Passes/PointerAuthCFIFixup.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/unittests/Core/MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT][BTI] Fix assertions checking getNumOperands (#174600)

Several BTI-related functions are checking that a call MCInst has one
non-annotation operand.

This patch changes these checks to use MCPlus::getNumPrimeOperands,
instead of getNumOperands.

Testing: 
added annotations to existing gtests to serve as regression
tests. These now also explicitly check getNumOperands and getNumPrimeOperands
usage on the annotated MCInsts.


  Commit: 87d6c277b19810905d677be3646e19a1b08d6cc5
      https://github.com/llvm/llvm-project/commit/87d6c277b19810905d677be3646e19a1b08d6cc5
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-objdump/COFFDump.cpp

  Log Message:
  -----------
  [llvm-objdump][NFC] Use EnumEntry from Support (#174155)

Don't duplicate the EnumEntry type in llvm-objdump.

Spliced off from #173868, where this is required to avoid the name
collision.


  Commit: 277069e8c184be85854f4065df45af4778e2f9a0
      https://github.com/llvm/llvm-project/commit/277069e8c184be85854f4065df45af4778e2f9a0
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M flang/include/flang/Frontend/CompilerInstance.h
    M flang/lib/Frontend/FrontendActions.cpp
    M flang/lib/FrontendTool/CMakeLists.txt
    M flang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M flang/test/CMakeLists.txt
    A flang/test/Driver/pass-plugin-codegen.f90
    M flang/test/Driver/pass-plugin.f90
    M flang/test/lit.site.cfg.py.in

  Log Message:
  -----------
  [Flang] Adjust pass plugin support to match Clang (#174006)

- Pass plugins can use LLVM options, matching #173287.
- Pass plugins can run a hook before codegen, matching #171872.
- Pass plugins are now tested whenever they can be built, matching
#171998.

Plugins currently don't work on AIX, tracked in #172203.


  Commit: 7635474d26f82e7fd109746f754564ade78d1a51
      https://github.com/llvm/llvm-project/commit/7635474d26f82e7fd109746f754564ade78d1a51
  Author: David Green <david.green at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/ARM/neon-dot-product.ll

  Log Message:
  -----------
  [ARM] Update and extend neon-dot-product.ll. NFC


  Commit: f21e56c6321ee1a9b442eb92ae749e6b06e4193b
      https://github.com/llvm/llvm-project/commit/f21e56c6321ee1a9b442eb92ae749e6b06e4193b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp

  Log Message:
  -----------
  [libc++] Add benchmark for std::find(vector<short>)

We have special cases for `std::find` with `char` and `int` on most
platforms, so the only other benchmark of or vector implementation
is currently with `long long`, which is a rather big type. Adding
`short` to the benchmarks allows us to more meaningfully compare the
different implementations.


  Commit: f7dcdd944540e7eb9001f4bd7413c1a717adf2d6
      https://github.com/llvm/llvm-project/commit/f7dcdd944540e7eb9001f4bd7413c1a717adf2d6
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/Delinearization.cpp

  Log Message:
  -----------
  [Delinearization] Remove `isKnownLessThan` (#171821)

Delinearization has `isKnownLessThan(a, b)` function to check if `a < b`
is known at compile time. To check the predicate, it calls
`isKnownNegative(a - b)`. There are at least two issues with this
approach:

- It mixed up a signed interpretation with an unsigned one.
- It doesn't consider overflow.

This function includes some additional logic, which suffers from the
same issues. This patch replace the call to `isKnownLessThan(a, b)` with
`ScalarEvolution::isKnownPredicate(ICmpInst::ICMP_SLT, a, b)` and
removes the former function entirely, since using it is risky and may
lead to incorrect results.

Resolve #169812


  Commit: 97ee9b66c0f221bc8544bedfd073f765c6f5d12e
      https://github.com/llvm/llvm-project/commit/97ee9b66c0f221bc8544bedfd073f765c6f5d12e
  Author: David Sherwood <david.sherwood at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/test/Transforms/LoopVectorize/AArch64/clamped-trip-count.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/divs-with-scalable-vfs.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/optsize_minsize.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/outer_loop_prefer_scalable.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/pr60831-sve-inv-store-crash.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/scalable-avoid-scalarization.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-inductions-unusual-types.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/sve-tail-folding.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/divrem.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/evl-compatible-loops.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/gather-scatter-cost.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/induction-costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/mask-index-type.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/masked_gather_scatter.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr87378-vpinstruction-or-drop-poison-generating-flags.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/pr88802.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/reg-usage-prune-vf.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/strided-accesses.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cast-intrinsics.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-cond-reduction.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-fixed-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-interleave.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/X86/epilog-vectorization-inductions.ll
    M llvm/test/Transforms/LoopVectorize/X86/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/expand-scev-after-invoke.ll
    M llvm/test/Transforms/LoopVectorize/induction-step.ll
    M llvm/test/Transforms/LoopVectorize/induction.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll
    M llvm/test/Transforms/LoopVectorize/narrow-to-single-scalar-widen-gep-scalable.ll
    M llvm/test/Transforms/LoopVectorize/nested-loops-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/optimal-epilog-vectorization.ll
    M llvm/test/Transforms/LoopVectorize/outer_loop_scalable.ll
    M llvm/test/Transforms/LoopVectorize/pr30654-phiscev-sext-trunc.ll
    M llvm/test/Transforms/LoopVectorize/pr58811-scev-expansion.ll
    M llvm/test/Transforms/LoopVectorize/scalable-assume.ll
    M llvm/test/Transforms/LoopVectorize/scalable-first-order-recurrence.ll
    M llvm/test/Transforms/LoopVectorize/step-vector-i1-wrapping.ll
    M llvm/test/Transforms/LoopVectorize/vplan-iv-transforms.ll

  Log Message:
  -----------
  [LV] Teach m_One, m_ZeroInt patterns to look through broadcasts (#170159)

In VPlanPatternMatch.h I have changed the int_pred_ty code to look
through broadcasts in order to catch more cases, i.e. multiplying by a
splat of one, etc.


  Commit: ed75ffdb281dca14fd4050118ddc313520cf8ef9
      https://github.com/llvm/llvm-project/commit/ed75ffdb281dca14fd4050118ddc313520cf8ef9
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-fpr.ll
    M llvm/test/CodeGen/AArch64/arm64-zero-cycle-regmove-gpr.ll

  Log Message:
  -----------
  [AArch64][NFC] Fix label checks on ZCM tests (#173482)

Previous checks were dead code. Now we share single `ALL-LABEL` checks
by all run lines. Note: the regex is currently needed for
`--match-full-lines` which is needed by itself because the previous
versions of these tests suffered from false positives due to partial
matching: https://github.com/llvm/llvm-project/pull/143680.


  Commit: b0ffece7792a805bd6c6992f98392d2dda52f55a
      https://github.com/llvm/llvm-project/commit/b0ffece7792a805bd6c6992f98392d2dda52f55a
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/CodeGen/AArch64/sink-fneg.ll

  Log Message:
  -----------
  [AArch64] Sink fneg instruction to unlock fmls combine (#172000)

Sink `fneg` operands of vector `fma` intrinsics to enable the `fmls`
combine.


  Commit: b4e1ab8bc15f2c2f524360d7d6bff492ab32644d
      https://github.com/llvm/llvm-project/commit/b4e1ab8bc15f2c2f524360d7d6bff492ab32644d
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [Clang] prevent assertion failure for instantiation-dependent expressions in vector conversions (#173498)

Fixes #173347

---

This patch resolves an assertion failure that occurs when
instantiation-dependent expressions are constant-evaluated during vector
conversions.


  Commit: f68774fd1ad570fef850439ac163b61dc96b98f1
      https://github.com/llvm/llvm-project/commit/f68774fd1ad570fef850439ac163b61dc96b98f1
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
    M llvm/test/tools/llvm-exegesis/AArch64/all-opcodes.test
    M llvm/test/tools/llvm-exegesis/AArch64/setReg_init_check.s
    M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp

  Log Message:
  -----------
  Revert "[llvm-exegesis] Add AArch64 operand initializers, SetRegTo" (#174729)

Reverts llvm/llvm-project#169912

Broke https://lab.llvm.org/buildbot/#/builders/24/builds/16298


  Commit: 07d07be73d96c5b15775af78d37570fea221cb3e
      https://github.com/llvm/llvm-project/commit/07d07be73d96c5b15775af78d37570fea221cb3e
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/openmp-private-barrier-single.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Fix infinite loop after #174105 (#174736)


  Commit: 4c17aa1d27ee674a7029a9378f0b7bf2148c5696
      https://github.com/llvm/llvm-project/commit/4c17aa1d27ee674a7029a9378f0b7bf2148c5696
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/test/Sema/warn-lifetime-safety-dataflow.cpp
    M clang/test/Sema/warn-lifetime-safety-suggestions.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add origin tracking for pointer dereference (#170006)

Fix lifetime safety analysis for pointer dereference operations by
properly tracking origin flow.

Added support in `FactsGenerator::VisitUnaryOperator()` to handle the
dereference operator (`UO_Deref`). This change ensures that when a
pointer is dereferenced, the origin of the pointer is properly
propagated to the dereference expression.


  Commit: 44b44bc81babc38ac65868691054c25199aea420
      https://github.com/llvm/llvm-project/commit/44b44bc81babc38ac65868691054c25199aea420
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectVersion.cpp

  Log Message:
  -----------
  [lldb] Correct version -v output for booleans (#174742)

We were checking whether the structured data value could be got as a
boolean, not what value that boolean had. This meant we were incorrectly
showing "yes" for everything.


  Commit: 1dea577186e8f3e6df4f03100dce93e87bf0e694
      https://github.com/llvm/llvm-project/commit/1dea577186e8f3e6df4f03100dce93e87bf0e694
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/test/Analysis/ScalarEvolution/trip-multiple-guard-info.ll
    M llvm/test/Analysis/ScalarEvolution/trip-multiple.ll
    M llvm/test/Analysis/ScalarEvolution/urem-0.ll
    M llvm/test/Transforms/LoopVectorize/AArch64/epilogue-vectorization-fix-scalar-resume-values.ll

  Log Message:
  -----------
  [SCEV] Handle URem pattern in  getRangeRef. (#174456)

Check if an scAddExpr expressions represents an URem, and
if it does, use the divisor to limit the conservative range.

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

PR: https://github.com/llvm/llvm-project/pull/174456


  Commit: 29a6e47ca3644e330d744364a65a25b273f3eb30
      https://github.com/llvm/llvm-project/commit/29a6e47ca3644e330d744364a65a25b273f3eb30
  Author: Balázs Kéri <balazs.keri at ericsson.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    A clang/test/Analysis/call-and-message-argpointeeinitializedness.c

  Log Message:
  -----------
  [clang][analyzer] Extend CallAndMessageChecker argument initializedness check (#173854)

Add extra check to `CallAndMessageChecker` to find uninitialized
non-const values passed through parameters. This check is used only at a
specific list of C library functions which have non-const pointer
parameters and the value should be initialized before the call.


  Commit: 17e6f51e51d36c0f784f6c400680e4aebac12d13
      https://github.com/llvm/llvm-project/commit/17e6f51e51d36c0f784f6c400680e4aebac12d13
  Author: Twice <twice at apache.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [GitHub] Add more glob patterns for `mlir:python` label (#174711)

Right now, some paths for `mlir:python` are missing, which means
relevant people don’t always get notified. This PR adds those paths.


  Commit: 11ddbfcb34989c776bb14ac4ddb3545f2a07a69d
      https://github.com/llvm/llvm-project/commit/11ddbfcb34989c776bb14ac4ddb3545f2a07a69d
  Author: Stephen Tozer <stephen.tozer at sony.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/dexter/dex/debugger/DAP.py

  Log Message:
  -----------
  [Dexter] Replace DAP "initialized" timeout with a warning (#174198)

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

In the issue reported above there, it appears that LLDB is hitting a 3s
timeout as part of some CI tests; this patch attempts to fix the issue
by replacing the 3s timeout with a 60s timeout, which should be suitably
long for any CI job (lldb-dap itself will automatically time out after
30s, so this should not be hit unless the process hangs).


  Commit: e8eb20b0011d7c0628db587da37d1495368f0377
      https://github.com/llvm/llvm-project/commit/e8eb20b0011d7c0628db587da37d1495368f0377
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/extension/.gitignore

  Log Message:
  -----------
  [lldb-dap][NFC] Ignore extension built test artefacts. (#174724)

Testing LLDB-DAP vscode extension creates files in the .vscode-test
folder ignore them.


  Commit: c8941df6a1e4ed5e1ba3287985a60e1d7512c250
      https://github.com/llvm/llvm-project/commit/c8941df6a1e4ed5e1ba3287985a60e1d7512c250
  Author: Jin Huang <jinhuang1102 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/AliasAnalysis.cpp
    A llvm/test/Transforms/DeadStoreElimination/atomic-todo.ll
    M llvm/test/Transforms/DeadStoreElimination/atomic.ll

  Log Message:
  -----------
  Revert "[AA] Improve precision for monotonic atomic load/store operations" (#173135)

Reverts llvm/llvm-project#158169

The improved AA precision for atomic store operations causes the DSE
pass to optimize out the object variables.


  Commit: 542d2a5a59cc682ff84188515d5b8969a56fcd4e
      https://github.com/llvm/llvm-project/commit/542d2a5a59cc682ff84188515d5b8969a56fcd4e
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve2_cvtnt.c
    M clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p2_OR_sme2p2_RP___sme_AND_LP_sve2p2_OR_sme2p2_RP.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve2p2-intrinsics-fp-converts.ll

  Log Message:
  -----------
  [Clang][LLVM][AArch64] Add support for FCVTXNT, FCVTLT, {B}FCVTNT int… (#170356)

…rinsics

This patch adds support in Clang for these assembly instructions
FCVTXNT, FCVTLT, {B}FCVTNT
By implementing these prototypes:

// Variant is available for _f64_f32
svfloat32_t	svcvtlt_f32[_f16]_z	(svbool_t pg, svfloat16_t op);

// Variants are available for:
// _f32_f64, _bf16_f32
svfloat16_t svcvtnt_f16[_f32]_z (svfloat16_t even, svbool_t pg,
svfloat32_t op);

svfloat32_t svcvtxnt_f32[_f64]_z (svfloat32_t even, svbool_t pg,
svfloat64_t op);

according to the ACLE[1]

[1] https://github.com/ARM-software/acle/pull/412

---------

Co-authored-by: Copilot <175728472+Copilot at users.noreply.github.com>


  Commit: 9363750daa34bc9a3df15d012e7bb21c3a9f7f30
      https://github.com/llvm/llvm-project/commit/9363750daa34bc9a3df15d012e7bb21c3a9f7f30
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M .github/workflows/release-binaries-all.yml
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  worklows/release-binaries: Add Windows release binary builds (#150793)

Windows x86 binaries will now be built and uploaded automatically when a new release is tagged.


  Commit: faa7ede811d345eeee5aa66ad1cdb38b51222a16
      https://github.com/llvm/llvm-project/commit/faa7ede811d345eeee5aa66ad1cdb38b51222a16
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-stress/llvm-stress.cpp

  Log Message:
  -----------
  [llvm-stress] Allow implicit truncation

This is generating a random integer, so truncating is fine.

Fixes the issue reported in:
https://github.com/llvm/llvm-project/pull/171456#issuecomment-3718690088


  Commit: 1ab7b6655da32c6cb2c56b5469c5243a67146ff0
      https://github.com/llvm/llvm-project/commit/1ab7b6655da32c6cb2c56b5469c5243a67146ff0
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    R llvm/test/CodeGen/AMDGPU/combine-scalar-selects-asm.ll
    R llvm/test/CodeGen/AMDGPU/combine-scalar-selects.ll

  Log Message:
  -----------
  Revert "[VectorCombine] Fold scalar selects from bitcast into vector select" (#174758)

Reverts llvm/llvm-project#173990
Reverting to address post-commit review feedback. Will recommit with
fixes.


  Commit: 4fdbe05d6e0c5ab8e244e14635ed6f04e9d2a1cc
      https://github.com/llvm/llvm-project/commit/4fdbe05d6e0c5ab8e244e14635ed6f04e9d2a1cc
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/complex.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix some imag/real corner cases (#174764)

Fix real/imag when taking a primitive parameter _and_ being discarded,
and fix the case where their subexpression can't be classified.

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


  Commit: 82c1f9435d72e57e5bb949f8cdb8a0bd71ca86f3
      https://github.com/llvm/llvm-project/commit/82c1f9435d72e57e5bb949f8cdb8a0bd71ca86f3
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Transforms/Passes.h
    M mlir/include/mlir/Transforms/Passes.td
    M mlir/lib/Transforms/RemoveDeadValues.cpp
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir][Transforms] `remove-dead-values`: Rely on canonicalizer for region simplification (#173505)

This commit simplifies the `remove-dead-values` pass and fixes a bug in
the handling of `RegionBranchOpInterface` ops. The pass used to produce
invalid IR ("null value found") for the newly added test case.

`remove-dead-values` is a pass for additional IR simplification that
cannot be performed by the canonicalizer pass. Based on a liveness
analysis, it erases dead values / IR. (The liveness analysis is a
dataflow analysis that has more information about the IR than a
canonicalization pattern, which can see only "local" information.)

Region-based ops are difficult. The liveness analysis may determine that
an SSA value is dead. However, that does not mean that the value can
actually be removed. Doing so may violate an region data flow (as
modeled by the `RegionBranchOpInterface`). As an example, consider the
case where a region branch terminator may dispatch to one of two region
successor with the same forwarded values. A successor input (block
argument) can be erased only if it is dead on both successors.

Before this commit, there used to be complex logic to determine when it
is safe to erase an SSA value. That logic was broken. The new
implementation does not remove any block arguments or op results of
region-based ops. Instead, operands of region-based ops and region
branch terminators are replaced with `ub.poison` if all of their
successor values are dead. This simplifies the IR good enough for the
canonicalizer to perform the remaining region simplification (i.e.,
dropping block arguments etc.).

RFC:
https://discourse.llvm.org/t/rfc-delegate-simplification-of-region-based-ops-from-remove-dead-values-to-canonicalizer/89194


  Commit: 47a0d0e42832558f999b149b22cfd48c46ef2a57
      https://github.com/llvm/llvm-project/commit/47a0d0e42832558f999b149b22cfd48c46ef2a57
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll

  Log Message:
  -----------
  SelectionDAG: Do not propagate divergence through glue (#174766)

Glue does not carry any value (in the LLVM IR Value sense) that could be
considered uniform or divergent.


  Commit: dd79244d8921f664cf482a2814f1195d3ee14e3d
      https://github.com/llvm/llvm-project/commit/dd79244d8921f664cf482a2814f1195d3ee14e3d
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt

  Log Message:
  -----------
  [cross-project-tests][formatters] Move LLDB test setup into it's own CMakeLists.txt

Once we start adding more tests, having this in a separate CMakeLists.txt is more maintainable.


  Commit: 9315747fb31b5dcf7e5879a0138d39098c30cea3
      https://github.com/llvm/llvm-project/commit/9315747fb31b5dcf7e5879a0138d39098c30cea3
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M libclc/CMakeLists.txt

  Log Message:
  -----------
  [libclc] Initial support for cross-compiling OpenCL libraries (#174022)

Summary:
The other GPU enabled libraries, (openmp, flang-rt, compiler-rt, libc,
libcxx, libcxx-abi) all support builds through a runtime cross-build. In
these builds we use a separate CMake build that cross-compiles to a
single target.

This patch provides basic support for this with the `libclc` libraries.
Changes include adding support for the more standard GPU compute triples
(amdgcn-amd-amdhsa, nvptx64-nvidia-cuda) and building only one target in
this mode.

Some things left to do:

This patch does not change the compiler invocations, this method would
allow us to use standard CMake routines but this keeps it minimal.

The prebuild support is questionable and doesn't fit into this scheme
because it's a host executable, I'm ignoring it for now.

The installed location should just use the triple with no `libclc/`
subdirectory handling I believe.


  Commit: e5623b1a9e077e698c716ecd8ac69b66edc018c1
      https://github.com/llvm/llvm-project/commit/e5623b1a9e077e698c716ecd8ac69b66edc018c1
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/AMDGPU/dag-divergence.ll
    M llvm/test/CodeGen/AMDGPU/div_i128.ll
    M llvm/test/CodeGen/AMDGPU/div_v2i128.ll
    M llvm/test/CodeGen/AMDGPU/fptoi.i128.ll
    M llvm/test/CodeGen/AMDGPU/rem_i128.ll

  Log Message:
  -----------
  Revert "SelectionDAG: Do not propagate divergence through glue (#174766)"

This reverts commit 47a0d0e42832558f999b149b22cfd48c46ef2a57.

Reverted due to test failures in LLVM_ENABLE_EXPENSIVE_CHECKS builds.


  Commit: c7c5259f016bdb12c670b1fba84a17417ff8e3a2
      https://github.com/llvm/llvm-project/commit/c7c5259f016bdb12c670b1fba84a17417ff8e3a2
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
    A lldb/source/Plugins/Language/CPlusPlus/MsvcStlSpan.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/span/TestDataFormatterStdSpan.py

  Log Message:
  -----------
  [LLDB] Add MSVC STL span formatter (#173053)

`std::span` didn't have a formatter for MSVC's STL yet. The type is
quite useful in C++ 20, so this PR adds a formatter for it.

Since the formatter is new, I made it work with both DWARF and PDB from
the start.


  Commit: 88b77d5eaa66747538a12c9876eeffdce31ddb71
      https://github.com/llvm/llvm-project/commit/88b77d5eaa66747538a12c9876eeffdce31ddb71
  Author: Steven Perron <stevenperron at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    M llvm/test/CodeGen/SPIRV/legalization/load-store-global.ll
    A llvm/test/CodeGen/SPIRV/legalization/spv-extractelt-legalization.ll
    M llvm/test/CodeGen/SPIRV/legalization/vector-arithmetic-6.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-multiply.ll
    M llvm/test/CodeGen/SPIRV/llvm-intrinsics/matrix-transpose.ll

  Log Message:
  -----------
  [SPIRV] Support non-constant indices for vector insert/extract (#172514)

This patch updates the legalization of spv_insertelt and spv_extractelt
to
handle non-constant (dynamic) indices. When a dynamic index is
encountered, the
vector is spilled to the stack, and the element is accessed via
OpAccessChain
(lowered from spv_gep).

This patch also adds custom legalization for G_STORE to scalarize vector
stores
and refines the legalization rules for G_LOAD, G_STORE, and
G_BUILD_VECTOR.

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


  Commit: ae4bbd0ec693c2141d55ef5b2228e7b6244ad66f
      https://github.com/llvm/llvm-project/commit/ae4bbd0ec693c2141d55ef5b2228e7b6244ad66f
  Author: Twice <twice at apache.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir-c/Dialect/EmitC.h
    M mlir/include/mlir-c/Dialect/GPU.h
    M mlir/include/mlir-c/Dialect/IRDL.h
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir-c/Dialect/SparseTensor.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/lib/Bindings/Python/DialectGPU.cpp
    M mlir/lib/Bindings/Python/DialectSparseTensor.cpp
    M mlir/lib/CAPI/Dialect/EmitC.cpp
    M mlir/lib/CAPI/Dialect/GPU.cpp
    M mlir/lib/CAPI/Dialect/IRDL.cpp
    M mlir/lib/CAPI/Dialect/LLVM.cpp
    M mlir/lib/CAPI/Dialect/SparseTensor.cpp
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/test/python/ir/attributes.py

  Log Message:
  -----------
  [MLIR][Python] Forward the name of MLIR attrs to Python side (#174756)

This PR is quite similiar to #174700.

In this PR, I added a C API for each (upstream) MLIR attributes to
retrieve its name (for example, `StringAttr -> mlirStringAttrGetName()
-> "builtin.string"`), and exposed a corresponding type_name class
attribute in the Python bindings (e.g., `StringAttr.attr_name ->
"builtin.string"`). This can be used in various places to avoid
hard-coded strings, such as eliminating the manual string in
`irdl.base("#builtin.string")`.

Note that parts of this PR (mainly mechanical changes) were produced via
GitHub Copilot and GPT-5.2. I have manually reviewed the changes and
verified them with tests to ensure correctness.


  Commit: 184e3c1eb2e28fb6a9f2a3eac4d70974d36e6d50
      https://github.com/llvm/llvm-project/commit/184e3c1eb2e28fb6a9f2a3eac4d70974d36e6d50
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/packss.ll
    M llvm/test/CodeGen/X86/packus.ll

  Log Message:
  -----------
  [X86] packss.ll/packus.ll - add AVX512 test coverage (#174777)

Pulled out of #169995


  Commit: 168de3c2de47bb23336d111ba53c95700402d436
      https://github.com/llvm/llvm-project/commit/168de3c2de47bb23336d111ba53c95700402d436
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    A llvm/test/CodeGen/AArch64/arm64-cvtf-simd-itofp.ll

  Log Message:
  -----------
  [AArch64][llvm] Add codegen for simd fpcvt intrinsics (#173272)

Add tablegen patterns to provide codegen for SCVTF and UCVTF
operating purely on SIMD & FP registers, using explicit bitcasts.


  Commit: bc026e37322249c68069460f2ad33e8992e1ed5c
      https://github.com/llvm/llvm-project/commit/bc026e37322249c68069460f2ad33e8992e1ed5c
  Author: Igor Wodiany <igor.wodiany at imgtec.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  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/non-uniform-ops.mlir
    M mlir/test/Target/SPIRV/non-uniform-ops.mlir

  Log Message:
  -----------
  [mlir][spirv] Add support for GroupNonUniformQuadSwap (#174747)


  Commit: d38959e87a84a889f531090e0545a698cbc54afb
      https://github.com/llvm/llvm-project/commit/d38959e87a84a889f531090e0545a698cbc54afb
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M libcxx/utils/ci/docker/linux-builder-base.dockerfile

  Log Message:
  -----------
  [libc++] Force rebuilding of the CI Docker image


  Commit: 38657c0ded4800a407f574233892c50b731f2a8d
      https://github.com/llvm/llvm-project/commit/38657c0ded4800a407f574233892c50b731f2a8d
  Author: David Spickett <david.spickett at linaro.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/decorators.py
    M lldb/source/Core/Debugger.cpp
    M lldb/test/API/python_api/section/TestSectionAPI.py

  Log Message:
  -----------
  [lldb] Add zlib to version -v output (#174753)

I know this is required for at least one feature, because
TestSectionAPI.py has failures if zlib isn't enabled. So I think it's
useful for users to be able to check.

Now that it's in the config, I have also used it to make a test
annotation so we don't get the failure in TestSectionAPI.py when zlib is
disabled.

Which for future reference was:
Traceback (most recent call last):
File
"/home/davspi01/llvm-project/lldb/packages/Python/lldbsuite/test/decorators.py",
line 452, in wrapper
    return func(self, *args, **kwargs)
File
"/home/davspi01/llvm-project/lldb/test/API/python_api/section/TestSectionAPI.py",
line 67, in test_compressed_section_data
self.assertEqual(section_data, [0x20, 0x30, 0x40, 0x50, 0x60, 0x70,
0x80, 0x90])
AssertionError: Lists differ: [] != [32, 48, 64, 80, 96, 112, 128, 144]

As it failed to decode the compressed section.


  Commit: 7d9fda510e23a45b8ffa33bc9669cdf1e0bf6ba4
      https://github.com/llvm/llvm-project/commit/7d9fda510e23a45b8ffa33bc9669cdf1e0bf6ba4
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIDefines.h

  Log Message:
  -----------
  [NFCI][AMDGPU] Update Mode register mask for gfx1250 (#174771)

SPG says two bits for each operand.


  Commit: 6a37e3b7c8b113cbeeb3bd686dbb9e7dd73f97db
      https://github.com/llvm/llvm-project/commit/6a37e3b7c8b113cbeeb3bd686dbb9e7dd73f97db
  Author: Gaëtan Bossu <gaetan.bossu at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/sve-extract-element.ll

  Log Message:
  -----------
  [AArch64][SDAG] Select extractelement <vscale x 1 x i1> (#173016)

This used to cause an ISel failure.


  Commit: 8f1cd07e3fba882b91c3a7ad7c15f53bd4a0e48e
      https://github.com/llvm/llvm-project/commit/8f1cd07e3fba882b91c3a7ad7c15f53bd4a0e48e
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Core/FormatEntity.cpp
    M lldb/source/Core/IOHandlerCursesGUI.cpp
    M lldb/source/Core/Statusline.cpp
    M lldb/source/DataFormatters/FormattersHelpers.cpp
    M lldb/source/DataFormatters/TypeSummary.cpp
    M lldb/source/Target/StackFrame.cpp
    M lldb/source/Target/Thread.cpp
    M lldb/unittests/Core/FormatEntityTest.cpp

  Log Message:
  -----------
  [lldb][Format] Introduce a `FormatEntity::Formatter` class and move the `Format` API into it (#174618)

This patch creates a new `FormatEntity::Formatter` class and moves
`FormatEntity::Format` (and related APIs) into it. Most of the
parameters to `Format` are immutable across all recursive calls, so I
made them `const` member variables of `Formatter`. The main changes are
just mechanical renaming of:
```
FormatEntity::Format(...)
```
to
```
FormatEntity::Formatter(...).Format(stream, entry, valobj)
```
and making use of the member variables from inside `Format`.

We can probably make most of the parameters to the `Formatter`
constructor defaulted, but I chose not to in this patch to keep the diff
smaller.

The motivation for this is that I'm planning on adding logic to detect
recursive format entities (which would crash LLDB). That requires some
state, which in my opinion is best kept inside the `Formatter` class
instead of another parameter to `Format`.

The patch should be entirely NFC.


  Commit: 249585676b1dff3d3ae6f1ccbbc330c69735fa29
      https://github.com/llvm/llvm-project/commit/249585676b1dff3d3ae6f1ccbbc330c69735fa29
  Author: Lukacma <Marian.Lukac at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [NFC] [AArch64] Add missing test to #161840 (#174775)

In patch #161840 I added bitcasts when lowering some NEON int scalar
nodes, but I didn't properly tests that bitcasts are correctly emitted
on the result as well. This patch adds those tests.


  Commit: 28d2772a8d1a907f2f9dc135224e1fa31ccad243
      https://github.com/llvm/llvm-project/commit/28d2772a8d1a907f2f9dc135224e1fa31ccad243
  Author: David Truby <david.truby at arm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/Options.td
    M lld/docs/ReleaseNotes.rst
    A lld/test/COFF/linkreprofullpathrsp.test

  Log Message:
  -----------
  [lld][COFF] Add /linkreprofullpathrsp flag (#165449)

This patch adds the /linkreprofullpathrsp flag with the same behaviour
as link.exe. This flag emits a file containing the full paths to each
object passed to the link line.

This is used in particular when linking Arm64X binaries, as you need the
full path to all the Arm64 objects that were used in a standard Arm64
build.

See:

https://learn.microsoft.com/en-us/cpp/build/reference/link-repro-full-path-rsp
for the Microsoft documentation of the flag.


  Commit: 13551112a734d65e705555d83e5d8df9ef1bd89a
      https://github.com/llvm/llvm-project/commit/13551112a734d65e705555d83e5d8df9ef1bd89a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Remove some redundant SubtargetPredicate settings. NFC. (#174788)

Setting SubtargetPredicate around these multiclasses is redundant since
it is always explicitly overridden for every def inside the multiclass.


  Commit: 7584db7820a6b4d82bbf6ee9743484a19a96d8e3
      https://github.com/llvm/llvm-project/commit/7584db7820a6b4d82bbf6ee9743484a19a96d8e3
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt

  Log Message:
  -----------
  [cross-project-tests] Unset _FORTIFY_SOURCE when building the LLDB formatter tests (#174770)

When building `cross-project-tests` with `_FORTIFY_SOURCE` set, we get
following warnings:
```
In file included from /app/gcc/14.2.0/include/c++/14.2.0/x86_64-pc-linux-gnu/bits/os_defines.h:39,
                 from /app/gcc/14.2.0/include/c++/14.2.0/x86_64-pc-linux-gnu/bits/c++config.h:680,
                 from /app/gcc/14.2.0/include/c++/14.2.0/type_traits:38,
                 from ../include/llvm/ADT/ADL.h:12,
                 from ../include/llvm/ADT/Hashing.h:47,
                 from ../include/llvm/ADT/ArrayRef.h:12,
                 from ../../cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/arrayref.cpp:1:
/usr/include/features.h:381:4: warning: #warning _FORTIFY_SOURCE requires compiling with optimization (-O) [-Wcpp]
  381 | #  warning _FORTIFY_SOURCE requires compiling with optimization (-O)
      |    ^~~~~~~
```

This patch works around this by undefining the macro when compiling the
LLDB formatter tests.

If this ever becomes an issue we could try to detect `_FORTIFY_SOURCE`
and skip the tests if set.


  Commit: abbd1ebb75e2a4343ffb49951560bdd7862c7149
      https://github.com/llvm/llvm-project/commit/abbd1ebb75e2a4343ffb49951560bdd7862c7149
  Author: higher-performance <higher.performance.github at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.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/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
    M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitializationCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp
    M clang-tools-extra/clang-tidy/utils/Matchers.h
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp

  Log Message:
  -----------
  [clang-tidy] Rename clang::tidy::matchers::matchesAnyListedName() to matchesAnyListedRegexName (#174414)

This clarifies that patterns are regular expressions.

Closes: #174229


  Commit: a23f7ef71e6debbe5b06e682f82d66eab7e7c66c
      https://github.com/llvm/llvm-project/commit/a23f7ef71e6debbe5b06e682f82d66eab7e7c66c
  Author: Baranov Victor <bar.victor.2002 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [clang-tidy][NFC] Improve readabilty of Release Notes (#174686)

Instead of long text, use bullet points for readability.


  Commit: 7490901ea0f06c696b04374838b083361e8e151b
      https://github.com/llvm/llvm-project/commit/7490901ea0f06c696b04374838b083361e8e151b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp

  Log Message:
  -----------
  [ByteCode] InterpBuiltin.cpp - consistently use castAs<> if dereferencing the result (#174781)

castAs<> will at least assert the cast is valid while getAs<> will always just return nullptr and then explode


  Commit: 8fb7ed7ad6f8e47e127b1c5a32f79a6cc6cf9e10
      https://github.com/llvm/llvm-project/commit/8fb7ed7ad6f8e47e127b1c5a32f79a6cc6cf9e10
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt

  Log Message:
  -----------
  [cross-project-tests][formatters] Factor out setting the LLDB test options into helper function


  Commit: 52f85b0159d7f9cd3f21d644e92684afc53f0ed1
      https://github.com/llvm/llvm-project/commit/52f85b0159d7f9cd3f21d644e92684afc53f0ed1
  Author: Florian Mayer <fmayer at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang-tools-extra/docs/clang-tidy/checks/list.rst

  Log Message:
  -----------
  [docs] [clang-tidy] add abseil-unchecked-statusor-access to list (#174796)


  Commit: 28de3c15762becb50e5f2d7826ab1b9e7a5d26e7
      https://github.com/llvm/llvm-project/commit/28de3c15762becb50e5f2d7826ab1b9e7a5d26e7
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Handle fmul in SimplifyDemandedFPClass (#173872)


  Commit: c6e0e7d4c0e624f6b4577ef5184a909fd706f981
      https://github.com/llvm/llvm-project/commit/c6e0e7d4c0e624f6b4577ef5184a909fd706f981
  Author: Michael Park <mcypark at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/Serialization/ASTReader.cpp
    M clang/lib/Serialization/ASTWriter.cpp
    M clang/unittests/Serialization/CMakeLists.txt
    R clang/unittests/Serialization/NamespaceLookupTest.cpp

  Log Message:
  -----------
  Revert "[C++20][Modules] Improve namespace look-up performance for modules. (#171769)" (#174783)

This reverts commit 1928c1ea9b57e9c44325d436bc7bb2f4585031f3.

We have at least one repro, but I won't be able to work on this until
next week. Also with Clang 22 cut upcoming, we probably need to revert
for now.


  Commit: 57b0d8379ed69903e2a02ad62340d5bd76b9085d
      https://github.com/llvm/llvm-project/commit/57b0d8379ed69903e2a02ad62340d5bd76b9085d
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILResourceAccess.cpp
    M llvm/test/CodeGen/DirectX/ResourceAccess/load-cbuffer-vectors.ll

  Log Message:
  -----------
  [DirectX] Account for GlobalOffset in CurrentIndex calculation for cbuffer loads with GEPs in DXILResourceAccess pass (#174666)

Fixes #174656

---------

Co-authored-by: Alex Sepkowski <alexsepkowski at gmail.com>


  Commit: 971b8239fbea2cd640d15d18b4bea0d079e231b1
      https://github.com/llvm/llvm-project/commit/971b8239fbea2cd640d15d18b4bea0d079e231b1
  Author: moscickimilosz <Milosz.Moscicki at imgtec.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVControlFlowOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVGraphOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVMemoryOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVMiscOps.td
    M mlir/include/mlir/Dialect/SPIRV/IR/SPIRVStructureOps.td

  Log Message:
  -----------
  [mlir][spirv][nfc] Escape < and > with ` in description and summary (#174786)

Not escaping < and > was causing the text not to get displayed in the
documentation.


  Commit: 88788dcd5b999ecd611d4f00deece7c03e280ecc
      https://github.com/llvm/llvm-project/commit/88788dcd5b999ecd611d4f00deece7c03e280ecc
  Author: Farzon Lotfi <farzonlotfi at microsoft.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CGValue.h
    M clang/test/CodeGenHLSL/BasicFeatures/MatrixSingleSubscriptDynamicSwizzle.hlsl
    M clang/test/SemaHLSL/matrix_single_subscript_errors.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Implement dynamic single subscript swizzle (#173201)

fixes #170777

If we don't use vector type and instead continue to pass on the matrix
type when we enter `EmitExtVectorElementExpr` Then we don't need to
store the row and column length on the LValue.

Using the Matrix type means we can reuse the isMatrixRow() cases in
EmitLoadOfLValue and EmitStoreThroughLValue and not have to support a
new lValue that is a hybrid between the ExtVectorElt and MatrixRow
cases.

All we need to do to support this is pass the list of column indices as
a `ConstantDataVector` and check the size of this Vector to know how
many column iterations we need to do. Further just index into the vector
to fetch the right encoded element index value.


  Commit: 75ec177483294000b361690bb4f0ab4fa7e9731a
      https://github.com/llvm/llvm-project/commit/75ec177483294000b361690bb4f0ab4fa7e9731a
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/CMakeLists.txt
    M llvm/lib/Target/SPIRV/SPIRV.h
    A llvm/lib/Target/SPIRV/SPIRVLegalizeZeroSizeArrays.cpp
    A llvm/lib/Target/SPIRV/SPIRVLegalizeZeroSizeArrays.h
    M llvm/lib/Target/SPIRV/SPIRVPassRegistry.def
    M llvm/lib/Target/SPIRV/SPIRVTargetMachine.cpp
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-alloca-count.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-alloca-nested.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-alloca.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-extractvalue.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-global.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-insertvalue.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-load.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-nested.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-select.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-store.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-struct.ll
    A llvm/test/CodeGen/SPIRV/legalize-zero-size-arrays-undef.ll
    M llvm/test/CodeGen/SPIRV/llc-pipeline.ll
    M llvm/test/CodeGen/SPIRV/zero-length-array.ll

  Log Message:
  -----------
  [SPIRV] Add legalization pass for zero-size arrays (#172367)

This adds a legalization pass to convert zero size arrays to legal types
for common cases. It doesn't handle all cases, but if we see real use
cases for other cases, we can add them in the future.

For globals, and their initializers, we generally replace `[0 x T]` with
`ptr`.

For instructions, we either replace `[0 x T]` with `poision`, for
`alloca` we just allocate `T`.

This is motivated by IR generated by the OpenMP front end.

Issue: https://github.com/llvm/llvm-project/issues/170150

---------

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


  Commit: 94d4e3ae1c65f5eee9f017a787908767ddcb5ef7
      https://github.com/llvm/llvm-project/commit/94d4e3ae1c65f5eee9f017a787908767ddcb5ef7
  Author: Hui <hui.xie1990 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M libcxx/include/__atomic/atomic_sync.h
    M libcxx/include/__thread/poll_with_backoff.h
    M libcxx/include/__thread/timed_backoff_policy.h
    M libcxx/include/semaphore

  Log Message:
  -----------
  [libc++] Refactor poll_with_backoff (#173184)

This patch gets rid of bool result values which were confusing, and
instead replaces them with enum class values describing the meaning of
each return value.


  Commit: 8a3039f977428f461e2cb45c4a34b9eb07588685
      https://github.com/llvm/llvm-project/commit/8a3039f977428f461e2cb45c4a34b9eb07588685
  Author: Mingming Liu <mingmingl at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    A clang/test/Driver/fpartition-static-data-sections.c

  Log Message:
  -----------
  [Clang] Add clang driver option -fpartition-static-data-sections  (#124991)


  Commit: 5fb43838afcd8412f473a3165639badd256acd71
      https://github.com/llvm/llvm-project/commit/5fb43838afcd8412f473a3165639badd256acd71
  Author: Chi-Chun, Chen <chichun.chen at hpe.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M flang/docs/OpenMPSupport.md
    M flang/test/Lower/OpenMP/target-spmd.f90
    M flang/test/Lower/OpenMP/target.f90
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Target/LLVMIR/omptarget-device.mlir
    M mlir/test/Target/LLVMIR/omptarget-llvm.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Lower device clause for target data/enter/exit/update (#174665)

Extend OpenMP device clause lowering for target data, target enter data,
target exit data, and target update to accept non-constant values.
Previously, only constant device IDs could be lowered to LLVM IR.

Add Flang tests to validate device clause handling and mark the feature
as supported in the OpenMPSupport documentation. New tests cover:
- target teams
- target teams distribute
- target teams distribute parallel do
- target teams distribute parallel do simd
- target data

Tests for target update and target enter/exit were
already present in Flang.


  Commit: 12c89e406bfd01d5ba9534cfed44079c8ded3570
      https://github.com/llvm/llvm-project/commit/12c89e406bfd01d5ba9534cfed44079c8ded3570
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-log.ll

  Log Message:
  -----------
  InstCombine: Add baseline test for SimplifyDemandedFPClass log handling (#173880)


  Commit: fd5cfcc41311c6287e9dc408b8aae499501660e1
      https://github.com/llvm/llvm-project/commit/fd5cfcc41311c6287e9dc408b8aae499501660e1
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fma.ll
    M llvm/test/Transforms/InstCombine/fabs.ll

  Log Message:
  -----------
  ValueTracking: Check if x is undef for fma(x, x, y) analysis (#174763)


  Commit: 5958842aee7694cf2b2f925368317418576a3800
      https://github.com/llvm/llvm-project/commit/5958842aee7694cf2b2f925368317418576a3800
  Author: Oleksandr "Alex" Zinenko <git at ozinenko.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/lib/Bindings/Python/IRAffine.cpp
    M mlir/test/python/ir/affine_expr.py

  Log Message:
  -----------
  [mlir][py] ability to downcast AffineExpr after #172892 (#174808)

AffineExpr is a separate hierarchy of LLVM-style nested classes that
doesn't rely on TypeID and is not extensible. We need the ability to
downcast the Python equivalent of those to a specific subclass that was
seemingly lost in PR #172892. Bring it back by having an explicit cast.
We don't really need user-defined type casters here since AffineExpr is
entirely closed and not typed, unlike values.


  Commit: 6153876d0f57b3dbb0f9b2fbdc394c8a76d71440
      https://github.com/llvm/llvm-project/commit/6153876d0f57b3dbb0f9b2fbdc394c8a76d71440
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll

  Log Message:
  -----------
  InstCombine: Add baseline tests for minimum/maximum SimplifyDemandedFPClass handling (#173896)


  Commit: 5adae7f64980fa757ae308fad733b9db7a812eed
      https://github.com/llvm/llvm-project/commit/5adae7f64980fa757ae308fad733b9db7a812eed
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap] Fix qs integrity hash

I was using a different registry locally. I manually changed the URL but
didn't expect the hash to be different.


  Commit: 65b0de42e764d737fb349c040b5d0194c074e4be
      https://github.com/llvm/llvm-project/commit/65b0de42e764d737fb349c040b5d0194c074e4be
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    A clang/test/CodeGenHLSL/builtins/WaveActiveBallot.hlsl
    A clang/test/SemaHLSL/BuiltIns/WaveActiveBallot-errors.hlsl
    M llvm/include/llvm/IR/IntrinsicsDirectX.td
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    A llvm/test/CodeGen/DirectX/WaveActiveBallot.ll
    A llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveActiveBallot.ll

  Log Message:
  -----------
  [HLSL] Add WaveActiveBallot builtins and lower to DXIL / SPIR-V (#174638)

This PR adds WaveActiveBallot as a builtin function to HLSL.
Fixes https://github.com/llvm/llvm-project/issues/99163


  Commit: b6019f73578eada9d2556380a35ab580da127fa5
      https://github.com/llvm/llvm-project/commit/b6019f73578eada9d2556380a35ab580da127fa5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll

  Log Message:
  -----------
  InstCombine: Handle fmul by -0 case in SimplifyDemandedFPClass (#174023)

The fmul visitor handles this case as copysign and fneg.


  Commit: 1c123f7766cc7ed3fa86b39c8b639de1e243ede1
      https://github.com/llvm/llvm-project/commit/1c123f7766cc7ed3fa86b39c8b639de1e243ede1
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [cross-project-tests][formatters] Add a LIT feature that tests for a compatible LLDB version (#174812)

Most of this logic is similar to how we add the
`gdb-clang-incompatibility` attribute.

Some LLVM LLDB formatters will rely on LLDB features not available in
older versions of LLDB. This feature will allow those tests to add a
`REQUIRES: lldb-formatters-compatibility`, which will then mark the test
`UNSUPPORTED` for incompatible LLDB versions. I picked `19.0` pretty
arbitrarily based on when approximately the
`SBType::FindDirectNestedType` API was added to LLDB (which a future
formatter will require).


  Commit: 0b9d07860a957302e105fc110ae31bd08f08b948
      https://github.com/llvm/llvm-project/commit/0b9d07860a957302e105fc110ae31bd08f08b948
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.cpp
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-int-pair.test
    M llvm/utils/lldbDataFormatters.py

  Log Message:
  -----------
  Reland "[llvm][formatters] Add LLDB data-formatter for llvm::PointerIntPair"

Reverts a4cc033408fe0a69aad6865ddc7e020d64098f20.

Relanding the original patch as-is, but changing the `__builtin_debugtrap`s to explicitly set breakpoints. Some bots failed to compile the tests when `__builtin_debugtrap` was used.

Also adding `REQUIRES: lldb-formats-compatibility` to the test because some build-bots run the tests with an LLDB version that doesn't support the `FindDirectNestedType` API.

Original commit message:

This patch revives the llvm::PointerIntPair LLDB data-formatter. The previous version was commented out because it relied on expression evaluation and was hence slow/brittle. The formatter in this PR doesn't rely on evaluating expressions.

Drive-by change:
* removes the llvm::PointerUnion formatter which was also commented out. A future version of it will look very different than it does now, so there's no point in keeping it because the diff won't be helpful in a review.


  Commit: d64ecd163f731c98f3c3e0c29b2c9173f58060b8
      https://github.com/llvm/llvm-project/commit/d64ecd163f731c98f3c3e0c29b2c9173f58060b8
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vscale-vw-web-simplification.ll
    M llvm/test/CodeGen/RISCV/rvv/vwadd-sdnode.ll

  Log Message:
  -----------
  [RISCV] Use ZeroOrNegativeOneBooleanContent for RVV to match P extension. (#174713)

For the most part this doesn't matter for RVV since it has legal i1
vectors. I think this will make it easier for P and RVV to co-exist in
LLVM.


  Commit: 39456e4226f41213a603f75a363b6bad9f7caf39
      https://github.com/llvm/llvm-project/commit/39456e4226f41213a603f75a363b6bad9f7caf39
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-node-with-non-schedulable-parent.ll

  Log Message:
  -----------
  [SLP]Do not increment dep count for non-schedulable nodes with non-schedulable parents

If the node is non-scedulable, all instructions are used outside only
and parent is non-schedulable non-phi node, the dependency count should be
increased for such nodes

Fixes #174599


  Commit: 90285d318fa4b4d72c8142593c12edeecf60b117
      https://github.com/llvm/llvm-project/commit/90285d318fa4b4d72c8142593c12edeecf60b117
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Add baseline minimumnum/maximumnum SimplifyDemandedFPClass tests (#173976) (#174817)


  Commit: f38e54ee83a8230be8a7f5514b3d112a74407f3d
      https://github.com/llvm/llvm-project/commit/f38e54ee83a8230be8a7f5514b3d112a74407f3d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll

  Log Message:
  -----------
  InstCombine: Handle minimum/maximum in SimplifyDemandedFPClass (#173897)


  Commit: e29abeae77c1b7036d32668d6eecd6407f4674f9
      https://github.com/llvm/llvm-project/commit/e29abeae77c1b7036d32668d6eecd6407f4674f9
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/FloatingPointMode.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-log.ll

  Log Message:
  -----------
  InstCombine: Handle log/log2/log10 in SimplifyDemandedFPClass (#173881)


  Commit: 33a594b2dc356d6939de9daa0a23453f637d1e39
      https://github.com/llvm/llvm-project/commit/33a594b2dc356d6939de9daa0a23453f637d1e39
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll

  Log Message:
  -----------
  InstCombine: Add baseline tests for sqrt SimplifyDemandedFPClass (#173882)


  Commit: d81a0e7a18c27c0be4a0144d888d12652fff8077
      https://github.com/llvm/llvm-project/commit/d81a0e7a18c27c0be4a0144d888d12652fff8077
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [SelectionDAG] Add ISD::CTLS to canCreateUndefOrPoison. (#174709)


  Commit: 8c6d002b64bf45990271d22e95f26eb0f6300ddb
      https://github.com/llvm/llvm-project/commit/8c6d002b64bf45990271d22e95f26eb0f6300ddb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/MCTargetDesc/AMDGPUMCCodeEmitter.cpp
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td

  Log Message:
  -----------
  [AMDGPU] Reimplement VOP3 CMPX encoding fixup using PostEncoderMethod. NFCI. (#174799)

These instructions have a field that we want to encode as the non-zero
value EXEC_LO, but have the decoder accept any value. Reimplement this
using PostEncoderMethod instead of custom code in
AMDGPUMCCodeEmitter::encodeInstruction, so that it is controlled by the
tablegen instruction definitions themselves.


  Commit: 671c5a0f02df6fdb47889fae5ba4c990635cd827
      https://github.com/llvm/llvm-project/commit/671c5a0f02df6fdb47889fae5ba4c990635cd827
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/Options.td
    M lld/docs/ReleaseNotes.rst
    R lld/test/COFF/linkreprofullpathrsp.test

  Log Message:
  -----------
  Revert "[lld][COFF] Add /linkreprofullpathrsp flag" (#174831)

Reverts llvm/llvm-project#165449 due to the new test failing in Linux
pre-commit CI.


  Commit: 664fb3b61061a96e4e9c730bacd1de5b8ce3f669
      https://github.com/llvm/llvm-project/commit/664fb3b61061a96e4e9c730bacd1de5b8ce3f669
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/IR/eh-type-id.cir
    A clang/test/CIR/IR/invalid-eh-type-id.cir
    A clang/test/CIR/Lowering/eh-type-id.cir

  Log Message:
  -----------
  [CIR] Upstream Exceptions EHTypeIdOp (#172558)

Upstream the Exceptions EHTypeIdOp

Issue https://github.com/llvm/llvm-project/issues/154992


  Commit: 4040f6c6f8f1bc526c6f526f8e74ebb3f460f787
      https://github.com/llvm/llvm-project/commit/4040f6c6f8f1bc526c6f526f8e74ebb3f460f787
  Author: Roland McGrath <mcgrathr at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M libc/utils/hdrgen/hdrgen/header.py
    M libc/utils/hdrgen/hdrgen/main.py
    A libc/utils/hdrgen/tests/expected_output/test_small_proxy.h
    M libc/utils/hdrgen/tests/test_integration.py

  Log Message:
  -----------
  [libc] Add hdrgen --proxy mode (#174823)

This adds the --proxy switch to generate headers like go
into libc/src/hdr/foo-proxy.h instead of public headers.


  Commit: 26b777444bf5cf9bcba5d292bf161b050f5e866e
      https://github.com/llvm/llvm-project/commit/26b777444bf5cf9bcba5d292bf161b050f5e866e
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M offload/test/api/assert.c
    M offload/test/api/omp_device_alloc.c
    M offload/test/api/omp_device_managed_memory.c
    M offload/test/api/omp_device_managed_memory_alloc.c
    M offload/test/api/omp_device_memory.c
    M offload/test/api/omp_device_uid.c
    M offload/test/api/omp_dynamic_shared_memory.c
    M offload/test/api/omp_env_vars.c
    M offload/test/api/omp_get_device_num.c
    M offload/test/api/omp_get_mapped_ptr.c
    M offload/test/api/omp_get_num_devices.c
    M offload/test/api/omp_get_num_procs.c
    M offload/test/api/omp_host_call.c
    M offload/test/api/omp_host_pinned_memory.c
    M offload/test/api/omp_host_pinned_memory_alloc.c
    M offload/test/api/omp_indirect_call.c
    M offload/test/api/omp_indirect_call_table_manual.c
    M offload/test/api/ompx_3d.c
    M offload/test/api/ompx_3d.cpp
    M offload/test/api/ompx_sync.c
    M offload/test/api/ompx_sync.cpp
    M offload/test/env/base_ptr_ref_count.c
    M offload/test/env/omp_target_debug.c
    M offload/test/jit/empty_kernel_lvl1.c
    M offload/test/jit/empty_kernel_lvl2.c
    M offload/test/jit/type_punning.c
    M offload/test/libc/malloc_parallel.c
    M offload/test/lit.cfg
    M offload/test/mapping/array_section_implicit_capture.c
    M offload/test/mapping/chained_containing_structs_1.cc
    M offload/test/mapping/chained_containing_structs_2.cc
    M offload/test/mapping/chained_containing_structs_3.cc
    M offload/test/mapping/data_member_ref.cpp
    M offload/test/mapping/declare_mapper_nested_default_mappers.cpp
    M offload/test/mapping/declare_mapper_nested_default_mappers_1.cpp
    M offload/test/mapping/declare_mapper_nested_mappers.cpp
    M offload/test/mapping/declare_mapper_target.cpp
    M offload/test/mapping/declare_mapper_target_data.cpp
    M offload/test/mapping/declare_mapper_target_data_enter_exit.cpp
    M offload/test/mapping/declare_mapper_target_update.cpp
    M offload/test/mapping/delete_inf_refcount.c
    M offload/test/mapping/device_ptr_update.c
    M offload/test/mapping/duplicate_mappings_1.cpp
    M offload/test/mapping/duplicate_mappings_2.cpp
    M offload/test/mapping/firstprivate_aligned.cpp
    M offload/test/mapping/has_device_addr.cpp
    M offload/test/mapping/implicit_device_ptr.c
    M offload/test/mapping/is_accessible.cpp
    M offload/test/mapping/is_device_ptr.cpp
    M offload/test/mapping/lambda_by_value.cpp
    M offload/test/mapping/low_alignment.c
    M offload/test/mapping/map_both_pointer_pointee.c
    M offload/test/mapping/ompx_hold/struct.c
    M offload/test/mapping/ompx_hold/target.c
    M offload/test/mapping/pr38704.c
    M offload/test/mapping/prelock.cpp
    M offload/test/mapping/present/target.c
    M offload/test/mapping/present/target_array_extension.c
    M offload/test/mapping/present/unified_shared_memory.c
    M offload/test/mapping/present/zero_length_array_section.c
    M offload/test/mapping/private_mapping.c
    M offload/test/mapping/ptr_and_obj_motion.c
    M offload/test/mapping/reduction_implicit_map.cpp
    M offload/test/mapping/target_data_array_extension_at_exit.c
    M offload/test/mapping/target_derefence_array_pointrs.cpp
    M offload/test/mapping/target_has_device_addr.c
    M offload/test/mapping/target_implicit_partial_map.c
    M offload/test/mapping/target_map_for_member_data.cpp
    M offload/test/mapping/target_uses_allocator.c
    M offload/test/mapping/use_device_addr/target_use_device_addr.c
    M offload/test/offloading/CUDA/basic_launch.cu
    M offload/test/offloading/CUDA/basic_launch_blocks_and_threads.cu
    M offload/test/offloading/CUDA/basic_launch_multi_arg.cu
    M offload/test/offloading/CUDA/launch_tu.cu
    M offload/test/offloading/assert.cpp
    M offload/test/offloading/atomic-compare-signedness.c
    M offload/test/offloading/back2back_distribute.c
    M offload/test/offloading/bug47654.cpp
    M offload/test/offloading/bug49021.cpp
    M offload/test/offloading/bug49334.cpp
    M offload/test/offloading/bug49779.cpp
    M offload/test/offloading/bug50022.cpp
    M offload/test/offloading/bug51781.c
    M offload/test/offloading/bug51982.c
    M offload/test/offloading/bug53727.cpp
    M offload/test/offloading/bug64959.c
    M offload/test/offloading/bug64959_compile_only.c
    M offload/test/offloading/bug74582.c
    M offload/test/offloading/complex_reduction.cpp
    M offload/test/offloading/ctor_dtor.cpp
    M offload/test/offloading/ctor_dtor_api.cpp
    M offload/test/offloading/ctor_dtor_lazy.cpp
    M offload/test/offloading/cuda_no_devices.c
    M offload/test/offloading/d2d_memcpy.c
    M offload/test/offloading/default_thread_limit.c
    M offload/test/offloading/dynamic_module.c
    M offload/test/offloading/dynamic_module_load.c
    M offload/test/offloading/extern.c
    M offload/test/offloading/force-usm.cpp
    M offload/test/offloading/fortran/basic-target-parallel-do.f90
    M offload/test/offloading/fortran/basic-target-parallel-region.f90
    M offload/test/offloading/fortran/basic-target-region-3D-array.f90
    M offload/test/offloading/fortran/double-target-call-with-declare-target.f90
    M offload/test/offloading/fortran/dump_map_tables.f90
    M offload/test/offloading/fortran/target-map-derived-type-full-1.f90
    M offload/test/offloading/fortran/target-map-derived-type-full-2.f90
    M offload/test/offloading/fortran/target-map-dtype-explicit-individual-array-member.f90
    M offload/test/offloading/fortran/target-map-dtype-multi-explicit-array-3D-member-bounds.f90
    M offload/test/offloading/fortran/target-map-dtype-multi-explicit-array-member-bounds.f90
    M offload/test/offloading/fortran/target-map-dtype-multi-explicit-array-member.f90
    M offload/test/offloading/fortran/target-map-dtype-multi-explicit-member.f90
    M offload/test/offloading/fortran/target-map-enter-exit-array.f90
    M offload/test/offloading/fortran/target-map-enter-exit-scalar.f90
    M offload/test/offloading/fortran/target-map-individual-dtype-member-map.f90
    M offload/test/offloading/fortran/target-map-nested-dtype-complex-member.f90
    M offload/test/offloading/fortran/target-map-nested-dtype-derived-member.f90
    M offload/test/offloading/fortran/target-map-nested-dtype-multi-member.f90
    M offload/test/offloading/fortran/target-map-pointer-target-array-section-3d-bounds.f90
    M offload/test/offloading/fortran/target-map-two-dtype-explicit-member.f90
    M offload/test/offloading/fortran/target-no-loop.f90
    M offload/test/offloading/fortran/target-region-implicit-array.f90
    M offload/test/offloading/generic_multiple_parallel_regions.c
    M offload/test/offloading/global_constructor.cpp
    M offload/test/offloading/high_trip_count_block_limit.cpp
    M offload/test/offloading/host_as_target.c
    M offload/test/offloading/indirect_fp_mapping.c
    M offload/test/offloading/info.c
    M offload/test/offloading/interop-print.c
    M offload/test/offloading/interop.c
    M offload/test/offloading/looptripcnt.c
    M offload/test/offloading/malloc.c
    M offload/test/offloading/memory_manager.cpp
    M offload/test/offloading/multiple_reductions_simple.c
    M offload/test/offloading/offloading_success.c
    M offload/test/offloading/offloading_success.cpp
    M offload/test/offloading/ompx_bare.c
    M offload/test/offloading/ompx_bare_ballot_sync.c
    M offload/test/offloading/ompx_bare_multi_dim.cpp
    M offload/test/offloading/ompx_bare_shfl_down_sync.cpp
    M offload/test/offloading/ompx_coords.c
    M offload/test/offloading/ompx_saxpy_mixed.c
    M offload/test/offloading/parallel_offloading_map.cpp
    M offload/test/offloading/parallel_target_teams_reduction.cpp
    M offload/test/offloading/parallel_target_teams_reduction_max.cpp
    M offload/test/offloading/parallel_target_teams_reduction_min.cpp
    M offload/test/offloading/requires.c
    M offload/test/offloading/shared_lib_fp_mapping.c
    M offload/test/offloading/small_trip_count.c
    M offload/test/offloading/small_trip_count_thread_limit.cpp
    M offload/test/offloading/spmdization.c
    M offload/test/offloading/static_linking.c
    M offload/test/offloading/std_complex_arithmetic.cpp
    M offload/test/offloading/strided_multiple_update.c
    M offload/test/offloading/strided_partial_update.c
    M offload/test/offloading/strided_ptr_multiple_update_from.c
    M offload/test/offloading/strided_ptr_multiple_update_to.c
    M offload/test/offloading/strided_ptr_partial_update_from.c
    M offload/test/offloading/strided_ptr_partial_update_to.c
    M offload/test/offloading/strided_update.c
    M offload/test/offloading/struct_mapping_with_pointers.cpp
    M offload/test/offloading/target-teams-atomic.c
    M offload/test/offloading/target-tile.c
    M offload/test/offloading/target_constexpr_mapping.cpp
    M offload/test/offloading/target_critical_region.cpp
    M offload/test/offloading/target_depend_nowait.cpp
    M offload/test/offloading/target_map_for_member_data.cpp
    M offload/test/offloading/target_nowait_target.cpp
    M offload/test/offloading/target_update_from.c
    M offload/test/offloading/target_update_strided_struct_from.c
    M offload/test/offloading/target_update_strided_struct_multiple_from.c
    M offload/test/offloading/target_update_strided_struct_multiple_to.c
    M offload/test/offloading/target_update_strided_struct_partial_from.c
    M offload/test/offloading/target_update_strided_struct_partial_to.c
    M offload/test/offloading/target_update_strided_struct_to.c
    M offload/test/offloading/target_update_to.c
    M offload/test/offloading/task_in_reduction_target.c
    M offload/test/offloading/taskloop_offload_nowait.cpp
    M offload/test/offloading/test_libc.cpp
    M offload/test/offloading/thread_limit.c
    M offload/test/offloading/thread_state_1.c
    M offload/test/offloading/thread_state_2.c
    M offload/test/offloading/weak.c
    M offload/test/offloading/workshare_chunk.c
    M offload/test/offloading/wtime.c
    M offload/test/ompt/veccopy.c
    M offload/test/ompt/veccopy_data.c
    M offload/test/ompt/veccopy_disallow_both.c
    M offload/test/ompt/veccopy_emi.c
    M offload/test/ompt/veccopy_emi_map.c
    M offload/test/ompt/veccopy_map.c
    M offload/test/ompt/veccopy_no_device_init.c
    M offload/test/ompt/veccopy_wrong_return.c
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_host_ptr.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M offload/test/sanitizer/kernel_crash.c
    M offload/test/sanitizer/kernel_crash_async.c
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_crash_single.c
    M offload/test/sanitizer/kernel_trap.c
    M offload/test/sanitizer/kernel_trap.cpp
    M offload/test/sanitizer/kernel_trap_async.c
    M offload/test/sanitizer/kernel_trap_many.c
    M offload/test/sanitizer/ptr_outside_alloc_1.c
    M offload/test/sanitizer/ptr_outside_alloc_2.c
    M offload/test/sanitizer/use_after_free_1.c
    M offload/test/sanitizer/use_after_free_2.c
    M offload/test/tools/llvm-omp-device-info.c
    M offload/test/unified_shared_memory/api.c
    M offload/test/unified_shared_memory/associate_ptr.c
    M offload/test/unified_shared_memory/close_enter_exit.c
    M offload/test/unified_shared_memory/close_manual.c
    M offload/test/unified_shared_memory/close_member.c
    M offload/test/unified_shared_memory/close_modifier.c
    M offload/test/unified_shared_memory/shared_update.c

  Log Message:
  -----------
  [offload][lit] XFAIL all failing tests on the Level Zero plugin (#174804)

We finally got our buildbot added (to staging, at least) so we want to
start running L0 tests in CI.
We need `check-offload` to pass though, so XFAIL everything failing.
There's a couple `UNSUPPORTED` as well, those are for sporadic fails.

Also make set the `gpu` and `intelgpu` LIT variables when testing the
`spirv64-intel` triple.

We have no DeviceRTL yet so basically everything fails, but we manage to
get

```
Total Discovered Tests: 432
Unsupported      : 169 (39.12%)
Passed           :  67 (15.51%)
Expectedly Failed: 196 (45.37%)
```

We still don't build the level zero plugin by default and these tests
don't run unless the plugin was built, so this has no effect on most
builds.

---------

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


  Commit: 1671bb67e799e0d1c742bee1ccfee0aa4692622e
      https://github.com/llvm/llvm-project/commit/1671bb67e799e0d1c742bee1ccfee0aa4692622e
  Author: Amy Kwan <amy.kwan1 at ibm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZAsmPrinter.cpp
    M llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll
    M llvm/test/CodeGen/SystemZ/zos-ppa2.ll

  Log Message:
  -----------
  [SystemZ] Change default backend to ASCII (#174470)

The current (and default) backend on z/OS is EBCDIC.

This patch updates the default backend to be ASCII, which is beneficial
when porting new languages. With this change, ASCII is the default when
no special metadata nodes (such as `zos_le_char_mode`) are present.


  Commit: 961d52f3304700393b1b03a72c9ad5bb155e851b
      https://github.com/llvm/llvm-project/commit/961d52f3304700393b1b03a72c9ad5bb155e851b
  Author: Thibault Monnier <97551402+Thibault-Monnier at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/Lex/Lexer.cpp

  Log Message:
  -----------
  [Clang] [Lexer] Detect SSE4.2 availability at runtime in fastParseASCIIIdentifier (#171914)

This change attempts to maximize usage of the SSE fast path in
`fastParseASCIIIdentifier`.

If compiling for x86, we compile both the SSE fast path and the scalar loop. At
runtime, we check if SSE4.2 is available and dispatch to the right
function by using the `target` attribute. If it _is_ available, this
allows a net performance improvement. Otherwise, there's a very slight
but negligible regression... I believe that's perfectly reasonable for a
non-SSE4.2-supporting processor.

If we are not compiling for x86, then the behavior is the exact same, ensuring we have
no regressions. If the binary is compiled for x86 with SSE4.2 enabled, we still do a runtime check, but this has negligible impact ; furthermore, the point of the PR is that this is rarely the case.

The benchmark results are available at
[llvm-compile-time-tracker](https://llvm-compile-time-tracker.com/compare.php?from=f88d060c4176d17df56587a083944637ca865cb3&to=d5485438edd460892bf210916827e0d92fc24065&stat=instructions%3Au).


  Commit: e01d6f4517809a3ea20a3cdfd9e327accbc5a711
      https://github.com/llvm/llvm-project/commit/e01d6f4517809a3ea20a3cdfd9e327accbc5a711
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fmul.ll

  Log Message:
  -----------
  InstCombine: Consider not-inf/nan context when simplifying fmul (#174024)

Consider if the result can be nan, or if the inputs cannot
be infinity from the flag when trying to simplify fmul into
copysign.


  Commit: 5ccba1b0c9ba774e4b264931a5553dcc44cf8107
      https://github.com/llvm/llvm-project/commit/5ccba1b0c9ba774e4b264931a5553dcc44cf8107
  Author: Thibault Monnier <97551402+Thibault-Monnier at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx2-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/ssse3-builtins.c

  Log Message:
  -----------
  [CIR] Upstream CIR codegen for palignr x86 builtins (#173788)

Part of #167752.

This PR upstreams CIR codegen for `palignr` x86 builtins.


  Commit: 66df6cceea001a2082bc78678305a86b9bb29ecb
      https://github.com/llvm/llvm-project/commit/66df6cceea001a2082bc78678305a86b9bb29ecb
  Author: Finn Plummer <mail at inbelic.dev>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILIntrinsicExpansion.cpp

  Log Message:
  -----------
  [DirectX] Specify NegZero as signed (#174840)

#171456 set `ImplicitTrunc` to false by default. So `NegZero` value was
no longer being created as a signed integer.

This caused a similar crash during `DXILIntrinsicExpansion` as reported
here:
https://github.com/llvm/llvm-project/pull/171456#issuecomment-3718690088.

This change fixes the test case from crashing in the DirectX backend by
manually specifying it as a signed integer.


  Commit: 0b13ae606a85f57b51047a3a13650a2e1af07668
      https://github.com/llvm/llvm-project/commit/0b13ae606a85f57b51047a3a13650a2e1af07668
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [llvm] Bypass sandbox for `getMainExecutable()` (#174816)

Getting the executable path is a fairly common operation in LLVM tools
that doesn't affect their outputs. Allow calling it under the sandbox.


  Commit: c444020ed546efd152336c5d4cf9b55622be8431
      https://github.com/llvm/llvm-project/commit/c444020ed546efd152336c5d4cf9b55622be8431
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/IntrinsicsNVVM.td

  Log Message:
  -----------
  [LLVM][NVPTX] Mark ldmatrix/stmatrix intrinsics convergent (#174669)

NVVM ldmatrix and stmatrix intrinsics map to corresponding PTX
instructions that have a .sync.aligned behavior. Mark these intrinsics
as convergent to prevent control flow transformations that can break
these semantics. This is similar to other .sync.aligned intrinsics.


  Commit: 6e6996e893a70404cbdb85660f6f7ce997f92223
      https://github.com/llvm/llvm-project/commit/6e6996e893a70404cbdb85660f6f7ce997f92223
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/LoopVectorize/select-min-max-last-index-epilogue.ll

  Log Message:
  -----------
  [LV] Add tests for argmin/argmax with epilogue vectorization. (NFC)

Add additional test coverage for vectorizing argmin/argmax with epilogue
vectorization.


  Commit: bc8fcba3bb3aa15ffbf3f6f43c271a75d41cfdfc
      https://github.com/llvm/llvm-project/commit/bc8fcba3bb3aa15ffbf3f6f43c271a75d41cfdfc
  Author: Alex MacLean <amaclean at nvidia.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/IR/AutoUpgrade.cpp
    M llvm/test/Assembler/auto_upgrade_nvvm_intrinsics.ll

  Log Message:
  -----------
  [NVPTX][AutoUpgrade] Use integer min/max intrinsics instead of icmp, select (#173097)


  Commit: 31b93d6e38dea9e7023101905d3471552e985540
      https://github.com/llvm/llvm-project/commit/31b93d6e38dea9e7023101905d3471552e985540
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.cpp
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanAnalysis.cpp
    M llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUnroll.cpp
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/lib/Transforms/Vectorize/VPlanValue.h
    M llvm/unittests/Transforms/Vectorize/VPlanPatternMatchTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
    M llvm/unittests/Transforms/Vectorize/VPlanVerifierTest.cpp

  Log Message:
  -----------
  [VPlan] Add specialized VPValue subclasses for different types (NFC) (#172758)

This patch adds VPValue sub-classes for the different cases we currently
have:
 * VPIRValue: A live-in VPValue that wraps an underlying IR value
* VPSymbolicValue: A symbolic VPValue not tied to an underlying value,
e.g. the vector trip count or VF VPValues
 * VPRecipeValue: A VPValue defined by a VPDef/VPRecipeBase.

This has multiple benefits:
 * clearer constructors for each kind of VPValue
* limited scope: for example allows moving VPDef member to VPRecipeValue,
reducing size of other VPValues.
* stricter type checking for member variables (e.g. using VPLiveIn in
the Value -> live-in map in VPlan, or using VPSymbolicValue for symbolic
member VPValues)

There probably are additional opportunities for cleanups as follow-ups.

PR: https://github.com/llvm/llvm-project/pull/172758


  Commit: 7bbaf2e16bc3aea203b2852c979659fe8b55604c
      https://github.com/llvm/llvm-project/commit/7bbaf2e16bc3aea203b2852c979659fe8b55604c
  Author: saxlungs <152745038+saxlungs at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wave.shuffle.ll

  Log Message:
  -----------
  [AMDGPU] Improve llvm.amdgcn.wave.shuffle handling for pre-GFX8 (#174845)

Before, GlobalISel would still return true for lowering the intrinsic
for GFX7 and earlier even though the required ds_bpermute_b32
instruction is not supported. After this change, GlobalISel will
properly report failure to select in this case. Testing is updated
appropriately.

Signed-off-by: Domenic Nutile <domenic.nutile at gmail.com>


  Commit: 0d23e3f71f56721e9c050bda63d10c7fd44de117
      https://github.com/llvm/llvm-project/commit/0d23e3f71f56721e9c050bda63d10c7fd44de117
  Author: Sergio Sánchez Ramírez <sergio.sanchez.ramirez at bsc.es>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Support/InitFIR.h
    M mlir/examples/toy/Ch5/toyc.cpp
    M mlir/examples/toy/Ch6/toyc.cpp
    M mlir/examples/toy/Ch7/toyc.cpp
    M mlir/include/mlir-c/Dialect/AMDGPU.h
    A mlir/include/mlir-c/Dialect/AMX.h
    A mlir/include/mlir-c/Dialect/Affine.h
    M mlir/include/mlir-c/Dialect/Arith.h
    A mlir/include/mlir-c/Dialect/ArmNeon.h
    A mlir/include/mlir-c/Dialect/ArmSME.h
    A mlir/include/mlir-c/Dialect/ArmSVE.h
    A mlir/include/mlir-c/Dialect/Bufferization.h
    A mlir/include/mlir-c/Dialect/DLTI.h
    M mlir/include/mlir-c/Dialect/EmitC.h
    M mlir/include/mlir-c/Dialect/Func.h
    M mlir/include/mlir-c/Dialect/LLVM.h
    M mlir/include/mlir-c/Dialect/MLProgram.h
    A mlir/include/mlir-c/Dialect/MPI.h
    M mlir/include/mlir-c/Dialect/Math.h
    M mlir/include/mlir-c/Dialect/MemRef.h
    M mlir/include/mlir-c/Dialect/NVGPU.h
    A mlir/include/mlir-c/Dialect/OpenACC.h
    A mlir/include/mlir-c/Dialect/PDLInterp.h
    A mlir/include/mlir-c/Dialect/Ptr.h
    M mlir/include/mlir-c/Dialect/SCF.h
    M mlir/include/mlir-c/Dialect/SPIRV.h
    M mlir/include/mlir-c/Dialect/Shape.h
    A mlir/include/mlir-c/Dialect/Shard.h
    M mlir/include/mlir-c/Dialect/Tensor.h
    A mlir/include/mlir-c/Dialect/Tosa.h
    M mlir/include/mlir-c/Dialect/Transform.h
    A mlir/include/mlir-c/Dialect/UB.h
    A mlir/include/mlir-c/Dialect/VCIX.h
    M mlir/include/mlir-c/Dialect/Vector.h
    A mlir/include/mlir-c/Dialect/WasmSSA.h
    A mlir/include/mlir-c/Dialect/X86Vector.h
    A mlir/include/mlir-c/Dialect/XeGPU.h
    A mlir/include/mlir-c/Dialect/XeVM.h
    M mlir/include/mlir/Dialect/AMDGPU/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Affine/CMakeLists.txt
    R mlir/include/mlir/Dialect/Affine/Passes.h
    R mlir/include/mlir/Dialect/Affine/Passes.td
    A mlir/include/mlir/Dialect/Affine/Transforms/CMakeLists.txt
    A mlir/include/mlir/Dialect/Affine/Transforms/Passes.h
    A mlir/include/mlir/Dialect/Affine/Transforms/Passes.td
    M mlir/include/mlir/Dialect/Arith/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/ArmSME/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/ArmSVE/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Bufferization/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/EmitC/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Func/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/LLVMIR/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/MLProgram/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Math/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/MemRef/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/OpenACC/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/OpenMP/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Quant/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/SCF/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/SPIRV/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Shape/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Shard/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tensor/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Tosa/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Transform/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/Vector/Transforms/CMakeLists.txt
    M mlir/include/mlir/Dialect/XeGPU/Transforms/CMakeLists.txt
    A mlir/lib/CAPI/Dialect/AMDGPUPasses.cpp
    A mlir/lib/CAPI/Dialect/AMX.cpp
    A mlir/lib/CAPI/Dialect/Affine.cpp
    A mlir/lib/CAPI/Dialect/AffinePasses.cpp
    A mlir/lib/CAPI/Dialect/ArithPasses.cpp
    A mlir/lib/CAPI/Dialect/ArmNeon.cpp
    A mlir/lib/CAPI/Dialect/ArmSME.cpp
    A mlir/lib/CAPI/Dialect/ArmSMEPasses.cpp
    A mlir/lib/CAPI/Dialect/ArmSVE.cpp
    A mlir/lib/CAPI/Dialect/ArmSVEPasses.cpp
    A mlir/lib/CAPI/Dialect/Bufferization.cpp
    A mlir/lib/CAPI/Dialect/BufferizationPasses.cpp
    M mlir/lib/CAPI/Dialect/CMakeLists.txt
    A mlir/lib/CAPI/Dialect/DLTI.cpp
    M mlir/lib/CAPI/Dialect/EmitC.cpp
    A mlir/lib/CAPI/Dialect/EmitCPasses.cpp
    A mlir/lib/CAPI/Dialect/FuncPasses.cpp
    A mlir/lib/CAPI/Dialect/LLVMPasses.cpp
    A mlir/lib/CAPI/Dialect/MLProgramPasses.cpp
    A mlir/lib/CAPI/Dialect/MPI.cpp
    A mlir/lib/CAPI/Dialect/MathPasses.cpp
    A mlir/lib/CAPI/Dialect/MemRefPasses.cpp
    A mlir/lib/CAPI/Dialect/NVGPUPasses.cpp
    A mlir/lib/CAPI/Dialect/OpenACC.cpp
    A mlir/lib/CAPI/Dialect/OpenACCPasses.cpp
    A mlir/lib/CAPI/Dialect/PDLInterp.cpp
    A mlir/lib/CAPI/Dialect/Ptr.cpp
    A mlir/lib/CAPI/Dialect/SCFPasses.cpp
    A mlir/lib/CAPI/Dialect/SPIRVPasses.cpp
    A mlir/lib/CAPI/Dialect/ShapePasses.cpp
    A mlir/lib/CAPI/Dialect/Shard.cpp
    A mlir/lib/CAPI/Dialect/ShardPasses.cpp
    A mlir/lib/CAPI/Dialect/TensorPasses.cpp
    A mlir/lib/CAPI/Dialect/Tosa.cpp
    A mlir/lib/CAPI/Dialect/TosaPasses.cpp
    A mlir/lib/CAPI/Dialect/TransformPasses.cpp
    A mlir/lib/CAPI/Dialect/UB.cpp
    A mlir/lib/CAPI/Dialect/VCIX.cpp
    A mlir/lib/CAPI/Dialect/VectorPasses.cpp
    A mlir/lib/CAPI/Dialect/WasmSSA.cpp
    A mlir/lib/CAPI/Dialect/X86Vector.cpp
    A mlir/lib/CAPI/Dialect/XeGPU.cpp
    A mlir/lib/CAPI/Dialect/XeVM.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineDataCopyGeneration.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineExpandIndexOpsAsAffine.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineLoopInvariantCodeMotion.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineLoopNormalize.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineParallelize.cpp
    M mlir/lib/Dialect/Affine/Transforms/AffineScalarReplacement.cpp
    M mlir/lib/Dialect/Affine/Transforms/FoldMemRefAliasOps.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopCoalescing.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopFusion.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopTiling.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopUnroll.cpp
    M mlir/lib/Dialect/Affine/Transforms/LoopUnrollAndJam.cpp
    M mlir/lib/Dialect/Affine/Transforms/PipelineDataTransfer.cpp
    M mlir/lib/Dialect/Affine/Transforms/RaiseMemrefDialect.cpp
    M mlir/lib/Dialect/Affine/Transforms/SimplifyAffineMinMax.cpp
    M mlir/lib/Dialect/Affine/Transforms/SimplifyAffineStructures.cpp
    M mlir/lib/Dialect/Affine/Transforms/SuperVectorize.cpp
    M mlir/lib/RegisterAllPasses.cpp
    M mlir/test/lib/Dialect/Affine/TestAffineLoopParametricTiling.cpp
    M utils/bazel/llvm-project-overlay/mlir/BUILD.bazel

  Log Message:
  -----------
  [MLIR] Add missing dialects to C API (#82190)

We are trying to make a wrapper of MLIR for Julia in
https://github.com/JuliaLabs/MLIR.jl, but some dialects are missing in
`libMLIR-C`. This PR adds them.


  Commit: 4998280c3f112facece8a7ce10f2788c800b7cba
      https://github.com/llvm/llvm-project/commit/4998280c3f112facece8a7ce10f2788c800b7cba
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [LV] Find reduction result VPInstruction from backedge value (NFC).

Split off from https://github.com/llvm/llvm-project/pull/174026. Make
the lookup of the reduction phi recipe/compute-reduction-result
VPInstruction independent of the latter having the reduction phi as
operand.


  Commit: abee8a8e130fd3398e9fe44a46b6339a2a1adc2a
      https://github.com/llvm/llvm-project/commit/abee8a8e130fd3398e9fe44a46b6339a2a1adc2a
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.h
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/navbar-template.mustache
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
    M clang-tools-extra/test/clang-doc/namespace.cpp

  Log Message:
  -----------
  [clang-doc] Add a breadcrumb navigation bar (#173297)

This patch adds a breadcrumb navigation bar to the `<navbar>` element. Now, you can navigate between the different scopes of a record or namespace. This is done by keeping track of a Decl's parent Decl through its USR. That allows us to traverse the set of `Info`s through a directed graph during JSON generation to create `Context`s. A context is just a `Reference` that holds a relative path to a scope's file from a particular `Info`.


  Commit: b646f3b9b1e1fadb5f9353474b139c00e70ea276
      https://github.com/llvm/llvm-project/commit/b646f3b9b1e1fadb5f9353474b139c00e70ea276
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/lib/CAPI/Dialect/CMakeLists.txt

  Log Message:
  -----------
  [mlir][CAPI][transform] fix linker after #82190 (#174866)


  Commit: b026317b59d26b6150bc331e3f11bda522482ca8
      https://github.com/llvm/llvm-project/commit/b026317b59d26b6150bc331e3f11bda522482ca8
  Author: Dave Lee <davelee.com at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/source/DataFormatters/FormatterBytecode.cpp

  Log Message:
  -----------
  [lldb] Match #undef to preceding #define (NFC) (#174821)


  Commit: 13829dfaac414775fb932282b0cc92192aec08d6
      https://github.com/llvm/llvm-project/commit/13829dfaac414775fb932282b0cc92192aec08d6
  Author: Felipe de Azevedo Piovezan <fpiovezan at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/source/API/SBThread.cpp

  Log Message:
  -----------
  [lldb] Add missing locks in SBThread methods (#174791)

Some of these methods are not acquiring the run lock prior to executing.


  Commit: 77d6dd43c32992f983e85650b8de6f50b33e0a2c
      https://github.com/llvm/llvm-project/commit/77d6dd43c32992f983e85650b8de6f50b33e0a2c
  Author: Chandler Carruth <chandlerc at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  Add a filegroup containing _all_ sources to the libc build rules (#169155)

These rules already expose a filegroup containing the _dependencies_,
but that misses the source files directly in the top level library.

Without this filegroup, there isn't a way to access the source files
used by libcxx when building it, etc.


  Commit: 491200482b10c80950aa8f521819e4eacdfa62f4
      https://github.com/llvm/llvm-project/commit/491200482b10c80950aa8f521819e4eacdfa62f4
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512dqvl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/masked_compressstore.ll
    M llvm/test/CodeGen/X86/masked_expandload.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter_widen.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    M llvm/test/CodeGen/X86/vector-reduce-and-bool.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v1.ll

  Log Message:
  -----------
  Revert "[X86] Allow EVEX compression for mask registers" (#174872)

Reverts #171980 while investigating regressions reported on #174871


  Commit: d815e8448fa42252a5d7434d881db1f60eb3147e
      https://github.com/llvm/llvm-project/commit/d815e8448fa42252a5d7434d881db1f60eb3147e
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/aapcs-volatile-bitfields.c
    M clang/test/CIR/CodeGen/assign-operator.cpp
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/comma.c
    M clang/test/CIR/CodeGen/cxx-default-init.cpp
    M clang/test/CIR/CodeGen/enum.cpp
    M clang/test/CIR/CodeGen/finegrain-bitfield-access.cpp
    M clang/test/CIR/CodeGen/struct.cpp
    M clang/test/CIR/CodeGen/union.c
    M clang/test/CIR/CodeGen/vla.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512vl-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/xop-builtins.c
    M clang/test/CIR/Transforms/canonicalize.cir
    M clang/test/CIR/Transforms/switch.cir

  Log Message:
  -----------
  [CIR] Implement simple folding for integer casts (#174861)

This extends the CastOp folder to handle integral casts between
different integer types. This only handles scalar values at this time.

This is in preparation for a change that will attempt to fold casts as
they are generated, but this change only performs the folding via the
cir-canonicalize pass.


  Commit: dbd57dcb31511c8bdad558b7a851f5784dd4a32b
      https://github.com/llvm/llvm-project/commit/dbd57dcb31511c8bdad558b7a851f5784dd4a32b
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M mlir/lib/CAPI/Dialect/CMakeLists.txt

  Log Message:
  -----------
  [mlir][CAPI] fix linker again after #82190 (#174876)


  Commit: bef98e95ab8325e80e954d23bfcb23f3db33f002
      https://github.com/llvm/llvm-project/commit/bef98e95ab8325e80e954d23bfcb23f3db33f002
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Set access specifier for EnumConstantDecl's (#174865)

LLDB was already setting the access specifier on `EnumDecl`s
unconditionally to `AS_public`. But it wasn't doing so for the
`EnumConstantDecl`s. This triggered a Clang assertion during
auto-completion of expressions
(https://github.com/llvm/llvm-project/issues/171913).

Ideally the code-completion accessibility check would honor the
`AccessControl` language option, but that change is harder to
test/justify. Since this is a pretty straight-forward change I want to
land this before trying to do that.

There is no test coverage for this because it relies on the order in
which Clang decides to check the decls in scope for auto-completion,
which seems fragile. It's also consistent with how we handle access to
other decls in `TypeSystemClang`.

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


  Commit: 94aa4f07a4d26c696136d40d90eca04595978bc5
      https://github.com/llvm/llvm-project/commit/94aa4f07a4d26c696136d40d90eca04595978bc5
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Port 0d23e3 (#174879)

This at least gets the build working. This does not make the C bindings
for all the dialects actually work.


  Commit: 539cf92944421f66eb02316f4a9fc30ae0aecf36
      https://github.com/llvm/llvm-project/commit/539cf92944421f66eb02316f4a9fc30ae0aecf36
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/include/lldb/ValueObject/DILAST.h
    M lldb/include/lldb/ValueObject/DILEval.h
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py
    A lldb/test/API/commands/frame/var-dil/expr/Casts/Makefile
    A lldb/test/API/commands/frame/var-dil/expr/Casts/TestFrameVarDILCast.py
    A lldb/test/API/commands/frame/var-dil/expr/Casts/main.cpp

  Log Message:
  -----------
  [LLDB] Add type casting to DIL, part 2 or 3 (#170332)

This PR implements the actual type casting part. With this, type casting
to builtin types should work. The third PR, which will be put up after
this one is merged, will expand the type name parsing to allow casting
to user-defined types.


  Commit: 3911c6a2535736a365dd28163dd18daaa4398f74
      https://github.com/llvm/llvm-project/commit/3911c6a2535736a365dd28163dd18daaa4398f74
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/tools/driver/cc1gen_reproducer_main.cpp
    M clang/tools/driver/driver.cpp

  Log Message:
  -----------
  [clang] Allow enabling sandbox for direct `-cc1` invocations (#174653)

This PR enables the FS sandbox for direct `clang -cc1` invocations.
https://github.com/llvm/llvm-project/pull/165350 unintentionally
implemented the sandbox only for the code path where `clang -cc1` gets
invoked after being expanded from a driver command line, which reduced
the expected test coverage.


  Commit: b326c324e46bb4926d11569bd5eefd73d0f04e2e
      https://github.com/llvm/llvm-project/commit/b326c324e46bb4926d11569bd5eefd73d0f04e2e
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/IR/invalid-struct.cir
    M clang/test/CIR/IR/struct.cir
    A clang/test/CIR/Lowering/struct.cir

  Log Message:
  -----------
  [CIR] Upstream ExtractMemberOp (#173512)

This PR upstreams `ExtractMemberOp`.

Required for #172554.

---------

Signed-off-by: vishruth-thimmaiah <vishruththimmaiah at gmail.com>


  Commit: 995f27bdfc4cd901ef806fdfca96e4f87cad8429
      https://github.com/llvm/llvm-project/commit/995f27bdfc4cd901ef806fdfca96e4f87cad8429
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py

  Log Message:
  -----------
  [LLDB] Fix buildbot breakage (#174886)

Remove DIL type-cast test that's failing on aarch64. Test makes
assumption that's not valid on that architecture.


  Commit: ed45b000fc08f181d787c6fccb566cba715788f2
      https://github.com/llvm/llvm-project/commit/ed45b000fc08f181d787c6fccb566cba715788f2
  Author: Priyanshu Kumar <10b.priyanshu at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/avx512vlbf16-builtins.c

  Log Message:
  -----------
  [CIR][X86]Implement handling for convert-half builtins (#173143)

Related to: #167765


  Commit: 335eb330918543f4ee2036b3c6b02ef9417edf28
      https://github.com/llvm/llvm-project/commit/335eb330918543f4ee2036b3c6b02ef9417edf28
  Author: Max Kudryavtsev <44215372+max-ku at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/utils/git/requirements_upload_release.txt

  Log Message:
  -----------
  [llvm][utils] Bump urllib to 2.6.3 (#174880)

Bumps [urllib3](https://github.com/urllib3/urllib3) from 2.2.3 to 2.6.3
to address
CVE-2025-66418 and CVE-2025-66471 vulnerabilities


  Commit: 90c03cb13652708aeb25bb0859f443c32f98e4e0
      https://github.com/llvm/llvm-project/commit/90c03cb13652708aeb25bb0859f443c32f98e4e0
  Author: John Harrison <harjohn at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/Handler/ConfigurationDoneRequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h

  Log Message:
  -----------
  [lldb-dap] Add an introductory message on startup. (#170795)

This adds an introductory message to try to inform users on how the
debug console works and adds a little more information on the current
target/process, similiar to the lldb driver.

Here is an example of the introduction:

```
To get started with the debug console try "<variable>", "<lldb-cmd>" or "help [<lldb-cmd>]".
For more information visit https://lldb.llvm.org/use/lldbdap.html#debug-console.
Executable binary set to 'a.out' (arm64-apple-macosx15.0.0).
Attached to process 1234.
```


  Commit: 0bf4df8b1eaf46553b6a1c3348c1eec45bc76b91
      https://github.com/llvm/llvm-project/commit/0bf4df8b1eaf46553b6a1c3348c1eec45bc76b91
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Passes/CommandLineOpts.h
    M flang/include/flang/Optimizer/Transforms/Passes.td
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/lib/Optimizer/Passes/CommandLineOpts.cpp
    M flang/lib/Optimizer/Passes/Pipelines.cpp
    M flang/lib/Optimizer/Transforms/CMakeLists.txt
    A flang/lib/Optimizer/Transforms/LoopInvariantCodeMotion.cpp
    M flang/test/Analysis/AliasAnalysis/gen_mod_ref_test.py
    M flang/test/Analysis/AliasAnalysis/modref-call-dummies.f90
    M flang/test/Analysis/AliasAnalysis/modref-call-globals.f90
    A flang/test/Analysis/AliasAnalysis/modref-call-recursive.fir
    A flang/test/Transforms/licm.fir

  Log Message:
  -----------
  [flang] Added LoopInvariantCodeMotion pass for [HL]FIR. (#173438)

The new pass allows hoisting some `fir.load` operations early
in MLIR. For example, many descriptor load might be hoisted
out of the loops, though it does not make much difference
in performance, because LLVM is able to optimize such loads
(which are lowered as `llvm.memcpy` into temporary descriptors),
given that proper TBAA information is generated by Flang.

Further hoisting improvements are possible in [HL]FIR LICM,
e.g. getting proper mod-ref results for Fortran runtime calls
may allow hoisting loads from global variables, which LLVM
cannot do due to lack of alias information.

This patch also contains improvements for FIR mod-ref analysis:
We may recurse into `HasRecursiveMemoryEffects` operations and
use `getModRef` recursively to get more precise results for
regions with `fir.call` operations.

This patch also modifies `AliasAnalysis` to set the instantiation
point for cases where the tracked data is accessed through a load
from `!fir.ref<!fir.box<>>`: without this change the mod-ref
analysis was not able to recognize user pointer/allocatable variables.


  Commit: 1171e30cb01c00a048ec0d82f20e57213842f505
      https://github.com/llvm/llvm-project/commit/1171e30cb01c00a048ec0d82f20e57213842f505
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrInfo.td
    M llvm/lib/Target/WebAssembly/WebAssemblyInstrSIMD.td
    M llvm/test/CodeGen/WebAssembly/simd-load-store-alignment.ll
    M llvm/test/CodeGen/WebAssembly/simd-load-zero-offset.ll

  Log Message:
  -----------
  [WebAssembly] Support v128.load{32,64}_zero for f32 and f64 types (#172291)

This patch extends the `load_zero` pattern matching to
support floating-point vector types (`v4f32` and `v2f64`).

Previously, the optimization to generate `v128.load32_zero` and
`v128.load64_zero` was only enabled for integer types
(`v4i32` and `v2i64`). This change adds the necessary TableGen
patterns to correctly match scalar floating-point loads inserted
into zero-initialized vectors.


  Commit: a3c9b72651178e7903c9c4db791b676ab91442a9
      https://github.com/llvm/llvm-project/commit/a3c9b72651178e7903c9c4db791b676ab91442a9
  Author: hanbeom <kese111 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/Loads.cpp
    M llvm/test/Transforms/GVN/condprop.ll
    M llvm/test/Transforms/InstSimplify/select-icmp.ll

  Log Message:
  -----------
  [IR] Fix canReplacePointersIfEqual to properly validate vector pointers (#174142)

Previously, `canReplacePointersIfEqual` unconditionally returned
`true` for vectors of pointers (e.g., `<2 x ptr>`) because it only
checked for scalar pointer types.

This resulted in a failure to perform appropriate verification for
these types. This patch fixes the logic to ensure they are properly
validated.

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


  Commit: 4bd5ef76addc18ad1405230ffab76d3542fc215f
      https://github.com/llvm/llvm-project/commit/4bd5ef76addc18ad1405230ffab76d3542fc215f
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVELFStreamer.h
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVTargetStreamer.h
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp

  Log Message:
  -----------
  [RISC-V][ELF] Move emitNoteGnuPropertySection to RISCVTargetELFStreamer. [NFCI] (#174890)

This function is invoked only for ELF targets, therefore it has been
moved to the ELF-specific streamer.

An assertion has been added to catch its invocations outside of an
invocation that targets ELF.


  Commit: 8ae3fc227b9937b8d513af0ab80330e02241e77e
      https://github.com/llvm/llvm-project/commit/8ae3fc227b9937b8d513af0ab80330e02241e77e
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/xqcibi-redundant-copy-elim.ll

  Log Message:
  -----------
  [RISCV] Simplify testcases in xqcibi-redundant-copy-elim.ll. NFC. (#174695)

Remove unneeded load instructions and only remain one comparison
instruction.


  Commit: 5185f07a3754691d123531cccbebe31a98a9dbf6
      https://github.com/llvm/llvm-project/commit/5185f07a3754691d123531cccbebe31a98a9dbf6
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRedundantCopyElimination.cpp
    A llvm/test/CodeGen/RISCV/xandesperf-redundant-copy-elim.ll

  Log Message:
  -----------
  [RISCV] Add support for XAndesPerf branch on immediate in RISCVRedundantCopyElimination (#174706)

This patch is like what Xqcibi did in
https://github.com/llvm/llvm-project/pull/174358.


  Commit: 278946408e70f84df03d16044acf8d396a1617ea
      https://github.com/llvm/llvm-project/commit/278946408e70f84df03d16044acf8d396a1617ea
  Author: Ryan Buchner <rbuchner at qti.qualcomm.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.cpp
    M llvm/lib/Target/RISCV/RISCVTargetTransformInfo.h
    A llvm/test/Analysis/CostModel/RISCV/constant-pool.ll

  Log Message:
  -----------
  [RISCV] Improve cost modeling of RISCVTTIImpl::getConstantPoolLoadCost() (#174438)

Some machines are able to make use of AUIPC + ADDI or LUI + ADDI fusion, make sure to consider that in the cost model for `RISCVTTIImpl::getConstantPoolLoadCost()`.


  Commit: c99db7136ed139e933688272171e084d9b3d6a16
      https://github.com/llvm/llvm-project/commit/c99db7136ed139e933688272171e084d9b3d6a16
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/libcalls.ll

  Log Message:
  -----------
  [WebAssembly] Disable explicit-locals in the libcalls.ll test. NFC (#174811)

The keep-registers mode isn't super useful without disabling
explicit-locals,
as the local gets/sets are irrelevant noise in most cases.
Switching this test makes the output much more concise and will make
upcoming
changes easier to review.


  Commit: ff73ccaac693511cf82ff15e0f77d8d4a72e5cd8
      https://github.com/llvm/llvm-project/commit/ff73ccaac693511cf82ff15e0f77d8d4a72e5cd8
  Author: cmtice <cmtice at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/frame/var-dil/expr/Casts/TestFrameVarDILCast.py

  Log Message:
  -----------
  [LLDB] Tentative fix for lldb-arm-ubuntu buildbot. (#174893)

Not sure if this will fix the problem because I don't have a 32-bit arm
machine to test with.


  Commit: 777017ea867ecb7d73aa896bead2c4590d507ba5
      https://github.com/llvm/llvm-project/commit/777017ea867ecb7d73aa896bead2c4590d507ba5
  Author: Pradeep Kumar <pradeepku at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
    M llvm/lib/Target/NVPTX/NVPTXIntrinsics.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
    M llvm/test/CodeGen/NVPTX/redux-sync-f32.ll
    M llvm/test/CodeGen/NVPTX/setmaxnreg-sm100a.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-ptx88-aa.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-block-scale-ptx88.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-mma-disable-output-lane-i8.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-disable-output-lane.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-mma-i8.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-scale-d.ll
    A llvm/test/CodeGen/NVPTX/tcgen05-mma-ws-i8.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma-ws.ll
    M llvm/test/CodeGen/NVPTX/tcgen05-mma.ll
    M llvm/test/CodeGen/NVPTX/wmma-ptx78-sm90.py
    M llvm/test/CodeGen/NVPTX/wmma-ptx86-sm100a.py
    M llvm/test/CodeGen/NVPTX/wmma-ptx86-sm101a.py
    M llvm/test/CodeGen/NVPTX/wmma-ptx86-sm120a.py
    M llvm/test/CodeGen/NVPTX/wmma-ptx87-sm120a.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx88-sm100f.py
    M llvm/test/CodeGen/NVPTX/wmma-ptx88-sm120a.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx88-sm120f.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx90-sm110f.py
    M llvm/test/CodeGen/NVPTX/wmma.py

  Log Message:
  -----------
  [LLVM][NVPTX] Enable family specific support for a few intrinsics (#173268)

This commit adds support for family specific support for the following
intrinsics:
- ldmatrix
- stmatrix
- mma.block_scale, mma.sp.block_scale
- redux.sync
- cvt.rs
- clusterlaunchcontrol
- setmaxnreg
- tcgen05.mma

Removed `hasTcgen05Instructions` function in the favour of `hasTcgen05InstSupport` Updated wmma.py script with family specific support and added new tests


  Commit: 84cc15344ff804e010d16ee9ac0b2b180ea88701
      https://github.com/llvm/llvm-project/commit/84cc15344ff804e010d16ee9ac0b2b180ea88701
  Author: Slava Zakharin <szakharin at nvidia.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/Dialect/FIROps.td
    M flang/test/Transforms/licm.fir

  Log Message:
  -----------
  [flang] Make fir.result Pure operation. (#173508)

This allows speculating recursively speculatable operations
containing `fir.result`. Note that making it Pure does not allow
speculating `fir.result` itself from its containing operation,
since it is a terminator.


  Commit: c194ccff406b4043482fe1ab978a4842884c4026
      https://github.com/llvm/llvm-project/commit/c194ccff406b4043482fe1ab978a4842884c4026
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCTargetDesc.cpp
    M llvm/lib/Target/RISCV/RISCVAsmPrinter.cpp

  Log Message:
  -----------
  [RISC-V] Ensure MCTargetStreamer is initialized. (#174800)

Fixes a failure on llc for ubsan builds:

../lib/Target/RISCV/RISCVAsmPrinter.cpp:552:7: runtime error: downcast
of null pointer of type 'RISCVTargetStreamer'
SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior
../lib/Target/RISCV/RISCVAsmPrinter.cpp:552:7


  Commit: ec51fd24c2a99f99a8db6f1ec8f6c7cbcf461981
      https://github.com/llvm/llvm-project/commit/ec51fd24c2a99f99a8db6f1ec8f6c7cbcf461981
  Author: Longsheng Mou <longshengmou at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Vector/IR/VectorOps.cpp
    M mlir/test/Dialect/Vector/invalid.mlir

  Log Message:
  -----------
  [mlir][vector] Emit error when `kind` attribute is not a CombiningKind (#173659)

This PR fixes a crash by validating the type of the `kind` attribute.
For `vector.contract` and `vector.outerproduct`, the verifier now emits
an error when `kind` is not a CombiningKindAttr. Fixes #173555.


  Commit: 8da7c05933bd6056320479e074050b55ccd34aaa
      https://github.com/llvm/llvm-project/commit/8da7c05933bd6056320479e074050b55ccd34aaa
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.h
    A llvm/test/Transforms/InstCombine/WebAssembly/fold-swizzle.ll

  Log Message:
  -----------
  [WebAssembly] Fold constant `i8x16.swizzle` and `i8x16.relaxed.swizzle` to `shufflevector` (#169110)

Resolves #169058.

This adds ~~an InstCombine pass~~ a TTI hook to the WebAssembly backend
that folds `i8x16.swizzle` and `i8x16.relaxed.swizzle` operations to
`shufflevector` operations if their mask operands are constant.

This is mainly useful for abstractions over the raw intrinsics--for
instance, in architecture-generic SIMD code that may not be able to
expose the constant shuffles due to type system limitations.

I took most of this from the x86 backend (in particular,
`simplifyX86vpermilvar` in `X86InstCombineIntrinsic`), and adapted it
for the WebAssembly backend. There wasn't any previous
`instCombineIntrinsic` method on the WebAssembly `TargetTransformInfo`,
so I added it. Right now, this swizzle optimization is the only one it
performs.

As I noted in the transform itself, the "relaxed" swizzle actually has
stricter preconditions than the non-relaxed one. If a non-negative but
still out-of-bounds index is provided, the "relaxed" swizzle can choose
between returning 0 and the lane at the index modulo 16. However, it
must make the same choice every time, and we don't know which choice the
runtime will make, so we can't constant-fold it.

The regression tests were mostly generated by Claude and adapted a bit
by me (I tried to follow the [InstCombine contributor
guide](https://llvm.org/docs/InstCombineContributorGuide.html#tests)).
There was previously no WebAssembly subdirectory within the InstCombine
tests, so I created that too; as of now, the swizzle fold test is the
only file in it. Everything else was written by myself (well, partly
copy-pasted from the x86 backend).

I'm not sure how to write an Alive2 test for this; I can't find any
examples where the input is an arbitrary constant.


  Commit: 9519d52512a156d2ccd63075e650903c4318f92d
      https://github.com/llvm/llvm-project/commit/9519d52512a156d2ccd63075e650903c4318f92d
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/instructions/nested-composites.ll

  Log Message:
  -----------
  [SPIRV] Handle aggregate arguments to `spv_store` (#172348)

This patch handles the special case where an extract value yields an
aggregate result, which then is used as an argument to a store. The
SPIRV BE uses special intrinsics (`spv_extractv` and `spv_store`) to
represent these through IRTranslator, however this creates a problem:
`spv_store` is called as a function, and IRTranslator cannot handle
arguments that take more than a vreg. For other functions, the aggregate
argument replacement pass would have solved things, but it does not
apply here. Hence, we apply the same mutate-into-Int32 solution here
when dealing with stores, and restore the extract value's type (which we
have available as a ValueAttr) during instruction selection.


  Commit: de3e9b04178cc8fca77ef6396ba604f47ffdeb6f
      https://github.com/llvm/llvm-project/commit/de3e9b04178cc8fca77ef6396ba604f47ffdeb6f
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vsplats-zfa.ll

  Log Message:
  -----------
  [RISCV] Fold (fma (splat (fneg X)), Y, Z) -> (fma (fneg (splat X)), Y, Z) (#173808)

We use fli+fneg to generate negative float, eliminate the fneg for fma.
Fold fma to vfnmsac.vf,vfnmsub.vf, vfnmacc.vf, vfnmadd.vf

---------

Co-authored-by: Craig Topper <craig.topper at sifive.com>


  Commit: 013c04a58cfe0d710dea150396031eaba34b8620
      https://github.com/llvm/llvm-project/commit/013c04a58cfe0d710dea150396031eaba34b8620
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Make CAPIIR depend on TransformsPassIncGen (#174902)

CAPIIR includes this in some of its source files, so we need to ensure
the header is around.


  Commit: b3564b2f5d845a53e1001307a31889f0ed5acfa7
      https://github.com/llvm/llvm-project/commit/b3564b2f5d845a53e1001307a31889f0ed5acfa7
  Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/PowerPC/optimize-vector-not-equal.ll

  Log Message:
  -----------
  [NFC][PowerPC] fix IR to be splat and not zeroinitializer (#174699)

IR should be a splat of 7 as this compares vector of elements with 7
(`vec[i]!=7`). Having `zeroinitializer` goes against this comparison.

Co-authored-by: himadhith <himadhith.v at ibm.com>


  Commit: 7873abb0a0b8b02dbb72cdac2440ec22e91c3e67
      https://github.com/llvm/llvm-project/commit/7873abb0a0b8b02dbb72cdac2440ec22e91c3e67
  Author: Twice <twice at apache.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/lib/Bindings/Python/DialectSparseTensor.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/Pass.cpp
    M mlir/lib/Bindings/Python/Rewrite.cpp

  Log Message:
  -----------
  [MLIR][Python][NFC] Use enum class instead of enum (#174792)

This PR replace `enum`s with `enum class`es in Python bindings. No
functional change.


  Commit: df2c0a7d642e452cab98d26c2fdd53277a072b76
      https://github.com/llvm/llvm-project/commit/df2c0a7d642e452cab98d26c2fdd53277a072b76
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M llvm/utils/git-llvm-push

  Log Message:
  -----------
  [llvm][utils] Make GitHubAPI methods pass around PR number (#174860)

This avoids repeatedly reparsing the URL to extract the number.


  Commit: f81363314cb14d608687d61cff9bbfe50ae70633
      https://github.com/llvm/llvm-project/commit/f81363314cb14d608687d61cff9bbfe50ae70633
  Author: Koakuma <koachan at protonmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Sparc/AsmParser/SparcAsmParser.cpp
    M llvm/lib/Target/Sparc/SparcInstrAliases.td
    M llvm/lib/Target/Sparc/SparcInstrInfo.td
    A llvm/test/MC/Sparc/sparc-natural-instructions.s

  Log Message:
  -----------
  [SPARC][IAS] Implement Solaris Natural Instruction extension (#170794)

We match GCC's coverage of the extension, that is, everything except
`setn` and `setnhi`.
See also: https://docs.oracle.com/cd/E53394_01/html/E54833/gmael.html


  Commit: 7565bbe1473873f257dd0be4e349c49c16396711
      https://github.com/llvm/llvm-project/commit/7565bbe1473873f257dd0be4e349c49c16396711
  Author: valadaptive <79560998+valadaptive at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/WebAssembly/lit.local.cfg

  Log Message:
  -----------
  [WebAssembly] Skip WASM-specific InstCombine tests properly (#174900)

Un-breaks the build after
https://github.com/llvm/llvm-project/pull/169110.


  Commit: 4da37d3295fbd0fd28b903812ba48025e267260f
      https://github.com/llvm/llvm-project/commit/4da37d3295fbd0fd28b903812ba48025e267260f
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/unions.cpp

  Log Message:
  -----------
  [clang][bytecode] Check for non-trivial default ctors in unions (#174745)

When activating a union member, none of the unions in that path can have
a non-trivial constructor. Unfortunately, this is something we have to
do when evaluating the bytecode, not while compiling it.


  Commit: 6ae4c0cddea4836bacbe5a938703053d3f2eb01e
      https://github.com/llvm/llvm-project/commit/6ae4c0cddea4836bacbe5a938703053d3f2eb01e
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Simplify testcases in zibi.ll. NFC.

Remove unneeded load instructions.


  Commit: e40e290f55fe5b64c406e9b03a73b190d855bfe3
      https://github.com/llvm/llvm-project/commit/e40e290f55fe5b64c406e9b03a73b190d855bfe3
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/docs/CodingGuidelines.rst
    M libcxx/include/__ios/fpos.h
    M libcxx/include/ios
    M libcxx/test/libcxx/input.output/iostreams.base/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++] Revert undesired `[[nodiscard]]` added to conversion functions (#173658)

Because
- no one should use them in explicit function call forms, and
- value-discarding casts to non-`void` are already diagnosed by Clang.

Also add explanation for this to `CodingGuidelines.rst`.


  Commit: fb7e80570d0beb2f6eb252e53aa0ba62d5c83ab0
      https://github.com/llvm/llvm-project/commit/fb7e80570d0beb2f6eb252e53aa0ba62d5c83ab0
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc] Add protected members to class template (#174883)

There were already tags for protected members in the Mustache template,
but didn't use the proper tags for the newer JSON scheme.


  Commit: 140e1de5fa70aa1b8a470dee2c2c5674fee6e99e
      https://github.com/llvm/llvm-project/commit/140e1de5fa70aa1b8a470dee2c2c5674fee6e99e
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-07 (Wed, 07 Jan 2026)

  Changed paths:
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/test/CodeGenCXX/riscv-mangle-rvv-fixed-vectors.cpp

  Log Message:
  -----------
  [RISCV] Fix name mangling for i64 vectors with riscv_rvv_vector_bits on RV32. (#174703)

On RV32, i64 elements have type 'long long'.

Fixes #174613.


  Commit: d25b9b224c60d20d947a366924605889794304c2
      https://github.com/llvm/llvm-project/commit/d25b9b224c60d20d947a366924605889794304c2
  Author: Lukas Sommer <lukas.sommer at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Linalg/Transforms/DropUnitDims.cpp
    M mlir/test/Dialect/Linalg/drop-unit-extent-dims.mlir

  Log Message:
  -----------
  [mlir][Linalg] Drop unit extent dim in non-trivial expressions (#173873)

The current implementation does not drop unit extent dimension if that
dimension is indexed by a non-trivial affine expression (i.e., not a
single dimension or constant 0) on the first application of the
transformation. However, it is possible to drop such dimensions if all
dimensions involved in the affine expression are going to be dropped. So
far, this required repeated application of the transformation, with the
changes in this PR, the dimensions are dropped with a single application
of the transformation.

Signed-off-by: Lukas Sommer <lukas.sommer at amd.com>


  Commit: 0b819a62be41c4acabc5f097c085512dc1827143
      https://github.com/llvm/llvm-project/commit/0b819a62be41c4acabc5f097c085512dc1827143
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfabs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vfneg-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vcopysign-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfabs-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfabs-vp.ll
    M llvm/test/CodeGen/RISCV/rvv/vfcopysign-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfneg-sdnode.ll
    M llvm/test/CodeGen/RISCV/rvv/vfneg-vp.ll

  Log Message:
  -----------
  [RISCV] Simplify the RUN lines for ZVFH/ZVFHMIN. NFC.

ZVFH and ZVFHMIN have the same code generation here.


  Commit: 39e9d57f458ca5eb17c0158b16deaa5cecf0fc50
      https://github.com/llvm/llvm-project/commit/39e9d57f458ca5eb17c0158b16deaa5cecf0fc50
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Indent body of let scopes in RISCVInstrInfoXAndes.td. NFC.

For more readable.


  Commit: bf0c216d99af4a9d3b8f14c6430561545528d929
      https://github.com/llvm/llvm-project/commit/bf0c216d99af4a9d3b8f14c6430561545528d929
  Author: Jim Lin <jim at andestech.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add missing comment at end of let scope in RISCVInstrInfoXAndes.td. NFC.


  Commit: 9ab9c1a1e2fb70eba5e45b2018e6f3d62e3f8a14
      https://github.com/llvm/llvm-project/commit/9ab9c1a1e2fb70eba5e45b2018e6f3d62e3f8a14
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVLoadStoreOptimizer.cpp
    A llvm/test/CodeGen/RISCV/xqcilsm-lwmi-swmi-multiple.mir
    M llvm/test/CodeGen/RISCV/xqcilsm-memset.ll

  Log Message:
  -----------
  [RISCV] Generate Xqcilsm multi-word load/store instructions for three or more words (#174789)

This patch adds support for generating the `Xqcilsm` multi-word
load/store instructions for three or more words. We add a new function
in the `RISCVLoadStoreOptimizer` pass for doing this separate from the
one that does load store pairing. The reason for this is that the
implementation currently only looks for consecutive loads and stores to
merge where as the pairing logic has no such restriction. We also only
traverse the basic block top down for now while looking for instructions
to merge.


  Commit: 4d2563a7f635c577e4072bf57d4d0a5d290361fd
      https://github.com/llvm/llvm-project/commit/4d2563a7f635c577e4072bf57d4d0a5d290361fd
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support bitwise operation for XLEN fixed vectors (#174598)

This doesn't require p extension since it's just normal scalar
instructions, but they're normally used with other p extension
instructions so I just put them together.


  Commit: 1fe27df5a9b9a61aabd4b78fedba9800aa7ad993
      https://github.com/llvm/llvm-project/commit/1fe27df5a9b9a61aabd4b78fedba9800aa7ad993
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support mul codegen for P extension (#174793)

P extension doesn't have native support of mul low instruction which
aligns llvm's mul operation semantic. We use vnsrl(pwmul(a, b), 0) in
rv32 to emulate mul low and ppaire(pmul_b00(a, b), pmul_b11(a, b)) since
pwmul and pnsrl is only available in rv32.


  Commit: f33b42dc4eefd90e9535ef86183bb50c8a739e44
      https://github.com/llvm/llvm-project/commit/f33b42dc4eefd90e9535ef86183bb50c8a739e44
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/test/Dialect/SCF/invalid.mlir

  Log Message:
  -----------
  [mlir][Interfaces] Simplify and improve errors of `RegionBranchOpInterface` verifier (#174805)

Simplify the `RegionBranchOpInterface` verifier by utilizing new API
functions such as `getAllRegionBranchPoints`.

Also improve the error message by using the same terms that are used in
the interface definition: `region branch point`, `region successor`,
`successor operand`, `successor input`.


  Commit: 16447cc4a8335407c2b71e050e7ebbecf664898e
      https://github.com/llvm/llvm-project/commit/16447cc4a8335407c2b71e050e7ebbecf664898e
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [NFC][SPIRV] Small changes for SPIRVPushConstantAccess (#174734)

This patch consists of 3 NFC changes:
* Do not always report _changed_, report it only when something was
modified
* Replace loop with `replaceUsesOfWith`
* Instead of using a temporary vector, use `make_early_inc_range()` to
pre-increment the iterator before erasing the current element.


  Commit: 213e2518524aa36b3f71942d7cc1b72d740b3fee
      https://github.com/llvm/llvm-project/commit/213e2518524aa36b3f71942d7cc1b72d740b3fee
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support div/rem codegen for P extension (#174801)

P extension doesn't have native instruction support for div/rem, so we
need to scalarize the code.


  Commit: fdc393f9ee12c4069f9f04374e62f5c36a617298
      https://github.com/llvm/llvm-project/commit/fdc393f9ee12c4069f9f04374e62f5c36a617298
  Author: YunQiang Su <yunqiang at isrc.iscas.ac.cn>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
    M llvm/test/CodeGen/Mips/divrem-inline-asm.ll
    M llvm/test/MC/Mips/macro-ddiv.s
    M llvm/test/MC/Mips/macro-ddivu.s
    M llvm/test/MC/Mips/macro-div.s
    M llvm/test/MC/Mips/macro-divu.s
    M llvm/test/MC/Mips/macro-drem.s
    M llvm/test/MC/Mips/macro-dremu.s
    M llvm/test/MC/Mips/macro-rem.s
    M llvm/test/MC/Mips/macro-remu.s

  Log Message:
  -----------
  MIPS: expandDivRem add a NOP after BNE (#174908)

If we compile a C code or IR file directly, the delay slot of BNE emit
by us won't be filled with a NOP.

We should fill it ourself, otherwise, the break instruction may be used
as the delay slot.


  Commit: 8fc3f6ddb8bae266dc9bef2d19a4fb47a5b92c5b
      https://github.com/llvm/llvm-project/commit/8fc3f6ddb8bae266dc9bef2d19a4fb47a5b92c5b
  Author: Haibo Jiang <jianghaibo9 at huawei.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
    M bolt/runtime/instr.cpp

  Log Message:
  -----------
  [BOLT] Add option instrumentation-max-size for bump allocator (#174716)

While the current max memory size is sufficient for most binaries, a few
binaries may encouter insufficient allocated memory space.

Allow specify the max memory size of the instrumentation bump allocator.


  Commit: 6e751b05954b290c8ea7b6eb613548f6e7698db6
      https://github.com/llvm/llvm-project/commit/6e751b05954b290c8ea7b6eb613548f6e7698db6
  Author: CarolineConcatto <caroline.concatto at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/arm_sve.td
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve_rintx.c
    M clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_LP_sve2p2_OR_sme2p2_RP___sme_AND_LP_sve2p2_OR_sme2p2_RP.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
    M llvm/lib/Target/AArch64/SVEInstrFormats.td
    A llvm/test/CodeGen/AArch64/sve2p2-intrinsics-fp-arith.ll

  Log Message:
  -----------
  [Clang][LLVM][AArch64]Add support for svrint{32|64}{z|x} intrinsics (#169661)

This patch add supports in Clang for these assembly intrinsics:

FRINT32X
FRINT32Z
FRINT64X
FRINT64Z

By adding support for these intrinsics:

// Variant is available for _f64
svfloat32_t svrint32x[_f32]_z(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint32x[_f32]_x(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint32x[_f32]_m(svfloat32_t inactive, svbool_t pg,
svfloat32_t zn);

// Variant is available for _f64
svfloat32_t svrint32z[_f32]_z(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint32z[_f32]_x(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint32z[_f32]_m(svfloat32_t inactive, svbool_t pg,
svfloat32_t zn);

// Variant is available for _f64
svfloat32_t svrint64x[_f32]_z(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint64x[_f32]_x(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint64x[_f32]_m(svfloat32_t inactive, svbool_t pg,
svfloat32_t zn);

// Variant is available for _f64
svfloat32_t svrint64z[_f32]_z(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint64z[_f32]_x(svbool_t pg, svfloat32_t zn); // Variant
is available for _f64
svfloat32_t svrint64z[_f32]_m(svfloat32_t inactive, svbool_t pg,
svfloat32_t zn);
```
according to the ACLE[1]

[1]https://github.com/ARM-software/acle/pull/412


  Commit: ebae68849258a91e98434d46e52ba1fa15704578
      https://github.com/llvm/llvm-project/commit/ebae68849258a91e98434d46e52ba1fa15704578
  Author: David Green <david.green at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/BackendUtil.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    A flang/test/Driver/veclib-frem.f90
    M llvm/include/llvm/Frontend/Driver/CodeGenOptions.h
    M llvm/lib/Frontend/Driver/CodeGenOptions.cpp

  Log Message:
  -----------
  [Flang][VecLib] Ensure TargetMachine->VecLib is set for flang invocations. (#174209)

This ensures that both the midend and backend see consistent values for
VecLib, so that for example frem can be selected correctly.

The test involves running the front-end, midend (to vectorize) and
backend to prove it can lower the vector frem call.

Fixes #172483


  Commit: 3134b9fbc5c1ec9a653684228e1ca547b3a29a77
      https://github.com/llvm/llvm-project/commit/3134b9fbc5c1ec9a653684228e1ca547b3a29a77
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Fix nullptr check when creating enumerator decls

There is no point in checking the `enumerator_decl` because it was just created with `CreateDeserialized` above (which would only fail if allocation failed, but we don't do those checks usually). We dereference it unconditionally above this check anyway.

What this intended to check was probably `enum_decl`, because we derefernce it for the first time right after the check. This patch changes the nullptr check to `enum_decl`.

No test coverage because this should be pretty uncontroversial.

Note, I just saw this while auditing the code, I didn't actually run into a crash.


  Commit: a8f51a3ad637622af4e82cb228c11ad9a07b2ddc
      https://github.com/llvm/llvm-project/commit/a8f51a3ad637622af4e82cb228c11ad9a07b2ddc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp

  Log Message:
  -----------
  ValueTracking: Use fcmp parent function to query denormal mode (#174929)

Avoid depending on the SimplifyQuery's context instruction,
which may be null to query the function context to use for the
denormal mode. This avoids crashes in future patches.


  Commit: 78f1de803afa78d430a8904f960834a5f182017c
      https://github.com/llvm/llvm-project/commit/78f1de803afa78d430a8904f960834a5f182017c
  Author: Ramkumar Ramachandra <ramkumar.ramachandra at codasip.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Strip iterator-invalidation guard in findHeaderMask (NFC) (#174930)

It is unnecessary, as the users are never modified.


  Commit: 1ca6d27d07388cd7fc226ccff3d336cca19fa995
      https://github.com/llvm/llvm-project/commit/1ca6d27d07388cd7fc226ccff3d336cca19fa995
  Author: Dhruv Srivastava <dhruv.srivastava at ibm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A lldb/source/Plugins/ObjectContainer/Big-Archive/CMakeLists.txt
    A lldb/source/Plugins/ObjectContainer/Big-Archive/ObjectContainerBigArchive.cpp
    A lldb/source/Plugins/ObjectContainer/Big-Archive/ObjectContainerBigArchive.h
    M lldb/source/Plugins/ObjectContainer/CMakeLists.txt

  Log Message:
  -----------
  [lldb][AIX] Base files for ObjectContainerBigArchive (#173218)

This PR is in reference to porting LLDB on AIX. Ref discusssions: [llvm
discourse](https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640) and
https://github.com/llvm/llvm-project/issues/101657.
Complete changes together in this draft:
- https://github.com/llvm/llvm-project/pull/102601

**Description:**
Adding skeleton with base files for ObjectContainer archive for AIX.

Ref Doc: [AIX ar file
format-big](https://www.ibm.com/docs/en/aix/7.3.0?topic=formats-ar-file-format-big)


  Commit: efe6aaeeed0fcfcc101b3df61a041a54a3722374
      https://github.com/llvm/llvm-project/commit/efe6aaeeed0fcfcc101b3df61a041a54a3722374
  Author: Hemang Gadhavi <hemang.gadhavi at ibm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Process/AIX/CMakeLists.txt
    A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX_ppc64.cpp
    A lldb/source/Plugins/Process/AIX/NativeRegisterContextAIX_ppc64.h
    M lldb/source/Plugins/Process/Utility/RegisterInfos_ppc64.h
    M lldb/source/Plugins/Process/Utility/lldb-ppc64-register-enums.h
    M lldb/source/Utility/PPC64_DWARF_Registers.h

  Log Message:
  -----------
  [lldb][AIX] Added base file for AIX Register Context PPC64 (#173239)

This PR is in reference to porting LLDB on AIX. Link to discussions on
llvm discourse and github:
1. https://discourse.llvm.org/t/port-lldb-to-ibm-aix/80640
2. https://github.com/llvm/llvm-project/issues/101657
The complete changes for porting are present in this draft PR:
https://github.com/llvm/llvm-project/pull/102601


- Added skeleton for AIX Registercontext PPC64 file. (The implementation
will be added later.)
(Ref: Registers details
**https://www.ibm.com/docs/en/aix/7.3.0?topic=convention-linkage-overview**


  Commit: 2573c0bceef9e519a19aeb5381b72b5df38924d5
      https://github.com/llvm/llvm-project/commit/2573c0bceef9e519a19aeb5381b72b5df38924d5
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A lldb/tools/lldb-dap/extension/.prettierignore
    A lldb/tools/lldb-dap/extension/.vscode-test.mjs
    M lldb/tools/lldb-dap/extension/package.json
    M lldb/tools/lldb-dap/extension/src/utils.ts
    A lldb/tools/lldb-dap/extension/test/unit/expandUser.test.ts
    M lldb/tools/lldb-dap/extension/tsconfig.json

  Log Message:
  -----------
  [lldb-dap][ext] Setup tests for lldb-dap extension (#174641)

This add the basic unit test support for the dap-extension. 
It also 
- adds a .prettierignore file to exclude folder not to format.
- Includes the test folder in when formatting.

uses `vscode-test` from
https://code.visualstudio.com/api/working-with-extensions/testing-extension#quick-setup-the-test-cli
Follow up from
https://github.com/llvm/llvm-project/pull/162635#discussion_r2486112688


  Commit: 6c2c0b9da2b96e06048d52b4308636e667e08cf2
      https://github.com/llvm/llvm-project/commit/6c2c0b9da2b96e06048d52b4308636e667e08cf2
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/__numeric/midpoint.h
    M libcxx/test/libcxx/numerics/nodiscard.verify.cpp
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.verify.cpp

  Log Message:
  -----------
  [libc++][numeric]  Modernized `std::midpoint` (#174596)

- Some improvements to `std::midpoint` implementation: replaces
`enable_if` with concepts.

https://wg21.link/numeric.ops.midpoint

Towards #172124

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>


  Commit: e593dbc184a176bb604d68ccf6f730170840072d
      https://github.com/llvm/llvm-project/commit/e593dbc184a176bb604d68ccf6f730170840072d
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/__memory/addressof.h
    M libcxx/include/__memory/allocator.h
    M libcxx/include/__memory/allocator_traits.h
    M libcxx/include/__memory/is_sufficiently_aligned.h
    M libcxx/include/__memory/raw_storage_iterator.h
    M libcxx/test/libcxx/diagnostics/memory.nodiscard.verify.cpp
    R libcxx/test/std/utilities/memory/allocator.traits/allocator.traits.members/allocate.verify.cpp

  Log Message:
  -----------
  [libc++][memory] Applied `[[nodiscard]]` to more functions (#172131)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/allocator.traits
- https://wg21.link/specialized.addressof
- https://wg21.link/ptr.align
- https://timsong-cpp.github.io/cppwp/n4659/depr.default.allocator
- https://timsong-cpp.github.io/cppwp/n4659/depr.storage.iterator

Towards #172124


  Commit: 06c6a5020fa00bbedc38e07c91340f03bbaa2880
      https://github.com/llvm/llvm-project/commit/06c6a5020fa00bbedc38e07c91340f03bbaa2880
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/__algorithm/ranges_search_n.h
    M libcxx/include/__algorithm/search_n.h
    M libcxx/test/benchmarks/algorithms/nonmodifying/search_n.bench.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/ranges.search_n.pass.cpp
    M libcxx/test/std/algorithms/alg.nonmodifying/alg.search/search_n.pass.cpp

  Log Message:
  -----------
  [libc++] Optimize search_n (#171389)

This changes the algorithm to more efficiently skip ranges which cannot
match the needle for random access iterators. Specifically, we now
search for a mismatching element from the back of the subrange we want
to check. When a mismatch occurs we can directly start one after the
mismatched element, since there cannot possibly be a matching subrange
starting between the start of the subrange we checked and the mismatched
element (since all elements have to be equal). The algorithm also
remembers the subrange which was already match as being equal and
doesn't try to compare it a second time, reducing the time spent in case
of a match.

```
Benchmark                                                       old             new    Difference    % Difference
---------------------------------------------------  --------------  --------------  ------------  --------------
rng::search_n(deque<int>)_(no_match)/1000                    458.33           14.22       -444.11         -96.90%
rng::search_n(deque<int>)_(no_match)/1024                    456.17           13.89       -442.28         -96.95%
rng::search_n(deque<int>)_(no_match)/1048576              453420.38           17.69    -453402.69        -100.00%
rng::search_n(deque<int>)_(no_match)/8192                   3566.08           17.60      -3548.49         -99.51%
rng::search_n(deque<int>,_pred)_(no_match)/1000              597.88           15.25       -582.63         -97.45%
rng::search_n(deque<int>,_pred)_(no_match)/1024              608.42           15.39       -593.03         -97.47%
rng::search_n(deque<int>,_pred)_(no_match)/1048576        594533.99           18.91    -594515.08        -100.00%
rng::search_n(deque<int>,_pred)_(no_match)/8192             4670.23           18.88      -4651.35         -99.60%
rng::search_n(list<int>)_(no_match)/1000                     733.72          730.22         -3.50          -0.48%
rng::search_n(list<int>)_(no_match)/1024                     759.93          753.10         -6.84          -0.90%
rng::search_n(list<int>)_(no_match)/1048576               833841.54       813483.75     -20357.79          -2.44%
rng::search_n(list<int>)_(no_match)/8192                    8352.18         8417.31         65.14           0.78%
rng::search_n(list<int>,_pred)_(no_match)/1000               776.79          789.72         12.93           1.66%
rng::search_n(list<int>,_pred)_(no_match)/1024               788.42          806.70         18.28           2.32%
rng::search_n(list<int>,_pred)_(no_match)/1048576         955536.40       982976.81      27440.41           2.87%
rng::search_n(list<int>,_pred)_(no_match)/8192              8874.02         8915.18         41.16           0.46%
rng::search_n(vector<int>)_(no_match)/1000                   212.69            3.79       -208.90         -98.22%
rng::search_n(vector<int>)_(no_match)/1024                   219.67            3.70       -215.96         -98.31%
rng::search_n(vector<int>)_(no_match)/1048576             209622.54            3.67    -209618.87        -100.00%
rng::search_n(vector<int>)_(no_match)/8192                  1643.80            3.83      -1639.98         -99.77%
rng::search_n(vector<int>,_pred)_(no_match)/1000             461.93            7.55       -454.38         -98.36%
rng::search_n(vector<int>,_pred)_(no_match)/1024             472.43            7.74       -464.69         -98.36%
rng::search_n(vector<int>,_pred)_(no_match)/1048576       546180.29            8.71    -546171.58        -100.00%
rng::search_n(vector<int>,_pred)_(no_match)/8192            3786.26            7.88      -3778.38         -99.79%
std::search_n(deque<int>)_(no_match)/1000                    455.53           14.19       -441.34         -96.88%
std::search_n(deque<int>)_(no_match)/1024                    459.79           13.98       -445.81         -96.96%
std::search_n(deque<int>)_(no_match)/1048576              449780.32           17.99    -449762.33        -100.00%
std::search_n(deque<int>)_(no_match)/8192                   3508.55           17.97      -3490.58         -99.49%
std::search_n(deque<int>,_pred)_(no_match)/1000              571.53           17.16       -554.37         -97.00%
std::search_n(deque<int>,_pred)_(no_match)/1024              584.43           17.09       -567.34         -97.08%
std::search_n(deque<int>,_pred)_(no_match)/1048576        581418.31           19.16    -581399.15        -100.00%
std::search_n(deque<int>,_pred)_(no_match)/8192             4661.97           19.36      -4642.61         -99.58%
std::search_n(list<int>)_(no_match)/1000                     722.45          710.39        -12.06          -1.67%
std::search_n(list<int>)_(no_match)/1024                     748.50          727.08        -21.42          -2.86%
std::search_n(list<int>)_(no_match)/1048576               821655.28       784520.12     -37135.16          -4.52%
std::search_n(list<int>)_(no_match)/8192                    7941.73         8002.05         60.32           0.76%
std::search_n(list<int>,_pred)_(no_match)/1000               766.59          786.31         19.72           2.57%
std::search_n(list<int>,_pred)_(no_match)/1024               785.92          804.43         18.51           2.35%
std::search_n(list<int>,_pred)_(no_match)/1048576         948252.76       969125.41      20872.65           2.20%
std::search_n(list<int>,_pred)_(no_match)/8192              8658.99         8825.71        166.72           1.93%
std::search_n(vector<int>)_(no_match)/1000                   210.36            3.47       -206.89         -98.35%
std::search_n(vector<int>)_(no_match)/1024                   217.60            4.13       -213.47         -98.10%
std::search_n(vector<int>)_(no_match)/1048576             209386.43            3.51    -209382.92        -100.00%
std::search_n(vector<int>)_(no_match)/8192                  1643.79            3.50      -1640.29         -99.79%
std::search_n(vector<int>,_pred)_(no_match)/1000             460.88            5.44       -455.45         -98.82%
std::search_n(vector<int>,_pred)_(no_match)/1024             475.36            5.43       -469.93         -98.86%
std::search_n(vector<int>,_pred)_(no_match)/1048576       682722.75            7.15    -682715.60        -100.00%
std::search_n(vector<int>,_pred)_(no_match)/8192            3779.95            5.43      -3774.52         -99.86%
Geomean                                                     4956.15           87.96      -4868.19         -98.23%
```

Fixes #129327


  Commit: 15564a8394e10cff498895af6375b3dbeda93c48
      https://github.com/llvm/llvm-project/commit/15564a8394e10cff498895af6375b3dbeda93c48
  Author: yingopq <115543042+yingopq at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Mips/Mips64InstrInfo.td
    A llvm/test/CodeGen/Mips/llvm-ir/select-globaladdr.ll

  Log Message:
  -----------
  [Mips] Add MipsPat `(MipsGPRel tglobaladdr:$in)` to select MipsISD::GPRel TargetGlobalAddress (#165531)

The original logic:
```
SelectionDAG has 17 nodes:
  t0: ch,glue = EntryToken
          t2: i64,ch = CopyFromReg t0, Register:i64 %0
        t11: i32 = truncate t2
      t14: i32 = and t11, Constant:i32<1>
        t20: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str.1> 0 [TF=3]
      t21: i64 = add Register:i64 $gp_64, t20
        t16: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str> 0 [TF=3]
      t18: i64 = add Register:i64 $gp_64, t16
    t7: i64 = select t14, t21, t18
```

When SelectionDAG process visitSELECT, would fold select(cond,
binop(x, y), binop(x, z)) to binop(x, select(cond, y, z)).
As follows:
```
SelectionDAG has 16 nodes:
  t0: ch,glue = EntryToken
            t2: i64,ch = CopyFromReg t0, Register:i64 %0
          t11: i32 = truncate t2
        t14: i32 = and t11, Constant:i32<1>
        t20: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str.1> 0 [TF=3]
        t16: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str> 0 [TF=3]
      t22: i64 = select t14, t20, t16
    t23: i64 = add Register:i64 $gp_64, t22
```

Therefore, the original MipsPat `add GPR64:$gp, (MipsGPRel
tglobaladdr:$in)` is no longer available. And there would be an assert:
```
ISEL: Starting selection on root node: t20: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str.1> 0 [TF=3]
ISEL: Starting pattern match
  Initial Opcode index to 0
  Match failed at index 0
LLVM ERROR: Cannot select: t20: i64 = MipsISD::GPRel TargetGlobalAddress:i64<ptr @.str.1> 0 [TF=3]
```

So we add a new MipsPat `def : MipsPat<(MipsGPRel tglobaladdr:$in),
              (DADDiu ZERO_64, tglobaladdr:$in)>, ISA_MIPS3, ABI_N64;`
to parse MipsISD::GPRel TargetGlobalAddress.


Fix #142060.


  Commit: 3b68fd58b01b84ba0f8335a55eeba9faeca98d67
      https://github.com/llvm/llvm-project/commit/3b68fd58b01b84ba0f8335a55eeba9faeca98d67
  Author: Volodymyr Turanskyy <vturanskyy at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [compiler-rt] Add supported Arm arches for the baremetal profile lib (#172984)

Following https://github.com/llvm/llvm-project/pull/167998 add the list
of supported baremetal Arm architectures to be able to build compiler_rt
profile library for all variants in Arm Toolchain for Embedded, the list
comes from architectures used in multilib configuration files in
https://github.com/arm/arm-toolchain/tree/arm-software/arm-software/embedded/arm-multilib/json/variants


  Commit: d60601bbf5f45d5170bbffc1051abef5e6c5665c
      https://github.com/llvm/llvm-project/commit/d60601bbf5f45d5170bbffc1051abef5e6c5665c
  Author: Amina Chabane <amina.chabane at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/combine-sdiv.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    A llvm/test/CodeGen/AArch64/neon-lowhalf128-optimisation.ll
    M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
    M llvm/test/CodeGen/AArch64/srem-seteq-illegal-types.ll

  Log Message:
  -----------
  [AArch64] Fold scalar-to-vector shuffles into DUP/FMOV (#166962)

Previously, LLVM emitted inefficient instructions when the low lanes of
a 128-bit vector were set to a scalar and high bits set to 0. This patch
utilises instructions fmov/dup to set the low lanes to the necessary
scalar and zeroes the high bits of the register.

E.g. in its worse case,
```
int8x16_t foo_s8(int8_t a) {
    int8x16_t b = vcombine_s8(vdup_n_s8(a), vdup_n_s8(0));
    return b;
}
```
LLVM would emit:

```
foo_s8(signed char):
        movi    v0.2d, #0000000000000000
        mov     v0.b[0], w0
        mov     v0.b[1], w0
        mov     v0.b[2], w0
        mov     v0.b[3], w0
        mov     v0.b[4], w0
        mov     v0.b[5], w0
        mov     v0.b[6], w0
        mov     v0.b[7], w0
        ret
```

This patch now emits:
- <2 x i64> from i64 -> fmov d0, x0

- <4 x i32> from i32 -> dup v0.2s, w0

- <8 x i16> from i16 -> dup v0.4h, w0

- <16 x i8> from i8 -> dup v0.8b, w0


  Commit: f525ac8be200c118a75579cbf5ad74ee3747ce83
      https://github.com/llvm/llvm-project/commit/f525ac8be200c118a75579cbf5ad74ee3747ce83
  Author: Juan Manuel Martinez Caamaño <jmartinezcaamao at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [NFC][SPIRV] Avoid temporary SmallVector by using make_early_inc_range (#174748)

Follow-up of https://github.com/llvm/llvm-project/pull/174734

Merge the 2 loops and avoid the temporary `SmallVector` by using
`make_early_inc_range`.


  Commit: 80ae94c63d681a029d211d0670f672441b4c3077
      https://github.com/llvm/llvm-project/commit/80ae94c63d681a029d211d0670f672441b4c3077
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M bolt/README.md

  Log Message:
  -----------
  [BOLT][Docs] Add arm/large-bolt-tests to README (#174727)

On AArch64, we recommend to also test against binaries hosted at:
- https://github.com/arm/large-bolt-tests


  Commit: c4dc21ecc1e92bd5b04c8dcec8d3d3696889423a
      https://github.com/llvm/llvm-project/commit/c4dc21ecc1e92bd5b04c8dcec8d3d3696889423a
  Author: CarvedCoder <shreyansbehera84 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/test/Driver/module-fgen-reduced-bmi.cppm
    M clang/test/Driver/module-output.cppm

  Log Message:
  -----------
  [Clang][Modules] Emit C++20 BMIs to working directory with -fmodule-output (#174560)

Close #173689.

When -fmodule-output is specified without an explicit path, Clang
currently emits the generated .pcm next to the source file. This
contradicts the documentation and breaks out-of-tree builds.

This patch updates the fallback behavior to emit the BMI in the working
directory, instead of the source file directory.

Driver tests are updated accordingly. Explicit -fmodule-output=PATH
behavior is unchanged.


  Commit: 3665de766ff64a02d152e34f38aa396dcc43a054
      https://github.com/llvm/llvm-project/commit/3665de766ff64a02d152e34f38aa396dcc43a054
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/test/CodeGen/AArch64/arm64-int-neon.ll
    M llvm/test/CodeGen/AArch64/arm64-neon-v8.1a.ll
    M llvm/test/CodeGen/AArch64/arm64-vmul.ll

  Log Message:
  -----------
  [AArch64] Add lowering for NEON rounding multiple (accumulate) intrinsics (#172851)

Extends #161840 to add lowering with bitcasts for sqdmulh, sqrdmulh,
sqrdmlah & sqrdmlsh intrinsics.


  Commit: a470e708be32ded25d704ef4dedf0b5d43062f6b
      https://github.com/llvm/llvm-project/commit/a470e708be32ded25d704ef4dedf0b5d43062f6b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.cpp
    M llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
    M llvm/test/CodeGen/AMDGPU/fsqrt.f32.ll

  Log Message:
  -----------
  AMDGPU: Teach lowering that sqrt never returns subnormal (#174838)


  Commit: 1af1cc21c8489bd9c2464988fd830b614902e16c
      https://github.com/llvm/llvm-project/commit/1af1cc21c8489bd9c2464988fd830b614902e16c
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/Transforms/Utils/CodeExtractor.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOps.td
    M mlir/include/mlir/Dialect/OpenMP/OpenMPOpsInterfaces.td
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-taskloop-no-context-struct.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Translation support for taskloop construct (#174386)

This PR replaces #166903

This implements translation for taskloop, along with DSA clauses. Other
clauses will follow immediately after this is merged.

This patch was collaborative work by myself, @kaviya2510, and
@Stylie777. I’ve left the commits unsquashed to make authorship clear.
My only changes to other author’s commits are to rebase and run
clang-format.

The taskloop implementation in the runtime works roughly like this: if
the number of loop iterations to perform are more than some threshold,
the current task is duplicated and both resulting tasks gets half of the
loop range. This continues recursively until each task has a small
enough loop range to run itself in a single thread.

This leads to two implementation complexities:
- The runtime needs to be able to update the loop bounds used when
executing the loop inside of the task. This has been implemented by
forcing them to always have a fixed location inside of the structure
produced when outlining the task.
- When a task is duplicated, all data stored for the task’s
(first)private variables needs to also be duplicated and appropriate
constructors run. This is handled by a task duplication function invoked
by the runtime.

With regards to testing, most existing tests in the gfortran and fujitsu
test suites require the reduction clause (not part of OpenMP 4.5). I
wrote some tests of my own and was satisfied that it seems to be
working.

Co-authored-by: Kaviya Rajendiran <kaviyara2000 at gmail.com>
Co-authored-by: Jack Styles <jack.styles at arm.com>

---------

Co-authored-by: Kaviya Rajendiran <kaviyara2000 at gmail.com>
Co-authored-by: Jack Styles <jack.styles at arm.com>


  Commit: 13fb3f3b194c3d7782dc5a3861581b776a12e704
      https://github.com/llvm/llvm-project/commit/13fb3f3b194c3d7782dc5a3861581b776a12e704
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M offload/test/offloading/fortran/dump_map_tables.f90
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/free_host_ptr.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M offload/test/sanitizer/kernel_crash.c
    M offload/test/sanitizer/kernel_crash_async.c
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_crash_single.c
    M offload/test/sanitizer/kernel_trap.c
    M offload/test/sanitizer/kernel_trap_async.c
    M offload/test/sanitizer/kernel_trap_many.c

  Log Message:
  -----------
  [Offload] Fix line numbers after #174804 (#174932)

The changes in line numbers caused a few CHECK macros to now fail. This
is fixed by this PR.

Build w/ breakages:
https://lab.llvm.org/staging/#/builders/105/builds/39748


  Commit: d52507d94f8d0d3682657f8a131327049e65be7c
      https://github.com/llvm/llvm-project/commit/d52507d94f8d0d3682657f8a131327049e65be7c
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/__locale
    M libcxx/lib/abi/arm64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/i686-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/powerpc64-ibm-aix.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-apple-darwin.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-linux-android21.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-freebsd.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.exceptions.nonew.abilist
    M libcxx/lib/abi/x86_64-unknown-linux-gnu.libcxxabi.v1.stable.noexceptions.nonew.abilist
    M libcxx/src/locale.cpp

  Log Message:
  -----------
  [libc++] Remove numpunct_byname::__init (#173283)

`numpunct_byname::__init` is only used inside the dylib, so we can
remove it. To do that we can move the code into one of the constructors
and delegate the other.


  Commit: 2f2fe489d76007a8c56fb02f081915737ae6a0ed
      https://github.com/llvm/llvm-project/commit/2f2fe489d76007a8c56fb02f081915737ae6a0ed
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/__format/extended_grapheme_cluster_table.h
    M libcxx/include/__format/indic_conjunct_break_table.h
    M libcxx/include/__format/width_estimation_table.h
    M libcxx/utils/generate_extended_grapheme_cluster_table.py
    M libcxx/utils/generate_indic_conjunct_break_table.py
    M libcxx/utils/generate_width_estimation_table.py

  Log Message:
  -----------
  [libc++] Avoid ranges::upper_bound inside <format> (#173150)

This reduces the time to include `<vector>` from 565ms to 452ms on my
machine.


  Commit: f9581d6dd5f8a70968ce86bb7ccc486d848b32e9
      https://github.com/llvm/llvm-project/commit/f9581d6dd5f8a70968ce86bb7ccc486d848b32e9
  Author: Thibault Monnier <thibaultmonni at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Lex/Lexer.cpp

  Log Message:
  -----------
  Revert "[Clang] [Lexer] Detect SSE4.2 availability at runtime in fastParseASCIIIdentifier" (#174946)

Reverts llvm/llvm-project#171914 because of compilation failures
reported.


  Commit: 5dfa5387b115d9c848a99b96cb610ee9a4242fdf
      https://github.com/llvm/llvm-project/commit/5dfa5387b115d9c848a99b96cb610ee9a4242fdf
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add implicit tracking for STL functions (#170005)

Add support for tracking STL container methods and free functions in the
lifetime safety analysis.

- Added `VisitExprWithCleanups` to the `FactsGenerator` to properly
handle expressions with cleanup code
- Moved `shouldTrackImplicitObjectArg` and `shouldTrackFirstArgument`
from `CheckExprLifetime.cpp` to `LifetimeAnnotations.h/cpp` to make them
available to the lifetime safety analysis
- Enhanced the lifetime analysis to track STL container methods that
return pointers or references dependent on the container's lifetime
(e.g., `begin()`, `data()`, `c_str()`)
- Added support for tracking free functions like `std::begin`,
`std::data`, and `std::any_cast` that return pointers or references
dependent on their arguments

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


  Commit: c63d2953a08b9320990d3e521359556920dfc627
      https://github.com/llvm/llvm-project/commit/c63d2953a08b9320990d3e521359556920dfc627
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/LegalizeFloatTypes.cpp
    M llvm/lib/Target/X86/GISel/X86LegalizerInfo.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/LoongArch/lrint-conv.ll
    M llvm/test/CodeGen/Mips/llrint-conv.ll
    M llvm/test/CodeGen/Mips/lrint-conv.ll
    M llvm/test/CodeGen/RISCV/lrint-conv.ll
    M llvm/test/CodeGen/X86/llrint-conv.ll
    M llvm/test/CodeGen/X86/llround-conv.ll
    M llvm/test/CodeGen/X86/lrint-conv-i32.ll
    M llvm/test/CodeGen/X86/lrint-conv-i64.ll
    M llvm/test/CodeGen/X86/lround-conv-i32.ll
    M llvm/test/CodeGen/X86/lround-conv-i64.ll

  Log Message:
  -----------
  [SelectionDAG,GISel] Add `f16` soft promotion for `lrint`, `lround`, `llrint`, and `llround` (#152684)

On platforms that soft promote `half`, using `lrint` intrinsics crashes
with the following:

    SoftPromoteHalfOperand Op #0: t5: i32 = lrint t4

    LLVM ERROR: Do not know how to soft promote this operator's operand!
PLEASE submit a bug report to
https://github.com/llvm/llvm-project/issues/ and include the crash
backtrace.
    Stack dump:
0. Program arguments:
/Users/tmgross/Documents/projects/llvm/llvm-build/bin/llc
-mtriple=riscv32
    1.      Running pass 'Function Pass Manager' on module '<stdin>'.
2. Running pass 'RISC-V DAG->DAG Pattern Instruction Selection' on
function '@test_lrint_ixx_f16'

Resolve this by adding a soft promotion. GISel is included since tests
cover both.

Fixes crash tests added in
https://github.com/llvm/llvm-project/pull/152662 for targets that use
`softPromoteHalfType`.

Co-authored-by: Folkert de Vries <folkert at folkertdev.nl>


  Commit: d6c22d4b0e2e48b2848ee025e7d252c5b26cfb0b
      https://github.com/llvm/llvm-project/commit/d6c22d4b0e2e48b2848ee025e7d252c5b26cfb0b
  Author: Gergely Bálint <gergely.balint at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M bolt/lib/Passes/Instrumentation.cpp
    A bolt/test/runtime/AArch64/instrumentation-ind-call-bti.c

  Log Message:
  -----------
  [BOLT][BTI] Disallow instrumenting BTI binaries (#174936)

Until instrumentation support is added, the feature should be
disabled for BTI binaries. An error message is added to explain
the situation.
Meanwhile, users can choose sampling-based profiling methods.

Added a TODO comment explaining missing steps.


  Commit: 94a95659c2f6b88b72d59fd0fba2000ba8b1fee1
      https://github.com/llvm/llvm-project/commit/94a95659c2f6b88b72d59fd0fba2000ba8b1fee1
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/Rewrite.cpp
    M mlir/test/python/rewrite.py

  Log Message:
  -----------
  [MLIR][Python] Add GreedyRewriteDriverConfig parameter to apply_patterns_and_fold_greedily (#174913)

We already have `GreedyRewriteDriverConfig` on the Python side, but it
hasn’t yet been exposed as a parameter of
`apply_patterns_and_fold_greedily`. This PR does that.

Before:
```python
def apply_patterns_and_fold_greedily(module: ir.Module, set: FrozenRewritePatternSet) -> None
def apply_patterns_and_fold_greedily(op: ir._OperationBase, set: FrozenRewritePatternSet) -> None
```

After:
```python
def apply_patterns_and_fold_greedily(module: ir.Module, set: FrozenRewritePatternSet,
                                     config: GreedyRewriteDriverConfig | None = None) -> None
def apply_patterns_and_fold_greedily(op: ir._OperationBase, set: FrozenRewritePatternSet,
                                     config: GreedyRewriteDriverConfig | None = None) -> None
```

Note this PR is adapted from
https://github.com/llvm/llvm-project/pull/174785 but using
`std::optional` instead of `nb::object`. Note, this required refactoring
`PyGreedyRewriteDriverConfig` to have a `std::shared_ptr` so that it
could support a copy-ctor.

Co-authored-by: PragmaTwice <twice at apache.org>


  Commit: 90b8a481e4827398cba2a2047939bbbb70e8f17e
      https://github.com/llvm/llvm-project/commit/90b8a481e4827398cba2a2047939bbbb70e8f17e
  Author: Manuel Carrasco <Manuel.Carrasco at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVRegularizer.cpp
    A llvm/test/CodeGen/SPIRV/icmp-i1.ll

  Log Message:
  -----------
  [SPIRV] Support additional comparison predicates for i1 types (#174585)

Previously, the SPIRV BE only handled equality and inequality
comparisons (ICMP_EQ, ICMP_NE) for i1 types using logical operations
(OpLogicalEqual, OpLogicalNotEqual). Other comparison predicates
(signed/unsigned less than, greater than, etc.) triggered an unreachable
assertion.

This patch extends the support for the missing predicates. The BE
considers i1 values as booleans and in SPIR-V only logical operations
can work on them. This patch lowers the missing predicates into
supported logical operations.

The lowering has been validated with instcombine to avoid introducing an
unsound transformation (using the new test case).


  Commit: e471478badc5ec01eed4ba2b76cac21a97d5bc37
      https://github.com/llvm/llvm-project/commit/e471478badc5ec01eed4ba2b76cac21a97d5bc37
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M cross-project-tests/lit.cfg.py

  Log Message:
  -----------
  [cross-project-tests][lit] Account for Apple LLDB version in compatibility check

The LLVM release version and Apple LLDB version follow slightly different numbering scheme. Make sure we set the minimum required LLDB version appropriately.

Also refactors the `apple-lldb-pre-1000` feature check to use the same `get_lldb_version_string` method.

Currently this was causing the LLDB LLVM formatters to be skipped on our public macOS CI.


  Commit: 20d0ec849804218d75647aeafbe23f8a02a83b56
      https://github.com/llvm/llvm-project/commit/20d0ec849804218d75647aeafbe23f8a02a83b56
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M .github/workflows/docs.yml
    M clang/utils/analyzer/entrypoint.py
    M flang-rt/README.md
    M flang/tools/f18/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt
    M openmp/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode (#152189)

The build mode has been deprecated in #136314. According to the
deprecation message, it was supposed to be removed in the LLVM 21
release. Each build mode increased the maintanance overhead when
failing, such as in #151117.

Let's remove it in LLVM 22.


  Commit: 769dbe369a549319e0b7c14585fbc3dd71468175
      https://github.com/llvm/llvm-project/commit/769dbe369a549319e0b7c14585fbc3dd71468175
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [X86] combineConcatVectorOps - IsConcatFree - detect splats first, then check for repeated load. NFC. (#174950)

This will make it easier to handle other splat values that are free to
concat.

There should be no need to do repeated peekThroughBitcasts for every
(canonicalised) bitcasted operand.


  Commit: 8a2642cbbb3cd009ad8a004317e17f7a00fd8bfc
      https://github.com/llvm/llvm-project/commit/8a2642cbbb3cd009ad8a004317e17f7a00fd8bfc
  Author: Tomer Shafir <tomer.shafir8 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A llvm/test/tools/llvm-mca/AArch64/Apple/Cyclone-register-offset.s
    A llvm/test/tools/llvm-mca/AArch64/Apple/Inputs/basic-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Apple/Inputs/neon-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Apple/M1-basic-instructions.s
    A llvm/test/tools/llvm-mca/AArch64/Apple/M1-neon-instructions.s
    R llvm/test/tools/llvm-mca/AArch64/Cyclone/register-offset.s

  Log Message:
  -----------
  [AArch64][llvm-mca] Add old Cyclone instruction tables for reference (#172652)

This patch adds static instruction tables tests for the old Cyclone
scheduling model bounded to `-mcpu=apple-m1`, for the sake of a
reference. It creates a new `llvm/test/tools/llvm-mca/AArch64/Apple`
directory, moves a Cyclone test there, and adds 2 tests
`basic-instructions` and `neon-instructions` from Neoverse with reusable
inputs (in addition to Neoverse, we also match stderr output of llvm-mca
for instruciton warnings).


  Commit: 9ac2d0a9b9ef8893216e8f0b2afb14bcd0a539ff
      https://github.com/llvm/llvm-project/commit/9ac2d0a9b9ef8893216e8f0b2afb14bcd0a539ff
  Author: Michael Kruse <llvm-project at meinersbur.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M .github/workflows/docs.yml
    M clang/utils/analyzer/entrypoint.py
    M flang-rt/README.md
    M flang/tools/f18/CMakeLists.txt
    M llvm/CMakeLists.txt
    M llvm/runtimes/CMakeLists.txt
    M openmp/docs/ReleaseNotes.rst

  Log Message:
  -----------
  Revert "[OpenMP] Remove LLVM_ENABLE_PROJECTS=openmp build mode (#152189)"

This reverts commit 20d0ec849804218d75647aeafbe23f8a02a83b56.

The publish-sphinx-docs buildbot still uses LLVM_ENABLE_PROJECTS=openmp.


  Commit: 87453a77cf190c28fcce2186c63b02ebf9834c81
      https://github.com/llvm/llvm-project/commit/87453a77cf190c28fcce2186c63b02ebf9834c81
  Author: Twice <twice at apache.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/docs/Bindings/Python.md

  Log Message:
  -----------
  [MLIR][docs] Clarify Python version support status (#174949)

According to this RFC
(https://discourse.llvm.org/t/rfc-adopt-regularly-scheduled-python-minimum-version-bumps/88841),
we no longer support Python versions that have reached EOL. This PR
mainly clarifies the somewhat vague wording of “a relatively recent
Python 3 installation.”


  Commit: 9a8421fa6191d2e1047e3dc8c72a22fa810f9aee
      https://github.com/llvm/llvm-project/commit/9a8421fa6191d2e1047e3dc8c72a22fa810f9aee
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst

  Log Message:
  -----------
  [libc++] Update our release notes for the upcoming release (#174625)


  Commit: 56e8aa658a881ce6c8afa7ad0844e10f7adb21f0
      https://github.com/llvm/llvm-project/commit/56e8aa658a881ce6c8afa7ad0844e10f7adb21f0
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/future
    M libcxx/test/libcxx/thread/nodiscard.verify.cpp
    M libcxx/test/std/thread/futures/futures.promise/set_exception.pass.cpp
    M libcxx/test/std/thread/futures/futures.promise/set_exception_at_thread_exit.pass.cpp
    M libcxx/test/std/thread/futures/futures.promise/set_value_void.pass.cpp
    M libcxx/test/std/thread/futures/futures.shared_future/get.pass.cpp
    M libcxx/test/std/thread/futures/futures.task/futures.task.members/make_ready_at_thread_exit.pass.cpp
    M libcxx/test/std/thread/futures/futures.task/futures.task.members/operator.pass.cpp
    M libcxx/test/std/thread/futures/futures.unique_future/get.pass.cpp

  Log Message:
  -----------
  [libc++][future] Applied `[[nodiscard]]` (#174924)

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/futures

Towards #172124


  Commit: 476ad9f03cdf43cb801eb478273b5fa301bf006a
      https://github.com/llvm/llvm-project/commit/476ad9f03cdf43cb801eb478273b5fa301bf006a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/combine-fma-concat.ll

  Log Message:
  -----------
  [X86] Add test showing failure to concat fma nodes due to the constant being hidden (#174969)

By the time the maxps nodes have been lowered, the v4f32 constant splats
have been hidden behind a extract_subvector from the v8f32 constant
splat


  Commit: 0f3ba5a2085212978b60470e18dbd38b44daf80e
      https://github.com/llvm/llvm-project/commit/0f3ba5a2085212978b60470e18dbd38b44daf80e
  Author: David Truby <david.truby at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lld/COFF/Driver.cpp
    M lld/COFF/Driver.h
    M lld/COFF/Options.td
    M lld/docs/ReleaseNotes.rst
    A lld/test/COFF/linkreprofullpathrsp.test

  Log Message:
  -----------
  [lld][COFF] Add /linkreprofullpathrsp flag (#174971)

This patch adds the /linkreprofullpathrsp flag with the same behaviour
as link.exe. This flag emits a file containing the full paths to each
object passed to the link line.

This is used in particular when linking Arm64X binaries, as you need the
full path to all the Arm64 objects that were used in a standard Arm64
build.

See:

https://learn.microsoft.com/en-us/cpp/build/reference/link-repro-full-path-rsp
for the Microsoft documentation of the flag.

Relands #165449


  Commit: 3f7f4a64154abeee720427560c578a17594fa36f
      https://github.com/llvm/llvm-project/commit/3f7f4a64154abeee720427560c578a17594fa36f
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/callbr-asm-different-indirect-target-end-to-end.ll
    A llvm/test/CodeGen/X86/callbr-asm-different-indirect-target.mir

  Log Message:
  -----------
  [PHIElimination] Introduce test for PR173396 (NFC)


  Commit: 394a3b9cede472aecaf19fc0101841e75d56f9e0
      https://github.com/llvm/llvm-project/commit/394a3b9cede472aecaf19fc0101841e75d56f9e0
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/PHIEliminationUtils.cpp
    M llvm/test/CodeGen/X86/callbr-asm-different-indirect-target-end-to-end.ll
    M llvm/test/CodeGen/X86/callbr-asm-different-indirect-target.mir

  Log Message:
  -----------
  [PHIElimination] Ensure correct copy emission for INLINEASM_BR indirect targets

While lowering phi-nodes to copies, subsequently to f7a53d82c0902147909f28a9295a9d00b4b27d38,
ensure that such copies are placed before any INLINEASM_BR
instructions, only if this actually happens to be the case.
If a block with an INLINEASM_BR instruction and any of its
indirect jump target are distinct blocks, the new copy on
the indirect target continues to be normally emitted prior
to the terminator.

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


  Commit: 55bec058c4ca77785237fe409574b686f524233c
      https://github.com/llvm/llvm-project/commit/55bec058c4ca77785237fe409574b686f524233c
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/include/mlir/Dialect/Tosa/IR/TosaTypesBase.td
    M mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/dynamic_extension.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/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add concat/slice_shape ops (#174620)

Adds support for the concat/slice_shape operations after spec change:
https://github.com/arm/tosa-specification/commit/efc88a100e2db06c2d6bc479fa63b26daab899ce.

This includes the operator definition, same rank checks and level checks
during validation. It does not currently include support for folding or
shape inference. This will be added in a later commit.

---------

Co-authored-by: Iliyan Georgiev <Iliyan.Georgiev at arm.com>


  Commit: 4903c6260cbd781881906007f9c82aceb71fd7c7
      https://github.com/llvm/llvm-project/commit/4903c6260cbd781881906007f9c82aceb71fd7c7
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/Generic/half.ll
    M llvm/test/CodeGen/WebAssembly/f16.ll
    M llvm/test/CodeGen/WebAssembly/fpclamptosat.ll
    M llvm/test/CodeGen/WebAssembly/fpclamptosat_vec.ll
    M llvm/test/CodeGen/WebAssembly/llvm.sincos.ll
    M llvm/test/CodeGen/WebAssembly/simd-relaxed-fma.ll

  Log Message:
  -----------
  [WebAssembly] Change `half` to use soft promotion rather than  `PromoteFloat` (#152833)

The default `half` legalization, which Wasm currently uses, does not
respect IEEE conventions: for example, casting to bits may invoke a lossy
libcall, meaning soft float operations cannot be correctly implemented.
Change to the soft promotion legalization which passes `f16` as an `i16`
and treats each `half` operation as an individual
f16->f32->libcall->f32->f16 sequence.

Of note in the test updates are that `from_bits` and `to_bits` are now
libcall-free, and that chained operations now round back to `f16` after
each step.

Fixes the wasm portion of
https://github.com/llvm/llvm-project/issues/97981
Fixes the wasm portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes: https://github.com/llvm/llvm-project/issues/96437
Fixes: https://github.com/llvm/llvm-project/issues/96438


  Commit: 18b59ed6ad4119efbf05aafb5084ad659168e8c4
      https://github.com/llvm/llvm-project/commit/18b59ed6ad4119efbf05aafb5084ad659168e8c4
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Add header deps to CAPIIR

Otherwise we run into some issues building some of these internally with
our use of clang header modules.


  Commit: f76417d21e1c0e780710ffe0829c61ca3b2efcf8
      https://github.com/llvm/llvm-project/commit/f76417d21e1c0e780710ffe0829c61ca3b2efcf8
  Author: Aleksandr Popov <42888396+aleks-tmb at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopConstrainer.cpp
    A llvm/test/Transforms/IRCE/loop-guarded-bounds.ll

  Log Message:
  -----------
  [IRCE] Prove predicates with and without loop-guarded SCEVs (#174843)

IRCE may fail to prove predicates when loop bounds are rewritten by
LoopConstrainer::applyLoopGuards(). In such cases, simple predicates
(e.g. %start < %limit) become obscured by strengthened SCEV expressions,
even though they are trivially implied by the guard in the loop
preheader.

See: https://github.com/llvm/llvm-project/issues/167827

This change makes IRCE attempt to prove predicates both on the original
SCEVs and on the guarded SCEVs, preventing incorrect rejection of loops
with safe bounds.


  Commit: 46d0862773ac3ac07fd1a8abe76db623b26d7d45
      https://github.com/llvm/llvm-project/commit/46d0862773ac3ac07fd1a8abe76db623b26d7d45
  Author: Will Froom <willfroom at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [BAZEL] Move FuncTransformsPassIncGen to CAPIIR header dep (#174982)


  Commit: 9e78d8a4fb0739455ecdfd1751b347fbd7038c13
      https://github.com/llvm/llvm-project/commit/9e78d8a4fb0739455ecdfd1751b347fbd7038c13
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  Revert "[BAZEL] Move FuncTransformsPassIncGen to CAPIIR header dep (#174982)"

This reverts commit 46d0862773ac3ac07fd1a8abe76db623b26d7d45.

This previously landed a couple commits ago and now duplicates the dep,
breaking the bazel build.


  Commit: fa53d9285aea19e453eda7e38d26d16eaf0f7c36
      https://github.com/llvm/llvm-project/commit/fa53d9285aea19e453eda7e38d26d16eaf0f7c36
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/bug127425.f90

  Log Message:
  -----------
  [flang] Check for errors when analyzing array constructors (#173092)

Errors in array constructor values result in the array having
less elements than it should, which can cause other errors that
will confuse the user. Avoid this by not returning an expression
on errors.

Fixes #127425


  Commit: 5f590ed7062ae1639e8bb99d8c1000b4c3ea7cfc
      https://github.com/llvm/llvm-project/commit/5f590ed7062ae1639e8bb99d8c1000b4c3ea7cfc
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [SystemZ][z/OS] Improve use of formatv (#174503)

Using a `raw_svector_ostream` object is not necessary, because this is
hidden in the conversion function. In addition, there is no need to
reason about a zero termination of the string. Declaring the ascii and
ebcdic version of the string variables at the same time makes sure that
both strings are allocated with the same size.


  Commit: db26ce5c5572a1a54ce307c762689ab63e5c5485
      https://github.com/llvm/llvm-project/commit/db26ce5c5572a1a54ce307c762689ab63e5c5485
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/Generic/half.ll
    M llvm/test/CodeGen/PowerPC/atomics.ll
    M llvm/test/CodeGen/PowerPC/f128-conv.ll
    M llvm/test/CodeGen/PowerPC/half.ll
    M llvm/test/CodeGen/PowerPC/ldexp.ll
    M llvm/test/CodeGen/PowerPC/llvm.frexp.ll
    M llvm/test/CodeGen/PowerPC/llvm.modf.ll
    M llvm/test/CodeGen/PowerPC/pr48519.ll
    M llvm/test/CodeGen/PowerPC/pr49092.ll
    M llvm/test/CodeGen/PowerPC/vector-llrint.ll
    M llvm/test/CodeGen/PowerPC/vector-lrint.ll

  Log Message:
  -----------
  [PowerPC] Change `half` to use soft promotion rather than `PromoteFloat` (#152632)

On PowerPC targets, `half` uses the default legalization of promoting to
a `f32`. However, this has some fundamental issues related to inability
to round trip. Resolve this by switching to the soft legalization, which
passes `f16` as an `i16`.

The PowerPC ABI Specification does not define a `_Float16` type, so the
calling convention changes are acceptable.

Fixes the PowerPC part of
https://github.com/llvm/llvm-project/issues/97975
Fixes the PowerPC part of
https://github.com/llvm/llvm-project/issues/97981


  Commit: cc1bb845da525a02ad6b48e02e59dbe870f6bc13
      https://github.com/llvm/llvm-project/commit/cc1bb845da525a02ad6b48e02e59dbe870f6bc13
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp

  Log Message:
  -----------
  [mlir][OpenMP] Fix sanitizer error in buildTaskLikeBodyGenCallback  (#174983)

This is a fix for the asan bot after
https://github.com/llvm/llvm-project/pull/174386

Failing bot: https://lab.llvm.org/buildbot/#/builders/24/builds/16371

This commit undoes a simplification I thought reduced copied+pasted
code. I will merge it like this now to unblock the bot, and then work
separately on a different way to share code between both callbacks.


  Commit: a4f1798c96407f0c49057a352703423117d9790c
      https://github.com/llvm/llvm-project/commit/a4f1798c96407f0c49057a352703423117d9790c
  Author: Corentin Jabot <corentinjabot at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Attr.td
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/lib/Sema/SemaTypeTraits.cpp
    M clang/test/CodeGenCXX/cxx2c-trivially-relocatable.cpp
    R clang/test/Parser/cxx2c-trivially-relocatable.cpp
    M clang/test/SemaCXX/cxx2c-trivially-relocatable.cpp
    M clang/test/SemaCXX/ptrauth-triviality.cpp
    M clang/test/SemaCXX/ptrauth-type-traits.cpp
    M clang/test/SemaCXX/trivially-relocatable-ptrauth.cpp
    M clang/test/SemaCXX/type-traits-unsatisfied-diags.cpp

  Log Message:
  -----------
  [Clang] expunge `trivially_relocate_if_eligible` (#174344)

In Kona, WG21 decided to revert trivial relocation (P2786).

Keep the notion of relocatability
(used in the wild and likely to come back),
but remove the keyword which is no longer conforming


  Commit: 21dc73f6a46cd786394f10f5aef46ec4a2d26175
      https://github.com/llvm/llvm-project/commit/21dc73f6a46cd786394f10f5aef46ec4a2d26175
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M libcxx/include/any

  Log Message:
  -----------
  [libc++][NFC] Update <any> to a more modern code style (#174619)

This patch refactors `enable_if`s inside `<any>` to use the `..., int> =
0` variant that we try to use throughout the code base and inlines some
of the functions into the class body to avoid duplicating the
`enable_if`s.


  Commit: 012097d4fe7f300a59f9d2b89e528e1bd449d4c1
      https://github.com/llvm/llvm-project/commit/012097d4fe7f300a59f9d2b89e528e1bd449d4c1
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M compiler-rt/lib/builtins/aarch64/sme-abi.S

  Log Message:
  -----------
  [compiler-rt][AArch64] Exit early from __arm_za_disable. (#174942)

Because `__arm_za_disable` is a private-ZA function, it's only ever
entered with ZA state `off` or `dormant`. If the state is `off` then we
can safely return and there is no need to call `__arm_tpidr2_save` or to
explicitly set PSTATE.ZA or TPIDR2_EL0 to zero.


  Commit: 9973e38b5adbe4605c32745be416d2eea6be32ad
      https://github.com/llvm/llvm-project/commit/9973e38b5adbe4605c32745be416d2eea6be32ad
  Author: Abhiram Jampani <126624416+Abhiramjampani at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [SDPatternMatch] Add m_FAbs matcher (#174975)

Adds a pattern matcher for floating-point absolute value (ISD::FABS),
following the same pattern as m_Abs for integer absolute value.

Fixes #174751


  Commit: 79fd11c9bbeb423b8d2eb5b2fb832f25ef9e080b
      https://github.com/llvm/llvm-project/commit/79fd11c9bbeb423b8d2eb5b2fb832f25ef9e080b
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Headers/avx512vlbwintrin.h

  Log Message:
  -----------
  [Headers][X86] __builtin_ia32_pmovwb128_mask is not constexpr (#174985)

Appears to be a copy+paste type - most of the x86 masked truncation intrinsics still can't be made constexpr at this time

Fixes #166814


  Commit: 9fb45c5959fdbf1f63babd1f32ad298cab9e27af
      https://github.com/llvm/llvm-project/commit/9fb45c5959fdbf1f63babd1f32ad298cab9e27af
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/extractelements-subnodes-same-index.ll
    M llvm/test/Transforms/SLPVectorizer/X86/insert-subvector.ll

  Log Message:
  -----------
  [SLP]Do not generate extractelement subnodes with the same indeces

The compiler should not generate subvectors with the same extractelement
instructions, it may cause a crash and leads to inefficient
vectorization.

Fixes #174773


  Commit: f5c39a6b0a6bea50f2daf9ab32086a380ff7dee4
      https://github.com/llvm/llvm-project/commit/f5c39a6b0a6bea50f2daf9ab32086a380ff7dee4
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
    M llvm/test/CodeGen/SPIRV/transcoding/ConvertPtrInGlobalInit.ll

  Log Message:
  -----------
  [SPIRV] Additional fixes for const init via `UtoPtr` (#172584)

#166494 added support for using `inttoptr` in global initialisation, and
lowering int into `OpSpecConstantOp OpConvertUToPtr`. Unfortunately, it
slightly more subtle case / exposed an existing issue around the `COPY`
pseudo-op. This patch ensures that we glance through a `COPY` when
figuring out whether an `OpConvertUToPtr` is actually operating on a
global. We also correctly handle the case where a `G_PTR_ADD` is used by
an `OpSpecConstantOp` in the context of global initialisation, which
would otherwise lead to broken SPIR-V wherein the latter would reference
a non constant Op.

---------

Co-authored-by: Marcos Maronas <marcos.maronas at intel.com>


  Commit: da560b657945946fc05bd54bd7726590b4eec9fb
      https://github.com/llvm/llvm-project/commit/da560b657945946fc05bd54bd7726590b4eec9fb
  Author: Francesco Petrogalli <francesco.petrogalli at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVInstPrinter.h
    A llvm/test/MC/RISCV/hex-imm-macho.s

  Log Message:
  -----------
  [RISC-V][Mach-O] Print immediate operands in hexadecimal format. (#174505)

This is done for logical operations and auipc/lui.

Patch based on code written by Tim Northover.


  Commit: c8674f65fe32e92a54bbc0036d70b3a0f7b3ad96
      https://github.com/llvm/llvm-project/commit/c8674f65fe32e92a54bbc0036d70b3a0f7b3ad96
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/test/CodeGen/X86/combine-fma-concat.ll

  Log Message:
  -----------
  [X86] combineConcatVectorOps - IsConcatFree - detect splats that comes from a common load/broadcastload (#174986)

Allows us to handle freely concatable cases after a broadcast load has
become shared by different vector width uses by peeking through
bitcasts/extract_subvector nodes


  Commit: 0689a598e609386f358d48d97359e7663ee9ad02
      https://github.com/llvm/llvm-project/commit/0689a598e609386f358d48d97359e7663ee9ad02
  Author: Zahira Ammarguellat <zahira.ammarguellat at intel.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticParseKinds.td
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/test/OpenMP/need_device_ptr_kind_messages.cpp

  Log Message:
  -----------
  [NFC] [OpenMP] Fix typo and add initializer to modifier. (#174784)

Fixed typo and added initialization of modifier.


  Commit: e89bec770816add6165993fdebc78815366bd9ee
      https://github.com/llvm/llvm-project/commit/e89bec770816add6165993fdebc78815366bd9ee
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeIntegerTypes.cpp
    M llvm/test/CodeGen/RISCV/clmul.ll

  Log Message:
  -----------
  [SelectionDAG] Expand CLMUL in PromoteIntRes_CLMUL if the operation isn't legal/custom for the promoted type. (#174911)

This allows the expand code to see the original size. Previously we
relied on computeKnownBits to optimize the code after it is expanded
later. This removes the need to zero extend the input during promotion
that was needed to make computeKnownBits work.


  Commit: 80296b618e648ef56ea5e5bbf1b34be6b1b72dcf
      https://github.com/llvm/llvm-project/commit/80296b618e648ef56ea5e5bbf1b34be6b1b72dcf
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/ValueTracking.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-select.ll

  Log Message:
  -----------
  ValueTracking: Refactor computeKnownFPClass select handling (#174957)

Match the structure of ComputeKnownBits. Expose the condition
handling as a utility function so SimplifyDemanedFPClass can make
use of this. Avoids some redundant code and improves accuracy in
at least one case.


  Commit: ec66d180b6f9c416ce96a3e0de1ecb49f56a1765
      https://github.com/llvm/llvm-project/commit/ec66d180b6f9c416ce96a3e0de1ecb49f56a1765
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Fixup known fp class for select and compare (#174958)

Improve reported known fp-class when simplifying select.

Previously we just reported the conservative result that
the result class could be either of the inputs. Use the new
utility to apply the compare+select logic the default case of
computeKnownFPClass would catch.


  Commit: c035dfb96a4d0632715a4f0f4e4ce086d96aeb67
      https://github.com/llvm/llvm-project/commit/c035dfb96a4d0632715a4f0f4e4ce086d96aeb67
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Simplify class VINTERPe. NFC. (#175006)

VINTERP instructions always have src0, src1, src2 and dst.


  Commit: 255f173139d7952106736d4f52ee539ddb68dc21
      https://github.com/llvm/llvm-project/commit/255f173139d7952106736d4f52ee539ddb68dc21
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/deque/TestDataFormatterGenericDeque.py

  Log Message:
  -----------
  [LLDB] Run MSVC STL deque tests with PDB (#172360)

Similar to the other PRs, this looks up the type from a member variable.
Here, we can use the type of `_Mapptr`. On its own, that's enough to
pass the test with clang-cl.


  Commit: a10acdef073d1813b3713c61fb07ab4c8f89556a
      https://github.com/llvm/llvm-project/commit/a10acdef073d1813b3713c61fb07ab4c8f89556a
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap] Update package-lock.json after #174641 (#175009)

In #174641, package.json was updated, but the package-lock.json file
wasn't regenerated.


  Commit: 1d07609894f0b07bf739a5ac2c07066ec8c3399c
      https://github.com/llvm/llvm-project/commit/1d07609894f0b07bf739a5ac2c07066ec8c3399c
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Core/FormatEntity.h
    M lldb/source/Core/FormatEntity.cpp
    M lldb/test/Shell/Settings/TestCxxFrameFormatRecursive.test

  Log Message:
  -----------
  [lldb][Format] Reject recursive format entities (#174750)

Depends on:
* https://github.com/llvm/llvm-project/pull/174618

If a format entity calls back into `Format` and passes it a format
entity type that we're already in the process of parsing, we are likely
going to run into infinite recursion and blow the stack. I think this is
only an issue when a format entity calls Format on a format string
provided by the user (otherwise we're in control of the recursion). An
example of this can be seen in the test-case adjusted by this patch.

This seems to be causing actual crashes in the field, so this patch adds
basic tracking to `Formatter::Format` that checks whether we're
recursively parsing the same entity. This may very well be intended by
some entities (e.g., `Root` and `Scope`), so there is an escape hatch
for those. There's also a special case where `Variable` causes a
recursive format (which I pointed out in a source comment).

We could narrow the scope of what kind of recursion is allowed by adding
a `UserProvidedFormatChild` (or similar) flag to `Entry`, and only
disallow recursing on those kinds of entries. For now I just use an
exemption list in `IsInvalidRecursiveFormat`.

Adding a unit-test for this is unfortunately tricky because the only
format entity that currently suffers from this is
`${function.name-with-args}`, which requires a language plugin and valid
target. If we really wanted to we could probably mock all of those, but
the shell test provides test coverage for the previously crashing case.

rdar://166890120


  Commit: 8ffb7f60da84447868b12c9f7a0e78722d80d1e2
      https://github.com/llvm/llvm-project/commit/8ffb7f60da84447868b12c9f7a0e78722d80d1e2
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap][ext] Add script to only run extension unittests (#175010)

`vscode-test` requirest a GUI or something that emulates one. Use the
Mocha test library directly for unitest

Run unittests using `npm run unittest`


  Commit: 1f2663e1f21c446ff0ded51261f54acc2d538bbb
      https://github.com/llvm/llvm-project/commit/1f2663e1f21c446ff0ded51261f54acc2d538bbb
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineInternal.h
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp

  Log Message:
  -----------
  InstCombine: Prepare to handle multiple uses in SimplifyDemandedFPClass (#174863)

Follow the structure of SimplifyDemandedBits. Doesn't handle anything
in the multiple use case for now, and continues just calling
computeKnownFPClass.


  Commit: 85f5007ec51d673e4a36df4b3540c70f0c9abe75
      https://github.com/llvm/llvm-project/commit/85f5007ec51d673e4a36df4b3540c70f0c9abe75
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/arrayref.test

  Log Message:
  -----------
  [cross-project-tests][formatters] Remove redundant CHECK statement

See https://github.com/llvm/llvm-project/pull/173238#discussion_r2672090386

On some downstream CI this was flakey because LLDB's `location added to breakpoint` notification would appear after the commands. Simply remove checking for the command for now.


  Commit: 75b6493cc2528227ec528dfd1664647e6cae986d
      https://github.com/llvm/llvm-project/commit/75b6493cc2528227ec528dfd1664647e6cae986d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fdiv.ll
    M llvm/test/Transforms/Attributor/nofpclass-frem.ll
    M llvm/test/Transforms/InstSimplify/floating-point-compare.ll

  Log Message:
  -----------
  ValueTracking: Check if fdiv operand could be undef (#174453)

In the special case for fdiv/frem with the same operands, make
sure the input isn't undef.


  Commit: 4e74fba5b28d95f2ba703a6626a7366408e7fd43
      https://github.com/llvm/llvm-project/commit/4e74fba5b28d95f2ba703a6626a7366408e7fd43
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUPromoteAlloca.cpp
    A llvm/test/CodeGen/AMDGPU/promote-alloca-use-after-erase.ll

  Log Message:
  -----------
  [AMDGPU] Fix a potential use-after-erase in `AMDGPUPromoteAlloca` pass (#174529)

In some cases, the placeholder itself can be used as the value for its
corresponding block in `SSAUpdater`, and later used as an incoming value
in another block in `GetValueInMiddleOfBlock`. If we erase it too early,
this can lead to a use-after-erase.


  Commit: 936ae0675643e4dc0aaad4fccb25290ce268e51a
      https://github.com/llvm/llvm-project/commit/936ae0675643e4dc0aaad4fccb25290ce268e51a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M .gitignore

  Log Message:
  -----------
  [LLVM] Ignore Cursor specific files (#174891)


  Commit: 3ae71d30be22711edf278156b67167385a0f9ce0
      https://github.com/llvm/llvm-project/commit/3ae71d30be22711edf278156b67167385a0f9ce0
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    M llvm/test/Transforms/SLPVectorizer/RISCV/strided-stores-vectorized.ll

  Log Message:
  -----------
  [SLP] Use ConstantInt::getSigned for stride argument to strided load/store intrinsics (#175007)

strided-stores-vectorized.ll crashes for RV32 without fixing the
relevant logic in vectorizeTree, because the argument can't be
represented as a 32-bit unsigned value:
```
llvm::APInt::APInt(unsigned int, uint64_t, bool, bool): Assertion `llvm::isUIntN(BitWidth, val) && "Value is not an N-bit unsigned value"' failed.
```

It is intended to be signed, so we simply use ConstantInt::getSigned
instead. This fixes other stride-related instances in the file as well.
For further context, this change is part of unblocking rv32gcv
llvm-test-suite in CI.


  Commit: e39ddab2bc7e33d59c19d52544fe4b01b286edfb
      https://github.com/llvm/llvm-project/commit/e39ddab2bc7e33d59c19d52544fe4b01b286edfb
  Author: Tamir Duberstein <tamird at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/bindings/ocaml/bitreader/llvm_bitreader.mli
    M llvm/bindings/ocaml/irreader/irreader_ocaml.c
    M llvm/bindings/ocaml/irreader/llvm_irreader.ml
    M llvm/bindings/ocaml/irreader/llvm_irreader.mli
    M llvm/docs/ReleaseNotes.md
    M llvm/examples/OrcV2Examples/OrcV2CBindingsLazy/OrcV2CBindingsLazy.c
    M llvm/examples/OrcV2Examples/OrcV2CBindingsVeryLazy/OrcV2CBindingsVeryLazy.c
    M llvm/include/llvm-c/IRReader.h
    M llvm/include/llvm-c/Object.h
    M llvm/include/llvm/Analysis/LoopAnalysisManager.h
    M llvm/include/llvm/CodeGen/MachinePassManager.h
    M llvm/include/llvm/IR/PassManager.h
    M llvm/lib/IRReader/IRReader.cpp
    M llvm/test/Bindings/OCaml/bitreader.ml
    M llvm/test/Bindings/OCaml/irreader.ml

  Log Message:
  -----------
  [llvm-c] Add LLVMParseIRInContext2 (#174085)

This new function is the same as LLVMParseIRInContext except it doesn't
take ownership of the memory buffer. This fixes a wart that has been in
place since 5ebb7b311223bcd21d2b3d25413d1edacefcc63d changed the
underlying internal API to avoid taking ownership.

Reduce nesting in the implementation of LLVMParseIRInContext (now
LLVMParseIRInContext2) as well.

Update examples, OCaml bindings, and tests including plugging some
pre-existing memory leaks. OCaml bindings have renamed `parse_ir` to
`parse_ir_bitcode_or_assembly` to provoke compilation failures in
downstream code; this is intentional as this function now requires the
memory buffer to be disposed by the caller.


  Commit: 418eee7a92c83a6eabd5970ee432235cde17845a
      https://github.com/llvm/llvm-project/commit/418eee7a92c83a6eabd5970ee432235cde17845a
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Bail out of combineNarrowableShiftedLoad for types other than scalar int (#175011)

Introduced in #170483 this was only ever meant to trigger for scalar
types. We get an error on rv32gcv for some inputs "Cannot implicitly
convert a scalable size to a fixed-width size in `TypeSize::operator
ScalarTy()`".

While we're editing this function, delete an accidentally repeated
comment.

Minimal reproducer:
```
define <vscale x 4 x ptr> @ham() {
bb:
  %load = load <vscale x 4 x i32>, ptr null, align 4
  %ashr = ashr <vscale x 4 x i32> %load, splat (i32 1)
  %getelementptr = getelementptr i32, ptr null, <vscale x 4 x i32> %ashr
  ret <vscale x 4 x ptr> %getelementptr
}
```

Added without test as the fix is trivial and the test is rather awkward/specialised. We will get coverage for this and similar issues from llvm-test-suite rv32gcv in CI.


  Commit: aac91eabd262e4cfe19db7a28a2ff59b45f97237
      https://github.com/llvm/llvm-project/commit/aac91eabd262e4cfe19db7a28a2ff59b45f97237
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [lldb-dap] Add ovsx as a dev dependency for publish to Open VSX (#175015)

This adds `ovsx` as a developer dependency and adds a new script
"publish-ovsx" for publishing to the Open VSX registry.


  Commit: ebdaea63622d8d3d02701aeec2b7f2769ba89b7d
      https://github.com/llvm/llvm-project/commit/ebdaea63622d8d3d02701aeec2b7f2769ba89b7d
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/dotest.py

  Log Message:
  -----------
  [lldb-dap][windows] fix lldb-dap executable name in test (#175014)

This patch fixes an incorrect name of the `lldb-dap` process on Windows
by appending `.exe` to the name.

This is a prelude to https://github.com/llvm/llvm-project/pull/174635.


  Commit: 85779e547b00b377aa9675bcd80b1c20d0522d18
      https://github.com/llvm/llvm-project/commit/85779e547b00b377aa9675bcd80b1c20d0522d18
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-call.cpp
    A flang/test/Semantics/bug2021.f90

  Log Message:
  -----------
  [flang] Silence "used but undefined" warning for LOC(x) (#174807)

When a variable appears as the argument of the extension intrinsic
function LOC(x), assume that it's defined for the purposes of the
warning about variables that are used but never defined, since the
result of the LOC() can be used to define a based Cray pointer.


  Commit: b4f9012464144fc0f5c430dd97736c4e868a5de3
      https://github.com/llvm/llvm-project/commit/b4f9012464144fc0f5c430dd97736c4e868a5de3
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/lib/Parser/prescan.cpp
    M flang/lib/Parser/prescan.h
    M flang/test/Driver/Inputs/free-form-test.f90
    M flang/test/Driver/color-diagnostics-scan.f
    M flang/test/Driver/fixed-free-detection.f90
    M flang/test/Driver/fixed-free-flag.f90
    M flang/test/Driver/werror-scan.f
    M flang/test/Parser/badlabel.f
    A flang/test/Parser/bug50563.f
    M flang/test/Preprocessing/pp039.F

  Log Message:
  -----------
  [flang] Make a non-digit in fixed-form label field an error unless -E (#174836)

A character in a fixed-form source line (as opposed to a comment or
compiler directive) can't have a non-digit in its label field, columns 1
through 5. The prescanner presently emits only a warning for this case.
Retain the warning for -E output, but otherwise diagnose an error.

(This change affected a number of tests that relied on this situation
being a warning just so that they could test prescanner warnings, and
those tests were adjusted to use another warning.)

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


  Commit: b86c7daf93582848f7b5c7c92828e8b9658a575b
      https://github.com/llvm/llvm-project/commit/b86c7daf93582848f7b5c7c92828e8b9658a575b
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/bug174859.f90

  Log Message:
  -----------
  [flang] Fix bad attributes on type parameter symbols (#174870)

When creating new symbols for a derived type's type parameters, the
attributes that accumulated for the type itself were also being applied
to the parameters' symbols. This led to those attributes being emitted
to the module file, rendering it unparseable.

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


  Commit: 325869c7fc32f33687749bb4a39b4f5326c362d5
      https://github.com/llvm/llvm-project/commit/325869c7fc32f33687749bb4a39b4f5326c362d5
  Author: Maryam Moghadas <maryammo at ca.ibm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/Headers/amo.h
    M clang/lib/Sema/SemaPPC.cpp
    M clang/test/CodeGen/PowerPC/builtins-amo-err.c
    M clang/test/CodeGen/PowerPC/builtins-ppc-amo.c
    M clang/test/CodeGen/PowerPC/ppc-amo-header.c
    M llvm/test/CodeGen/PowerPC/amo-enable.ll

  Log Message:
  -----------
  [PowerPC] Add AMO load signed builtins (#168747)

This commit adds two Clang builtins for AMO load signed operations:

__builtin_amo_lwat_s for 32-bit signed operations
__builtin_amo_ldat_s for 64-bit signed operations


  Commit: e42f862042872d9e142714c7cb14f72735ece37a
      https://github.com/llvm/llvm-project/commit/e42f862042872d9e142714c7cb14f72735ece37a
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp

  Log Message:
  -----------
  [BOLT][AArch64] Avoid UB due to shift of negative value. (#174994)

A build with LLVM_USE_SANITIZER=Undefined showed:

  bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp:2277:60:
  runtime error: left shift of negative value -32768

This showed up in bolt/test/AArch64/veneer-lite-mode.s.

It is valid for ADRP's operand to be negative, and not valid to shift it
like that. To perform this shift reliably, cast the value to unsigned.


  Commit: cb6ee6cb49e4e6b4969f98ba9129b64094387279
      https://github.com/llvm/llvm-project/commit/cb6ee6cb49e4e6b4969f98ba9129b64094387279
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/tools/lldb-dap/EventHelper.cpp
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap][NFC] Shorten the event thread name (#174837)

On linux thread names are limited to 15 characters, shorten the name of
the event thread if necessary


  Commit: 292a77c4755ebf112577cea8bcb50eb2f832fc4d
      https://github.com/llvm/llvm-project/commit/292a77c4755ebf112577cea8bcb50eb2f832fc4d
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlAtomic.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlDeque.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlTree.cpp

  Log Message:
  -----------
  [LLDB][NFC] Remove excessive use of `auto` from MSVC STL formatters (#175019)

Some MSVC STL formatters made excessive use of `auto`, especially the
`std::deque` one
(https://github.com/llvm/llvm-project/pull/172360#pullrequestreview-3639850321).
This PR replaces the uses with the concrete type.


  Commit: 2926b4100db1db2322c8e713cb33eccb7e82132b
      https://github.com/llvm/llvm-project/commit/2926b4100db1db2322c8e713cb33eccb7e82132b
  Author: Ziqing Luo <ziqing_luo at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Fix crashes in "Add check for custom printf/scanf functions #173096" (#174683)

The previous PR #173096 assumes that format attribute parameters always
refer to valid indices of arguments. It is a wrong assumption in itself
because the second attribute parameter could specify the index after the
last named parameter for variadic functions and no actual arguments
passed beyond named parameters. In addition, clang (possibly
incorrectly) allows the following uses of the attribute:

```
void f(const char *) __attribute__((__format__ (__printf__, 1, 2))); // The second attribute argument 2 will not refer to any valid argument at any call of 'f'

void g(const char *) __attribute__((__format__ (__printf__, 1, 99))); // Clang is even quiet on this, if assertions are disabled :(
```


  Commit: 11dcb756c6ddcd6593dabb6d661347aee40da6a3
      https://github.com/llvm/llvm-project/commit/11dcb756c6ddcd6593dabb6d661347aee40da6a3
  Author: Kashika Akhouri <akhourik at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/CallGraph.h
    M clang/lib/Analysis/CFG.cpp
    M clang/unittests/Support/TimeProfilerTest.cpp

  Log Message:
  -----------
  Add time trace scopes to addToCallGraph & getCFG (#174717)

This PR adds performance instrumentation to `clang::CallGraph` and
`clang::CFG` to aid in benchmarking the overhead of call
graph construction and CFG rebuilding.

This aims to facilitate benchmarking on large codebases like LLVM to
ensure that the performance impact of new analysis-based warnings
remains within acceptable regressions.


  Commit: f4a7f70717973ac30698a8b8cd3592e869365483
      https://github.com/llvm/llvm-project/commit/f4a7f70717973ac30698a8b8cd3592e869365483
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
    A llvm/test/CodeGen/NVPTX/combine-mul-wide-type.ll

  Log Message:
  -----------
  [NVPTX] Use correct `mul.wide` operand type when matching on `shl` in `combineMulWide` (#168986)

The operand types of a `mul.wide` are half the size of the output type.
`combineMulWide` incorrectly uses the output type of the `mul.wide` for
the operand type instead of the operand type.


  Commit: 4e3699b4c6255070f2bf4c3ce98978a9bd2614fd
      https://github.com/llvm/llvm-project/commit/4e3699b4c6255070f2bf4c3ce98978a9bd2614fd
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M bolt/test/RISCV/reloc-label-diff.s
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVAsmBackend.cpp
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVMCCodeEmitter.cpp
    M llvm/test/CodeGen/RISCV/option-relax-relocation.ll
    M llvm/test/MC/RISCV/Relocations/expr.s
    M llvm/test/MC/RISCV/Relocations/relocations.s
    M llvm/test/MC/RISCV/align.s
    M llvm/test/MC/RISCV/compressed-relocations.s
    M llvm/test/MC/RISCV/linker-relaxation.s
    M llvm/test/MC/RISCV/long-conditional-jump.s
    M llvm/test/MC/RISCV/option-relax.s
    M llvm/test/MC/RISCV/tlsdesc.s
    M llvm/test/MC/RISCV/xqcibi-linker-relaxation.s
    M llvm/test/MC/RISCV/xqcibi-relocations.s

  Log Message:
  -----------
  [RISCV] Mark More Relocs as Relaxable (#151422)

Since this code was last reviewed, more relaxations have been added to
the psABI for existing standard relocations that LLVM didn't have marked
as relaxable.

This change ensures that LLVM marks the following relocations (and their
respective fixups) as relaxable:
- `R_RISCV_JAL`
- `R_RISCV_GOT_HI20`
- `R_RISCV_TPREL_HI20`
- `R_RISCV_TLSDESC_HI20`

This also updates the linker relaxation test to use `-NEXT` to check all
the output lines.

There are lots more emitted relocations, not only due to JAL being
relaxable, but branches are now also marked linker relaxable because
they can be turned into `b<cc>; jal` during assembly relaxation, which
may also be marked relaxable.


  Commit: ecd2b6862c31ee5dff8db181e5c00a41656fc639
      https://github.com/llvm/llvm-project/commit/ecd2b6862c31ee5dff8db181e5c00a41656fc639
  Author: Richard Thomson <legalize at xmission.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/unittests/Transforms/Instrumentation/CMakeLists.txt

  Log Message:
  -----------
  [CMake] Don't explicitly set folder for InstrumentationTests (#170041)

Use the default of `LLVM/Tests/Unit` to group these tests with other
LLVM unit test targets in the IDE.


  Commit: 3c848122329e0c397dd10d9beb800d35f1dd3328
      https://github.com/llvm/llvm-project/commit/3c848122329e0c397dd10d9beb800d35f1dd3328
  Author: Hideto Ueno <uenoku.tokotoko at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/cmake/modules/MLIRDetectPythonEnv.cmake

  Log Message:
  -----------
  [mlir][python] Fail fast when nanobind is missing for Python bindings (#174649)

Remove problematic `return()` statements from
mlir_configure_python_dev_packages macro and convert nanobind detection
to FATAL_ERROR.

Using `return()` in a CMake macro is problematic because it returns from
the calling scope, not the macro itself, causing the parent
CMakeLists.txt to silently skip subsequent configuration steps. This
leads to confusing build failures when Python bindings are enabled but
nanobind is missing.

With this change, users get an immediate error with clear instructions
to install nanobind or set nanobind_DIR, rather than silent
configuration failures.


  Commit: 057c7a79e3add4630e5d0fdce8b38491df5a230b
      https://github.com/llvm/llvm-project/commit/057c7a79e3add4630e5d0fdce8b38491df5a230b
  Author: RolandF77 <froese at ca.ibm.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelLowering.cpp
    M llvm/lib/Target/PowerPC/PPCInstrFutureMMA.td
    M llvm/test/CodeGen/PowerPC/dmf-outer-product.ll
    M llvm/test/CodeGen/PowerPC/dmr-enable.ll
    M llvm/test/CodeGen/PowerPC/dmr-spill.ll
    M llvm/test/CodeGen/PowerPC/dmrp-spill.ll
    M llvm/test/CodeGen/PowerPC/mma-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/mma-outer-product.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-crypto.ll
    M llvm/test/CodeGen/PowerPC/mmaplus-intrinsics.ll
    M llvm/test/CodeGen/PowerPC/v1024ls.ll

  Log Message:
  -----------
  [PowerPC] Add type checking for DMF insert (#172078)

Create PPCISD nodes for DMF DMXXINSTDMR512 and DMXXINSTDMR256 operations
to allow type checking.


  Commit: 3d6a96c0916fb0b238c2fae0e1791d3663415529
      https://github.com/llvm/llvm-project/commit/3d6a96c0916fb0b238c2fae0e1791d3663415529
  Author: Alexandre Perez <alexandreperez at meta.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Commands/CommandObjectCommands.cpp
    M lldb/test/API/commands/command/script/add/TestAddParsedCommand.py

  Log Message:
  -----------
  [lldb] Fix null pointer dereference in parsed command completion (#174868)

Fix a crash when tab-completing arguments for parsed commands that have
arguments but no options.

In `HandleArgumentCompletion`, `GetOptions()` returns `nullptr` when a
command has no options defined. The code was dereferencing this pointer
without a null check, causing a segfault when attempting tab completion.


  Commit: 4bd84a9f335e2847a96d5ed4eac04576e811a963
      https://github.com/llvm/llvm-project/commit/4bd84a9f335e2847a96d5ed4eac04576e811a963
  Author: Amr Hesham <amr96 at programmer.net>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/test/CIR/CodeGen/atomic.c

  Log Message:
  -----------
  [CIR] Implement AtomicExpr for Aggregate expr (#173775)

Implement support for AtomicExpr for Aggregate expr


  Commit: f8b68c7b74704892ce308049fbc045e4b8b30d4d
      https://github.com/llvm/llvm-project/commit/f8b68c7b74704892ce308049fbc045e4b8b30d4d
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsSPIRVCommon.td
    A clang/test/CodeGenSPIRV/Builtins/subgroup.c
    A clang/test/SemaSPIRV/BuiltIns/subgroup-errors.c
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td

  Log Message:
  -----------
  [SPIR-V] Add builtin/intrinsic for subgroup ballot (#174862)

Summary:
This patch adds an LLVM intrinsic and lowering for a subgroup ballot and
a corresponding clang builtin. This uses the already present support but
provides in a way accessible to other targets. With this and
https://github.com/llvm/llvm-project/pull/174655 we should be able to
most of the basic functions, like shuffling, active masks, and
reductions. More work will be needed for canonicalizing / exposing the
SPIR-V functions, but these are the fundamental builtins I need.


  Commit: 4f7da2f1363d7e7dcabba13965621a70e32d246d
      https://github.com/llvm/llvm-project/commit/4f7da2f1363d7e7dcabba13965621a70e32d246d
  Author: Hussam A. <60274772+hussam-alhassan at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ConditionOptimizer.cpp
    M llvm/test/CodeGen/AArch64/combine-comparisons-by-cse.ll

  Log Message:
  -----------
  [AArch64] Add intra-block CSINC optimization to AArch64ConditionOptimizer (#173734)

This patch extends the AArch64ConditionOptimizer pass to handle CSINC
instructions within a single basic block, complementing the existing
cross-block branch optimization.

The optimization finds two CMP+CSINC pairs comparing the same register
with immediates differing by 1, and adjusts one comparison to enable CSE
to eliminate the redundant CMP instruction.

Example transformation:
```
  cmp  w8, #10
  csinc w9, w0, w1, gt     ; w9 = (w8 > 10) ? w0 : w1+1
  cmp  w8, #9              ; Removed by CSE after adjustment
  csinc w10, w0, w1, gt    ; w10 = (w8 > 9) ? w0 : w1+1
```

After optimization:
```
  cmp  w8, #10
  csinc w9, w0, w1, gt     ; w9 = (w8 > 10) ? w0 : w1+1
  csinc w10, w0, w1, ge    ; w10 = (w8 >= 10) ? w0 : w1+1
```

The existing cross-block logic has also been extracted into its own
method.

Any feedback on code quality and better practices is highly welcome.

Co-authored-by: Hussam Alhassan <hsm.link at proton.me>


  Commit: 65945ec2ccac5a974cf918e5bde035b7a551ef9b
      https://github.com/llvm/llvm-project/commit/65945ec2ccac5a974cf918e5bde035b7a551ef9b
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M compiler-rt/test/asan/TestCases/Darwin/asan-symbolize-partial-report-no-external-symbolizer.cpp
    M compiler-rt/test/asan/TestCases/Darwin/asan-symbolize-partial-report-with-module-map.cpp
    M compiler-rt/test/asan/TestCases/Darwin/asan-symbolize-with-module-map.cpp
    M compiler-rt/test/asan/TestCases/Darwin/atos-symbolizer-dyld-root-path.cpp
    M compiler-rt/test/asan/TestCases/Darwin/atos-symbolizer.cpp
    M compiler-rt/test/asan/TestCases/Darwin/duplicate_os_log_reports.cpp
    M compiler-rt/test/asan/TestCases/Darwin/dyld_insert_libraries_reexec.cpp
    M compiler-rt/test/asan/TestCases/Darwin/dyld_insert_libraries_remove.cpp
    M compiler-rt/test/asan/TestCases/Darwin/interface_symbols_darwin.cpp
    M compiler-rt/test/asan/TestCases/Darwin/suppressions-sandbox.cpp
    M compiler-rt/test/asan/TestCases/Darwin/uuid.cpp
    M compiler-rt/test/asan/TestCases/Posix/asan-symbolize-sanity-test.cpp
    M compiler-rt/test/asan/TestCases/Posix/asan_symbolize_script/plugin_wrong_frame_number_bug.cpp
    M compiler-rt/test/asan/TestCases/Posix/coverage.cpp
    M compiler-rt/test/asan/TestCases/Posix/new_array_cookie_with_new_from_class.cpp
    M compiler-rt/test/asan/TestCases/default_ignorelist.cpp
    M compiler-rt/test/asan/TestCases/log-path_test.cpp
    M compiler-rt/test/asan/TestCases/suppressions-exec-relative-location.cpp
    M compiler-rt/test/fuzzer/afl-driver-stderr.test
    M compiler-rt/test/fuzzer/big-file-copy.test
    M compiler-rt/test/fuzzer/cross_over.test
    M compiler-rt/test/fuzzer/merge-control-file.test
    M compiler-rt/test/fuzzer/merge-posix.test
    M compiler-rt/test/fuzzer/seed_inputs.test
    M compiler-rt/test/lit.common.cfg.py
    M compiler-rt/test/sanitizer_common/TestCases/sanitizer_coverage_trace_pc_guard.cpp
    M compiler-rt/test/sanitizer_common/TestCases/suffix-log-path_test.c
    M compiler-rt/test/tsan/Darwin/dlopen.cpp
    M compiler-rt/test/tsan/Darwin/dyld-insert-libraries.c
    M compiler-rt/test/tsan/Darwin/write-interpose.c

  Log Message:
  -----------
  [compiler-rt] [Darwin] Add darwin-remote feature for remote darwin test targets (#174905)

Some tests are already supported on "remote" devices and simulators.
However, there is currently no way to distinguish a remote macOS host
from a local one.

This adds the darwin-remote feature which is common to all test targets
which use a wrapper script (e.g. iossim_run.py).

rdar://167735355

---------

Co-authored-by: Dan Blackwell <danblackwell95 at gmail.com>


  Commit: ad73bacf7aa02bc4ed1655dff6c9864ea24affde
      https://github.com/llvm/llvm-project/commit/ad73bacf7aa02bc4ed1655dff6c9864ea24affde
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/Maintainers.md

  Log Message:
  -----------
  [lldb] Nominate Charles Zablit and Nerixyz as Windows maintainers (#175035)

As the lead maintainer, I've been asked by the project council to
confirm that we have an up-to-date list of active maintainers for LLDB.

In light of that, I'd like to nominate Charles and Nerixyz as Windows
maintainers.

As a reminder, our community policies regarding the responsibilities of
maintainers can be found here:
https://llvm.org/docs/DeveloperPolicy.html#maintainers.


  Commit: 65f39fde2bb97ef9e7d4a59c4d08a9df77be985e
      https://github.com/llvm/llvm-project/commit/65f39fde2bb97ef9e7d4a59c4d08a9df77be985e
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Host/windows/ProcessLauncherWindows.h
    M lldb/source/Host/windows/ProcessLauncherWindows.cpp

  Log Message:
  -----------
  [NFC][lldb][windows] extract the InitializeProcThreadAttributeList logic (#175016)


  Commit: 8ab6b38dab63fda49e6294e3b0d847ae491d7701
      https://github.com/llvm/llvm-project/commit/8ab6b38dab63fda49e6294e3b0d847ae491d7701
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.h
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/Makefile
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/TestDataFormatterStdOrdering.py
    A lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/ordering/main.cpp

  Log Message:
  -----------
  [lldb] Add std::*_ordering summary providers (#174195)

I want to propose adding summary providers for `std::*_ordering` types
introduced in `C++20`. GDB already has pretty-printers for
[them](https://github.com/gcc-mirror/gcc/blob/master/libstdc%2B%2B-v3/python/libstdcxx/v6/printers.py#L1788),
so I think it will be useful.


  Commit: ff617bce04cc05b1348bd2d68edabbd315a38a22
      https://github.com/llvm/llvm-project/commit/ff617bce04cc05b1348bd2d68edabbd315a38a22
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXIL.td
    M llvm/test/CodeGen/DirectX/WaveActiveBallot.ll

  Log Message:
  -----------
  [HLSL] Fix WaveBallot dxil op function name (#174901)

Just fixing a typo from a copy paste.


  Commit: 672a4c3f34ef0ecbef8966050b4d2105f4b6d088
      https://github.com/llvm/llvm-project/commit/672a4c3f34ef0ecbef8966050b4d2105f4b6d088
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/runInTerminal/TestDAP_runInTerminal.py

  Log Message:
  -----------
  [NFC][lldb] fix docstring indentation (#175042)

This patch fixes the indentation of 2 docstrings in
`TestDAP_runInTerminal.py`.

Running `black` on that file with the default settings causes this
change. `darker` does not seem to catch it.

This is a prelude to https://github.com/llvm/llvm-project/pull/174635.


  Commit: 39dd1fd5e163dd9c3f626377ed55faecd592f803
      https://github.com/llvm/llvm-project/commit/39dd1fd5e163dd9c3f626377ed55faecd592f803
  Author: Leonard Grey <lgrey at chromium.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp

  Log Message:
  -----------
  [LLDB][NativePDB] NFC: Add language-agnostic interface to PdbAstBuilder (#173111)

This change implements part of
https://discourse.llvm.org/t/rfc-lldb-make-pdbastbuilder-language-agnostic/89117,
the goal of which is make `PdbAstBuilder` language-agnostic.

It adds several new interface methods to `PdbAstBuilder` which allow
`SymbolFileNativePDB` to interact with it without using Clang-specific
types. These new methods would make up much of the interface of a future
abstract `PdbAstBuilder`. `SymbolFileNativePDB` is updated to use these.

The old Clang-specific methods were renamed if used by
`UdtRecordCompleter` or internally, or removed where possible.


  Commit: fcec9ced47c5b1e2479fa86f7b51a73ba6feb3f7
      https://github.com/llvm/llvm-project/commit/fcec9ced47c5b1e2479fa86f7b51a73ba6feb3f7
  Author: TMJ <tedmjohnson at protonmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/zero_len_char_array.f90

  Log Message:
  -----------
  [flang] Do not error on constant nonzero UB in substring of ZLA (#174511)

A substring reference where the lower bound is higher than the upper
bound is defined in 9.4.1 to be zero-length.

Thus, a reference to a substring of a CHARACTER*(0) string such as

    string(foo():2)

cannot be a compile-time error since we do not know the return value of
foo().

We also should not error if the lbound > ubound at compile time.


  Commit: 4deb16c481c44288bc6a960d36c829d34a378015
      https://github.com/llvm/llvm-project/commit/4deb16c481c44288bc6a960d36c829d34a378015
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/test/Transforms/Attributor/nofpclass.ll

  Log Message:
  -----------
  Attributor: Set up full SimplifyQuery for nofpclass (#174928)

This enables assumes to work. Somehow the most obvious example
I could think of does not work (return of assumed argument).
The context instruction for the return seems to be off by one.


  Commit: f0275bd6ba888d409cf677d498233d3be75cbf6b
      https://github.com/llvm/llvm-project/commit/f0275bd6ba888d409cf677d498233d3be75cbf6b
  Author: Prabhu Rajasekaran <prabhukr at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/docs/CommandGuide/llvm-readelf.rst
    M llvm/docs/CommandGuide/llvm-readobj.rst
    A llvm/test/tools/llvm-readobj/ELF/call-graph-info-warn-malformed.test
    A llvm/test/tools/llvm-readobj/ELF/call-graph-info.test
    M llvm/tools/llvm-readobj/ELFDumper.cpp
    M llvm/tools/llvm-readobj/ObjDumper.h
    M llvm/tools/llvm-readobj/Opts.td
    M llvm/tools/llvm-readobj/llvm-readobj.cpp

  Log Message:
  -----------
  [llvm-readobj] Dump callgraph section info for ELF (#157499)

Introduce a new flag `--call-graph-info` which outputs callgraph ELF
section information to the console as a text output or as JSON output.


  Commit: 43cb4631c1f42dbfce78288b8ae30b5840ed59b3
      https://github.com/llvm/llvm-project/commit/43cb4631c1f42dbfce78288b8ae30b5840ed59b3
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbpexpect.py
    M lldb/source/Interpreter/embedded_interpreter.py
    M lldb/test/API/python_api/file_handle/TestFileHandle.py
    A lldb/test/API/terminal/TestPythonInterpreterEcho.py
    A lldb/test/Shell/ScriptInterpreter/Python/io.test

  Log Message:
  -----------
  [lldb] Fix typed commands not shown on the screen (#174216)

The cause is that in `python3.14`, `fcntl.ioctl` now throws a buffer
overflow error
when the buffer is too small or too large (see
https://github.com/python/cpython/pull/132919). This caused the Python
interpreter to fail terminal detection and not properly echo user
commands back to the screen.

Fix by dropping the custom terminal size check entirely and using the
built-in `sys.stdin.isatty()` instead.

Fixes #173302


  Commit: 4c171a202f0e7fa685793fb9dc57d7c7ed7e0e97
      https://github.com/llvm/llvm-project/commit/4c171a202f0e7fa685793fb9dc57d7c7ed7e0e97
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/test/Lower/allocatables.f90
    M flang/test/Lower/allocate-source-pointers.f90
    M flang/test/Lower/array-constructor-2.f90
    M flang/test/Lower/array-elemental-calls-3.f90
    M flang/test/Lower/array-elemental-calls.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 4) (#174906)

>From this point on, the conversion is done to HLFIR, not to FIR.

Tests converted in Lower: allocatables.f90,
allocate-source-pointers.f90, array-constructor-2.f90,
array-elemental-calls-3.f90, array-elemental-calls.f90


  Commit: 55e508c1339d0bb33b8012e16b93b7ae3a53a419
      https://github.com/llvm/llvm-project/commit/55e508c1339d0bb33b8012e16b93b7ae3a53a419
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/cmake/modules/LLDBConfig.cmake
    M lldb/test/API/CMakeLists.txt

  Log Message:
  -----------
  [lldb] Repair lldb-dotest's framework path (#174658)

lldb-dotest was likely getting LLDB_FRAMEWORK_DIR from another place
before. Now it's undefined when lldb-dotest is configured, so it's an
empty string. Some API tests will fail to link against LLDB.


  Commit: 292c61388d5d7102e355e5cf3c0f46d96c6b55a0
      https://github.com/llvm/llvm-project/commit/292c61388d5d7102e355e5cf3c0f46d96c6b55a0
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/lldb/source/Plugins/Language/CPlusPlus/BUILD.gn

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


  Commit: 700d1f029d00f6c1b6496f148f7d526e690c4643
      https://github.com/llvm/llvm-project/commit/700d1f029d00f6c1b6496f148f7d526e690c4643
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.cpp
    M llvm/test/TableGen/RegClassByHwMode.td
    A llvm/test/TableGen/RegClassByHwModeCompressPat.td
    M llvm/utils/TableGen/CompressInstEmitter.cpp
    M llvm/utils/TableGen/InstrInfoEmitter.cpp

  Log Message:
  -----------
  [TableGen] Support RegClassByHwMode in CompressPat

This does not yet handle all cases but at least for the simple
cases such as:
```
def : CompressPat<(PTR_MOV PtrRC:$dst, PtrRC:$src),
                  (PTR_MOV_SMALL PtrRC:$dst, PtrRC:$src)>;
```
tablegen generates sensible code instead of emitting confusing errors.

Reviewed By: arsenm

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


  Commit: 14af55c53acf12edfbe1f79d15d570660aafcecc
      https://github.com/llvm/llvm-project/commit/14af55c53acf12edfbe1f79d15d570660aafcecc
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    M lldb/source/Plugins/SymbolFile/NativePDB/UdtRecordCompleter.cpp

  Log Message:
  -----------
  [LLDB][PDB] NFC: Change ToCompilerDecl(Context) signature (#175052)

Follow-up to https://github.com/llvm/llvm-project/pull/173111

`ToCompilerDeclContext` and `ToCompilerDecl` take their arguments as
references, but all callers are pointers. This changes the signature to
take pointers, then addresses the comments at
https://github.com/llvm/llvm-project/pull/173111#discussion_r2673140167


  Commit: 289a3292be0c6a3df86bcdf5be7dd05b79a5570c
      https://github.com/llvm/llvm-project/commit/289a3292be0c6a3df86bcdf5be7dd05b79a5570c
  Author: Jonathan Cohen <joncoh at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/EarlyIfConversion.cpp
    M llvm/test/CodeGen/AArch64/early-ifcvt-likely-predictable.mir

  Log Message:
  -----------
  [EarlyIfConversion] Fix loop invariant operands check (#174765)

Fixes a bug in the check which prevented walking up the operands
of the branch condition beyond the operands to the branch instruction
itself.


  Commit: c379a88c09af4657d609888a46ada7719b2c9da9
      https://github.com/llvm/llvm-project/commit/c379a88c09af4657d609888a46ada7719b2c9da9
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [NFC][AMDGPU] Reorganize features for gfx125x (#175054)


  Commit: 21a1e6e6a70d70635c68b9aaa54f816ae36a6416
      https://github.com/llvm/llvm-project/commit/21a1e6e6a70d70635c68b9aaa54f816ae36a6416
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/test/API/python_api/file_handle/TestFileHandle.py
    M lldb/test/Shell/ScriptInterpreter/Python/io.test

  Log Message:
  -----------
  [lldb] skip the python interactive I/O test on windows (#175055)

There is no indication this ever worked on windows as this is the first
test that checks python interactive console from a file.

Looking at the error from the CI, It closed the interpreter before
running any python commands.
Will reconfirm this when I have access to a windows machine. 


>From https://github.com/llvm/llvm-project/pull/174216


  Commit: 708663c8e6892891d401f8477e6d68759d1a792d
      https://github.com/llvm/llvm-project/commit/708663c8e6892891d401f8477e6d68759d1a792d
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/AMDGPU/local-stack-alloc-sort-framerefs.mir

  Log Message:
  -----------
  Precommit test for PR #171012 (#171013)

This patch precommits a test where base offsets are negative. PR
[171012](https://github.com/llvm/llvm-project/pull/171012 ) will
eliminate negative offsets by sorting the scratch instructions.


  Commit: 6e1acd061e74f44df6d53d54c78d1e50790456a8
      https://github.com/llvm/llvm-project/commit/6e1acd061e74f44df6d53d54c78d1e50790456a8
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/X86/multi-parent-instr-copyable-regular.ll

  Log Message:
  -----------
  [SLP]Update deps for copyables operands, if the user is used several times in node

If the user instruction is used several times in the node, and in one
cases its operand is copyable, but in another is not, need to check all
operands to be sure we do not miss scheduling


  Commit: 8c830d3117e0f19fceb9a2657562831c350d438f
      https://github.com/llvm/llvm-project/commit/8c830d3117e0f19fceb9a2657562831c350d438f
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Merge cases inferring type of operand 0 (NFC).

Merge all cases that infer the scalar type of operand 0 in
inferScalarTypeForRecipe(const VPInstruction).


  Commit: f79f50cd547d0582af15aebd3a0413136b9311ae
      https://github.com/llvm/llvm-project/commit/f79f50cd547d0582af15aebd3a0413136b9311ae
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/include/flang/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.h
    M flang/lib/Optimizer/OpenACC/Support/CMakeLists.txt
    M flang/lib/Optimizer/OpenACC/Support/FIROpenACCOpsInterfaces.cpp
    M flang/lib/Optimizer/OpenACC/Support/RegisterOpenACCExtensions.cpp
    A flang/test/Fir/CUDA/cuf-offload-livein-value-canonicalization.fir
    A flang/test/Fir/OpenACC/offload-livein-value-canonicalization.fir
    M mlir/include/mlir/Dialect/OpenACC/OpenACCBase.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOps.td
    M mlir/include/mlir/Dialect/OpenACC/OpenACCOpsInterfaces.td
    M mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
    M mlir/lib/Dialect/OpenACC/IR/CMakeLists.txt
    M mlir/lib/Dialect/OpenACC/IR/OpenACC.cpp
    M mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
    A mlir/lib/Dialect/OpenACC/Transforms/OffloadLiveInValueCanonicalization.cpp
    A mlir/test/Dialect/OpenACC/offload-livein-value-canonicalization.mlir

  Log Message:
  -----------
  [mlir][acc] Add OffloadLiveInValueCanonicalization pass (#174671)

Introduce a pass to canonicalize live-in values for regions that will be
outlined for device execution.

When a region is outlined, values defined outside but used inside become
arguments to the outlined function. However, some values cannot or
should not be passed as arguments:
- Synthetic types (shape metadata, field indices)
- Constants better recreated inside the region
- Address-of operations for device-resident globals

This pass identifies such values and either sinks the defining operation
into the region (when all uses are inside) or clones it inside (when
uses exist both inside and outside).

To identify target regions in a dialect-agnostic way, this patch
introduces `OffloadRegionOpInterface`. This marker interface allows the
pass to work uniformly across OpenACC compute constructs, GPU
operations, and other offload dialects without hardcoding operation
types. The interface is attached to `acc.parallel`, `acc.kernels`, and
`acc.serial` directly through TableGen. It is also being attached to
`gpu.launch` and `cuf.kernel`, the latter through the FIR OpenACC
extensions.

The pass leverages existing interfaces for candidate detection:
`OutlineRematerializationOpInterface` marks operations producing
non-argument-passable values, while `ViewLikeOpInterface` and
`PartialEntityAccessOpInterface` allow tracing through casts and views
to find original defining operations. OpenACCSupport analysis provides
symbol validation for address-of operations.


  Commit: 4327bb49aa6d77f2b400a45b0f7b6657f8c32342
      https://github.com/llvm/llvm-project/commit/4327bb49aa6d77f2b400a45b0f7b6657f8c32342
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/docs/DeveloperPolicy.rst

  Log Message:
  -----------
  DeveloperPolicy: Add note about legacy bitcode performance (#174720)

Note that bitcode does not attempt to guarantee performance
parity with upgraded bitcode.


  Commit: 6506f92844cfc56f84d1edc42034369eb3369111
      https://github.com/llvm/llvm-project/commit/6506f92844cfc56f84d1edc42034369eb3369111
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.h
    M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.h
    M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
    M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.h
    M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp

  Log Message:
  -----------
  [clang-tidy] Prefer the faster LLVM ADT sets and maps over `std::` ones (#174357)

The LLVM docs give a good description of [why `std::` containers are
slower than LLVM
alternatives](https://llvm.org/docs/ProgrammersManual.html#set). To see
what difference switching to the LLVM ones made, I [reused the
approach](https://github.com/llvm/llvm-project/pull/174237#issuecomment-3707395449)
of measuring how long it takes to run all checks over all standard
library headers (MSVC STL in my case). Using hyperfine (which basically
runs a program multiple times and computes how long it took):
```sh
hyperfine --shell=none './build/release/bin/clang-tidy --checks=* all_headers.cpp -header-filter=.* -system-headers -- -std=c++23'
```
...the results were:

Before:
```
Benchmark 1: ./build/release/bin/clang-tidy --checks=* all_headers.cpp -header-filter=.* -system-headers -- -std=c++23
  Time (mean ± σ):     53.253 s ±  0.089 s    [User: 46.480 s, System: 6.748 s]
  Range (min … max):   53.118 s … 53.440 s    10 runs
```
After:
```txt
Benchmark 1: ./build/release/bin/clang-tidy --checks=* all_headers.cpp -header-filter=.* -system-headers -- -std=c++23
  Time (mean ± σ):     51.798 s ±  0.126 s    [User: 45.194 s, System: 6.575 s]
  Range (min … max):   51.620 s … 51.995 s    10 runs
```

...which is a nice little speedup for just switching some containers. I
didn't investigate which checks in particular were the source of the
speedup though.


  Commit: c36abf67bb2479fcb3ddee942b5c09c60109500d
      https://github.com/llvm/llvm-project/commit/c36abf67bb2479fcb3ddee942b5c09c60109500d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [bazel] Port f79f50c (#175068)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: a209ff855bfaafe7930dd35a1731220e65aebaf9
      https://github.com/llvm/llvm-project/commit/a209ff855bfaafe7930dd35a1731220e65aebaf9
  Author: azwolski <antoni.zwolski at intel.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
    M llvm/test/Transforms/InstCombine/vec_extract_var_elt.ll

  Log Message:
  -----------
  [InstCombine] Limit canonicalization of extractelement(cast) to constant index or same basic block (#166227)

The current canonicalization of extractelement(cast) requires that the
CastInst has only one use. However, when that use occurs inside a loop,
it still satisfies this condition, even though the cast is effectively
used multiple times, once per iteration, rather than truly being used
once.

```cpp
} else if (auto *CI = dyn_cast<CastInst>(I)) {
  // Canonicalize extractelement(cast) -> cast(extractelement).
  // Bitcasts can change the number of vector elements, and they cost
  // nothing.
  if (CI->hasOneUse() && (CI->getOpcode() != Instruction::BitCast)){
 ```
Before
```llvm
%34 = fptosi <4 x float> %33 to <4 x i32>
;/loop{
%40 = extractelement <4 x i32> %34, i32 %36
```
 
  After
 ```llvm
 ;/loop{
 %37 = extractelement <4 x float> %30, i32 %32
 %38 = fptosi float %37 to i32
  ```

After canonicalization, for this particular example, it no longer uses a single instruction to cast the entire vector at once, but instead performs the cast for every element separately, which is less performant.

Ideally, we would like to check if the cast instruction **has one use and that this use is not called inside a loop**. However, InstCombine/InstCombineVectorOps.cpp does not provide utilities like `LoopInfo` to check that. It might be possible to approximate this by analyzing basic block successors or by building a dominance tree, but that may be a costly solution.

A solution to prevent this optimization could be to check if the index is an immediate value and if the use is inside the same basic block as the cast instruction:
```cpp
if (CI->hasOneUse() && (CI->getOpcode() != Instruction::BitCast)) {
    Instruction *U = cast<Instruction>(*CI->user_begin());
    if (U->getParent() == CI->getParent() || isa<ConstantInt>(Index)){
```

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


  Commit: 51c37f4c1e4a5add3de83bcbb1fa59cd88d5704f
      https://github.com/llvm/llvm-project/commit/51c37f4c1e4a5add3de83bcbb1fa59cd88d5704f
  Author: HighW4y2H3ll <zhenghaohuu at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/SampleProf.h
    M llvm/lib/CodeGen/AsmPrinter/CMakeLists.txt
    M llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp
    M llvm/lib/CodeGen/PseudoProbeInserter.cpp
    A llvm/test/Transforms/SampleProfile/pseudo-probe-coro-debug-fix.ll

  Log Message:
  -----------
  [CodeGen] Strip Coroutine suffixes when generating pseudo probe (#173834)

CoroSplit pass now creates separate DWARF symbols with the `.resume`,
`.destroy`, `.cleanup` suffixes.
https://github.com/llvm/llvm-project/pull/141889 But pseudo probes are
created in an earlier pass (`SampleProfileProbePass`) before the
CoroSplit, which creates a mismatch of Function GUIDs between the
original function name and the function names with the coroutine
suffixes during the CodeGen when the AsmPrinter iterates through the
`InlinedAt` chain and generates the `InlineStack`.

This will create mismatched pseudo probes in the final binary and
llvm-profgen will also fail when parsing the pseudo probe section. This
fix simply strips the coroutine suffixes from the inline callers' name,
so the CoroSplit changes will be transparent.


  Commit: aba7d72c8da85c35c5ae4f74f6f86f06414bf93f
      https://github.com/llvm/llvm-project/commit/aba7d72c8da85c35c5ae4f74f6f86f06414bf93f
  Author: Erick Ochoa Lopez <erick.ochoalopez at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/AMDGPUToROCDL/AMDGPUToROCDL.cpp
    M mlir/test/Conversion/AMDGPUToROCDL/amdgpu-to-rocdl.mlir

  Log Message:
  -----------
  [mlir][amdgpu] gfx1250+ lower fat_raw_pointer_cast (#175047)

* numRecords are set to all 1s if out of bounds is not requested.
* set flags correctly to zero.


  Commit: 86b95b0c402ac8fae0fd4d2f62ad412918ad4254
      https://github.com/llvm/llvm-project/commit/86b95b0c402ac8fae0fd4d2f62ad412918ad4254
  Author: Wei Wang <apollo.mobility at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/test/CodeGenCoroutines/coro-attributes.cpp
    A llvm/test/Transforms/SampleProfile/Inputs/coro-annotate.prof
    A llvm/test/Transforms/SampleProfile/coro-annotate.ll

  Log Message:
  -----------
  [SampleProf] Handle coro wrapper function name canonicalization (#174881)

Fix an issue where `FunctionSamples::getCanonicalFnName` incorrectly
canonicalizes coro await suspense wrapper functions to collide with the
coro function itself. This causes the sample annotation to skip coro
function. Canonicalization strips everything comes after the first dot
(.), unless the function attribute
"sample-profile-suffix-elision-policy" is set to "selected", in which
case it strips after the known suffixes. The wrapper function name has
the suffix of ".__await_suspend_wrapper__" + await_kind. Add the
attribute to wrapper function so that the suffix is not stripped.


  Commit: c02da3d903ecde49d1dcc3965658beaa55f99e32
      https://github.com/llvm/llvm-project/commit/c02da3d903ecde49d1dcc3965658beaa55f99e32
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsSPIRVCommon.td
    M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
    M clang/lib/Sema/SemaSPIRV.cpp
    M clang/test/CodeGenSPIRV/Builtins/subgroup.c
    M clang/test/SemaSPIRV/BuiltIns/subgroup-errors.c

  Log Message:
  -----------
  [SPIR-V] Add clang builtin for subgroup shuffles (#174655)

Summary:
This is an attempt to begin filling out some missing pieces to allow
more generic compute code to use SPIR-V flavored builtins. This should
provide the basic shuffle operation. The next most important one is the
ballot, but I don't think we have an IR intrinsic for that yet.

I don't know SPIR-V very well so let me know if this is the proper
function with the proper semantic checks.


  Commit: b86ac2a580d21bd1020906f8887f7851d86f43a7
      https://github.com/llvm/llvm-project/commit/b86ac2a580d21bd1020906f8887f7851d86f43a7
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsSPIRVCommon.td
    A clang/test/CodeGenSPIRV/Builtins/group.c
    M llvm/include/llvm/IR/IntrinsicsSPIRV.td

  Log Message:
  -----------
  [SPIR-V] Add clang builtin for group-wide barrier (#175064)

Summary:
This adds a clang builtin for the existing group sync. I was considering
instead exposing a raw barrier operation and chaining it with a
`__scoped_atomic_thread_fence` but this seemed simpler. Right now this
implies a sequentially consistent memory fence. These semantics should
already match with what's implied with CUDA `__syncthreads`. I'm unsure
if there's a situation where we'd need more control. If we want more
control we'd probably just want to match it up with the scoped atomic
scopes.


  Commit: fdead4dfe4561fbb4527aadfa1a7a7d347d9feb3
      https://github.com/llvm/llvm-project/commit/fdead4dfe4561fbb4527aadfa1a7a7d347d9feb3
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    A bolt/Maintainers.md
    R bolt/Maintainers.txt
    M llvm/Maintainers.md

  Log Message:
  -----------
  [BOLT] Update maintainers list


  Commit: f7b20ec57f499e98409f1c8f403a650e4e94cf80
      https://github.com/llvm/llvm-project/commit/f7b20ec57f499e98409f1c8f403a650e4e94cf80
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-smulh.mir
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-umulh.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_UMULH, G_SMULH (#174555)


  Commit: 5cf92086b78c6797647aaf351f4dd26fbf2244c4
      https://github.com/llvm/llvm-project/commit/5cf92086b78c6797647aaf351f4dd26fbf2244c4
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPULowerKernelAttributes.cpp
    A llvm/test/CodeGen/AMDGPU/implicit-arg-block-count.ll

  Log Message:
  -----------
  [AMDGPU] Optimize block count calculations to the new ABI (#174112)

Summary:
We already have a way to get the block count using the old grid size
lookup and dividing it by the number of threads. We did not want to make
a new intrinsic to do the same thing, so this optimization pattern
matches on this usage to automatically optimize it to the new form. This
should improve performance of old kernels by converting branches into a
simple index lookup and removing the division.


  Commit: 5ab966aacbd8bbe95bf858110569a8205b7f8c79
      https://github.com/llvm/llvm-project/commit/5ab966aacbd8bbe95bf858110569a8205b7f8c79
  Author: Alireza Torabian <alireza.torabian at huawei.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/LoopFuse.cpp
    A llvm/test/Transforms/LoopFusion/pr166356.ll

  Log Message:
  -----------
  [LoopFusion] Non-loop block must be the immediate successor of exit (#175034)

Loop fusion assumes the non-loop block of a guarded adjacent loop is the
immediate successor of its exit block. This patch ensures this condition
is hold and fixes the crash #166356.


  Commit: 583ce49a4088dd85c050b45e03c48b938fa60bff
      https://github.com/llvm/llvm-project/commit/583ce49a4088dd85c050b45e03c48b938fa60bff
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp

  Log Message:
  -----------
  [OFFLOAD] Make L0 provide more information about device to be consistent with other plugins (#172946)

Update information about devices provided by level zero plugin in order
to be more consistent with other plugins.


  Commit: f59d12001fd877e44e25f260db888a352d5ab755
      https://github.com/llvm/llvm-project/commit/f59d12001fd877e44e25f260db888a352d5ab755
  Author: Igor Kudrin <ikudrin at accesssoftek.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Target/Thread.cpp
    M lldb/unittests/Thread/ThreadTest.cpp

  Log Message:
  -----------
  [lldb] Keep the unexpected b/p state for suspended threads (#174264)

This fixes stepping out for a case when two threads reach the
stepping-out target breakpoint simultaneously, but a concurrent thread
executes the breakpoint first. The issue affects platforms with software
breakpoints. The scenario is as follows:

* The `step-out` command is executed for thread `A`.
* `ThreadPlanStepOut` creates a breakpoint at the target location.
* All threads are resumed, because the `step-out` command does not
  suspend other threads.
* Threads `A` and `B` reach the stepping-out address at the same time,
  but `B` executes the breakpoint instruction first.
* `SetThreadStoppedAtUnexecutedBP()` is called for thread `A`, and
  `SetThreadHitBreakpointSite()` is called for thread `B`.
* Thread `B` has no plans to stop at this location, so
  `ThreadPlanStepOverBreakpoint` is scheduled.
* The plan disables the breakpoint and resumes thread `B` with
  `eStateStepping`; for thread `A`, `ShouldResume(eStateSuspended)` is
  called, which clears `m_stopped_at_unexecuted_bp`.
* After the stepping, `ThreadPlanStepOverBreakpoint` finishes, the
  breakpoint is re-enabled, and all threads are resumed.
* At this moment, thread `A` is still at the location of the breakpoint,
  but `m_stopped_at_unexecuted_bp` is cleared, so
  `Thread::SetupToStepOverBreakpointIfNeeded()` schedules
  `ThreadPlanStepOverBreakpoint` for it.
* `ThreadPlanStepOverBreakpoint` steps over the target breakpoint, so
  `ThreadPlanStepOut` can't catch the execution there.


  Commit: 6c5535bd71f33fc8f4bc6e1c4118fb1d18caf0aa
      https://github.com/llvm/llvm-project/commit/6c5535bd71f33fc8f4bc6e1c4118fb1d18caf0aa
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

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

  Log Message:
  -----------
  [SelectionDAG] Unify ISD::LOAD handling in ComputeNumSignBits. NFC (#175060)

Range metadata was handled in a ISD::LOAD case in the main opcode
switch. Extending loads and constant pools were handled with special
code after the main switch. Move this code into the ISD::LOAD case of
the main switch.

There is one slight change here, I put the Op.getResNo() == 0 check
before the range handling. This should be more correct.


  Commit: 125a53ce599dbdbb6eb9f24db1f266fd700561f0
      https://github.com/llvm/llvm-project/commit/125a53ce599dbdbb6eb9f24db1f266fd700561f0
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    R llvm/test/Transforms/SLPVectorizer/X86/multi-parent-instr-copyable-regular.ll

  Log Message:
  -----------
  Revert "[SLP]Update deps for copyables operands, if the user is used several times in node"

This reverts commit 6e1acd061e74f44df6d53d54c78d1e50790456a8 to fix
crashes detected in  https://lab.llvm.org/buildbot/#/builders/25/builds/14678.


  Commit: e4b97eb8a026dcf1f17d0af18f07b47e1b8536e9
      https://github.com/llvm/llvm-project/commit/e4b97eb8a026dcf1f17d0af18f07b47e1b8536e9
  Author: Nathan Corbyn <n_corbyn at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/MachineVerifier/copy-scalable.mir
    M llvm/test/MachineVerifier/generic-vreg-undef-use.mir
    M llvm/test/MachineVerifier/live-ins-01.mir
    M llvm/test/MachineVerifier/live-ins-02.mir
    M llvm/test/MachineVerifier/live-ins-03.mir
    M llvm/test/MachineVerifier/stack-protector-offset.mir
    M llvm/test/MachineVerifier/test_abd_su.mir
    M llvm/test/MachineVerifier/test_adjustsstack.mir
    M llvm/test/MachineVerifier/test_copy.mir
    M llvm/test/MachineVerifier/test_copy_mismatch_types.mir
    M llvm/test/MachineVerifier/test_copy_physregs_x86.mir
    M llvm/test/MachineVerifier/test_g_add.mir
    M llvm/test/MachineVerifier/test_g_addrspacecast.mir
    M llvm/test/MachineVerifier/test_g_assert_align.mir
    M llvm/test/MachineVerifier/test_g_assert_sext.mir
    M llvm/test/MachineVerifier/test_g_assert_sext_register_bank_class.mir
    M llvm/test/MachineVerifier/test_g_assert_zext.mir
    M llvm/test/MachineVerifier/test_g_assert_zext_register_bank_class.mir
    M llvm/test/MachineVerifier/test_g_brindirect_is_indirect_branch.mir
    M llvm/test/MachineVerifier/test_g_brjt.mir
    M llvm/test/MachineVerifier/test_g_brjt_is_indirect_branch.mir
    M llvm/test/MachineVerifier/test_g_bswap.mir
    M llvm/test/MachineVerifier/test_g_build_vector.mir
    M llvm/test/MachineVerifier/test_g_build_vector_trunc.mir
    M llvm/test/MachineVerifier/test_g_bzero.mir
    M llvm/test/MachineVerifier/test_g_concat_vectors.mir
    M llvm/test/MachineVerifier/test_g_constant.mir
    M llvm/test/MachineVerifier/test_g_constant_pool.mir
    M llvm/test/MachineVerifier/test_g_dyn_stackalloc.mir
    M llvm/test/MachineVerifier/test_g_extract.mir
    M llvm/test/MachineVerifier/test_g_extract_subvector.mir
    M llvm/test/MachineVerifier/test_g_fcmp.mir
    M llvm/test/MachineVerifier/test_g_fconstant.mir
    M llvm/test/MachineVerifier/test_g_icmp.mir
    M llvm/test/MachineVerifier/test_g_insert.mir
    M llvm/test/MachineVerifier/test_g_insert_subvector.mir
    M llvm/test/MachineVerifier/test_g_inttoptr.mir
    M llvm/test/MachineVerifier/test_g_invoke_region_start.mir
    M llvm/test/MachineVerifier/test_g_is_fpclass.mir
    M llvm/test/MachineVerifier/test_g_jump_table.mir
    M llvm/test/MachineVerifier/test_g_llround.mir
    M llvm/test/MachineVerifier/test_g_load.mir
    M llvm/test/MachineVerifier/test_g_lround.mir
    M llvm/test/MachineVerifier/test_g_memcpy.mir
    M llvm/test/MachineVerifier/test_g_memcpy_inline.mir
    M llvm/test/MachineVerifier/test_g_memmove.mir
    M llvm/test/MachineVerifier/test_g_memset.mir
    M llvm/test/MachineVerifier/test_g_merge_values.mir
    M llvm/test/MachineVerifier/test_g_minmax.mir
    M llvm/test/MachineVerifier/test_g_phi.mir
    M llvm/test/MachineVerifier/test_g_prefetch.mir
    M llvm/test/MachineVerifier/test_g_ptr_add.mir
    M llvm/test/MachineVerifier/test_g_ptrmask.mir
    M llvm/test/MachineVerifier/test_g_ptrtoint.mir
    M llvm/test/MachineVerifier/test_g_rotr_rotl.mir
    M llvm/test/MachineVerifier/test_g_select.mir
    M llvm/test/MachineVerifier/test_g_sext_inreg.mir
    M llvm/test/MachineVerifier/test_g_sextload.mir
    M llvm/test/MachineVerifier/test_g_shift.mir
    M llvm/test/MachineVerifier/test_g_shuffle_vector.mir
    M llvm/test/MachineVerifier/test_g_splat_vector.mir
    M llvm/test/MachineVerifier/test_g_store.mir
    M llvm/test/MachineVerifier/test_g_trunc.mir
    M llvm/test/MachineVerifier/test_g_ubfx_sbfx.mir
    M llvm/test/MachineVerifier/test_g_ubsantrap.mir
    M llvm/test/MachineVerifier/test_g_unmerge_values.mir
    M llvm/test/MachineVerifier/test_g_vscale.mir
    M llvm/test/MachineVerifier/test_g_zextload.mir
    M llvm/test/MachineVerifier/test_insert_subreg.mir
    M llvm/test/MachineVerifier/test_multiple_errors.mir
    M llvm/test/MachineVerifier/test_phis_precede_nonphis.mir
    M llvm/test/MachineVerifier/test_step-vector.mir
    M llvm/test/MachineVerifier/test_uscmp.mir
    M llvm/test/MachineVerifier/test_vector_reductions.mir
    M llvm/test/MachineVerifier/verifier-generic-extend-truncate.mir
    M llvm/test/MachineVerifier/verifier-generic-types-1.mir
    M llvm/test/MachineVerifier/verifier-generic-types-2.mir
    M llvm/test/MachineVerifier/verifier-phi-fail0.mir
    M llvm/test/MachineVerifier/verifier-phi.mir
    M llvm/test/MachineVerifier/verifier-statepoint.mir
    M llvm/test/MachineVerifier/verify-inlineasmbr.mir
    M llvm/test/MachineVerifier/verify-regbankselected-dbg-undef-use.mir
    M llvm/test/MachineVerifier/verify-regbankselected.mir
    M llvm/test/MachineVerifier/verify-regops.mir
    M llvm/test/MachineVerifier/verify-selected-dbg-undef-use.mir
    M llvm/test/MachineVerifier/verify-selected.mir

  Log Message:
  -----------
  [MachineVerifier](NFC)(TestOnly) Canonicalise top-level MachineVerifier tests (#172527)


  Commit: a1c2882d72efa52cbbe29fa5927d995205e45a05
      https://github.com/llvm/llvm-project/commit/a1c2882d72efa52cbbe29fa5927d995205e45a05
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/Core.h
    M llvm/lib/ExecutionEngine/Orc/Core.cpp
    M llvm/unittests/ExecutionEngine/Orc/CoreAPIsTest.cpp

  Log Message:
  -----------
  [ORC] Add JITDylibDefunct Error. (#174923)

This Error can be returned from operations on JITDylibs that cannot
proceed as the target JITDylib has been closed.

This patch uses the new error to replace an unsafe assertion in
JITDylib::define: If a JITDylib::define operation is run by an in-flight
task after the target JITDylib is closed it should error out rather than
asserting.

See also https://github.com/llvm/llvm-project/issues/174922


  Commit: a1cfcc45cb29904a3c3be80cf32dc2b7530cd338
      https://github.com/llvm/llvm-project/commit/a1cfcc45cb29904a3c3be80cf32dc2b7530cd338
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [CodeGen] add RuntimeLibraryInfoWrapper pass to addPassesToEmitMC  (#174682)

Register RuntimeLibraryInfoWrapper with the pass manager, following the
change in 04c81a99735c, so that codegen in JIT compiler using ORC JIT is
working correctly.
In our downstream target, memcpy was lowered to a loop because
RuntimeLibraryInfo was missing.


  Commit: 2ac0dbdf5015e444dd6ef9f30027448e3b56ce59
      https://github.com/llvm/llvm-project/commit/2ac0dbdf5015e444dd6ef9f30027448e3b56ce59
  Author: Sterling-Augustine <saugustine at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/BackendUtil.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/sframe.c
    A clang/test/Misc/cc1as-sframe.s
    M clang/tools/driver/cc1as_main.cpp

  Log Message:
  -----------
  [SFrame][Retry] Add assembler option --gsframe (#165806)

This plumbs the option --gsframe through the various levels needed to
support it in the assembler.

This is the final step in assembler-level sframe support for x86. With
it in place, clang produces sframe-sections that successfully link with
gnu-ld.

LLD support is pending some discussion.

The previous PR (https://github.com/llvm/llvm-project/pull/165322) had a
bad merge, but the only comments were as below. Both done.

1. Fix some stray formatting.
2. Add tests that:

the option is passed on to cc1
the correct error is emitted when an unsupported platform is used
the assembler behaves as expected (even if this has been tested
elsewhere, an end-to-end "integration" test would be useful)

The test for assembler behavior simply checks that an sframe section is
added, and is modeled after the similar one for crel.


  Commit: 3fd745f73d4079c04a9884d1cb79a2fa4bc6a361
      https://github.com/llvm/llvm-project/commit/3fd745f73d4079c04a9884d1cb79a2fa4bc6a361
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Basic/DarwinSDKInfo.cpp

  Log Message:
  -----------
  [clang][driver][darwin] Report bad SDKSettings as a fatal error rather than unreachable (#175073)

Fatal error is more appropriate than unreachable when the SDKSettings is
not in a recognized form (encountered in a few tests with incomplete
SDKSettings.json).


  Commit: 51f6c5879315d7a64180a699ff6e1c467da930ba
      https://github.com/llvm/llvm-project/commit/51f6c5879315d7a64180a699ff6e1c467da930ba
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h

  Log Message:
  -----------
  [mlir][Python] fix namespace shadowing on MSVC (#175077)

If you set `MLIR_PYTHON_BINDINGS_DOMAIN=mlir`, you get namespace nesting
like `mlir::python::mlir` and then `mlir::Twine` shadows `llvm::Twine`
(but only on MSVC). So prefix with `::llvm` to have the correct root
namespace.

Co-authored-by: Abhishek Varma <abhvarma at amd.com>


  Commit: 03ad3d2e8ff61b28a51de8ba904989f00eec1e95
      https://github.com/llvm/llvm-project/commit/03ad3d2e8ff61b28a51de8ba904989f00eec1e95
  Author: Anshil Gandhi <95053726+gandhi56 at users.noreply.github.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/LocalStackSlotAllocation.cpp
    M llvm/test/CodeGen/AMDGPU/flat-scratch-alloca-issue-155902.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-add-references.gfx10.mir
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-block-sp-reference.ll
    M llvm/test/CodeGen/AMDGPU/local-stack-alloc-sort-framerefs.mir
    M llvm/test/CodeGen/Thumb/frame-chain.ll

  Log Message:
  -----------
  [CodeGen] Consider imm offsets when sorting framerefs (#171012)

LocalStackSlotAllocation pass disallows negative offsets with respect to
a base register. The pass ends up introducing a new register for such
frame references. This patch helps LocalStackSlotAlloca to additionally
consider the immediate offset of an instruction, when sorting frame refs
- hence, avoiding negative offsets and maximizing reuse of the existing
registers.


  Commit: a651edf6e6b360fe213f64ae0bad2ded2e033760
      https://github.com/llvm/llvm-project/commit/a651edf6e6b360fe213f64ae0bad2ded2e033760
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/lib/Headers/gpuintrin.h
    M clang/test/Headers/gpuintrin.c

  Log Message:
  -----------
  [Clang] Make gpuintrin out of range grid dimension accessors match OpenCL (#174605)

Summary:
Currently these return an unreachable / invalid value if used out of
range. This PR changes this to match the OpenCL behavior to both give it
a defined value and make it easier to use in those contexts.


  Commit: f90cbc61afa44d59efca2af3f2814e49aad6c517
      https://github.com/llvm/llvm-project/commit/f90cbc61afa44d59efca2af3f2814e49aad6c517
  Author: Nick Sarnie <nick.sarnie at intel.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M offload/test/tools/llvm-omp-device-info.c

  Log Message:
  -----------
  [offload][lit] Enable llvm-omp-device-info.c on Intel GPUs (#175084)

It's XPASSing after https://github.com/llvm/llvm-project/pull/172946.

https://lab.llvm.org/staging/#/builders/225/builds/313

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


  Commit: bfd139dacd52e4b2b1af22666846f4e3c5b52a02
      https://github.com/llvm/llvm-project/commit/bfd139dacd52e4b2b1af22666846f4e3c5b52a02
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/docs/Status/Cxx2cIssues.csv
    M libcxx/include/__numeric/midpoint.h
    M libcxx/test/std/numerics/numeric.ops/numeric.ops.midpoint/midpoint.verify.cpp

  Log Message:
  -----------
  [libc++] Fix LWG 4265: std::midpoint should not accept const bool (#174579)

Fixes: #171324

---------

Co-authored-by: Hristo Hristov <hghristov.rmm at gmail.com>


  Commit: 208687e4a308917f16a188f2785ce77e6ca5487f
      https://github.com/llvm/llvm-project/commit/208687e4a308917f16a188f2785ce77e6ca5487f
  Author: HighW4y2H3ll <zhenghaohuu at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/SampleProfile/pseudo-probe-coro-debug-fix.ll

  Log Message:
  -----------
  [SampleProfile] Fix pseudo-probe-coro-debug-fix.ll to only x86 targets (#175093)

Test case in https://github.com/llvm/llvm-project/pull/173834 is failing
on non-x86 targets. Adding `REQUIRES: x86-registered-target` to fix the
failures.


  Commit: 7a22bea5125a051012f1a44be460bd38d9e5d0d1
      https://github.com/llvm/llvm-project/commit/7a22bea5125a051012f1a44be460bd38d9e5d0d1
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/test/CodeGen/WebAssembly/libcalls.ll
    M llvm/test/CodeGen/WebAssembly/simd-unsupported.ll

  Log Message:
  -----------
  [WebAssembly] Expand vector frem instructions (#174854)

Commit
https://github.com/llvm/llvm-project/commit/6ad41bcc498b7c186ceb54616c3697fc9873c04a
changed how frem is expanded during legalization and it
broke WebAssembly but we were missing test coverage. We want to maintain
our previous behavior of unrolling vectors and using a libcall to
implement scalar frem. I'm not sure why this now has to be different
(in ISelLowering) from other libcalls like fsin which work the same way
in the end, but this code does accurately describe what we want.

Fixes: https://github.com/emscripten-core/emscripten/issues/25991


  Commit: 568b8e4873b2d04be7ab302246c8e3986ea61176
      https://github.com/llvm/llvm-project/commit/568b8e4873b2d04be7ab302246c8e3986ea61176
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M flang/include/flang/Parser/dump-parse-tree.h
    M flang/include/flang/Parser/parse-tree-visitor.h
    M flang/include/flang/Parser/parse-tree.h
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Parser/parse-tree.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/check-case.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [flang] Add traits to several AST nodes (#175065)

There are quite a few AST nodes that don't have any of the standard
traits (Wrapper/Tuple/etc). Because of that they require special
handling in the parse tree visitor.

Convert a subset of these nodes to the typical format, and remove the
special cases from the parse tree visitor.


  Commit: 6de75a97c3861a27e173ed478712ebb26c72f793
      https://github.com/llvm/llvm-project/commit/6de75a97c3861a27e173ed478712ebb26c72f793
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/test/clang-doc/json/class.cpp

  Log Message:
  -----------
  [clang-doc] Add protected methods to class template (#174884)

Protected method tags already existed in the class template, but they didn't conform to the current JSON scheme.


  Commit: 3b0107113927279780e7faa3b6de7ba2ee06e4ac
      https://github.com/llvm/llvm-project/commit/3b0107113927279780e7faa3b6de7ba2ee06e4ac
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang/test/CMakeLists.txt

  Log Message:
  -----------
  [clang][test] Rebuild lld if the clang driver tests will use it (#174512)

The clang driver tests use lld, so set that as a dependency.


  Commit: d0673797a886681e91ec7a82b5ca0f2a1c00d350
      https://github.com/llvm/llvm-project/commit/d0673797a886681e91ec7a82b5ca0f2a1c00d350
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenACC/Transforms/OffloadLiveInValueCanonicalization.cpp

  Log Message:
  -----------
  [mlir][acc] Fix unused variable warning in non-asserts build (#175101)

f79f50cd547d0582af15aebd3a0413136b9311ae added a pass that has an
iteration variable that is only used behind a LLVM_DEBUG macro which are
no-op in release builds, thus leaving the variable unused.


  Commit: 5f531ee77565343d3cb89d76c6b19601873ee835
      https://github.com/llvm/llvm-project/commit/5f531ee77565343d3cb89d76c6b19601873ee835
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/BoundsChecking.cpp
    A llvm/test/Instrumentation/BoundsChecking/big-function.ll

  Log Message:
  -----------
  [BoundsChecking] Clamp trap ID if it would overflow (#175103)

This was exposed by a83c89495ba6fe0134dcaa02372c320cc7ff0dbf. We were
trying to create 8-bit integers to represent the size of the function,
which might be larger than what can fit in an 8-bit integer. This patch
clamps the argument and adds a regression test.


  Commit: 4fa0767591b8dad1bc28dd5d82d64a197c74f9eb
      https://github.com/llvm/llvm-project/commit/4fa0767591b8dad1bc28dd5d82d64a197c74f9eb
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp

  Log Message:
  -----------
  [clang-doc] Don't serialize non-existant locations in HTML (#174887)

The function template didn't check to see if a `Location` existed before
emitting the definition location line.


  Commit: d27672b5d2d1387b83e01b3c321f8fbe0740b608
      https://github.com/llvm/llvm-project/commit/d27672b5d2d1387b83e01b3c321f8fbe0740b608
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx12-wmma-w32.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-gfx12-wmma-w64.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-raytracing.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-wmma-w32.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-wmma-w64.hip

  Log Message:
  -----------
  [AMDGPU] Modifies raytracing and wmma builtin def to take _Float16 for HIP/C++ (#175039)

For raytrace and wmma builtins, using 'x' in the def to take _Float16
for HIP/C++ and half for OpenCL.


  Commit: bafbf2d58decf3f90be1675320f9ebf86582a9fc
      https://github.com/llvm/llvm-project/commit/bafbf2d58decf3f90be1675320f9ebf86582a9fc
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/TargetParser/RISCVISAInfo.cpp
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Add rules for Zca+Zcb+Zcmp+Zcmpt implying Zce. (#175041)

The implication rules need to consider whether F is enabled like was
done for C in #172860.


  Commit: 906b48616c03948a4df62a5a144f7108f3c455e8
      https://github.com/llvm/llvm-project/commit/906b48616c03948a4df62a5a144f7108f3c455e8
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/BacktraceTools.h
    A llvm/lib/ExecutionEngine/Orc/BacktraceTools.cpp
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    A llvm/test/ExecutionEngine/JITLink/Generic/backtrace-symbolication.ll
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [ORC] Add utilities for limited symbolication of JIT backtraces (#175099)

This patch adds tools for capturing symbol information from JIT'd code
and using it to symbolicate backtraces. This is useful for debugging
crashes in JIT-compiled code where traditional symbolication tools may
not have access to the JIT symbol table. These tools are not a general
solution to the JIT symbolication problem (that will require further
integration with system components like libunwind, the dynamic linker,
and/or crash tracing tools), but will aid in JIT debugging and
development until a general solution is available.

APIs Added:

1. SymbolTableDumpPlugin - A LinkGraphLinkingLayer::Plugin that captures
symbol information as code is JIT'd and writes it to a file.

- Create(StringRef Path) ->
Expected<std::shared_ptr<SymbolTableDumpPlugin>> Creates a plugin that
appends symbol information to the specified file.

- Symbol table format: "<link graph name>" <address> <symbol name>
<address> <symbol name> ...

The plugin uses a PostAllocationPass to write symbols after addresses
have
   been assigned but before the code is finalized.

2. DumpedSymbolTable - A class for symbolicating backtraces using a
previously dumped symbol table.

- Create(StringRef Path) -> Expected<DumpedSymbolTable> Loads and parses
a symbol table from a file.

- symbolicate(StringRef Backtrace) -> std::string Given text of a
backtrace, for rows ending with a hex address, adds the symbol name,
offset, and defining graph name.

New `llvm-jitlink` Command Line Options:

1. -write-symtab=<path> Enables the SymbolTableDumpPlugin to write
symbol information to the specified file as objects are JIT'd. The
symbol table can then be used to symbolicate backtraces from crashes or
signal handlers.

2. -symbolicate-with=<path> Runs llvm-jitlink in symbolication mode.
Reads the symbol table from <path> and symbolicates backtraces read from
stdin or input files.

Usage Examples:

$ llvm-jitlink -write-symtab=symbols.txt mycode.o

$ llvm-jitlink -symbolicate-with=symbols.txt - < backtrace.txt


  Commit: 2daf3216607fec7a68686c194f75cac3e9630da4
      https://github.com/llvm/llvm-project/commit/2daf3216607fec7a68686c194f75cac3e9630da4
  Author: Kshitij Paranjape <kshitijvparanjape at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
    A llvm/test/Transforms/InstCombine/hyperbolic-functions.ll

  Log Message:
  -----------
  [InstCombine] Add support for Instruction combining of hyperbolic functions (#173730)

Fixes llvm/llvm-project#173706


  Commit: 631645cae8dcaa3d0521e12dcc2ff81087494358
      https://github.com/llvm/llvm-project/commit/631645cae8dcaa3d0521e12dcc2ff81087494358
  Author: Dan Liew <dan at su-root.co.uk>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/InstrumentationRuntime/BoundsSafety/InstrumentationRuntimeBoundsSafety.cpp

  Log Message:
  -----------
  [LLDB] Improve the logging output from InstrumentationRuntimeBoundsSafety plugin (#175082)

This change makes several improvements:

* Adds some additional logging in the
`InstrumentationBoundsSafetyStopInfo` constructor. In particular logging
is now emitted along the success path so we can see what the plugin
computed.
* `ComputeStopReasonAndSuggestedStackFrame` now logs if the debug info
vs no debug info path is taken.
* `CheckIfRuntimeIsValid` now prints the correct module path. Previously
it always printed `<unknown module>`.
* `Deactivate` now prints the breakpoint number correctly. Previously
this would try to print signed breakpoints IDs as unsigned. This problem
was observable because internal breakpoints use negative breakpoint IDs.

rdar://167797706


  Commit: 451ca458cf51d553f5c49e67d841280e8166f933
      https://github.com/llvm/llvm-project/commit/451ca458cf51d553f5c49e67d841280e8166f933
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    A llvm/test/ExecutionEngine/JITLink/AArch64/backtrace-symbolication.s
    R llvm/test/ExecutionEngine/JITLink/Generic/backtrace-symbolication.ll

  Log Message:
  -----------
  [llvm-jitlink] Replace IR backtrace symbolication testcase with asm. (#175117)

Some builds (e.g.
https://lab.llvm.org/buildbot/#/builders/154/builds/26180) failed for
this testcase, for reasons that aren't immediately clear from the logs.

Since the options being tested are for debugging only, this commit
switches to testing Darwin/arm64 only.

Whne similar backtrace symbolication options are added to lli we can
reintroduce a generic testcase and start investigating these failures.


  Commit: 6902f3310e172afcb9d4f4eb78ecad2b6fc0608a
      https://github.com/llvm/llvm-project/commit/6902f3310e172afcb9d4f4eb78ecad2b6fc0608a
  Author: Boyao Wang <wangboyao at bytedance.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRedundantCopyElimination.cpp
    A llvm/test/CodeGen/RISCV/redundant-copy-elim.ll
    M llvm/test/CodeGen/RISCV/zibi.ll

  Log Message:
  -----------
  [RISCV] Add support for Zibi experimental extension in RISCVRedundantCopyElimination (#174920)

This patch is like what Xqcibi did in https://github.com/llvm/llvm-project/pull/174358.


  Commit: a39f6176af14d8a1360f2b77d6d0e2d4be841fc4
      https://github.com/llvm/llvm-project/commit/a39f6176af14d8a1360f2b77d6d0e2d4be841fc4
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlow/DeadCodeAnalysis.cpp
    M mlir/test/lib/Analysis/DataFlow/TestDenseBackwardDataFlowAnalysis.cpp

  Log Message:
  -----------
  [mlir][dataflow] Use successor.isParent to replace successor.getSuccessor (NFC) (#174615)

When we check the condition. To make the code logic clearer, use
successor.isParent to replace successor.getSuccessor.


  Commit: 8853caf94eba0bd331d723f3b531faee5f39d7e5
      https://github.com/llvm/llvm-project/commit/8853caf94eba0bd331d723f3b531faee5f39d7e5
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Xtensa/XtensaISelLowering.cpp

  Log Message:
  -----------
  [Xtensa] Fix implicit trunc assertion in LowerImmediate

Needed since https://github.com/llvm/llvm-project/pull/171456.

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


  Commit: 1a53a285085710c030fa38d58f357fa0e6312fc8
      https://github.com/llvm/llvm-project/commit/1a53a285085710c030fa38d58f357fa0e6312fc8
  Author: Alexander Richardson <alexrichardson at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/Xtensa/mul.ll

  Log Message:
  -----------
  [Xtensa] Regenerate test/CodeGen/Xtensa/mul.ll to fix test

It appears the codegen for mulhsu_i64 has changed recently. I noticed this
test failing locally since some time in December, so I am not sure which
commit triggered it. The assembly diff is quite large so I haven't reviwed
it.

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


  Commit: 9395381da6021abf24d42356ab054cdbc8f9b1f9
      https://github.com/llvm/llvm-project/commit/9395381da6021abf24d42356ab054cdbc8f9b1f9
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-08 (Thu, 08 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64MIPeepholeOpt.cpp
    M llvm/test/CodeGen/AArch64/aarch64-addv.ll
    M llvm/test/CodeGen/AArch64/aarch64-matrix-umull-smull.ll
    M llvm/test/CodeGen/AArch64/arm64-vector-insertion.ll
    M llvm/test/CodeGen/AArch64/bitcast-extend.ll
    M llvm/test/CodeGen/AArch64/combine-sdiv.ll
    M llvm/test/CodeGen/AArch64/ctpop.ll
    M llvm/test/CodeGen/AArch64/fpclamptosat_vec.ll
    M llvm/test/CodeGen/AArch64/implicitly-set-zero-high-64-bits.ll
    R llvm/test/CodeGen/AArch64/neon-lowhalf128-optimisation.ll
    M llvm/test/CodeGen/AArch64/peephole-insvigpr.mir
    M llvm/test/CodeGen/AArch64/srem-seteq-illegal-types.ll

  Log Message:
  -----------
  Revert "[AArch64] Fold scalar-to-vector shuffles into DUP/FMOV" (#175123)

Reverts llvm/llvm-project#166962

Causes compile time issues in a tensorflow kernel. See the original PR
for discussion.


  Commit: eec258dcf38d527cf23cb4c30af63446b1074c8d
      https://github.com/llvm/llvm-project/commit/eec258dcf38d527cf23cb4c30af63446b1074c8d
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/SemaCXX/constant-expression-p2280r4.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose unknown reference params pre-C++23 (#175013)

Otherwise, we will ultimately create dummy pointers for them and
possibly not diagnose anything.


  Commit: 66d41f848393cdb4253fb1a845e3c277efe53ded
      https://github.com/llvm/llvm-project/commit/66d41f848393cdb4253fb1a845e3c277efe53ded
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrFormats.td
    M llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCTargetDesc.h
    M llvm/test/tools/llvm-exegesis/AArch64/all-opcodes.test
    M llvm/test/tools/llvm-exegesis/AArch64/setReg_init_check.s
    M llvm/tools/llvm-exegesis/lib/AArch64/Target.cpp

  Log Message:
  -----------
  Reapply "[llvm-exegesis] Add AArch64 operand initializers, SetRegTo" (#174729) (#174944)

This reverts commit f68774fd1ad570fef850439ac163b61dc96b98f1. The
original PR broke the sanitizer-aarch64-linux-bootstrap-asan builder:
https://lab.llvm.org/buildbot/#/builders/24/builds/16298

The cause of the failure was exegesis producing inconsistent results
across libc++ implementations when seeded with
'--random-generator-seed=<seed>'. The failing Buildbot does a 2-stage
build, in the 1st stage it builds LLVMs libc++ then builds LLVM with it
in the 2nd stage. The exegesis implementation relies on
uniform_int_distribution which doesn't guarantee consistent results
across implementations.

The tests seeded the RNG because FileCheck can't handle the wrap around
constraint of the register pairs, e.g. { v31.1d, v0.1d }. The test is
updated to no longer rely on '--random-generator-seed'. Unfortunately
the tests aren't particularly good anymore, but not sure what else can
be done for now.


  Commit: a2e8394997b99ca803f72b5322afcc3a63421082
      https://github.com/llvm/llvm-project/commit/a2e8394997b99ca803f72b5322afcc3a63421082
  Author: Martin Storsjö <martin at martin.st>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lld/MinGW/Driver.cpp
    M lld/MinGW/Options.td
    M lld/test/MinGW/driver.test

  Log Message:
  -----------
  [LLD] [MinGW] Add the --fat-lto-objects flag (#174962)

This uses the same syntax as the ELF linker (added in
14e3bec8fc3e1f10c3dc57277ae3dbf9a4087b1c), mapping it to the recently
added COFF linker flag in
759fb0a224e85c01fffcd42b1e71a4bea6fc757e.


  Commit: 9f5efd5d03710480e5bf29ffa79d556d0d90f456
      https://github.com/llvm/llvm-project/commit/9f5efd5d03710480e5bf29ffa79d556d0d90f456
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/include/optional
    M libcxx/test/libcxx/utilities/optional/optional.object/optional.object.observe/value_or.compile.pass.cpp
    M libcxx/test/std/utilities/optional/optional.monadic/and_then.pass.cpp
    M libcxx/test/std/utilities/optional/optional.monadic/or_else.pass.cpp
    M libcxx/test/std/utilities/optional/optional.monadic/transform.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/assign_value.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/const_optional_U.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/copy.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.pass.cpp
    A libcxx/test/std/utilities/optional/optional.object/optional.object.assign/emplace.verify.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/move.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/nullopt_t.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.assign/optional_U.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/U.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/const_optional_U.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/copy.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/in_place_t.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/move.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/optional_U.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.ctor/ref_constructs_from_temporary.verify.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.mod/reset.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/bool.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_const_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/dereference_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/has_value.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/op_arrow_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_const_rvalue.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.observe/value_or.pass.cpp
    M libcxx/test/std/utilities/optional/optional.object/optional.object.swap/swap.pass.cpp
    A libcxx/test/std/utilities/optional/optional.object/optional_helper_types.h

  Log Message:
  -----------
  [libc++] Correct `optional<T&>` implementation (#174537)

Resolves #174350

- Several issues were found in the current implementation of
`optional<T&>`
- `value()`, `operator*()`, `and_then()`, `transform()`, `operator->()`
still provided their ref-qualified versions for rvalues and `const&`.
- Using the listed methods on an rvalue `optional<T&>` would cause a
compile failure due to a mismatch in return types.
- On the latter, `operator*`, `operator->` would return `const` for a
`optional<T&>`, which is an incorrect deep const.
- A few constructors were missing (`optional<U>&`), and most
constructors relevant to `optional<T&>` were missing `noexcept`
- Constructors and `emplace` were not correctly constructing a `T&` as
specified in _`convert-ref-init-val`_
- Also corrects the behavior of `value_or` which should return
`remove_cv_t<T>` (in our case `decay_t<_Tp>`)
- Add several test cases to verify behavior, update `value_or` tests


  Commit: 35e540d7801ac8e229fac8ef418ee81414f2f249
      https://github.com/llvm/llvm-project/commit/35e540d7801ac8e229fac8ef418ee81414f2f249
  Author: Younan Zhang <zyn7109 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/Sema/Template.h
    M clang/test/SemaTemplate/concepts.cpp

  Log Message:
  -----------
  [Clang] Let isAnyArgInstantiationDependent handle Null template arguments (#174698)

Unused template parameters, though never referenced during substitution,
must remain in the MLTAL to preserve consistent template parameter
indices.

The null type placeholder plays this role, while
isAnyArgInstantiationDependent() doesn't properly handle this case when
checking nested constraints.

There is no release note because this is a regression from concept
parameter mapping.

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


  Commit: bd87ab123ac6414960755db8fb38d2c320732372
      https://github.com/llvm/llvm-project/commit/bd87ab123ac6414960755db8fb38d2c320732372
  Author: David Green <david.green at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/test/CodeGen/AArch64/arm64-ccmp.ll
    M llvm/test/CodeGen/AArch64/fcmp-fp128.ll
    M llvm/test/CodeGen/AArch64/stack-hazard.ll

  Log Message:
  -----------
  [AArch64] Optimize ANDS(CSET, CSET) to CCMP. (#174919)

We have existing optimizations for and(cset, cset) and or(cset, cset),
converting them to more optimal ccmp chains. This makes use of the same
optimization for ANDS instructions that do not require the result of the
AND (i.e. TSTs). We generate a cmp from a cset, for the flags produced
by the ANDS. This will then be optimised away in many cases, leaving the
ccmp and use of the flags.


  Commit: 1c07ba612d03b05b2ff72f36bd5da6b732f931e4
      https://github.com/llvm/llvm-project/commit/1c07ba612d03b05b2ff72f36bd5da6b732f931e4
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    A llvm/test/Transforms/SeparateConstOffsetFromGEP/negative-i32-offset.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Use getSigned() for accumulated offset

It's a signed quantity.

Fixes the issue reported at:
https://github.com/llvm/llvm-project/pull/171456#issuecomment-3727345950


  Commit: 4684e504a8bd84c8c12c0f4ba47f13f3f7c422c5
      https://github.com/llvm/llvm-project/commit/4684e504a8bd84c8c12c0f4ba47f13f3f7c422c5
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineMulDivRem.cpp
    A llvm/test/Transforms/InstCombine/instcombine-dominance-fixup.ll

  Log Message:
  -----------
  [Instcombine] Ensure simplifyValueKnownNonZero adds instrs in dominance order (#173703)

This was found by a fuzzer I'm working on.  The high-level design is to
randomly generate LLVM IR, run a pass on it, and then run the original
and new IR through the interpreter.  They should produce the same
results.  Right now I'm only fuzzing instcombine.


  Commit: c39f8b47306e0ad494add86313deda07d5e5df3a
      https://github.com/llvm/llvm-project/commit/c39f8b47306e0ad494add86313deda07d5e5df3a
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSelect.cpp
    M llvm/test/Transforms/InstCombine/2012-05-28-select-hang.ll

  Log Message:
  -----------
  [Instcombine] Fix infinite loop in visitSelectInst (#173704)

Doing a nop replaceOperand leads us into an infinite loop here.

This was found by a fuzzer I'm working on.  The high-level design is to
randomly generate LLVM IR, run a pass on it, and then run the original
and new IR through the interpreter.  They should produce the same
results.  Right now I'm only fuzzing instcombine.


  Commit: a4ee3d9d7cdd2c99de796073267c94374e6ebb82
      https://github.com/llvm/llvm-project/commit/a4ee3d9d7cdd2c99de796073267c94374e6ebb82
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/InstructionSimplify.cpp
    M llvm/test/Transforms/InstCombine/minmax-fp.ll

  Log Message:
  -----------
  [Instcombine] Fix crash in foldMinimumMaximumSharedOp (#173705)

We were missing a check that the inner intrinsic is in fact a min/max
op.  We'd crash if it was any other intrinsic!

This was found by a fuzzer I'm working on.  The high-level design is to
randomly generate LLVM IR, run a pass on it, and then run the original
and new IR through the interpreter.  They should produce the same
results.  Right now I'm only fuzzing instcombine.


  Commit: 5243501cca02d7e54294d4bb5de0a85b06c40b7d
      https://github.com/llvm/llvm-project/commit/5243501cca02d7e54294d4bb5de0a85b06c40b7d
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [InstCombine] Guard foldICmpSRemConstant against zero divisors (#173702)

instcombine can create srem X, 0 or icmp ult X, 0 mid-pass when
operands fold to zero, which trips assertions in foldICmpSRemConstant.
Bail out on zero divisors / zero ULT constants instead of asserting,
and add a regression test from the minimized reproducer.

This was found by a fuzzer I'm working on.  The high-level design is to
randomly generate LLVM IR, run a pass on it, and then run the original
and new IR through the interpreter.  They should produce the same
results.  Right now I'm only fuzzing instcombine.


  Commit: affc5f1f9db2fd166e0a2a817b343f971d948cb7
      https://github.com/llvm/llvm-project/commit/affc5f1f9db2fd166e0a2a817b343f971d948cb7
  Author: Luke Hutton <luke.hutton at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir
    M mlir/test/Dialect/Tosa/verifier.mlir

  Log Message:
  -----------
  [mlir][tosa] Add mod_shape op  (#170343)

Adds support for the mod_shape operation after spec change:
https://github.com/arm/tosa-specification/commit/efc88a100e2db06c2d6bc479fa63b26daab899ce.

This includes the operator definition, same rank checks and level checks
during validation. It does not currently include support for folding or
shape inference. This will be added in a later commit.


  Commit: b5401031d6e6588ecd8aefc7f5eefac52c7f8f90
      https://github.com/llvm/llvm-project/commit/b5401031d6e6588ecd8aefc7f5eefac52c7f8f90
  Author: Liao Chunyu <chunyu at iscas.ac.cn>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/RISCV/rvv/vsplats-zfa.ll

  Log Message:
  -----------
  [DAG]Add ISD::SPLAT_VECTOR to TargetLowering::getNegatedExpression (#173967)

Fold splat_vector(fneg(X)) -> splat_vector(-X)
Call the getCheaperNegatedExpression function, and ISD::SPLAT_VECTOR
return NegatibleCost::Cheaper.
This optimization is applied only to the fneg instruction.


  Commit: a218940d39a71f477cdde6946d03ce1ed004e8fc
      https://github.com/llvm/llvm-project/commit/a218940d39a71f477cdde6946d03ce1ed004e8fc
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Lanai/LanaiISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll

  Log Message:
  -----------
  [Lanai] Use `softPromoteHalfType` (#175137)

There are currently no other tests checking `half` so I am unsure how
well supported the type is, but the patch here resolves the op tests.

Fixes the (unlisted) Lanai portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the (unlisted) Lanai portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: 88575340d43c9fbdba213ea29194bb453cc09542
      https://github.com/llvm/llvm-project/commit/88575340d43c9fbdba213ea29194bb453cc09542
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/MSP430/MSP430ISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/MSP430/llvm.sincos.ll

  Log Message:
  -----------
  [MSP430] Use `softPromoteHalfType` (#175139)

Follow suite from other targets.

Fixes the MSP430 portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the MSP430 portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: 2a254d420001935d16ed097ec9b7ec4d876dcebf
      https://github.com/llvm/llvm-project/commit/2a254d420001935d16ed097ec9b7ec4d876dcebf
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/M68k/M68kISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll

  Log Message:
  -----------
  [M68k] Use `softPromoteHalfType` (#175140)

Follow suite from other targets.

Fixes the M68k portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the M68k portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: a06bf00fd141aeb7b2a4d8db481506c0fb4ef910
      https://github.com/llvm/llvm-project/commit/a06bf00fd141aeb7b2a4d8db481506c0fb4ef910
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/VE/VEISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/Generic/half.ll
    M llvm/test/CodeGen/VE/Scalar/fp_extload_truncstore.ll

  Log Message:
  -----------
  [VE] Use `softPromoteHalfType` (#175141)

Follow suite from other targets.

Fixes the (unlisted) VE portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the (unlisted) VE portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: 054ee2f8706b582859fcf96d1771aa68c37d9e6a
      https://github.com/llvm/llvm-project/commit/054ee2f8706b582859fcf96d1771aa68c37d9e6a
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/CSKY/CSKYISelLowering.h
    M llvm/test/CodeGen/CSKY/fpu/fp16-promote.ll
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/Generic/half.ll

  Log Message:
  -----------
  [CSKY] Use `softPromoteHalfType` (#175138)

Follow suite from other targets.

Fixes the C-SKY portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the C-SKY portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: d6d5c5f6a2f468cb5aac7b466d2802841b8d1441
      https://github.com/llvm/llvm-project/commit/d6d5c5f6a2f468cb5aac7b466d2802841b8d1441
  Author: Benjamin Stott <Benjamin.Stott at sony.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    A clang/test/SemaCXX/warn-tsan-atomic-fence.cpp

  Log Message:
  -----------
  [Clang] Warn when `std::atomic_thread_fence` is used with `fsanitize=thread` (#166542)

- ThreadSanitizer currently does not support `std::atomic_thread_fence`,
leading to false positives:
https://github.com/llvm/llvm-project/issues/52942.
- GCC produces a warning when `std::atomic_thread_fence` is used with
`-fsanitize=thread` while Clang doesn't.
- This PR introduces a matching warning in Clang to avoid confusion as
in the linked issue.

---------

Co-authored-by: Aaron Ballman <aaron at aaronballman.com>


  Commit: bcea722c91059d4683ab1ee29f21a66548686823
      https://github.com/llvm/llvm-project/commit/bcea722c91059d4683ab1ee29f21a66548686823
  Author: Paschalis Mpeis <paschalis.mpeis at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M bolt/test/AArch64/epilogue-determination.s

  Log Message:
  -----------
  [BOLT] Fix label in epilogue-determination.s test (#174960)

On RHEL8 we get the following error that may originate from the changed
typo:
```
clang: warning: argument unused during compilation: '-ffreestanding' [-Wunused-command-line-argument]
ld.lld: error: relocation R_AARCH64_ADR_PREL_LO21 cannot be used against symbol '_jmptbl2'; recompile with -fPIC
>>> defined in /tmp/epilogue-determination-7bd9d4.o
>>> referenced by /tmp/epilogue-determination-7bd9d4.o:(.text+0x54)
clang: error: linker command failed with exit code 1 (use -v to see invocation)
```


  Commit: 1be04b7edfe5191bb35b8b7ea345095c9fa5b988
      https://github.com/llvm/llvm-project/commit/1be04b7edfe5191bb35b8b7ea345095c9fa5b988
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/XCore/XCoreISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/XCore/llvm.exp10.ll
    M llvm/test/CodeGen/XCore/llvm.frexp.ll
    M llvm/test/CodeGen/XCore/llvm.sincos.ll

  Log Message:
  -----------
  [XCore] Use `softPromoteHalfType` (#175142)

Follow suite from other targets.

Fixes the XCore portion of
https://github.com/llvm/llvm-project/issues/97975
Fixes the XCore portion of
https://github.com/llvm/llvm-project/issues/97981


  Commit: b7c17ab9576ccd030572872ad1c22de345b5244b
      https://github.com/llvm/llvm-project/commit/b7c17ab9576ccd030572872ad1c22de345b5244b
  Author: Jack Styles <jack.styles at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-taskloop-final.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-grainsize.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-if.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-mergeable.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-nogroup.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-num_tasks.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-priority.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-untied.mlir
    M mlir/test/Target/LLVMIR/openmp-todo.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Add Initial Taskloop Clause Support (#174623)

Following on from the work to implement MLIR -> LLVM IR Translation for
Taskloop, this adds support for the following clauses to be used
alongside taskloop:
- if
- grainsize
- num_tasks
- untied
- Nogroup
- Final
- Mergeable
- Priority

These clauses are ones which work directly through the relevant OpenMP
Runtime functions, so their information just needed collecting from the
relevant location and passing through to the appropriate runtime
function.

Remaining clauses retain their TODO message as they have not yet been
implemented.


  Commit: a484de1e06efc4c80accfa4d8be97575133cb26b
      https://github.com/llvm/llvm-project/commit/a484de1e06efc4c80accfa4d8be97575133cb26b
  Author: Gergo Stomfai <55883018+stomfaig at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstrAVX512.td
    M llvm/lib/Target/X86/X86InstrSSE.td
    M llvm/test/CodeGen/X86/avx512fp16-arith.ll
    M llvm/test/CodeGen/X86/vec_floor.ll

  Log Message:
  -----------
  [X86] Add rewrite pattern for SSE41/AVX1 roundss/sd + blendps/pd (#172056)

Due to a previous PR (https://github.com/llvm/llvm-project/pull/171227),
operations like `_mm_ceil_sd` compile to suboptimal assembly:
```asm
roundsd xmm1, xmm1, 10
blendpd xmm0, xmm1, 1
```
This PR introduces a rewrite pattern to mitigate this, and fuse the corresponding operations.


  Commit: 6c942d894f6741dcab6083a6782a18b539dded98
      https://github.com/llvm/llvm-project/commit/6c942d894f6741dcab6083a6782a18b539dded98
  Author: Amara Emerson <amara at apple.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    A llvm/test/CodeGen/AArch64/sme-streaming-mode-fpr-copy.ll

  Log Message:
  -----------
  [AArch64] Fix using NEON copies in streaming-mode-enable regions. (#174738)

The current checks for if we're allowed to use a NEON copy works based on
the function attributes, which works most of the time. However in one
particular case where a normal function calls a streaming one, there's a
window of time where we enable SM at the call site and the emit a copy for
an outgoing parameter. This copy was lowered to a NEON move which is illegal.

There's also another case where we could end up generating these,
related to zero cycle move tuning features.

Both of these cases is fixed in this patch by walking back from the copy
to look for any streaming mode changes (within the current block). I know
this is pretty ugly but I don't have a better solution right now.

rdar://167439642


  Commit: ddb706bbb04a460fb2741268039c69787dc8b2fc
      https://github.com/llvm/llvm-project/commit/ddb706bbb04a460fb2741268039c69787dc8b2fc
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-task-no-context-struct.mlir
    M mlir/test/Target/LLVMIR/openmp-taskloop-no-context-struct.mlir

  Log Message:
  -----------
  [mlir][OpenMP] Don't allocate task context structure if not needed (#174588)

Don't allocate a task context structure if none of the private variables
needed it. This was already skipped when there were no private variables
at all.


  Commit: 484ee42096f8deeb084c8b36548d09c12b33cde0
      https://github.com/llvm/llvm-project/commit/484ee42096f8deeb084c8b36548d09c12b33cde0
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/CMakeLists.txt
    M libcxx/docs/ABIGuarantees.rst
    M libcxx/docs/VendorDocumentation.rst
    M libcxx/docs/index.rst
    M libcxx/include/__config
    M libcxx/include/__configuration/abi.h
    M libcxx/include/__configuration/availability.h
    M libcxx/include/__ostream/basic_ostream.h
    M libcxx/include/istream
    M libcxx/include/streambuf
    M libcxx/include/valarray
    M libcxx/src/any.cpp
    M libcxx/src/charconv.cpp
    M libcxx/src/condition_variable_destructor.cpp
    M libcxx/src/error_category.cpp
    M libcxx/src/memory.cpp
    M libcxx/src/mutex_destructor.cpp
    M libcxx/src/optional.cpp
    M libcxx/src/string.cpp
    M libcxx/src/valarray.cpp
    M libcxx/src/vector.cpp
    M libcxxabi/CMakeLists.txt

  Log Message:
  -----------
  [libc++] Introduce the notion of a minimum header version (#166074)

Introducing the notion of a minimum header version has multiple
benefits. It allows us to merge a bunch of ABI macros into a single one.
This makes configuring the library significantly easier, since, for a
stable ABI, you only need to know which version you started distributing
the library with, instead of checking which ABI flags have been
introduced at what point. For platforms which have a moving window of
the minimum version a program has been compiled against, this also makes
it simple to remove symbols from the dylib when they can't be used by
any program anymore.


  Commit: 66fa2f9a14e522e238931e12a561e4359af44383
      https://github.com/llvm/llvm-project/commit/66fa2f9a14e522e238931e12a561e4359af44383
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    R libcxx/test/benchmarks/VariantBenchmarks.h
    A libcxx/test/benchmarks/variant.bench.cpp
    R libcxx/test/benchmarks/variant_visit_1.bench.cpp
    R libcxx/test/benchmarks/variant_visit_2.bench.cpp
    R libcxx/test/benchmarks/variant_visit_3.bench.cpp

  Log Message:
  -----------
  [libc++] Refactor variant benchmarks (#174743)

The variant benchmarks are incredibly slow to compile and run currently.
This is due to them being incredibly exhaustive. This is usually a good
thing, but the exhaustiveness makes it prohibitive to actually run the
benchmarks. Even the new, incredibly reduced, set still requires almost
40 seconds to just compile on my system.


  Commit: b6bfb199ccc888021690dbc5428db4f300c7f8f2
      https://github.com/llvm/llvm-project/commit/b6bfb199ccc888021690dbc5428db4f300c7f8f2
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/__vector/vector.h
    M libcxx/include/deque
    M libcxx/test/benchmarks/containers/sequence/sequence_container_benchmarks.h
    M libcxx/test/std/containers/insert_range_helpers.h
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/append_range.pass.cpp
    M libcxx/test/std/containers/sequences/deque/deque.modifiers/prepend_range.pass.cpp
    M libcxx/test/std/containers/sequences/forwardlist/forwardlist.modifiers/prepend_range.pass.cpp
    M libcxx/test/std/containers/sequences/insert_range_sequence_containers.h
    M libcxx/test/std/containers/sequences/list/list.modifiers/append_range.pass.cpp
    M libcxx/test/std/containers/sequences/list/list.modifiers/prepend_range.pass.cpp
    M libcxx/test/std/containers/sequences/vector/vector.modifiers/append_range.pass.cpp

  Log Message:
  -----------
  [libc++] Fix {deque,vector}::append_range assuming too much about the types (#162438)

Currently, `deque` and `vector`'s `append_range` is implemented in terms
of `insert_range`. The problem with that is that `insert_range` has more
preconditions, resulting in us rejecting valid code.

This also significantly improves performance for `deque` in some cases.


  Commit: a5cab90071fbf6f700c95c337d850845ccc9ed9b
      https://github.com/llvm/llvm-project/commit/a5cab90071fbf6f700c95c337d850845ccc9ed9b
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/src/include/overridable_function.h
    M libcxx/src/new.cpp
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++][NFC] Refactor _LIBCPP_OVERRIDABLE_FUNCTION to be a normal attribute macro (#174964)

Currently `_LIBCPP_OVERRIDABLE_FUNCTION` takes the return type, function
name and argument list, but simply constructs the function and adds
attributes without modifying the signature in any way. We can replace
this with a normal attribute macro, making the signature easier to read
and simpler to understand what's actually going on. Since it's an
internal macro we can also drop the `_LIBCPP_` prefix.


  Commit: e91447f44d303222d9bfcbd404cd152966c01630
      https://github.com/llvm/llvm-project/commit/e91447f44d303222d9bfcbd404cd152966c01630
  Author: Tarcísio Fischer <tarcisio.fischer.cco at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lld/ELF/AArch64ErrataFix.cpp
    M lld/ELF/AArch64ErrataFix.h
    M lld/ELF/Arch/AArch64.cpp
    M lld/ELF/Relocations.cpp
    M lld/ELF/Relocations.h
    A lld/test/ELF/aarch64-cortex-a53-843419-thunk-relocation-crash.s

  Log Message:
  -----------
  Fix lld crash using --fix-cortex-a53-843419 (#170495)

Original crash was observed in Chromium, in [1]. The problem occurs in
elf::isAArch64BTILandingPad because it didn't handle synthetic sections,
which can have a nullptr as a buf, so it crashed while trying to read
that buf.

After fixing that, a second issue occurs: When the patched code grows
too
much, it gets far away from the short jump, and the current
implementation
assumes a R_AARCH64_JUMP26 will be enough.

This PR changes the implementation to:
(a) In isAArch64BTILandingPad, checks if a section is synthetic, and
assumes that it'll NOT contain a landing pad, avoiding the buffer check;
(b) Suppress the size rounding for thunks that preceeds section
(Making the situation less likely to happen);
(c) Reimplements the patch by using a R_AARCH64_ABS64 in case the
patched code is still far away.

[1] https://issues.chromium.org/issues/440019454

---------

Co-authored-by: Tarcisio Fischer <tarcisio.fischer at arm.com>


  Commit: ee3bc3def00aa3e5a96d33b1d04fea7294fbd3e1
      https://github.com/llvm/llvm-project/commit/ee3bc3def00aa3e5a96d33b1d04fea7294fbd3e1
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/include/__charconv/traits.h

  Log Message:
  -----------
  [libc++][NFC] Simplify the implementation of __mul_overflowed (#174956)

`__builtin_mul_overflow` does the right thing, even for `char` and
`short`, so the overloads for these types can simply be dropped. We can
also merge the remaining two overloads into a single one now, since we
don't do any dispatching for `char` and `short` anymore.


  Commit: 5ae7bffbb7862900e554b5533144d93b688555dd
      https://github.com/llvm/llvm-project/commit/5ae7bffbb7862900e554b5533144d93b688555dd
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-exegesis/AArch64/setReg_init_check.s

  Log Message:
  -----------
  [llvm-exegesis] Fix intermittent failure in setReg_init_check.s (#175148)

Test is failing intermittently after #174944. The issue this time is the
`WSeqPair`/`XSeqPair` tests fail if the same pair is used as there's
fewer MOVs.

The test was expecting:
```
  0000000000000000 <foo>:
         0: f81e0ffb      str     x27, [sp, #-0x20]!
         4: a90163fa      stp     x26, x24, [sp, #0x10]
         8: d2800006      mov     x6, #0x0                // =0
         c: d2800007      mov     x7, #0x0                // =0
        10: d280001a      mov     x26, #0x0               // =0
        14: d280001b      mov     x27, #0x0               // =0
        18: d2800018      mov     x24, #0x0               // =0
        1c: 48267f1a      casp    x6, x7, x26, x27, [x24]
```
but this can occur:
```
  0000000000000000 <foo>:
         0: f81e0ffb      str     x27, [sp, #-0x20]!
         4: a90153f5      stp     x21, x20, [sp, #0x10]
         8: d2800014      mov     x20, #0x0               // =0
         c: d2800015      mov     x21, #0x0               // =0
        10: d280001b      mov     x27, #0x0               // =0
        14: 48347f74      casp    x20, x21, x20, x21, [x27]
```


  Commit: 7289e0675c77af0c89be3100e308d16e54e4be58
      https://github.com/llvm/llvm-project/commit/7289e0675c77af0c89be3100e308d16e54e4be58
  Author: Neil Phan <hello at neil.place>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    A llvm/test/Transforms/InstCombine/X86/x86-maxmin.ll

  Log Message:
  -----------
  [X86][InstCombine] Generalize SSE/AVX fp MAX/MIN intrinsics to maxnum/minnum (#174806)

Fixes #173270

For x86 SSE/AVX floating point MAX/MIN intrinsics, attempt to generalize
them down into `Intrinsic::maxnum` and `Intrinsic::minnum` given that we
can verify that the inputs are either (PosNormal, NegNormal, PosZero).
This PR uses the `llvm::computeKnownFPClass` to generate the FPClass
bitset to verify if the inputs are of the other FP types (NaN, Inf,
Subnormal, NegZero).


  Commit: 804aa88317ddbdb6e713306d48dbee0443b252b1
      https://github.com/llvm/llvm-project/commit/804aa88317ddbdb6e713306d48dbee0443b252b1
  Author: Tom Eccles <tom.eccles at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    A mlir/test/Target/LLVMIR/openmp-taskloop-cancel.mlir
    A mlir/test/Target/LLVMIR/openmp-taskloop-cancellation-point.mlir

  Log Message:
  -----------
  [MLIR][OpenMP] Support cancel taskgroup inside of taskloop (#174815)

Implementation follows exactly what is done for omp.wsloop and omp.task.
See #137841.

The change to the operation verifier is to allow a taskgroup
cancellation point inside of a taskloop. This was already allowed for
omp.cancel.


  Commit: 781677eca0cdb668b1227dafe739efe512277650
      https://github.com/llvm/llvm-project/commit/781677eca0cdb668b1227dafe739efe512277650
  Author: Sean Fertile <sd.fertile at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M compiler-rt/test/orc/TestCases/Linux/ppc64/ehframe-default.cpp
    M compiler-rt/test/orc/TestCases/Linux/ppc64/lljit-ehframe.cpp
    M compiler-rt/test/orc/TestCases/Linux/ppc64/lljit-initialize-deinitialize.ll
    M compiler-rt/test/orc/TestCases/Linux/ppc64/priority-static-initializer.S
    M compiler-rt/test/orc/TestCases/Linux/ppc64/trivial-cxa-atexit.S
    M compiler-rt/test/orc/TestCases/Linux/ppc64/trivial-static-initializer.S
    M compiler-rt/test/orc/TestCases/Linux/ppc64/trivial-tls-pwr10.test
    M compiler-rt/test/orc/TestCases/Linux/ppc64/trivial-tls.S

  Log Message:
  -----------
  [PPC] Disable some ORC-powerpc64le-linux tests. (#175100)

Tests fail to link when using LLVM C++ library. Disabling the tests
until they can be investigated and the underlying cause identified and
fixed.


  Commit: b28eeb28bea39148738dc375e8a97072a1907e64
      https://github.com/llvm/llvm-project/commit/b28eeb28bea39148738dc375e8a97072a1907e64
  Author: Ties Stuij <ties.stuij at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/CodeGen/TargetLoweringBase.cpp
    M llvm/lib/Target/Hexagon/HexagonISelLowering.cpp
    A llvm/test/CodeGen/AArch64/max-stores-per-mem-ops.ll

  Log Message:
  -----------
  [CodeGen] Generalise Hexagon flags for memop inline thresholds (#172829)

Generalise the Hexagon cmdline options to control if memset, memcpy or memmove intrinsics should be inlined versus calling library functions, so they can be used by all backends:

	•	-max-store-memset
	•	-max-store-memcpy
	•	-max-store-memmove

These flags override the target-specific defaults set in TargetLowering (e.g., MaxStoresPerMemcpy) and allow fine-tuning of the inlining threshold for performance analysis and optimization.

The optsize variants (-max-store-memset-Os, -max-store-memcpy-Os, max-store-memmove-Os) from the Hexagon backend were removed, and now the above options control both.

The threshold is specified as a number of store operations, which is backend-specific. Operations requiring more stores than the threshold will call the corresponding library function instead of being inlined.


  Commit: 30c88f78dd792ee44a19b1eba0bd6b2f90b71b0a
      https://github.com/llvm/llvm-project/commit/30c88f78dd792ee44a19b1eba0bd6b2f90b71b0a
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    R llvm/test/CodeGen/X86/commute-clmul.ll
    A llvm/test/CodeGen/X86/commute-pclmul.ll

  Log Message:
  -----------
  [X86] Rename commute-clmul.ll -> commute-pclmul.ll (#175157)

Avoid confusion with upcoming generic clmul intrinsic handling


  Commit: 6395afa535e9a05bc97ca7876fac1024de8ee17d
      https://github.com/llvm/llvm-project/commit/6395afa535e9a05bc97ca7876fac1024de8ee17d
  Author: Leandro Lupori <leandro.lupori at linaro.org>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp

  Log Message:
  -----------
  [flang] Fix homonymous interface and procedure warning (#171696)

When emitting an homonymous generic interface and procedure warning,
the source locations of the interface and the procedure were being
compared to find the one that occurred later in the source file.

The problem is that they could be in different source/module files,
which makes the comparison invalid.

Fix it by using parser::AllCookedSources::Precedes() instead, that
correctly handle names in different source files.


  Commit: 6cdcce5612e745751f3b2790d682177688bd9c6f
      https://github.com/llvm/llvm-project/commit/6cdcce5612e745751f3b2790d682177688bd9c6f
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td
    M mlir/test/Dialect/LLVMIR/nvvm-target-invalid.mlir

  Log Message:
  -----------
  [MLIR][NVVM] Fix crash on invalid optimization level in NVVMTargetAttr (#173280)

Update `NVVMTargetAttr` builder in `NVVMOps.td` to use `$_get` instead
of `Base::get`.

Now the auto-generated parser calls `getChecked`, allowing graceful
error handling for invalid parameters (e.g., `O=4`) instead of crashing
with an assertion failure.

Add a regression test in
`mlir/test/Dialect/LLVMIR/nvvm-target-invalid.mlir`.

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


  Commit: 687eb2c532e48be9d94e0de1f9bd20a552ccc7d4
      https://github.com/llvm/llvm-project/commit/687eb2c532e48be9d94e0de1f9bd20a552ccc7d4
  Author: Ayumi OHNO <104398221+ayumiohno at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Instrumentation/AllocToken.cpp

  Log Message:
  -----------
  [AllocToken] Fix attribute mismatch in AllocTokenPass (#174959)

Fixes an attribute mismatch error in `AllocTokenPass` that occurs during
ThinLTO builds at OptimizationLevel::O0.

The `getTokenAllocFunction` in `AllocTokenPass` was incorrectly copying
attributes from the instrumented function (`Callee`) to an *existing*
`void()` alloc-token function retrieved by `Mod.getOrInsertFunction`.
This resulted in arg attributes being added to a function with no
parameters, causing `VerifyPass` to fail with "Attribute after last
parameter!".

The fix modifies `getTokenAllocFunction` to pass the `Callee`'s
attributes directly to the `Mod.getOrInsertFunction` overload. This
ensures attributes are only applied when the alloc-token function is
*newly inserted*, preventing unintended attribute modifications on
already existing function declarations.

See https://g-issues.chromium.org/issues/474289092 for detailed
reproduction steps and analysis.

Co-authored-by: Ayumi Ono <ayumiohno at google.com>


  Commit: 8a922e81515b100dafe2c9907a17c6ea917d3a96
      https://github.com/llvm/llvm-project/commit/8a922e81515b100dafe2c9907a17c6ea917d3a96
  Author: liao jun <49445170+zjlcd at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang-rt/lib/runtime/extensions.cpp

  Log Message:
  -----------
  [flang-rt][build] Disable build-time warning of '-Wshift-count-negative' from g++ compiler and remove unsupported floating-point data. (#174915)

When building the flang-rt project with the g++ compiler on Linux-X86_64
machine, the compiler gives the following warning:

```
llvm-project/flang-rt/lib/runtime/extensions.cpp:455:26: warning: left shift count is negative [-Wshift-count-negative]
   455 |     mask = ~(unsigned)0u << ((8 - digits) * 4 + 1);
       |            ~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~

```

All the discussion records see:
https://github.com/llvm/llvm-project/pull/173955

Co-authored-by: liao jun <liaojun at ultrarisc.com>


  Commit: 75fefa30875aae0d13bac5caa15b9d0ed9f48d2d
      https://github.com/llvm/llvm-project/commit/75fefa30875aae0d13bac5caa15b9d0ed9f48d2d
  Author: Jonas Rickert <Jonas.Rickert at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Quant/IR/QuantOps.cpp
    A mlir/test/Dialect/Quant/inlining.mlir

  Log Message:
  -----------
  [MLIR][Quant] Add DialectInlinerInterface to QuantDialect (#172509)

Signed-off-by: Jonas Rickert <jonas.rickert at amd.com>


  Commit: 4772815a8248801edc017db450e17c857df7c17a
      https://github.com/llvm/llvm-project/commit/4772815a8248801edc017db450e17c857df7c17a
  Author: Yexuan Xiao <bizwen at nykz.org>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/TypeBase.h

  Log Message:
  -----------
  [NFC][clang] Fix a typo in Typebase.h (#175163)

This was introduced since 7c402b8b81


  Commit: 82353b50dd8f51833f9ed0fb2988a45f3fdb279b
      https://github.com/llvm/llvm-project/commit/82353b50dd8f51833f9ed0fb2988a45f3fdb279b
  Author: Mikhail Gudim <mgudim at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [CodeGen][NFC] Improve readability of getLocalLiveOutMIDef (#175074)

Reorder some code to make it less confusing.


  Commit: 7eae17e4c40c7c7b42dc9b5ccd18ab4a28a7ad28
      https://github.com/llvm/llvm-project/commit/7eae17e4c40c7c7b42dc9b5ccd18ab4a28a7ad28
  Author: Sergei Barannikov <barannikov88 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/Parse/Parser.h
    M clang/lib/Parse/ParseDecl.cpp
    M clang/test/Sema/attr-modular-format.c

  Log Message:
  -----------
  [clang] Fix string literal parsing on some attributes (#171017)

At the time ParseAttributeArgumentList is called, the first argument
of an attribute may have already been parsed. We need to take this into
account when accessing ParsedAttributeArgumentsProperties mask, which
specifies which of the attribute arguments are string literals.

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


  Commit: 6a5c8944364d9e6e46fe2bb9241454ca49426ccf
      https://github.com/llvm/llvm-project/commit/6a5c8944364d9e6e46fe2bb9241454ca49426ccf
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/SliceWalk.cpp

  Log Message:
  -----------
  [mlir][Analysis][NFC] Improve `RegionBranchOpInterface` API usage (#173983)

Remove a helper function and query the `RegionBranchOpInterface`
instead. (Which does the same thing.) Also add a TODO for a bug in the
implementation of `SliceWalk.cpp`. (The bug is not fixed yet.)


  Commit: 7f5dbbc342756a0ca65acc214c41c0162276c1fd
      https://github.com/llvm/llvm-project/commit/7f5dbbc342756a0ca65acc214c41c0162276c1fd
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_asm.s
    M llvm/test/tools/UpdateTestChecks/update_mc_test_checks/Inputs/amdgpu_asm.s.expected
    M llvm/utils/update_mc_test_checks.py

  Log Message:
  -----------
  [Utils][update_mc_test_checks] Handle double quotes in asm source (#175161)


  Commit: 6b0f4751f998d6ebe49ab9d18153d90ba3be40eb
      https://github.com/llvm/llvm-project/commit/6b0f4751f998d6ebe49ab9d18153d90ba3be40eb
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp8.s
    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_dpp16_from_vop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_salu_lit64.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_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/AMDGPU/gfx12_asm_vop3_from_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop2_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/vop3-literal.s
    M llvm/test/MC/Disassembler/AMDGPU/bf16_imm.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vinterp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp8_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_from_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopc_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopcx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop2.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
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3c_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3cx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopc_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopcx_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/vinterp.txt

  Log Message:
  -----------
  [AMDGPU] Regenerate all MC checks after #164424 (#175156)

Includes one manual fix to add -filetype=null to a RUN line in
test/MC/AMDGPU/gfx1250_asm_sop1.s. Everything else is autogenerated.


  Commit: e82399dac2f1f09319243dc39d9e05c7b9b8c6d2
      https://github.com/llvm/llvm-project/commit/e82399dac2f1f09319243dc39d9e05c7b9b8c6d2
  Author: Kareem Ergawy <kareem.ergawy at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
    M flang/test/Transforms/omp-map-info-finalization-implicit-field.fir
    A offload/test/offloading/fortran/default-mapper-nested-derived-type.f90

  Log Message:
  -----------
  [flang][OpenMP] Prevent `omp.map.info` ops with user-defined mappers from being marked as parial maps (#175133)

The following test was triggering a runtime crash **on the host before
launching the kernel**:
```fortran
program test_omp_target_map_bug_v5
  implicit none
  type nested_type
    real, allocatable :: alloc_field(:)
  end type nested_type

  type nesting_type
    integer :: int_field
    type(nested_type) :: derived_field
  end type nesting_type

  type(nesting_type) :: config

  allocate(config%derived_field%alloc_field(1))

  !$OMP TARGET ENTER DATA MAP(TO:config, config%derived_field%alloc_field)

  !$OMP TARGET
  config%derived_field%alloc_field(1) = 1.0
  !$OMP END TARGET

  deallocate(config%derived_field%alloc_field)
end program test_omp_target_map_bug_v5
```

In particular, the runtime was producing a segmentation fault when the
test is compiled with any optimization level > 0; if you compile with
-O0 the sample ran fine.

After debugging the runtime, it turned out the crash was happening at
the point where the runtime calls the default mapper emitted by the
compiler for `nesting_type; in particular at this point in the runtime:
https://github.com/llvm/llvm-project/blob/c62cd2877cc25a0d708ad22a70c2a57590449c4d/offload/libomptarget/omptarget.cpp#L307.

Bisecting the optimization pipeline using `-mllvm -opt-bisect-limit=N`,
the first pass that triggered the issue on `O1` was the `instcombine`
pass. Debugging this further, the issue narrows down to canonicalizing
`getelementptr` instructions from using struct types (in this case the
`nesting_type` in the sample above) to using addressing bytes (`i8`). In
particular, in `O0`, you would see something like this:
```llvm
define internal void @.omp_mapper._QQFnesting_type_omp_default_mapper(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %3, i64 noundef %4, ptr noundef %5) #6 {
entry:
  %6 = udiv exact i64 %3, 56
  %7 = getelementptr %_QFTnesting_type, ptr %2, i64 %6
  ....
}
```

```llvm
define internal void @.omp_mapper._QQFnesting_type_omp_default_mapper(ptr noundef %0, ptr noundef %1, ptr noundef %2, i64 noundef %3, i64 noundef %4, ptr noundef %5) #6 {
entry:
  %6 = getelementptr i8, ptr %2, i64 %3
  ....
}
```

The `udiv exact` instruction emitted by the OMP IR Builder (see:
https://github.com/llvm/llvm-project/blob/c62cd2877cc25a0d708ad22a70c2a57590449c4d/llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp#L9154)
allows `instcombine` to assume that `%3` is divisible by the struct size
(here `56`) and, therefore, replaces the result of the division with
direct GEP on `i8` rather than the struct type.

However, the runtime was calling
`@.omp_mapper._QQFnesting_type_omp_default_mapper` not with `56` (the
proper struct size) but with `48`!

Debugging this further, I found that the size of `omp.map.info`
operation to which the default mapper is attached computes the value of
`48` because we set the map to partial (see:
https://github.com/llvm/llvm-project/blob/c62cd2877cc25a0d708ad22a70c2a57590449c4d/flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp#L1146
and
https://github.com/llvm/llvm-project/blob/c62cd2877cc25a0d708ad22a70c2a57590449c4d/mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp#L4501-L4512).

However, I think this is incorrect since the emitted mapper (and
user-defined mappers in general) are defined on the whole struct type
and should never be marked as partial. Hence, the fix in this PR.


  Commit: ecc8a955af76458e14fe231447e42bb08d75246b
      https://github.com/llvm/llvm-project/commit/ecc8a955af76458e14fe231447e42bb08d75246b
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/CommandLine.h
    M llvm/lib/ExecutionEngine/Orc/JITTargetMachineBuilder.cpp
    M llvm/lib/Support/CommandLine.cpp
    M llvm/tools/llvm-ar/llvm-ar.cpp
    M llvm/tools/llvm-remarkutil/RemarkSummary.cpp
    M llvm/unittests/Support/CommandLineInit/CommandLineInitTest.cpp
    M llvm/unittests/Support/CommandLineTest.cpp

  Log Message:
  -----------
  [CommandLine] Use DenseMap instead of StringMap (NFC) (#174988)

StringMap duplicates the option name to a new allocation for every
option, which is not necessary. Instead we can use the same StringRef
that the Option already uses inside a DenseMap. This reduces the amount
of allocations when loading libLLVM.


  Commit: ded109c0cff41714ebf9bd60b073aaab07fa4ca8
      https://github.com/llvm/llvm-project/commit/ded109c0cff41714ebf9bd60b073aaab07fa4ca8
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/test/CodeGen/ext-int.c

  Log Message:
  -----------
  [clang][CodeGen] Fix ConstantInt::get for i1 in EmitScalarPrePostIncDec (#175152)

In ScalarExprEmitter::EmitScalarPrePostIncDec we create ConstantInt
values that are either 1 or -1. There is a special case when the type is
i1 (e.g. for unsigned _BitInt(1)) when we need to be able to create a
"i1 true" value for both inc and dec.

To avoid triggering the assertions added by the pull request #171456 we
now treat the ConstantInt as unsigned for increments and as signed for
decrements.


  Commit: ed004cf42bf57ca79b57bc3076ef83a8477426ea
      https://github.com/llvm/llvm-project/commit/ed004cf42bf57ca79b57bc3076ef83a8477426ea
  Author: Hans Wennborg <hans at chromium.org>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll

  Log Message:
  -----------
  Revert "[VPlan] Only use isAddressSCEVForCost in legacy getAddressAccSCEV (NFCI)"

This caused assertion failures:

  llvm/lib/Transforms/Vectorize/LoopVectorize.cpp:7265:
  VectorizationFactor llvm::LoopVectorizationPlanner::computeBestVF():
  Assertion `(BestFactor.Width == LegacyVF.Width || BestPlan.hasEarlyExit() || !Legal->getLAI()->getSymbolicStrides().empty() || UsesEVLGatherScatter || planContainsAdditionalSimplifications( getPlanFor(BestFactor.Width), CostCtx, OrigLoop, BestFactor.Width) || planContainsAdditionalSimplifications( getPlanFor(LegacyVF.Width), CostCtx, OrigLoop, LegacyVF.Width))
  && " VPlan cost model and legacy cost model disagreed"' failed.

see comment on https://github.com/llvm/llvm-project/pull/171204

This reverts commit 01d34eb38fa0587cb95eedd3bada8257abc122f8.


  Commit: d66b9de2343edfb55165da0eb56fc738af898864
      https://github.com/llvm/llvm-project/commit/d66b9de2343edfb55165da0eb56fc738af898864
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/masked_packss.ll
    A llvm/test/CodeGen/X86/masked_packus.ll
    M llvm/test/CodeGen/X86/packss.ll
    M llvm/test/CodeGen/X86/packus.ll

  Log Message:
  -----------
  [X86] Add baseline test coverage for #169995 (#175175)


  Commit: fb47a252add015f5f60f404ad85acb13a3ced27d
      https://github.com/llvm/llvm-project/commit/fb47a252add015f5f60f404ad85acb13a3ced27d
  Author: Charles Zablit <c_zablit at apple.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lldb/test/API/tools/lldb-dap/attach/TestDAP_attach.py

  Log Message:
  -----------
  [lldb-dap] add timeout to spawn_and_wait test utility (#174461)


  Commit: 6bfa042a10a04379261e35a710caadb1c53457c5
      https://github.com/llvm/llvm-project/commit/6bfa042a10a04379261e35a710caadb1c53457c5
  Author: NimishMishra <42909663+NimishMishra at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang/docs/OpenMPSupport.md
    M flang/lib/Lower/OpenMP/OpenMP.cpp
    A flang/test/Lower/OpenMP/composite_simd_linear.f90
    M flang/test/Lower/OpenMP/distribute-parallel-do-simd.f90
    M mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
    M mlir/test/Dialect/OpenMP/ops.mlir
    M mlir/test/Target/LLVMIR/openmp-llvm-invalid.mlir

  Log Message:
  -----------
  [flang][mlir] Add checks and test for linear clause on omp.wsloop and omp.simd (#174916)

This PR adds additional checks and tests for linear clause on omp.wsloop
and omp.simd (both standalone and composite). For composite simd
constructs, the translation to LLVMIR uses the same
`LinearClauseProcessor` under `convertOmpSimd`, as already present in
previous PRs like https://github.com/llvm/llvm-project/pull/150386 and
https://github.com/llvm/llvm-project/pull/139386


  Commit: 8f58ce2d02cec75360881a7e7a7424476ce92c92
      https://github.com/llvm/llvm-project/commit/8f58ce2d02cec75360881a7e7a7424476ce92c92
  Author: Will Froom <willfroom at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for 75fefa3 (#175179)

Co-authored-by: Pranav Kant <prka at google.com>


  Commit: 5c4324326d770bab1628225ebb1a04698a27b59b
      https://github.com/llvm/llvm-project/commit/5c4324326d770bab1628225ebb1a04698a27b59b
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/gpuintrin.h
    A clang/lib/Headers/spirvintrin.h
    M clang/test/Headers/gpuintrin.c
    M clang/test/Headers/gpuintrin_lang.c

  Log Message:
  -----------
  [SPIR-V] Initial support for SPIR-V in `gpuintrin.h` (#174910)

Summary:
https://github.com/llvm/llvm-project/pull/174862 and
https://github.com/llvm/llvm-project/pull/174655 provided the intrinsics
required to get the fundamental operations working for these. This patch
sets up the basic support (as far as I know).

This should be the first step towards allowing SPIR-V to build things
like the LLVM libc and the OpenMP Device Runtime Library. The
implementations here are intentionally inefficient, such as not using
the dedicated SPIR-V opcode for read firstlane. This is just to start
and hopefully start testing things later.

Would appreciate someone more familiar with  the backend double-checking
these.


  Commit: 6f5c214928ab524b6d0f8a4b3e4aac7a703fd0a7
      https://github.com/llvm/llvm-project/commit/6f5c214928ab524b6d0f8a4b3e4aac7a703fd0a7
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md
    M llvm/docs/TableGen/ProgRef.rst
    M llvm/lib/TableGen/TGLexer.cpp
    A llvm/test/TableGen/getsetdagop.td
    R llvm/test/TableGen/getsetop.td

  Log Message:
  -----------
  [TableGen] Remove deprecated !getop and !setop (#175155)

They have been deprecated for more than five years in favor of !getdagop
and !setdagop. See https://reviews.llvm.org/D89814.


  Commit: 89c8a253d7b3fa65189ae5fcb89ce835ade72638
      https://github.com/llvm/llvm-project/commit/89c8a253d7b3fa65189ae5fcb89ce835ade72638
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libcxx/docs/ReleaseNotes/22.rst
    M libcxx/include/__configuration/experimental.h
    M libcxx/include/optional
    M libcxx/include/version
    M libcxx/test/libcxx/experimental/fexperimental-library.compile.pass.cpp
    M libcxx/test/libcxx/utilities/optional/nodiscard.verify.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/optional.version.compile.pass.cpp
    M libcxx/test/std/language.support/support.limits/support.limits.general/version.version.compile.pass.cpp
    M libcxx/test/std/utilities/optional/optional.iterator/begin.pass.cpp
    M libcxx/test/std/utilities/optional/optional.iterator/borrowed_range.compile.pass.cpp
    M libcxx/test/std/utilities/optional/optional.iterator/end.pass.cpp
    M libcxx/test/std/utilities/optional/optional.iterator/iterator.pass.cpp
    M libcxx/utils/generate_feature_test_macro_components.py
    M libcxx/utils/libcxx/test/params.py

  Log Message:
  -----------
  [libc++] Make optional::iterator experimental (#173470)

We haven't yet decided what we want the `optional::iterator` type to be
in the end, so let's make it experimental for now so that we don't
commit to an ABI yet.


  Commit: 3c51ed98701aa08c5fedb6d779530ff25efb6a81
      https://github.com/llvm/llvm-project/commit/3c51ed98701aa08c5fedb6d779530ff25efb6a81
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix initializing array elems from string (#175170)

In the `= {"foo"}` case, we don't have an array filler we can use and we
need to explicitily zero the remaining elements.


  Commit: ff94a19f5ca8fa928517036a287cb3040bec4261
      https://github.com/llvm/llvm-project/commit/ff94a19f5ca8fa928517036a287cb3040bec4261
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Pointer.cpp
    M clang/test/AST/ByteCode/new-delete.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix APValues for arrays in dynamic allocations (#175176)

getType() returns just int for those instead of an array type, so the
previous condition resulted in the array index missing in the APValue's
LValuePath.


  Commit: 475f022cb74cdf3b11c8211ead63122ef8b8c607
      https://github.com/llvm/llvm-project/commit/475f022cb74cdf3b11c8211ead63122ef8b8c607
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    M llvm/lib/Target/AMDGPU/VOP1Instructions.td
    M llvm/lib/Target/AMDGPU/VOP2Instructions.td
    M llvm/lib/Target/AMDGPU/VOP3Instructions.td
    M llvm/lib/Target/AMDGPU/VOPCInstructions.td
    M llvm/lib/Target/AMDGPU/VOPInstructions.td
    A llvm/test/CodeGen/AMDGPU/expert_scheduling_gfx12.mir
    A llvm/test/CodeGen/AMDGPU/function-esm2-prologue-epilogue.ll
    M llvm/test/CodeGen/AMDGPU/loop-prefetch-data.ll

  Log Message:
  -----------
  [AMDGPU] Add support for GFX12 expert scheduling mode 2 (#170319)


  Commit: 77b8b33b5a016038106d396fcc684a8ec404f572
      https://github.com/llvm/llvm-project/commit/77b8b33b5a016038106d396fcc684a8ec404f572
  Author: Alexandre Ganea <aganea at havenstudios.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lld/COFF/Config.h
    M lld/COFF/Driver.cpp
    M lld/COFF/Options.td
    M lld/docs/ReleaseNotes.rst
    M llvm/include/llvm/Support/FileSystem.h
    M llvm/include/llvm/Support/MemoryBuffer.h
    M llvm/lib/Support/MemoryBuffer.cpp
    M llvm/lib/Support/Unix/Path.inc
    M llvm/lib/Support/Windows/Path.inc

  Log Message:
  -----------
  [LLD][COFF] Prefetch inputs early-on to improve link times (#169224)

This PR reduces outliers in terms of runtime performance, by asking the
OS to prefetch memory-mapped input files in advance, as early as
possible. I have implemented the Linux aspect, however I have only
tested this on Windows 11 version 24H2, with an active security stack
enabled. The machine is a AMD Threadripper PRO 3975WX 32c/64t with 128
GB of RAM and Samsung 990 PRO SSD.

I have used a Unreal Engine-based game to profile the link times. Here's
a quick summary of the input data:
```
                                    Summary
--------------------------------------------------------------------------------
               4,169 Input OBJ files (expanded from all cmd-line inputs)
      26,325,429,114 Size of all consumed OBJ files (non-lazy), in bytes
                   9 PDB type server dependencies
                   0 Precomp OBJ dependencies
         350,516,212 Input debug type records
      18,146,407,324 Size of all input debug type records, in bytes
          15,709,427 Merged TPI records
           4,747,187 Merged IPI records
              56,408 Output PDB strings
          23,410,278 Global symbol records
          45,482,231 Module symbol records
           1,584,608 Public symbol records
```

In normal conditions - meanning all the pages are already in RAM - this
PR has no noticeable effect:
```
>hyperfine "before\lld-link.exe @Game.exe.rsp" "with_pr\lld-link.exe @Game.exe.rsp"
Benchmark 1: before\lld-link.exe @Game.exe.rsp
  Time (mean ± σ):     29.689 s ±  0.550 s    [User: 259.873 s, System: 37.936 s]
  Range (min … max):   29.026 s … 30.880 s    10 runs

Benchmark 2: with_pr\lld-link.exe @Game.exe.rsp
  Time (mean ± σ):     29.594 s ±  0.342 s    [User: 261.434 s, System: 62.259 s]
  Range (min … max):   29.209 s … 30.171 s    10 runs

Summary
  with_pr\lld-link.exe @Game.exe.rsp ran
    1.00 ± 0.02 times faster than before\lld-link.exe @Game.exe.rsp
```

However when in production conditions, we're typically working with the
Unreal Engine Editor, with exteral DCC tools like Maya, Houdini; we have
several instances of Visual Studio open, VSCode with Rust analyzer, etc.
All this means that between code change iterations, most of the input
OBJs files might have been already evicted from the Windows RAM cache.
Consequently, in the following test, I've simulated the worst case
condition by evicting all data from RAM with
[RAMMap64](https://learn.microsoft.com/en-us/sysinternals/downloads/rammap)
(ie. `RAMMap64.exe -E[wsmt0]` with a 5-sec sleep at the end to ensure
the System thread actually has time to evict the pages)
```
>hyperfine -p cleanup.bat "before\lld-link.exe @Game.exe.rsp" "with_pr\lld-link.exe @Game.exe.rsp"
Benchmark 1: before\lld-link.exe @Game.exe.rsp
  Time (mean ± σ):     48.124 s ±  1.770 s    [User: 269.031 s, System: 41.769 s]
  Range (min … max):   46.023 s … 50.388 s    10 runs

Benchmark 2: with_pr\lld-link.exe @Game.exe.rsp
  Time (mean ± σ):     34.192 s ±  0.478 s    [User: 263.620 s, System: 40.991 s]
  Range (min … max):   33.550 s … 34.916 s    10 runs

Summary
  with_pr\lld-link.exe @Game.exe.rsp ran
    1.41 ± 0.06 times faster than before\lld-link.exe @Game.exe.rsp
```

This is similar to the work done in MachO in
https://github.com/llvm/llvm-project/pull/157917


  Commit: 0d6f65160a9ec38a338c749148d91aced6df9437
      https://github.com/llvm/llvm-project/commit/0d6f65160a9ec38a338c749148d91aced6df9437
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/X86/clmul-vector.ll
    A llvm/test/CodeGen/X86/clmul.ll

  Log Message:
  -----------
  [X86] Add baseline clmul intrinsic test coverage (#175185)


  Commit: a095db2f0bddd21c89f9d4116648a9f969af0a30
      https://github.com/llvm/llvm-project/commit/a095db2f0bddd21c89f9d4116648a9f969af0a30
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/MachineInstr.h
    M llvm/lib/CodeGen/SplitKit.cpp

  Log Message:
  -----------
  [CodeGen] Introduce MI flag for Live Range split instructions (#117543)

For some targets, it is required to identify the COPY instruction
corresponds to the RA inserted live range split. Adding the new
flag `MachineInstr::LRSplit` to serve the purpose.


  Commit: e486a26b9c67afce3fe1c5edb1351aa326a42da5
      https://github.com/llvm/llvm-project/commit/e486a26b9c67afce3fe1c5edb1351aa326a42da5
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
    M llvm/test/CodeGen/AMDGPU/ran-out-of-sgprs-allocation-failure.mir

  Log Message:
  -----------
  [AMDGPU] Add liverange split instructions into BB Prolog (#117544)

The COPY inserted for liverange split during sgpr-regalloc
pipeline currently breaks the BB prolog during the subsequent
vgpr-regalloc phase while spilling and/or splitting the vector
liveranges. This patch fixes it by correctly including the
LR split instructions during sgpr-regalloc and wwm-regalloc
pipelines into the BB prolog.


  Commit: edab1925d8f08ca33b3a8c5987c403b73f498461
      https://github.com/llvm/llvm-project/commit/edab1925d8f08ca33b3a8c5987c403b73f498461
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_promote.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_promote.s
    M llvm/test/MC/AMDGPU/sym_kernel_scope.s
    M llvm/test/MC/AMDGPU/sym_kernel_scope_agpr.s

  Log Message:
  -----------
  [AMDGPU] Remove unneeded redirects from MC tests. NFC. (#175186)

These tests redirected stderr to stdout, but never actually checked for
any errors.


  Commit: c722ef4874a569de8fd2dc53aaf3e367fa65e05c
      https://github.com/llvm/llvm-project/commit/c722ef4874a569de8fd2dc53aaf3e367fa65e05c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/host/CMakeLists.txt
    M offload/test/lit.cfg
    M offload/test/offloading/CUDA/basic_launch.cu
    M offload/test/offloading/CUDA/basic_launch_blocks_and_threads.cu
    M offload/test/offloading/CUDA/launch_tu.cu
    M offload/test/offloading/dynamic-schedule-non-spmd.cpp
    M offload/test/offloading/dynamic-schedule.cpp
    M offload/test/offloading/fortran/dump_map_tables.f90
    M offload/test/offloading/fortran/target-defaultmap.f90
    M offload/test/offloading/fortran/target-depend.f90
    M offload/test/offloading/fortran/target-map-all-common-block-members.f90
    M offload/test/offloading/fortran/target-map-common-block.f90
    M offload/test/offloading/fortran/target-map-declare-target-link-common-block.f90
    M offload/test/offloading/fortran/target-map-first-common-block-member.f90
    M offload/test/offloading/fortran/target-map-mix-imp-exp-common-block-members.f90
    M offload/test/offloading/fortran/target-map-second-common-block-member.f90
    M offload/test/offloading/high_trip_count_block_limit.cpp
    M offload/test/offloading/schedule.c
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/double_free_racy.c
    M offload/test/sanitizer/free_host_ptr.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M offload/test/sanitizer/kernel_crash.c
    M offload/test/sanitizer/kernel_crash_async.c
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_crash_single.c
    M offload/test/sanitizer/kernel_trap.c
    M offload/test/sanitizer/kernel_trap.cpp
    M offload/test/sanitizer/kernel_trap_async.c
    M offload/test/sanitizer/kernel_trap_many.c

  Log Message:
  -----------
  [OpenMP] Remove testing LTO variant on CPU targets (#175187)

Summary:
This is only really meaningful for the NVPTX target. Not all build
environments support host LTO and these are redundant tests, just clean
this up and make it run faster.


  Commit: 4996e3be341af782b856597023c83ee3ef9b5094
      https://github.com/llvm/llvm-project/commit/4996e3be341af782b856597023c83ee3ef9b5094
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ConstantFolding.cpp
    M llvm/test/Transforms/InstSimplify/ConstProp/WebAssembly/dot.ll

  Log Message:
  -----------
  [ConstantFolding] Allow truncation when folding wasm.dot

Changes this to getSigned() to match the signedness of the calculation.
However, we still need to allow truncation because the addition
result may overflow, and the operation is specified to truncate
in that case.

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


  Commit: 8aebfcd953727aa63aed3838584d6ce5c44c423e
      https://github.com/llvm/llvm-project/commit/8aebfcd953727aa63aed3838584d6ce5c44c423e
  Author: Sirui Mu <msrlancern at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/utils/TableGen/CIRLoweringEmitter.cpp

  Log Message:
  -----------
  [CIR][NFC] Generate ABI lowering patterns with TableGen (#175021)

This patch teaches clang-tblgen to start emitting ABI lowering pattern
declarations.


  Commit: 9e1a185be463eba0808f30cc4a9521ed1f38b538
      https://github.com/llvm/llvm-project/commit/9e1a185be463eba0808f30cc4a9521ed1f38b538
  Author: Sayan Sivakumaran <sivakusayan at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/intrinsic-select.ll

  Log Message:
  -----------
  [InstCombine] Fold intrinsics over multi-use selects when the intrinsic is the only user (#172723)

Closes #172176.

Previously, `FoldOpIntoSelect` wouldn't fold multi-use selects if
`MultiUse` wasn't explicitly true. This prevents useful folding when the
select is used multiple times in the same intrinsic call. Similar to
what is done in `foldOpIntoPhi`, we'll now check that all of the uses
come from a single user, rather than checking that there is only one
use.


  Commit: 327d6e1f979456fc3e80e6fce2c16975715693e0
      https://github.com/llvm/llvm-project/commit/327d6e1f979456fc3e80e6fce2c16975715693e0
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
    M llvm/lib/Target/RISCV/RISCVZilsdOptimizer.cpp
    M llvm/test/CodeGen/RISCV/zilsd-ldst-opt-prera.mir
    M llvm/test/CodeGen/RISCV/zilsd.ll

  Log Message:
  -----------
  [RISCV][llvm] Support frame index in zilsd optimizer (#174073)

Current zilsd optimizer only support base op that is in a register,
however many use cases are essentially stack load/store.


  Commit: ec7ab6fb7ba91b2d69cb998add70b5930cb6b96f
      https://github.com/llvm/llvm-project/commit/ec7ab6fb7ba91b2d69cb998add70b5930cb6b96f
  Author: Philip742 <philip.wilkinson at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/invalid_extension.mlir
    M mlir/test/Dialect/Tosa/ops.mlir

  Log Message:
  -----------
  [mlir][tosa] Add min/max_shape ops (#175146)

Signed-off-by: Philip Wilkinson <philip.wilkinson at arm.com>


  Commit: b5a5276ca7345baf8b3fd771c08b7ef5d234c0ac
      https://github.com/llvm/llvm-project/commit/b5a5276ca7345baf8b3fd771c08b7ef5d234c0ac
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [compiler-rt] [Darwin] VerifyMemoryMapping should ignore zero-size sections (#175083)

Zero size sections cause VerifyMemoryMapping to falsely report
overlapping mappings.

rdar://167467041


  Commit: 4c61843e44fd103c02e85fb17f364dea7706e99c
      https://github.com/llvm/llvm-project/commit/4c61843e44fd103c02e85fb17f364dea7706e99c
  Author: Derek Schuff <dschuff at chromium.org>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/WebAssembly/varargs.ll

  Log Message:
  -----------
  [WebAssembly] Add wasm64 testing to varargs.ll [NFC] (#175102)

Looking at https://github.com/llvm/llvm-project/pull/173580 revealed
that our testing of varargs is inadequate. This is a start on improving it.


  Commit: 121a9c414fd23c370136978b8a33b325faa03cfd
      https://github.com/llvm/llvm-project/commit/121a9c414fd23c370136978b8a33b325faa03cfd
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-fcanonicalize.mir
    M llvm/test/CodeGen/AMDGPU/fcanonicalize.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_FCANONICALIZE (#174662)

Added -global-isel flags to fcanonicalize.ll test.


  Commit: 7df0826c415f3ef8cd6a768b6b433db6c842a306
      https://github.com/llvm/llvm-project/commit/7df0826c415f3ef8cd6a768b6b433db6c842a306
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-ptrmask.mir

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_PTRMASK (#174889)

Add support for G_PTRMASK but we are missing p8 (buffer resource) due to
a legalizer issue in GlobalISel which does not occur on SelectionDAG:
`LLVM ERROR: unable to legalize instruction: %17:_(p8) = G_PTRMASK %0:_,
%22:_(s128) (in function: v_ptrmask_buffer_resource_variable_i48)`

Added a FIXME to indicate this issue.


  Commit: b3d25f59d5f0b5fbc61e354d641cf150ecec1bf7
      https://github.com/llvm/llvm-project/commit/b3d25f59d5f0b5fbc61e354d641cf150ecec1bf7
  Author: vangthao95 <vang.thao at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/fmul-to-ldexp.ll
    M llvm/test/CodeGen/AMDGPU/llvm.ldexp.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for G_FLDEXP (#175072)


  Commit: dcef308ecc3b02bc8e642572aee98b56fae051b9
      https://github.com/llvm/llvm-project/commit/dcef308ecc3b02bc8e642572aee98b56fae051b9
  Author: Konrad Kleine <kkleine at redhat.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/DWARFCFIChecker/DWARFCFIAnalysis.h
    M llvm/lib/DWARFCFIChecker/DWARFCFIAnalysis.cpp

  Log Message:
  -----------
  [DWARF][NFC] Remove unused 'Reads' param from checkCFADiff and checkRegDiff (#174941)


  Commit: 55a9855be504109aec9aaa124e7ad3316422ffdd
      https://github.com/llvm/llvm-project/commit/55a9855be504109aec9aaa124e7ad3316422ffdd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Merge multiple QC_EXTU patterns using ImmLeaf and SDNodeXForm. (#175119)

Instead of matching 6 different masks, use an ImmLeaf to detect any of
the 6 masks.

This isn't NFC because using an immediate directly will call
computeKnownBits to fill in bits that are expected to be 1, but have
been cleared because they are known 0 in the LHS of the and. We don't
have tests for this, if it's important we can switch to a ComplexPattern
to restore that behavior.


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

  Changed paths:
    M llvm/test/TableGen/CPtrWildcard.td
    M llvm/test/TableGen/RegClassByHwMode.td
    M llvm/test/TableGen/dag-isel-regclass-emit-enum.td
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Change emitted comments for OPC_Scope to be more like OPC_SwitchType/Opcode. NFC (#175124)


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

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

  Log Message:
  -----------
  [TableGen] Add a helper function for emitting an MVT in the isel table. NFC (#175127)


  Commit: 964f9c0754937730953b5d6e0cfd9c352010fd16
      https://github.com/llvm/llvm-project/commit/964f9c0754937730953b5d6e0cfd9c352010fd16
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/test/Driver/crash-ir-repro.cpp

  Log Message:
  -----------
  [Clang][Driver] Disable crash-ir-repro.cpp on UBSan

UBSan causes the test to raise a signal, which violates the not
expectations after recent lit expectations.


  Commit: 17e226f71e1c4704ba028adbd799c3932b8c5862
      https://github.com/llvm/llvm-project/commit/17e226f71e1c4704ba028adbd799c3932b8c5862
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lldb/source/Symbol/ObjectFile.cpp
    A lldb/test/Shell/ObjectFile/invalid.test

  Log Message:
  -----------
  [lldb] Fix crash when passing a folder in as the executable (#175181)

This is another instance where we weren't checking that the result of
FileSystem::CreateDataBuffer and unconditionally accessing it, similar
to the bug in SourceManager last week. In this particular case,
ObjectFile was assuming that we can read the contents non-zero, which
isn't true for directory nodes.

Jim figured this one out yesterday. I'm just putting up the patch and
adding a test.

rdar://167796036


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

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/rvp-unaligned-load-store.ll

  Log Message:
  -----------
  [RISCV] Prevent P extension from creating unaligned scalar load/store insructions. (#174878)

The P extension requires us to use base ISA load/store instructions for
small vectors. We need to make sure we don't generate misaligned
instructions.

We'll need to do more work here if we want P and V to be enabled at the
same time, but that's a future problem.


  Commit: 37e3af835ef9b04aee9750d02ed28704d8e8399b
      https://github.com/llvm/llvm-project/commit/37e3af835ef9b04aee9750d02ed28704d8e8399b
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [LLVM][TableGen] Use integers instead of string in CodeEmitterGen CaseMap (#172885)

CodeEmitterGen CaseMap values is always a vector of integer IDs (HwMode
or instruction opcode). So change the map values to be a vector of
integers instead of strings and instead print the string form when
emitting the case statements. This will help reduce the memory footprint
by not storing potentially long strings (for opcode names) in the map.


  Commit: 54a1e05d3c5eac476a0b14d2d7a712c7ece2c255
      https://github.com/llvm/llvm-project/commit/54a1e05d3c5eac476a0b14d2d7a712c7ece2c255
  Author: Jake Egan <Jake.egan at ibm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M compiler-rt/lib/asan/asan_allocator.h
    M compiler-rt/lib/sanitizer_common/sanitizer_allocator_primary32.h
    M compiler-rt/lib/sanitizer_common/sanitizer_platform.h

  Log Message:
  -----------
  [asan][AIX] Set allocator size and beginning (#144784)

On 64-bit AIX, set allocator size to 256G and set beginning to
0x0a00000000000000.

Issue: #138916

---------

Co-authored-by: Hubert Tong <hubert.reinterpretcast at gmail.com>


  Commit: e927f4bbf4800fe9b68fc32b935799d5136925fb
      https://github.com/llvm/llvm-project/commit/e927f4bbf4800fe9b68fc32b935799d5136925fb
  Author: Akimasa Watanuki <mencotton0410 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/empty-union.c
    A clang/test/CIR/CodeGen/empty-union.cpp

  Log Message:
  -----------
  [CIR] Handle empty unions in record lowering and LLVM conversion (#172666)

Handle empty unions in CIR record lowering and LLVM conversion by
emitting padding when needed, guarding `getLargestMember` for
empty/padded unions, and lowering to empty or padded LLVM structs based
on language rules.

Added regression tests for C and C++ empty union lowering in
`clang/test/CIR/CodeGen/empty-union.c` and `empty-union.cpp`.


  Commit: 6ca6a328aed13c21101d83f1139236b95643858f
      https://github.com/llvm/llvm-project/commit/6ca6a328aed13c21101d83f1139236b95643858f
  Author: Paul Osmialowski <pawel.osmialowski at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/VecFuncs.def
    M llvm/test/Transforms/LoopVectorize/AArch64/veclib-intrinsic-calls.ll

  Log Message:
  -----------
  [AArch64][VecLib] Add vector function mappings for the modf, sincos, sincospi vector intrinsics (#175098)

Following the improvements introduced in #109833 and the most recent
development of the libamath library (used by `-fveclib=ArmPL`), this
patch adds the missing mappings for the functions that return literal
struct values.


  Commit: 690d94b7bdfbaf854ea8a5fe6e8f6f77fb4e8deb
      https://github.com/llvm/llvm-project/commit/690d94b7bdfbaf854ea8a5fe6e8f6f77fb4e8deb
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/TableGen/CPtrWildcard.td
    M llvm/test/TableGen/dag-isel-regclass-emit-enum.td
    M llvm/test/TableGen/multiple-type-casts-patfrags.td
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [TableGen] Print MVT name in the isel table when it doesn't require a VBR. NFC (#175128)

If the MVT is small enough, we can emit the enum name instead of
printing its encoding.


  Commit: 75dd5b3df2905f1a7e56837df6e16c261229576c
      https://github.com/llvm/llvm-project/commit/75dd5b3df2905f1a7e56837df6e16c261229576c
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Improve SimplifyDemandedFPClass copysign handling
 (#175026)

Recognize cases where the signbit is known.


  Commit: 8cfa36d1906bba51e4614346cfc293c085044442
      https://github.com/llvm/llvm-project/commit/8cfa36d1906bba51e4614346cfc293c085044442
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rv32p.ll

  Log Message:
  -----------
  [RISCV] Support i32 (S/U)(ADD/SUB)SAT for rv32ip. (#173693)


  Commit: 471b7b79ee228c15cf34fb8009deef2d2b2f546e
      https://github.com/llvm/llvm-project/commit/471b7b79ee228c15cf34fb8009deef2d2b2f546e
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M cross-project-tests/veclib/veclib-sincos.c

  Log Message:
  -----------
  Update veclib-sincos.c test checks (NFC) (#175221)


  Commit: b6212a4caf9fb029382f26dd224e54da58714fa5
      https://github.com/llvm/llvm-project/commit/b6212a4caf9fb029382f26dd224e54da58714fa5
  Author: Sean Fertile <sd.fertile at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/IR/FixedMetadataKinds.def
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/PowerPC/PPCAsmPrinter.cpp
    M llvm/lib/Transforms/Utils/InlineFunction.cpp
    A llvm/test/CodeGen/PowerPC/aix-func-ref.ll
    A llvm/test/CodeGen/PowerPC/aix-ref-metadata.ll
    A llvm/test/Transforms/FunctionSpecialization/function-specialization-implicit-ref.ll
    A llvm/test/Transforms/Inline/inline-ref-metadata.ll
    A llvm/test/Verifier/ref-func.ll
    A llvm/test/Verifier/ref.ll

  Log Message:
  -----------
  XCOFF associated metadata (#159096)

Add a new metadata node `!implicit.ref` to represent an implicit
dependency between 2 symbols. The metadata is unique to AIX and gets
lowered to a relocation that adds an explicit link between the section
the global that the metadata is placed on is allocated in, to the
asscoiated symbol. This relocation will cause the associated symbol to
remain live if the section is not garbage collected. This is used mainly
for compiler features where there is some hidden runtime dependency
between the symbols that isn't otherwise obvious to the linker.


  Commit: 5c3f02cbb344ffcd6766c1959e7851d1afec118f
      https://github.com/llvm/llvm-project/commit/5c3f02cbb344ffcd6766c1959e7851d1afec118f
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
    M lldb/test/API/functionalities/gdb_remote_client/TestPlatformAttach.py

  Log Message:
  -----------
  [lldb] Honor the process plugin name in the attach/launch info (#175195)

When connected to a GDB remote platform, we always use "gdb-remote" as
the process plugin when attaching. This means that the `--plugin`
argument to `process attach` is effectively ignored. This patch makes it
so that "gdb-remote" remains the default, while still honoring the
process plugin name specified in the attach info. The same thing applies
to launching a process.

rdar://167845923


  Commit: 2ff56633b945c34ef7fe0ea0b9c05d02710b3685
      https://github.com/llvm/llvm-project/commit/2ff56633b945c34ef7fe0ea0b9c05d02710b3685
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M offload/test/sanitizer/double_free.c
    M offload/test/sanitizer/free_host_ptr.c
    M offload/test/sanitizer/free_wrong_ptr_kind.c
    M offload/test/sanitizer/free_wrong_ptr_kind.cpp
    M offload/test/sanitizer/kernel_crash.c
    M offload/test/sanitizer/kernel_crash_async.c
    M offload/test/sanitizer/kernel_crash_many.c
    M offload/test/sanitizer/kernel_crash_single.c
    M offload/test/sanitizer/kernel_trap.c
    M offload/test/sanitizer/kernel_trap_async.c
    M offload/test/sanitizer/kernel_trap_many.c

  Log Message:
  -----------
  [OpenMP] Fix tests that depend on the line number


  Commit: ac508575ed13787e4d7ed928670c3d6144fce137
      https://github.com/llvm/llvm-project/commit/ac508575ed13787e4d7ed928670c3d6144fce137
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    A clang/test/Sema/spirv-address-space.c

  Log Message:
  -----------
  [SPIR-V] Permit implicit conversion to generic AS (#175109)

Summary:
We rely on this in most places we work with address spaces. This allows
target address spaces to implicity convert to generic ones.

I actually have no clue if this is valid or correct with SPIR-V, hoping
someone with more target / backend knowledge can chime in.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: df3629dc0cc820e04275bd0f1fda0e9565dfba5d
      https://github.com/llvm/llvm-project/commit/df3629dc0cc820e04275bd0f1fda0e9565dfba5d
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/AMDGPULowerVGPREncoding.cpp
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    A llvm/test/CodeGen/AMDGPU/vgpr-setreg-mode-swar.mir

  Log Message:
  -----------
  [AMDGPU] Handle `s_setreg_imm32_b32` targeting `MODE` register (#174681)

On certain hardware, this instruction clobbers VGPR MSB `bits[12:19]`,
so we need to restore the current mode.

Fixes SWDEV-571581.


  Commit: bac9b7a38730a5b18203b141356f318e45a30e95
      https://github.com/llvm/llvm-project/commit/bac9b7a38730a5b18203b141356f318e45a30e95
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-shufflevector.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: Improve SimplifyDemandedFPClass fabs handling
 (#175027)

Try to eliminate the fabs if the source is known positive.


  Commit: 4f1ab334a4ba5e3c8ba96a0b8bba2c71c779cfca
      https://github.com/llvm/llvm-project/commit/4f1ab334a4ba5e3c8ba96a0b8bba2c71c779cfca
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang/include/flang/Parser/parse-tree-visitor.h

  Log Message:
  -----------
  [flang] Visit "source" member in all AST nodes (#175211)

Some AST nodes had their "source" member visited by the parse tree
visitor, while others, in particular those that were handled by the
trait-based visitors, did not.

Make sure that we call the Walk function on the "source" member for all
classes that have it.


  Commit: 33c4e3e2bcfc502b44308e86dcc4d079be885030
      https://github.com/llvm/llvm-project/commit/33c4e3e2bcfc502b44308e86dcc4d079be885030
  Author: Razvan Lupusoru <razvan.lupusoru at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Transforms/CUDA/CUFOpConversion.cpp
    M flang/test/Fir/CUDA/cuda-global-addr.mlir

  Log Message:
  -----------
  [flang][cuda] Avoid inserting GetDeviceAddress call in offload regions (#175225)

In regions destined for GPU offload, computing an address_of means
getting device address directly - no need (and actually incorrect) to
insert a runtime call to get the address. This was already working for
regions such as `gpu.launch` - but now it applies to acc regions as
well.


  Commit: a5fcd840e788ee4ebca3e6a5e000daac46ad1b1a
      https://github.com/llvm/llvm-project/commit/a5fcd840e788ee4ebca3e6a5e000daac46ad1b1a
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Document getSplatVFValue (NFC).

Document helper, as suggested independently in
https://github.com/llvm/llvm-project/pull/174234.


  Commit: d6d8622f12fd104bca3caad4b3246870c16b6783
      https://github.com/llvm/llvm-project/commit/d6d8622f12fd104bca3caad4b3246870c16b6783
  Author: tedj <tedmjohnson at protonmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [flang][flang-rt] Add flang-rt autolabel check (#175240)

Add flang-rt to the autolabel github yaml.


  Commit: 42368f919463de02311f7d15191b330f6b8ac2f2
      https://github.com/llvm/llvm-project/commit/42368f919463de02311f7d15191b330f6b8ac2f2
  Author: Matej Košík <m4tej.kosik at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lldb/source/ValueObject/ValueObject.cpp
    A lldb/test/API/python_api/value/get_expr_path/Makefile
    A lldb/test/API/python_api/value/get_expr_path/TestValueAPIGetExpressionPath.py
    A lldb/test/API/python_api/value/get_expr_path/main.c

  Log Message:
  -----------
  [lldb] fix a problem in the ValueObject::GetExpressionPath method (#171521)

Consider the following program:
```
int main() {
  int foo[2][3][4];
  int (*bar)[3][4] = foo;
  return 0;
}
```
If we:
- compile this program
- launch an LLDB debugging session
- launch the process and let it stop at the `return 0;` statement
then the following LLDB command:
```
(lldb) script lldb.frame.FindVariable("bar").GetChildAtIndex(0).get_expr_path()
```
will produce the following output:
```
bar->[0]
```
What we were expecting:
- a valid expression in the C programming language
- that would allow us (in the scope of the `main` function) access the
appropriate object.

What we've got is a string that does not represent a valid expression in
the C programming language.

This pull-request proposes a fix to this problem.

---------

Co-authored-by: Matej Košík <matej.kosik at codasip.com>


  Commit: 1117d2a35f03584f1dc42ded7de179b442c5f33b
      https://github.com/llvm/llvm-project/commit/1117d2a35f03584f1dc42ded7de179b442c5f33b
  Author: Hamza Hassanain <53662962+HamzaHassanain at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    A lldb/test/API/python_api/sbtarget_extensions/Makefile
    A lldb/test/API/python_api/sbtarget_extensions/TestSBTargetExtensions.py
    A lldb/test/API/python_api/sbtarget_extensions/main.c

  Log Message:
  -----------
  [LLDB] Swig python extensions tests for SBTargetExtention (#173473)

Implements part of #168920


  Commit: 4a8a0593bdecee49331cb5c31a6c9b18d87ea41c
      https://github.com/llvm/llvm-project/commit/4a8a0593bdecee49331cb5c31a6c9b18d87ea41c
  Author: Jan Patrick Lehr <JanPatrick.Lehr at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M offload/test/offloading/fortran/dump_map_tables.f90

  Log Message:
  -----------
  [Offload] Fix failing Fortran test w/ line number (#175247)

This test also depends on the line number. Following similar approach as
other with [[@LINE]] macro.


  Commit: 51e0248aef88f09bb7c6f407b569755eea8be3f5
      https://github.com/llvm/llvm-project/commit/51e0248aef88f09bb7c6f407b569755eea8be3f5
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Try to disassemble 48-bit and larger instructions as 32-bit instructions first. (#175122)

The encoding scheme for 48-bit and larger instructions has not
been ratified yet. The RISC-V ISA manual previously included a
proposal that included 4 reserved major opcodes. LLVM's
disassembler implements this proposal as does binutils.

A vendor extension might have used the reserved opcodes,
as a non-conforming 32-bit extension. Try to decode as a
32-bit instruction first to catch these cases.

Should help with #174571.


  Commit: 25976e83606f1a7615e3725e6038bb53ee96c3d5
      https://github.com/llvm/llvm-project/commit/25976e83606f1a7615e3725e6038bb53ee96c3d5
  Author: Daniel Thornburgh <mysterymath at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    R llvm/test/ExecutionEngine/JITLink/AArch64/backtrace-symbolication.s
    A llvm/test/ExecutionEngine/JITLink/Generic/backtrace-symbolication.ll

  Log Message:
  -----------
  Revert "[llvm-jitlink] Replace IR backtrace symbolication testcase with asm." (#175242)

Reverts llvm/llvm-project#175117


  Commit: eef8e79e3a1c3f65f61ee42ccdbca8edb4fa32c6
      https://github.com/llvm/llvm-project/commit/eef8e79e3a1c3f65f61ee42ccdbca8edb4fa32c6
  Author: Yuvaraj Venkatesh <yuvaraj.venkatesh at arm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Tosa/IR/TosaShapeOps.td
    M mlir/lib/Dialect/Tosa/Transforms/TosaProfileCompliance.cpp
    M mlir/lib/Dialect/Tosa/Transforms/TosaValidation.cpp
    M mlir/test/Dialect/Tosa/level_check.mlir
    M mlir/test/Dialect/Tosa/ops.mlir
    M mlir/test/Dialect/Tosa/tosa-validation-version-1p1-valid.mlir

  Log Message:
  -----------
  [mlir][tosa] Add log2_ceil/log2_floor/exp2_shape ops (#175057)

This commit introduces new ext-shape operations,
- LOG2_CEIL_SHAPE
- LOG2_FLOOR_SHAPE
- EXP2_SHAPE

These additions include the operator definitions, same-rank
verification, and level checks during validation.

---------

Co-authored-by: Luke Hutton <luke.hutton at arm.com>


  Commit: 719006a1950ad190882483a8342be4f593164c94
      https://github.com/llvm/llvm-project/commit/719006a1950ad190882483a8342be4f593164c94
  Author: Joshua Batista <jbatista at microsoft.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/lib/Sema/SemaHLSL.cpp
    M clang/test/SemaHLSL/resource_binding_attr_error.hlsl
    A clang/test/SemaHLSL/resource_binding_attr_error_uint32_max.hlsl

  Log Message:
  -----------
  [HLSL][Sema] Validate that occupied register numbers never exceed UINT32_MAX (#174028)

This PR adds validation for register numbers.
Register numbers ought never to exceed UINT32_MAX, or 4294967295
Additionally, resource arrays will have each resource element bound
sequentially, and those resource's register numbers should not exceed
UINT32_MAX, or 4294967295. Even though not explicitly given a register
number, their effective register number is also validated.
This accounts for nested resource declarations and resource arrays too.

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


  Commit: 54840055b884031330108e66c019873029591a78
      https://github.com/llvm/llvm-project/commit/54840055b884031330108e66c019873029591a78
  Author: Alex Langford <alangford at apple.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M lldb/test/API/api/multithreaded/inferior.cpp
    M lldb/test/API/api/multithreaded/test_breakpoint_location_callback.cpp.template

  Log Message:
  -----------
  [lldb] Fix TestMultithreaded.py when libc++ symbols are present (#174664)

There are a few test cases in TestMultithreaded.py. Most of them set a
breakpoint by name on "next". There's no problem with doing that, but
one of the tests cases in particular relies on being able to grab a
specific breakpoint location corresponding to the test inferior.

If you have libc++ symbols, this test will also have breakpoint
locations for symbols named `next` in libc++. I could have changed the
test to find the correct `next` breakpoint location, but it seems easier
to give it a more uncommon name instead.


  Commit: 85b90f560d90e1b52272e78902de138cbe1612d2
      https://github.com/llvm/llvm-project/commit/85b90f560d90e1b52272e78902de138cbe1612d2
  Author: Snehasish Kumar <1888435+snehasish at users.noreply.github.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/test/DebugInfo/Generic/macro-info.c

  Log Message:
  -----------
  Add a flag to preserve the old macro behaviour. (#174895)

[Clang][DebugInfo] Add a flag to use expansion loc for macro params.

This patch adds a flag to allow users to preserve the old behaviour -
use the macro expansion location for parameters. This is useful for
wider testing of sample profile driven PGO which relies on debug
information based mapping. This flag is intended to be temporary
and should be safe to remove by EOY 2026. Filed #175249 to
track the cleanup.

---------

Assisted-by: Gemini


  Commit: ae29bfd9db88d50524f4adb7f496224e25fd1d89
      https://github.com/llvm/llvm-project/commit/ae29bfd9db88d50524f4adb7f496224e25fd1d89
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    R lldb/test/API/python_api/sbtarget_extensions/Makefile
    R lldb/test/API/python_api/sbtarget_extensions/TestSBTargetExtensions.py
    R lldb/test/API/python_api/sbtarget_extensions/main.c

  Log Message:
  -----------
  Revert "[LLDB] Swig python extensions tests for SBTargetExtention" (#175251)

Reverts llvm/llvm-project#173473


  Commit: c11df52f9b847170b766fb71defd2a9222d95a8d
      https://github.com/llvm/llvm-project/commit/c11df52f9b847170b766fb71defd2a9222d95a8d
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    R llvm/include/llvm/ExecutionEngine/Orc/BacktraceTools.h
    R llvm/lib/ExecutionEngine/Orc/BacktraceTools.cpp
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    R llvm/test/ExecutionEngine/JITLink/Generic/backtrace-symbolication.ll
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  Revert "[ORC] Add utilities for limited symbolication of JIT backtraces (#175099)"

This reverts commit 906b48616c03948a4df62a5a144f7108f3c455e8.

The forward fix for this got reverted in
25976e83606f1a7615e3725e6038bb53ee96c3d5, so reverting the original
commit given it is still broken and the forward fix that mitigated most
of the issues is no longer in tree.


  Commit: 79069ce86d391bc0c2cb80254c397b4107f3cdac
      https://github.com/llvm/llvm-project/commit/79069ce86d391bc0c2cb80254c397b4107f3cdac
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/accvgpr-altnames.s
    M llvm/test/MC/AMDGPU/add-sub-no-carry.s
    M llvm/test/MC/AMDGPU/buffer_wbinv1l_vol_vi.s
    M llvm/test/MC/AMDGPU/dpp64.s
    M llvm/test/MC/AMDGPU/ds-err.s
    M llvm/test/MC/AMDGPU/ds-gfx9.s
    M llvm/test/MC/AMDGPU/ds_gws_sgpr_err.s
    M llvm/test/MC/AMDGPU/elf-lds-error.s
    M llvm/test/MC/AMDGPU/elf-notes-verify-amdgcn.s
    M llvm/test/MC/AMDGPU/elf-notes-verify-r600.s
    M llvm/test/MC/AMDGPU/exp-gfx10.s
    M llvm/test/MC/AMDGPU/exp-pregfx11.s
    M llvm/test/MC/AMDGPU/exp.s
    M llvm/test/MC/AMDGPU/flat-scratch-gfx942.s
    M llvm/test/MC/AMDGPU/flat-scratch-st-mode.s
    M llvm/test/MC/AMDGPU/gfx10-vop2be-literal.s
    M llvm/test/MC/AMDGPU/gfx1011_dlops.s
    M llvm/test/MC/AMDGPU/gfx1011_err.s
    M llvm/test/MC/AMDGPU/gfx1013.s
    M llvm/test/MC/AMDGPU/gfx1030_err.s
    M llvm/test/MC/AMDGPU/gfx1030_new.s
    M llvm/test/MC/AMDGPU/gfx1030_unsupported.s
    M llvm/test/MC/AMDGPU/gfx10_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx10_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_flat.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mubuf.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx10_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_sop.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopcx.s
    M llvm/test/MC/AMDGPU/gfx10_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_dpp.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e32.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e64.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e64_dpp.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_sdwa.s
    M llvm/test/MC/AMDGPU/gfx11-promotions-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx11_asm_flat.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ldsdir.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ldsdir_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mimg_features.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_opsel_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx11_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx11_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx11_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx11_asm_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vinterp_err-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_err-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_from_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_alias.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx11_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_dpp.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_e32.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_e64.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_sdwa-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_sdwa.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_sopp_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vds_alias.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat_alias.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vsample_err.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx12_asm_ds_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sop2_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopk_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vdsdir.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vflat_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vimage_alias.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_aliases-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_aliases-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_from_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3c-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_aliases.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vsample.s
    M llvm/test/MC/AMDGPU/gfx12_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/AMDGPU/gfx7_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx7_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx7_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx7_asm_flat.s
    M llvm/test/MC/AMDGPU/gfx7_asm_mimg.s
    M llvm/test/MC/AMDGPU/gfx7_asm_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx7_asm_mubuf.s
    M llvm/test/MC/AMDGPU/gfx7_asm_smrd.s
    M llvm/test/MC/AMDGPU/gfx7_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx7_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx7_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx7_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx7_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vintrp.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vop3_e64.s
    M llvm/test/MC/AMDGPU/gfx7_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx7_unsupported.s
    M llvm/test/MC/AMDGPU/gfx8_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx8_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx8_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx8_asm_flat.s
    M llvm/test/MC/AMDGPU/gfx8_asm_mimg.s
    M llvm/test/MC/AMDGPU/gfx8_asm_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx8_asm_mubuf.s
    M llvm/test/MC/AMDGPU/gfx8_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx8_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx8_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx8_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx8_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx8_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vintrp.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vop3_e64.s
    M llvm/test/MC/AMDGPU/gfx8_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx8_unsupported.s
    M llvm/test/MC/AMDGPU/gfx9-asm-err.s
    M llvm/test/MC/AMDGPU/gfx9-vop2be-literal.s
    M llvm/test/MC/AMDGPU/gfx908_err.s
    M llvm/test/MC/AMDGPU/gfx90a_err.s
    M llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
    M llvm/test/MC/AMDGPU/gfx942_err.s
    M 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_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx950_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx950_dlops.s
    M llvm/test/MC/AMDGPU/gfx950_err.s
    M llvm/test/MC/AMDGPU/gfx950_invalid_encoding.txt
    M llvm/test/MC/AMDGPU/gfx950_xdlops.s
    M llvm/test/MC/AMDGPU/gfx9_4_generic_unsupported.s
    M llvm/test/MC/AMDGPU/gfx9_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx9_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx9_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx9_asm_flat.s
    M llvm/test/MC/AMDGPU/gfx9_asm_mimg.s
    M llvm/test/MC/AMDGPU/gfx9_asm_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx9_asm_mubuf.s
    M llvm/test/MC/AMDGPU/gfx9_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx9_asm_sop1.s
    M llvm/test/MC/AMDGPU/gfx9_asm_sop2.s
    M llvm/test/MC/AMDGPU/gfx9_asm_sopc.s
    M llvm/test/MC/AMDGPU/gfx9_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx9_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vintrp.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop2_features.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop3_e64.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx9_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx9_unsupported.s
    M llvm/test/MC/AMDGPU/inline-imm-inv2pi.s
    M llvm/test/MC/AMDGPU/isa-version-hsa.s
    M llvm/test/MC/AMDGPU/labels-branch-err.s
    M llvm/test/MC/AMDGPU/lds_direct-ci.s
    M llvm/test/MC/AMDGPU/lds_direct-err.s
    M llvm/test/MC/AMDGPU/lds_direct.s
    M llvm/test/MC/AMDGPU/literal16-err.s
    M llvm/test/MC/AMDGPU/literal16.s
    M llvm/test/MC/AMDGPU/mai-err-gfx942.s
    M llvm/test/MC/AMDGPU/mai-gfx90a.s
    M llvm/test/MC/AMDGPU/mimg-err-gfx942.s
    M llvm/test/MC/AMDGPU/mimg-err.s
    M llvm/test/MC/AMDGPU/mimg-gfx90a.s
    M llvm/test/MC/AMDGPU/misaligned-vgpr-tuples-err.s
    M llvm/test/MC/AMDGPU/mubuf-gfx10.s
    M llvm/test/MC/AMDGPU/mubuf-gfx9.s
    M llvm/test/MC/AMDGPU/mubuf-gfx950.s
    M llvm/test/MC/AMDGPU/reg-syntax-err.s
    M llvm/test/MC/AMDGPU/smem-err.s
    M llvm/test/MC/AMDGPU/smrd-err.s
    M llvm/test/MC/AMDGPU/sop1-err.s
    M llvm/test/MC/AMDGPU/sop2-err.s
    M llvm/test/MC/AMDGPU/sopp-gfx10.s
    M llvm/test/MC/AMDGPU/sopp-gfx9.s
    M llvm/test/MC/AMDGPU/sym_option.s
    M llvm/test/MC/AMDGPU/unknown-target-cpu.s
    M llvm/test/MC/AMDGPU/v_illegal-atomics.s
    M llvm/test/MC/AMDGPU/vcmpx-gfx10.s
    M llvm/test/MC/AMDGPU/vintrp-e64-err.s
    M llvm/test/MC/AMDGPU/vintrp-err.s
    M llvm/test/MC/AMDGPU/vintrp.s
    M llvm/test/MC/AMDGPU/vop-err.s
    M llvm/test/MC/AMDGPU/vop1-gfx9-err.s
    M llvm/test/MC/AMDGPU/vop1-gfx9.s
    M llvm/test/MC/AMDGPU/vop2-err.s
    M llvm/test/MC/AMDGPU/vop3-gfx10.s
    M llvm/test/MC/AMDGPU/vop3-modifiers-err.s
    M llvm/test/MC/AMDGPU/vop3-modifiers.s
    M llvm/test/MC/AMDGPU/vopc-errs.s
    M llvm/test/MC/AMDGPU/vopc-vi.s
    M llvm/test/MC/AMDGPU/vopc.s
    M llvm/test/MC/AMDGPU/xdl-insts-gfx1011-gfx1012.s
    M llvm/test/MC/AMDGPU/xdl-insts-gfx908.s
    M llvm/test/MC/Disassembler/AMDGPU/buf_fmt_packed_d16.txt
    M llvm/test/MC/Disassembler/AMDGPU/buf_fmt_unpacked_d16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-null-reg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-sgpr-max.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop2be-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10-vop3-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1011-xdl-insts.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1011_dlops.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1030_new.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_flat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_mimg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_mimg_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop1_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop2_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3p_literalv216.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopc_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vopcx_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1150_dasm_salu_float.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_flat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_ldsdir.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mimg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mimg_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopd.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vopd_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_wmma.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_load_tr.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_operands.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vbuffer_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vflat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vimage.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vopd.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1250_dasm_vopd3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop3_from_vop1_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx1251_dasm_vop3_from_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_global_load_tr.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vbuffer_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vdsdir.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vflat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vimage_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3_from_vop2_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_dpp8.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vopd_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vsample.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8-literal.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8-literal16.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8-trap.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_flat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_mimg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_mimg_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_mtbuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vintrp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1_dpp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop1_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2_dpp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop2_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopc_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx8_vopcx_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9-aperture-regs.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9-bool-regs.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9-lds_direct.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9-trap.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908-atomic-fadd-insts.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908-dl-insts.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx908-xdl-insts.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx90a-dpp64.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx90a_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx90a_ldst_acc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx90a_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx90a_mimg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx942_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx942_flat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx942_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_ds_read_tr.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950_dasm_xdlops.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx950_mai.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_ds.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_exp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_flat.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_mimg.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_mimg_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_mubuf.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sdwa_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_smem.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_smem_features.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sopk.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_sopp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vintrp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_dpp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop1_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2_dpp.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop2_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3c.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3cx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3p.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vop3p_opsel.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopc_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_vopcx_sdwa.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx9_wave32_feature.txt
    M llvm/test/MC/Disassembler/AMDGPU/mad_mix.txt
    M llvm/test/MC/Disassembler/AMDGPU/si-support.txt

  Log Message:
  -----------
  [AMDGPU] Generate checks for many MC tests (#175174)

Generate checks for all tests where that did not change the number of
checks with each prefix, and where the resulting test still passed.


  Commit: 480af73916263528855e5b7d04af1df44a25f9fd
      https://github.com/llvm/llvm-project/commit/480af73916263528855e5b7d04af1df44a25f9fd
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/test/lit.cfg.py
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [profcheck] Exclude `IRCE` because it's not hooked up to the pass pipeline (#175238)

To keep the profcheck effort manageable, excluding (for now) passes that aren't yet hooked up to a pass pipeline.

Issue #147390


  Commit: acb78bde6fb613a9af2a604bc69fa744a8cee850
      https://github.com/llvm/llvm-project/commit/acb78bde6fb613a9af2a604bc69fa744a8cee850
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/X86/vplan-single-bit-ind-var.ll

  Log Message:
  -----------
  [VPlan] Use unsigned integers for lane start indices (#175231)

a83c89495ba6fe0134dcaa02372c320cc7ff0dbf caused assertion failures here
as if we have a single bit induction variable and two lanes (0 and 1),
then the second lane index (1) will be out of bounds of what a signed
1-bit integer can hold. Lane indices are always >0 according to
VPlanHelpers.h:125, and the lane representation in this code is also
unsigned.

The test case come from tensorflow/XLA.


  Commit: cd81aae57abf5faa109badaafd9389a39c0d64c3
      https://github.com/llvm/llvm-project/commit/cd81aae57abf5faa109badaafd9389a39c0d64c3
  Author: Abhinav Gaba <abhinav.gaba at intel.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/docs/OpenMPSupport.rst
    M clang/docs/ReleaseNotes.rst
    M offload/libomptarget/omptarget.cpp
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_arrsec_fallback.c
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_arrsec_not_existing.cpp
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_arrsec_ref_not_existing.cpp
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_var_fallback.c
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_var_not_existing.cpp
    M offload/test/mapping/use_device_addr/target_data_use_device_addr_var_ref_not_existing.cpp
    M offload/test/mapping/use_device_addr/target_wrong_use_device_addr.c
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_not_existing.cpp
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_ref_not_existing.cpp
    M offload/test/mapping/use_device_ptr/target_data_use_device_ptr_var_fallback.c

  Log Message:
  -----------
  [OpenMP] Preserve the original address when `use_device_ptr/addr` lookup fails. (#174659)

As per OpenMP 5.1, we need to assume that when the lookup for
`use_device_ptr/addr` fails, the incoming pointer was already device
accessible.
    
Prior to 5.1, a lookup-failure meant a user-error (for
`use_device_ptr`),
so we could do anything in that scenario. For `use_device_addr`,
it was always incorrect to set the address to null.

OpenMP 6.1 adds a way to retain the previous behavior of nullifying a
pointer
when the lookup fails. That will be tackled by the PR stack
starting with https://github.com/llvm/llvm-project/pull/169603.


  Commit: 9f203509ce7b14e5ff92656bd7a6e64712f4e60c
      https://github.com/llvm/llvm-project/commit/9f203509ce7b14e5ff92656bd7a6e64712f4e60c
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Fix AMDGPULowerKernelAttributes not invalidating analysis (#175256)

Summary:
The new PM wasn't using the changed result which triggered failures
after https://github.com/llvm/llvm-project/pull/174112


  Commit: f223ebfc2b5ab397d211a5c1c19f7b902899d19f
      https://github.com/llvm/llvm-project/commit/f223ebfc2b5ab397d211a5c1c19f7b902899d19f
  Author: Maksim Panchenko <maks at fb.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M bolt/Maintainers.md

  Log Message:
  -----------
  [BOLT] Add aaupov to X86 maintainers list


  Commit: a96cda0e33c511f8c513e31b299adf417e1d2d9c
      https://github.com/llvm/llvm-project/commit/a96cda0e33c511f8c513e31b299adf417e1d2d9c
  Author: Alexey Bataev <a.bataev at outlook.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
    A llvm/test/Transforms/SLPVectorizer/AArch64/externally-used-copyables.ll
    A llvm/test/Transforms/SLPVectorizer/X86/associate-copyable-non-copyable-op.ll
    A llvm/test/Transforms/SLPVectorizer/X86/multi-parent-instr-copyable-regular.ll
    M llvm/test/Transforms/SLPVectorizer/X86/non-schedulable-node-with-non-schedulable-parent.ll

  Log Message:
  -----------
  [SLP]Update deps for copyables operands, if the user is used several times in node

If the user instruction is used several times in the node, and in one
cases its operand is copyable, but in another is not, need to check all
operands to be sure we do not miss scheduling


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

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/test/Lower/CUDA/cuda-data-transfer.cuf

  Log Message:
  -----------
  [flang][cuda] Update cuda data transfer rules for full managed assigment (#175243)


  Commit: e21fcc2e1816a844233930173946eca3ec49e851
      https://github.com/llvm/llvm-project/commit/e21fcc2e1816a844233930173946eca3ec49e851
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    A clang/test/CIR/CodeGen/pointer-to-data-member-cast.cpp

  Log Message:
  -----------
  [CIR] Upstream handling for data member pointer casts (#171950)

This adds the CIR basic handling for casts of data member pointers. Cast
to bool and null, as well as member function pointer casts will be
handled in followup PRs.


  Commit: 8b09e47e6fc887cf5eb4aa62b19900dcc62a2747
      https://github.com/llvm/llvm-project/commit/8b09e47e6fc887cf5eb4aa62b19900dcc62a2747
  Author: Roberto Turrado Camblor <rturrado at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/ms-x86-intrinsics.c

  Log Message:
  -----------
  [CIR][X86] Add support for `cpuid`/`cpuidex` (#173197)

Adds support for the `__builtin_ia32_cpuid` and `__builtin_ia32_cpuidex`
X86 builtins.

Part of [167765](https://github.com/llvm/llvm-project/issues/167765).


  Commit: 632a557f310f03050ef8ec1c4d8ff2f2a8be34b4
      https://github.com/llvm/llvm-project/commit/632a557f310f03050ef8ec1c4d8ff2f2a8be34b4
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/index-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/clang-doc/assets/navbar-template.mustache
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test

  Log Message:
  -----------
  [clang-doc] Move navbar and sidebar into normal document flow (#175110)

The navbar and sidebar caused spacing and alignment issues since they
were fixed elements with defined height/width. It was difficult to have
all elements below them correctly offset the height. This patch changes
them
to sticky elements within the normal document flow that don't define
their
height/width explicitly. This actually lets us use existing HTML/CSS
properties (like the "content" div) more naturally.

This also changes the navbar behavior to not follow while scrolling.


  Commit: 597ffbe09d5f774f861ee55e50022bf84d7f98e2
      https://github.com/llvm/llvm-project/commit/597ffbe09d5f774f861ee55e50022bf84d7f98e2
  Author: Dan Gohman <dev at sunfishcode.online>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Basic/Targets.cpp
    M clang/lib/Basic/Targets/OSTargets.h
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Lex/InitHeaderSearch.cpp
    M clang/test/Preprocessor/init.c
    M llvm/docs/ReleaseNotes.md
    M llvm/include/llvm/TargetParser/Triple.h
    M llvm/lib/TargetParser/Triple.cpp
    M llvm/unittests/TargetParser/TripleTest.cpp

  Log Message:
  -----------
  Rename wasm32-wasi to wasm32-wasip1. (#165345)

This adds code to recognize "wasm32-wasip1", "wasm32-wasip2", and
"wasm32-wasip3" as explicit targets, and adds a deprecation warning when
the "wasm32-wasi" target is used, pointing users to the "wasm32-wasip1"
target.

Fixes #165344.

I'm filing this as a draft PR for now, as I've only just now proposed to
make this change in #165344.


  Commit: e971c3ee0e9205c666cf69fa721226d24e46653f
      https://github.com/llvm/llvm-project/commit/e971c3ee0e9205c666cf69fa721226d24e46653f
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [CFIInserter] Improve `CSRSavedLocation` struct. (#168869)

(1) Define `CSRSavedLocation::Kind` and use it in the code. This makes
the code more readable and allows to extend it to new kinds. For
example, soon I want to add "scalable offset from a given register"
kind.

(2) Store the contents in a union. This should reduce memory usage.


  Commit: 8a7d8c1690c444c2151852e983e4bccc3825250f
      https://github.com/llvm/llvm-project/commit/8a7d8c1690c444c2151852e983e4bccc3825250f
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  [Coverage] Make additional counters available for BranchRegion. NFC. (#120930)

`getBranchCounterPair()` allocates an additional Counter to SkipPath in
`SingleByteCoverage`.

`IsCounterEqual()` calculates the comparison with rewinding counter
replacements.

`NumRegionCounters` is updated to take additional counters in account.

`incrementProfileCounter()` has a few additiona arguments.

- `UseSkipPath=true`, to specify setting counters for SkipPath. It
assumes `UseSkipPath=false` is used together.

- `UseBoth` may be specified for marking another path. It introduces the
same effect as issueing `markStmtAsUsed(!SkipPath, S)`.

`llvm-cov` discovers counters in `FalseCount` to allocate `MaxCounterID`
for empty profile data.


https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492

Resumes: #112730 
Depends on: #112698 #112702 #112724


  Commit: 26fdd8faff33b0af12c4deb1abd5d5e4ebec1a00
      https://github.com/llvm/llvm-project/commit/26fdd8faff33b0af12c4deb1abd5d5e4ebec1a00
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    M clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    A clang/test/CIR/CodeGen/pointer-to-data-member-cmp.cpp

  Log Message:
  -----------
  [CIR] Upstream support for data member comparison (#171897)

This adds support for handling data member pointer comparisons in CIR.


  Commit: 0727fcb11d5df65bbcca75e0705a99387feb7618
      https://github.com/llvm/llvm-project/commit/0727fcb11d5df65bbcca75e0705a99387feb7618
  Author: Hideto Ueno <uenoku.tokotoko at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M mlir/lib/Bytecode/Reader/BytecodeReader.cpp
    M mlir/test/Bytecode/op_with_properties_deeply_nested_attr.mlir

  Log Message:
  -----------
  [mlir][Bytecode] Fix infinite loop by tracking type/attribute in deferred worklist (#174874)

The bytecode reader could enter an infinite loop when parsing deeply
nested attributes containing type references. The deferred worklist
stored only indices without distinguishing between attributes and types,
causing type indexes to be misinterpreted as attributes.

This patch changes the deferred worklist to store pairs of (index, kind)
to track whether each deferred entry is a type or attribute. The
worklist processing logic is updated to resolve the correct entry type.


  Commit: fea69aa19f458da504cc0553fe9879fd3a38aa97
      https://github.com/llvm/llvm-project/commit/fea69aa19f458da504cc0553fe9879fd3a38aa97
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ProfileData/Coverage/CoverageMapping.h
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp

  Log Message:
  -----------
  LLVMCoverage: Unify getCoverageForFile and getCoverageForFunction. NFC (#120842)

Since #119952, `getCoverageForFile` and `getCoverageForFunction` have
similar structure each other. Ther merged method `addFunctionRegions`
has two lambda subfunctions.

* `getCoverageForFile`
  - `MainFileID` may be `nullopt`.
- `shouldProcess` picks up relevant records along `FileIDs` that is
scanned based on `MainFileID`. They may have expanded source files.
  - `shouldExpand` takes the presense of `MainFileID` into account.
* `getCoverageForFunction`
  - This assumes the presense of `MainFileID`.
  - `shouldProcess` picks up records that belong only to `MainFileID`.
  - `shouldExpand` assumes the presense of `MainFileID`.

This change introduces a wrapper class `MergeableCoverageData` for
further merging instances. At the moment, this returns `CoverageData`
including `buildSegments()`.

This change itself is NFC.


  Commit: 6c35a89dc64fd82843a98137124b2038ff04c0f0
      https://github.com/llvm/llvm-project/commit/6c35a89dc64fd82843a98137124b2038ff04c0f0
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/ProfileData/Coverage/CoverageMapping.cpp
    M llvm/test/tools/llvm-cov/mcdc-const.test
    M llvm/test/tools/llvm-cov/mcdc-export-json.test
    M llvm/test/tools/llvm-cov/mcdc-general.test

  Log Message:
  -----------
  [Coverage] Sort `MCDCRecord::ExecVectors` order by Bitmap index (#121195)

This makes easier to merge `MCDCRecord`s in later stages.

Depends on: #110966, #121188, #121190


  Commit: 589851cbbf28f0ccf7e49b64dfffdf8b9c6cd661
      https://github.com/llvm/llvm-project/commit/589851cbbf28f0ccf7e49b64dfffdf8b9c6cd661
  Author: Ian Anderson <iana at apple.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [nfc][clang][driver][darwin] Label the ArgList argument in getCompilerRT in the Darwin toolchain (#175272)


  Commit: f8629b203693048af6f71e81dc51b59321b74695
      https://github.com/llvm/llvm-project/commit/f8629b203693048af6f71e81dc51b59321b74695
  Author: Marco Elver <elver at google.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/test/Sema/warn-thread-safety-analysis.c

  Log Message:
  -----------
  Thread Safety Analysis: Add test for guarded member initialization pattern in C (#175267)

A common problem in C code with guarded members is object construction,
where it should be allowed to initialize guarded members without holding
a capability (which itself requires initialization).

One potential pattern to solve this is "init with reentrant assert"
followed by member initialization. The pattern assumes that capability
objects themselves have an init function, which then asserts the
capability as held. To permit immediate use of the capability, we have
to cast to any reentrant capability.

The current implementation of reentrant capability supports this pattern
as-is: Casting to ReentrantMutex works because the analysis determines
if a held lock is reentrant based on the type used when the lock was
added to the fact set. Since the assertion uses the reentrant type, the
analysis records that the lock is reentrant. When the subsequent
mutex_exclusive_lock() occurs, the analyzer checks the properties of the
already held lock; finding it marked as reentrant, it allows the
"re-acquisition" instead of flagging a double-lock error.

Despite the potential for false negatives (real double-lock), the
pattern requires explicit casting to an auxiliary reentrant capability,
so this is not something that can easily happen by accident, but rather
requires developer intent and deliberate use. This is a valid solution
to this problem encountered by the Linux kernel:
https://lore.kernel.org/all/20260109060249.GA5259@lst.de/

NFC.


  Commit: 1600b05fda3253cbb7ebed92de441a34b3177dfc
      https://github.com/llvm/llvm-project/commit/1600b05fda3253cbb7ebed92de441a34b3177dfc
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/expm1f16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/expm1f16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/expm1f16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor expm1f16 implementation to header-only in src/__support/math folder. (#162132)

Part of #147386

in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450


  Commit: 0a48ff2a7f703c9edff80d2a4d3c8c006d3c0fed
      https://github.com/llvm/llvm-project/commit/0a48ff2a7f703c9edff80d2a4d3c8c006d3c0fed
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/MCDCState.h

  Log Message:
  -----------
  [MC/DC] Refactor MCDC::State::Decision. NFC. (#125408)

Introduce `ID` and `InvalidID`. Then `DecisionByStmt` can have three
states.

* Not assigned if the Stmt(Expr) doesn't exist.
* When `DecisionByStmt[Expr]` exists:
  * Invalid and should be ignored if `ID == Invalid`.
  * Valid if `ID != Invalid`. Other member will be filled in the Mapper.


  Commit: b4604e8cef74d0905905065b9b19e14cd8926155
      https://github.com/llvm/llvm-project/commit/b4604e8cef74d0905905065b9b19e14cd8926155
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [libc] Fix bazel format caused by #162132 (#175276)


  Commit: 5eccfaec2dc6d1d5d20c85cd680cf54fc49563d5
      https://github.com/llvm/llvm-project/commit/5eccfaec2dc6d1d5d20c85cd680cf54fc49563d5
  Author: Jie Fu <jiefu at tencent.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CodeGenPGO.cpp

  Log Message:
  -----------
  [clang][CodeGen] Avoid copy of loop variable (NFC)

/llvm-project/clang/lib/CodeGen/CodeGenPGO.cpp:1140:19: error: loop variable '[_, V]' creates a copy from type 'const value_type' (aka 'const llvm::detail::DenseMapPair<const clang::Stmt *, clang::CodeGen::CounterPair>') [-Werror,-Wrange-loop-construct]
  for (const auto [_, V] : *RegionCounterMap) {
                  ^
/llvm-project/clang/lib/CodeGen/CodeGenPGO.cpp:1140:8: note: use reference type 'const value_type &' (aka 'const llvm::detail::DenseMapPair<const clang::Stmt *, clang::CodeGen::CounterPair> &') to prevent copying
  for (const auto [_, V] : *RegionCounterMap) {
       ^~~~~~~~~~~~~~~~~~~
                  &
1 error generated.


  Commit: 38f1488ecd15cd43a259c73a679f5892f3a3aed6
      https://github.com/llvm/llvm-project/commit/38f1488ecd15cd43a259c73a679f5892f3a3aed6
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/AST/IgnoreExpr.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/test/CoverageMapping/mcdc-nested-expr.cpp
    M clang/test/Profile/c-mcdc-not.c

  Log Message:
  -----------
  [MC/DC] Enable usage of `!` among `&&` and `||` (#125406)

In the current implementation, `!(a || b) && c` was not treated as one
Decision with three terms.

Fixes #124563


  Commit: a3f395484b5bf346cb5d3a1beb4d02898c221195
      https://github.com/llvm/llvm-project/commit/a3f395484b5bf346cb5d3a1beb4d02898c221195
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [clang-doc] Update clang-tools-extra release notes (#175232)


  Commit: e720636120f34cb380eadb6407c1d277d92d622f
      https://github.com/llvm/llvm-project/commit/e720636120f34cb380eadb6407c1d277d92d622f
  Author: Harald van Dijk <hdijk at accesssoftek.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [BOLT] Avoid UB due to misaligned access. (#174990)

There is no guarantee that PatchOffset is suitably aligned for uint32_t,
and in BOLT's own tests, it is not aligned for uint32_t.

Fixes test failures seen with LLVM_USE_SANITIZER=Undefined.


  Commit: 79c11ef40ce34401d52ce07b2f070fa3e9557781
      https://github.com/llvm/llvm-project/commit/79c11ef40ce34401d52ce07b2f070fa3e9557781
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  [clang-format][NFC] Remove redundant checking for null pointer

See https://github.com/llvm/llvm-project/pull/143194#discussion_r2674008700


  Commit: 2723e9aad051ff214c955d29ceae1e58974e41a2
      https://github.com/llvm/llvm-project/commit/2723e9aad051ff214c955d29ceae1e58974e41a2
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/alias-template.mustache
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/enum-template.mustache
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/test/clang-doc/mustache-index.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp

  Log Message:
  -----------
  [clang-doc] Serialize repository URL in Mustache templates (#174914)

Location tags didn't handle possible `FileURL` fields when a repository
URL was specified in a clang-doc invocation. This also cleans up all
location occurences to use `<p>` instead of `<div>` and allows linking
to the repository URL.


  Commit: c9faf8da5e5a6c14bab26c98b320c651ecef8c45
      https://github.com/llvm/llvm-project/commit/c9faf8da5e5a6c14bab26c98b320c651ecef8c45
  Author: Chandler Carruth <chandlerc at gmail.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

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

  Log Message:
  -----------
  Add filegroups for installed compiler-rt headers (#175278)

These are installed along-side the builtin Clang headers. Adding these
filegroups follows the filegroups in clang/BUILD.bazel and allows
merging when both are needed.


  Commit: 43b8bc4b6f6f67f5f158daf910007f9ed223bbf4
      https://github.com/llvm/llvm-project/commit/43b8bc4b6f6f67f5f158daf910007f9ed223bbf4
  Author: lntue <lntue at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/sin.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/sin.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/sin.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor sin implementation to header-only in src/__support/math folder. (#175200)

Part of #147386

in preparation for:
https://discourse.llvm.org/t/rfc-make-clang-builtin-math-functions-constexpr-with-llvm-libc-to-support-c-23-constexpr-math-functions/86450


  Commit: 65ba5276e79f774b07fbdd9398236fc2c5965b50
      https://github.com/llvm/llvm-project/commit/65ba5276e79f774b07fbdd9398236fc2c5965b50
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/dynamic-static-initializers-constinit.hpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/dynamic-static-initializers.hpp

  Log Message:
  -----------
  [clang-tidy] Support C++20 constinit in bugprone-dynamic-static-initializers (#174744)

Variables marked with `constinit` are guaranteed to be statically
initialized. This patch add support for these.


  Commit: 29c15eeff7ccf6d8e92348197a6ebf288dcab60f
      https://github.com/llvm/llvm-project/commit/29c15eeff7ccf6d8e92348197a6ebf288dcab60f
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M mlir/docs/Bindings/Python.md

  Log Message:
  -----------
  [mlir][Python] add docs about downstream type/attr implementation (#175259)

This PR adds docs on the changes introduced in
https://github.com/llvm/llvm-project/pull/171775.


  Commit: 25663df7a6a099b82764e6b219b2f79d8a4e79ac
      https://github.com/llvm/llvm-project/commit/25663df7a6a099b82764e6b219b2f79d8a4e79ac
  Author: Vojtěch Michal <vojta.michall at email.cz>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M libcxx/test/support/MinSequenceContainer.h

  Log Message:
  -----------
  [libcxx] Add missing member `cend()` to `MinSequenceContainer` (#175114)

The `MinSequenceContainer` (used in tests for `<flat_map>` and
`<flat_set>`) currently provides `begin()`, `end()`, `cbegin()` but no
`cend()`.
[[container.reqmts]](https://eel.is/c++draft/container.reqmts#36) lists
member function `cend` as one of container requirements, together with
`begin()` and others.


  Commit: ef0682d3e633a3ed6c8818a887fef9477418c3bb
      https://github.com/llvm/llvm-project/commit/ef0682d3e633a3ed6c8818a887fef9477418c3bb
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M libcxx/include/any

  Log Message:
  -----------
  [libc++][NFC] Small cleanups for `any` (#175164)

1. Replace `std::trait<Args...>::value` with `std::trait_v<Args...>`.
2. Replace `_NOEXCEPT` in C++17 and later with `noexcept`.
3. Inline `any::swap` into the class body.


  Commit: b8892b9a9b0c1f66ac5bd878dea3741d50e1cb88
      https://github.com/llvm/llvm-project/commit/b8892b9a9b0c1f66ac5bd878dea3741d50e1cb88
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/PowerPC/widen-vec-correctly-be.ll
    M llvm/test/CodeGen/X86/fshl.ll
    M llvm/test/CodeGen/X86/funnel-shift.ll
    M llvm/test/CodeGen/X86/select.ll

  Log Message:
  -----------
  [SDAG] Add freeze when simplifying select with undef arms (#175199)

Consider the following pattern:
```
%trunc = trunc nuw i64 %x to i48
%sel = select i1 %cmp, i48 %trunc, i48 undef
```
We cannot simplify `%sel` to `%trunc` as `%trunc` may be poison, which
cannot be refined into undef.

This patch checks whether the replacement may be poison. If so, it will
insert a freeze.
We may need SDAG's version of `impliesPoison` if it causes significant
regressions.
Compile-time impact:
https://llvm-compile-time-tracker.com/compare.php?from=ded109c0cff41714ebf9bd60b073aaab07fa4ca8&to=103e605ce6b33bc9145526faf805ee38b972c215&stat=instructions%3Au

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


  Commit: 46d9d4b2e000e309987dfc332b3822ab8703fca0
      https://github.com/llvm/llvm-project/commit/46d9d4b2e000e309987dfc332b3822ab8703fca0
  Author: William Tran-Viet <wtranviet at proton.me>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M libcxx/include/optional
    M libcxx/modules/std/optional.inc

  Log Message:
  -----------
  [libc++] Guard `optional::iterator` range variables behind experimental (#175222)


  Commit: 13055d60bb9ff805caa8d335923d6374320b436c
      https://github.com/llvm/llvm-project/commit/13055d60bb9ff805caa8d335923d6374320b436c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M llvm/utils/TableGen/CMakeLists.txt
    M llvm/utils/TableGen/Common/CMakeLists.txt
    R llvm/utils/TableGen/Common/DAGISelMatcher.cpp
    R llvm/utils/TableGen/Common/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelEmitter.cpp
    A llvm/utils/TableGen/DAGISelMatcher.cpp
    A llvm/utils/TableGen/DAGISelMatcher.h
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
    M llvm/utils/TableGen/DAGISelMatcherGen.cpp
    M llvm/utils/TableGen/DAGISelMatcherOpt.cpp

  Log Message:
  -----------
  [TableGen] Move DAGISelMatcher.cpp/h out of the Common library. NFC (#175271)

These files contain the implementation of classes used by only the
-gen-dag-isel backend. I don't think they are reusable without
DAGISelMatcherGen.cpp and DAGISelMatcherEmitter.cpp. I don't think
there's anything worth unittesting in just these files either.


  Commit: 85bb71090c34a599a74deaf4a271f1f994a221d7
      https://github.com/llvm/llvm-project/commit/85bb71090c34a599a74deaf4a271f1f994a221d7
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M .ci/compute_projects.py

  Log Message:
  -----------
  [CI] Remove reference to a dated issue

There are no plans currently to fix #132803 given the job run time
impact that it would cause. So for now, closing it.

Closes #132803.


  Commit: 91f7e7f59277b8f9f80ea3522895b0da63e1f7fc
      https://github.com/llvm/llvm-project/commit/91f7e7f59277b8f9f80ea3522895b0da63e1f7fc
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M libcxx/include/__mdspan/layout_stride.h
    M libcxx/include/__mdspan/mdspan.h

  Log Message:
  -----------
  [libc++][mdspan][NFC] Remove redundant `else` and trailing semicolons (#175024)


  Commit: 853a8b4f335e3b029d6741313169d14bb647db35
      https://github.com/llvm/llvm-project/commit/853a8b4f335e3b029d6741313169d14bb647db35
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/test/SemaCXX/warn-unsafe-buffer-usage-libc-functions.cpp

  Log Message:
  -----------
  [-Wunsafe-buffer-usage] Allow strerror for %s in printf-like calls (#175208)

Passing strerror(errno) to printf of printf-like logging functions is a
common pattern, and strerror() returns a null-terminated string.

Follow-up to #173096


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

  Changed paths:
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile

  Log Message:
  -----------
  [Github] Bump runner version in github-action-ci containers

A new runner just came out. Nothing terribly interesting in the release
notes, but it is good to update to stay ahead of the relatively short
time horizon for runner binary support by Github Actions.


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

  Changed paths:
    M libcxx/utils/ci/docker/docker-compose.yml

  Log Message:
  -----------
  [libcxx][Github] Bump Github Runner Version to v2.331.0

Keeps things up to date to keep things up to date (and prevent us from
falling below the support horizon).


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

  Changed paths:
    M libcxx/utils/ci/images/libcxx_next_runners.txt
    M libcxx/utils/ci/images/libcxx_runners.txt

  Log Message:
  -----------
  [libcxx][Github] Bump container version in premerge CI

This includes e8753c0de90d3aaa60361b5354588fa29fef9228 to bump the
runner version. The contents of the container will remain the same given
we're using the same base image.


  Commit: 9a02a3c7f4cc0a5fa807556abc862f1c4121663d
      https://github.com/llvm/llvm-project/commit/9a02a3c7f4cc0a5fa807556abc862f1c4121663d
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-09 (Fri, 09 Jan 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/cmake/modules/LLVMLibCObjectRules.cmake
    M libc/cmake/modules/LLVMLibCTestRules.cmake
    M libc/utils/hdrgen/hdrgen/header.py

  Log Message:
  -----------
  [libc] Support for generating proxy headers (#175279)

This is a follow up to #174823 which adds build system integration.


  Commit: 71a77dc043b22cfcff013eff1f0f4be15910cdf0
      https://github.com/llvm/llvm-project/commit/71a77dc043b22cfcff013eff1f0f4be15910cdf0
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M .github/workflows/release-sources.yml
    M llvm/utils/release/export.sh

  Log Message:
  -----------
  workflows/release-sources: Disable building sub-project tarballs by default (#173441)

Sub-project tarbball creation has been disabled in the export.sh script
by default. It can be enabled by passing the --sub-project option. This
will not be used for official releases, but the option will allow users
to generate the sub-project tarballs themseleves if they want to.


https://discourse.llvm.org/t/rfc-do-something-with-the-subproject-tarballs-in-the-release-page/75024/

---------

Co-authored-by: Cullen Rhodes <cullen.rhodes at arm.com>


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

  Changed paths:
    M mlir/lib/Dialect/Utils/StaticValueUtils.cpp
    M mlir/test/Dialect/SCF/canonicalize.mlir

  Log Message:
  -----------
  [MLIR][SCF] Fix Loop Trip Count Calculation for Unsigned Values (#175301)

Previously, loop trip count was calculated using signed division
and remainder for both signed and unsigned values.

For loops like:
```
scf.for unsigned 0 to -100 step 2147483647 : i32 {}
```
This resulted in a trip count of 1 when the actual trip count is 2.

This PR fixes it by using unsigned division and remainder for
unsigned values.


  Commit: b77f7df4971dcbfd9b4490574845ac45c9489e76
      https://github.com/llvm/llvm-project/commit/b77f7df4971dcbfd9b4490574845ac45c9489e76
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M .github/workflows/get-llvm-version/action.yml
    M .github/workflows/release-binaries.yml

  Log Message:
  -----------
  workflows/get-llvm-version: Add full-no-suffix output variable (#174647)


  Commit: c9f13b5404476cfe426886849e3b5e13243af06b
      https://github.com/llvm/llvm-project/commit/c9f13b5404476cfe426886849e3b5e13243af06b
  Author: Sergei Druzhkov <serzhdruzhok at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M lldb/include/lldb/API/SBValue.h
    M lldb/source/API/SBValue.cpp
    M lldb/test/API/tools/lldb-dap/evaluate/TestDAP_evaluate.py
    M lldb/test/API/tools/lldb-dap/evaluate/main.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.h
    M lldb/tools/lldb-dap/JSONUtils.cpp

  Log Message:
  -----------
  [lldb-dap] Add clipboard context support (#170644)

This patch introduces support for `clipboard` context from
[DAP](https://microsoft.github.io/debug-adapter-protocol/specification#Types_Capabilities).
This feature is very useful when you want to copy all nested values from
a structure or a container instead of a summary (e.g. `size = 3` for
vector). I added new short mode for description generation to reduce
output verbosity, which is particularly useful for primitive types.


  Commit: d8ace2df574bbf978d5f9d51ceeb1ced9fcf8a5b
      https://github.com/llvm/llvm-project/commit/d8ace2df574bbf978d5f9d51ceeb1ced9fcf8a5b
  Author: Yingwei Zheng <dtcxzyw2333 at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [X86][SDAG] Fix shamt for vXi8 shift expansion (#175308)

The bailing-out logic for 3-stage shifts acts as follows:
```
if (MinLZ < 2) {
  conditionally shift by 4
}
if (MinLZ < 1) {
  conditionally shift by 2
}
conditionally shift by 1
```
When `MinLZ = 1`, only the shift by 4 and by 1 paths are executed. It is
weird.

Closes https://github.com/llvm/llvm-project/issues/175303. The original
reproducer is equivalent to the existing func `@shl2_v32i8`, so no new
tests need to be added.


  Commit: 5d7e0820dda296a3ec89792d8ec2df9d4b33bbe8
      https://github.com/llvm/llvm-project/commit/5d7e0820dda296a3ec89792d8ec2df9d4b33bbe8
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-exp.ll

  Log Message:
  -----------
  InstCombine: Use canonicalizing getFPClassConstant when simplifying exp (#174850)


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

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/SemaTemplate/deduction.cpp

  Log Message:
  -----------
  [clang][bytecode] Limit "... variable whose value is not known" diags (#175287)

To variables with reference types.


  Commit: 4ecee6213374995a09df4444d8819bc619ac952d
      https://github.com/llvm/llvm-project/commit/4ecee6213374995a09df4444d8819bc619ac952d
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/loongarch.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_loongarch.cpp

  Log Message:
  -----------
  [JITLink][LoongArch][NFC] Move applyFixup implementation from header to source file


  Commit: 2b260c665c15cabacdd71059e08e64dea17bd3f4
      https://github.com/llvm/llvm-project/commit/2b260c665c15cabacdd71059e08e64dea17bd3f4
  Author: WANG Rui <wangrui at loongson.cn>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M lld/test/ELF/loongarch-relax-align.s
    M lld/test/ELF/loongarch-relax-emit-relocs.s
    M lld/test/ELF/loongarch-relax-pc-hi20-lo12-got-symbols.s
    M lld/test/ELF/loongarch-relax-pc-hi20-lo12.s
    M lld/test/ELF/loongarch-relocatable-align.s
    M lld/test/ELF/loongarch-tls-gd-edge-case.s
    M lld/test/ELF/loongarch-tls-gd.s
    M lld/test/ELF/loongarch-tls-ie.s
    M lld/test/ELF/loongarch-tls-ld.s
    M lld/test/ELF/loongarch-tlsdesc.s

  Log Message:
  -----------
  [lld][LoongArch][NFC] Explicitly enable LA32S in LA32 test cases


  Commit: 98df73d52abd9ad7495aefb6bf12ab646f4d31dc
      https://github.com/llvm/llvm-project/commit/98df73d52abd9ad7495aefb6bf12ab646f4d31dc
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/Attributor/nofpclass-fdiv.ll
    M llvm/test/Transforms/Attributor/nofpclass-frem.ll

  Log Message:
  -----------
  ValueTracking: Add more baseline tests for fdiv sign tracking (#174651)

This is the fmul version of 08b1403228953866cb052a3fdb34719a7f4e87e2


  Commit: 271a62f838cb020f356ab371d1da8927014fff9d
      https://github.com/llvm/llvm-project/commit/271a62f838cb020f356ab371d1da8927014fff9d
  Author: Twice <twice at apache.org>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M mlir/include/mlir-c/BuiltinAttributes.h
    M mlir/include/mlir/Bindings/Python/IRAttributes.h
    M mlir/lib/CAPI/IR/BuiltinAttributes.cpp
    M mlir/test/python/ir/attributes.py

  Log Message:
  -----------
  [MLIR][Python] Add `attr_name` for `FloatAttr` (#175306)

After #174756 I found that attribute name for `FloatAttr` is missing.
And this PR is to add it.

This is actually part of changes in #169045, but I think that we can
make it a separate PR to make #169045 easier to review.


  Commit: 7c6162fc5994f0389f2c079772497facbfe39a38
      https://github.com/llvm/llvm-project/commit/7c6162fc5994f0389f2c079772497facbfe39a38
  Author: Rana Pratap Reddy <109514914+ranapratap55 at users.noreply.github.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    A clang/test/CodeGenHIP/builtins-amdgcn-mfma-gfx908.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-mfma-gfx942.hip
    A clang/test/CodeGenHIP/builtins-amdgcn-mfma-gfx950.hip

  Log Message:
  -----------
  [AMDGPU] Modifies mfma builtin def to take _Float16 for HIP/C++ (#175197)

For mfma builtins, using 'x' to take _Float16 for HIP/C++ and half for
OpenCL.


  Commit: 7450a75b93801e5720b50a02b064216ca27ef8ff
      https://github.com/llvm/llvm-project/commit/7450a75b93801e5720b50a02b064216ca27ef8ff
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    A llvm/test/Transforms/LoopVectorize/X86/vplan-single-bit-ind-var-width-4.ll

  Log Message:
  -----------
  [VPlan] Allow truncation for lanes in VPScalarIVStepsRecipe (#175268)

VPScalarIVStepsRecipe relies on APInt truncation in order to vectorize
blocks with a width greater than the maximum value the types of some of
their (changing) operands are able to hold (e.g., an i1 input with a
vector width of 4). Simply reenable implicit truncation in
ConstantInt::get() to cover this case.

Remove the helper function given it is only called in one place to
prevent accidentally using it elsewhere where we probably do not want
implicit truncation turned on.

This fixes another case that we saw after
acb78bde6fb613a9af2a604bc69fa744a8cee850 did not fix that issue, which
had the same stack trace. We still want to keep lane constants as
unsigned.

Somewhat similar to 6d1e7d4982fabc9e245897056a5425496df6a7a3.

This test case comes from a tensorflow/XLA compilation from a test case
in https://github.com/google-research/spherical-cnn.


  Commit: e2ff1348f891fdc1db15b3ba02c712fa82ed9707
      https://github.com/llvm/llvm-project/commit/e2ff1348f891fdc1db15b3ba02c712fa82ed9707
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fdiv.ll

  Log Message:
  -----------
  ValueTracking: Improve sign bit handling for fdiv (#174652)

This is the fdiv version of 5020e0ff1494137ff12b4ed7c8fa896f8088b17b for
fmul.


  Commit: 1eebd2a42ec73625f961179e1b0df706dc91f2ff
      https://github.com/llvm/llvm-project/commit/1eebd2a42ec73625f961179e1b0df706dc91f2ff
  Author: Sam Elliott <aelliott at qti.qualcomm.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/test/Driver/print-supported-extensions-riscv.c
    M llvm/docs/RISCVUsage.rst
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/test/CodeGen/RISCV/attributes-qc.ll
    M llvm/test/CodeGen/RISCV/features-info.ll
    M llvm/test/CodeGen/RISCV/pr148084.ll
    M llvm/test/CodeGen/RISCV/qci-interrupt-attr.ll
    M llvm/test/CodeGen/RISCV/xqccmp-additional-stack.ll
    M llvm/test/CodeGen/RISCV/xqccmp-callee-saved-gprs.ll
    M llvm/test/CodeGen/RISCV/xqccmp-cm-popretz.mir
    M llvm/test/CodeGen/RISCV/xqccmp-cm-push-pop.mir
    M llvm/test/CodeGen/RISCV/xqccmp-push-pop-popret.ll
    M llvm/test/CodeGen/RISCV/xqccmp-with-float.ll
    M llvm/test/CodeGen/RISCV/xqccmp_mvas_mvsa.mir
    M llvm/test/DebugInfo/RISCV/relax_dwo_ranges.ll
    M llvm/test/MC/Disassembler/RISCV/xqccmp-invalid-rlist.txt
    M llvm/test/MC/RISCV/rv32e-xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv32xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv32xqccmp-valid.s
    M llvm/test/MC/RISCV/rv64e-xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv64e-xqccmp-valid.s
    M llvm/test/MC/RISCV/rv64xqccmp-invalid.s
    M llvm/test/MC/RISCV/rv64xqccmp-valid.s
    M llvm/unittests/TargetParser/RISCVISAInfoTest.cpp

  Log Message:
  -----------
  [RISCV] Mark Xqccmp as not experimental (#175066)


  Commit: 18d6d67067a31cc089daca4b3d686dff5d7c422a
      https://github.com/llvm/llvm-project/commit/18d6d67067a31cc089daca4b3d686dff5d7c422a
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/Function.h
    M clang/test/AST/ByteCode/invalid.cpp

  Log Message:
  -----------
  [clang][bytecode] Check for invalid function decls (#175312)

If the function decl is invalid, the `interp::Function` shouldn't ever
be valid.

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


  Commit: 481cf71a027e391910c15f82c53841fe716df5ab
      https://github.com/llvm/llvm-project/commit/481cf71a027e391910c15f82c53841fe716df5ab
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fdiv.ll

  Log Message:
  -----------
  ValueTracking: Handle fdiv by known 0 case in computeKnownFPClass (#174855)

This will help subsume some transforms instsimplify performs
in the middle of SimplifyDemandedFPClass


  Commit: ba79486b6a00143afbf059e2ccb44c726739db8b
      https://github.com/llvm/llvm-project/commit/ba79486b6a00143afbf059e2ccb44c726739db8b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass-fdiv.ll
    M llvm/test/Transforms/Attributor/nofpclass-frem.ll

  Log Message:
  -----------
  ValueTracking: Rule out nan for fdiv self special case (#174857)

Addresses TODO for signaling nan handling.


  Commit: 85e10cb4fe9c331ba3c53c3ce994e4018de062c7
      https://github.com/llvm/llvm-project/commit/85e10cb4fe9c331ba3c53c3ce994e4018de062c7
  Author: Ch1p <hduch1p at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/tools/dsymutil/DwarfLinkerForBinary.cpp
    M llvm/tools/dsymutil/LinkUtils.h
    M llvm/tools/dsymutil/MachOUtils.cpp
    M llvm/tools/dsymutil/MachOUtils.h
    M llvm/tools/dsymutil/Options.td
    M llvm/tools/dsymutil/dsymutil.cpp

  Log Message:
  -----------
  [dsymutil] Add new argument allow_invalid_macho (#173503)


  Commit: 524fde8a4de43d4114ad58349d4c4c12609108a5
      https://github.com/llvm/llvm-project/commit/524fde8a4de43d4114ad58349d4c4c12609108a5
  Author: MaPePeR <MaPePeR at users.noreply.github.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][Python] Register `OpAttributeMap` as `Mapping` for `match` compatibility (#174292)

This is a continuation of the idea from #174091 to add `match` support
for MLIR containers. In this PR the `OpAttributeMap` container is
registered as a `Mapping`, so be mapped as a "dictionary" in `match`
statements.

For this to work the `get(key, default=None)` method had to be
implemented. Those are pretty much copys of `dunderGetItemNamed` and
`dunderGetItemIndexed` with an added argument and `nb::object` as return
type, because they can now return other types than just `PyAttribute`.
Was unsure if I should refactor this to make `dunderGetItem...` use the
new `getWithDefault...` or if a separate method is preferred. Kept it as
a copy for simplicitys sake for now.

Even though the `OpAttributeMap` supports indexing by `int` and `str`,
Python does not allow to register it as a `Sequence` and a `Mapping` at
the same time. If it is registered as a Sequence it only returns the
attribute names as string, not as `NamedAttribute`. It is technically
possible to also use integer keys for the `dict`-like match, but it
doesn't provide any constraints on the number of attributes, etc., so
probably not recommended.

<details><summary>Example</summary>

```python
from mlir.ir import Context, Module, OpAttributeMap
from collections.abc import Sequence

ctx = Context()
ctx.allow_unregistered_dialects = True
module = Module.parse(
    r"""
"some.op"() { some.attribute = 1 : i8,
                other.attribute = 3.0,
                dependent = "text" } : () -> ()
""",
    ctx,
)
op = module.body.operations[0]

def test(attr):
    match attr:
        case [*args]:
            print("matched a Sequence", args)
        case _:
            print("Didn't match as Sequence")
    match attr:
        case {"some.attribute": a, "other.attribute": b, "dependent": c}:
            print("Matched as Mapping individually", a, b, c)
        case _:
            print("Didn't match a Mapping")
    match attr:
        case {0: a, 1: b}:
            print("Matched as Mapping with 2 int keys", a, b)
        case _:
            print("Didn't match as Mapping with 2 int keys")
print("Registered as Mapping only:")
test(op.attributes)
print("\nAfter additonally registering as Sequence:")
Sequence.register(OpAttributeMap)
test(op.attributes)
```
Output:
```
Registered as Mapping only:
Didn't match as Sequence
Matched as Mapping individually 1 : i8 3.000000e+00 : f64 "text"
Matched as Mapping with 2 int keys NamedAttribute(dependent="text") NamedAttribute(other.attribute=3.000000e+00 : f64)

After additonally registering as Sequence:
matched a Sequence ['dependent', 'other.attribute', 'some.attribute']
Didn't match a Mapping
Didn't match as Mapping with 2 int keys
```
</details>

makslevental Would be great if you could take a look again ❤️

---------

Co-authored-by: Maksim Levental <maksim.levental at gmail.com>


  Commit: 9bcf43c0f38145932791a3788845f2562e774e87
      https://github.com/llvm/llvm-project/commit/9bcf43c0f38145932791a3788845f2562e774e87
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/lib/Interpreter/IncrementalExecutor.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/tools/clang-repl/ClangRepl.cpp
    M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp

  Log Message:
  -----------
  [clang-repl] Simplify the logic around out of process execution. NFC (#175322)

cc: @aaronj0, @Vipul-Cariappa


  Commit: 5d501d1a8d287b9c410aa46ffb5534859e518a8a
      https://github.com/llvm/llvm-project/commit/5d501d1a8d287b9c410aa46ffb5534859e518a8a
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll

  Log Message:
  -----------
  InstCombine: Handle minimumnum/maximumnum in SimplifyDemandedFPClass (#173977)


  Commit: 41079dac98ece04a3ee555049c5dd1d50523bb61
      https://github.com/llvm/llvm-project/commit/41079dac98ece04a3ee555049c5dd1d50523bb61
  Author: Kim Gräsman <kim.grasman at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/AST/DeclPrinter.cpp
    M clang/test/SemaCXX/cxx11-attr-print.cpp

  Log Message:
  -----------
  Control spacing for attribute printing (#174197)

This was motivated by the decl printing for the alignas() keyword
attribute:

    class alignas(1) Foo;

would be printed as:

    class alignas(1)  Foo;

with two spaces before class name.

Rather than trying to help `prettyPrintAttributes` guess what the caller
wants in terms of leading and trailing spaces, have it return an
`optional<string>` which is either the pretty-printed attributes for
Pos,
or `nullopt` if no attributes were found.

That way callers can compose and only print desired prefix/suffix if
they know there are attributes to print.

Add simple test cases for alignas.


  Commit: 696946f897db90d07dbfb981ad8e75fd872a1d35
      https://github.com/llvm/llvm-project/commit/696946f897db90d07dbfb981ad8e75fd872a1d35
  Author: tcottin <timcottin at gmx.de>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/SemaLambda.cpp
    M clang/test/AST/ast-dump-record-definition-data-json.cpp
    M clang/test/AST/ast-dump-templates.cpp
    M clang/test/CXX/temp/temp.pre/p6.cpp

  Log Message:
  -----------
  [clang] Add a valid begin source location for abbreviated function templates (#174723)

The begin source location for function templates is determined by the
source location of the template keyword.
Pure abbreviated function templates do not have the template keyword.
This results in an invalid begin source location for abbreviated
function templates.

Without a valid begin source location, comments cannot be attached to
the function template which leads to the bug described in
clangd/clangd#2565.

This patch introduces new begin locations for abbreviated function
templates (begin of the templated function) and generic lambdas (begin
of the introducer `[...]`) when creating the template parameter lists in
Sema.


  Commit: 35ce17b6f6ca5dd321af8e6763554b10824e4ac4
      https://github.com/llvm/llvm-project/commit/35ce17b6f6ca5dd321af8e6763554b10824e4ac4
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/AggressiveInstCombine/X86/sqrt.ll
    M llvm/test/Transforms/Attributor/nofpclass-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass-nan-fmul.ll
    M llvm/test/Transforms/Attributor/nofpclass.ll
    M llvm/test/Transforms/InstCombine/fabs.ll
    M llvm/test/Transforms/InstCombine/fast-math.ll
    M llvm/test/Transforms/InstSimplify/floating-point-compare.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  ValueTracking: Check if fmul operand could be undef (#174458)

In the special case for the same value for both operands,
ensure the value isn't undef.


  Commit: cd5d07e65cfd92d276bd1b704bcda12952065161
      https://github.com/llvm/llvm-project/commit/cd5d07e65cfd92d276bd1b704bcda12952065161
  Author: Mythreya Kuricheti <git at mythreya.dev>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang-tools-extra/docs/ReleaseNotes.rst

  Log Message:
  -----------
  [clangd] Add designator hints for parenthesis aggregate initialization (#170642)

Fixes clangd/clangd#2540


  Commit: e63ae7701a054d891171db8a7c6ec009c3327150
      https://github.com/llvm/llvm-project/commit/e63ae7701a054d891171db8a7c6ec009c3327150
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-mc-assemble-fuzzer/llvm-mc-assemble-fuzzer.cpp

  Log Message:
  -----------
  [NFC] Add missing `override` on function. (#173701)


  Commit: d593bcdc54981e84b5bf17a110d9f809bd883c41
      https://github.com/llvm/llvm-project/commit/d593bcdc54981e84b5bf17a110d9f809bd883c41
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/Flang.cpp
    M flang/docs/Aliasing.md
    M flang/lib/Optimizer/Analysis/AliasAnalysis.cpp
    M flang/test/Analysis/AliasAnalysis/alias-analysis-cray-pointers.fir
    M flang/test/Driver/unsafe-cray-pointers.f90
    M flang/test/Transforms/tbaa-cray-pointer.fir

  Log Message:
  -----------
  [flang] Changes to "unsafe Cray pointers" option (#175223)

Reserve "-funsafe-cray-pointers" (with "f") for the driver. In the
fir-alias-analysis use "-unsafe-cray-pointers" (without "f").

This prevents conflicts with how certain kinds of tools use the "unsafe
Cray pointers" options.


  Commit: 4f90ce4e6ec20db592836421ce309aaab134c353
      https://github.com/llvm/llvm-project/commit/4f90ce4e6ec20db592836421ce309aaab134c353
  Author: Owen Pan <owenpiano at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M clang/lib/Format/UnwrappedLineParser.cpp

  Log Message:
  -----------
  [clang-format][NFC] Minor cleanups of RemoveParentheses


  Commit: f3b7710b6b9d619a8afea49c648b340faede8707
      https://github.com/llvm/llvm-project/commit/f3b7710b6b9d619a8afea49c648b340faede8707
  Author: Lane0218 <laneljc at qq.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

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

  Log Message:
  -----------
  [clang-format] Correctly annotate C compound literal braces (#173771)

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

clang-format mis-formats C compound literals used in macro bodies, e.g.
`#define getAddr(v, type) &(type){v}`, treating `{...}` as a
block/function body
and reflowing the macro with backslashes and spaces.

This change:
- Recognizes `&( ... ){ ... }` patterns in macro bodies and marks the
brace as a braced-init.
- Improves parsing stability for braced lists in macro bodies.

Tests:
- FormatTests

---------

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


  Commit: 0e4be262f4d0e74462b3f3d75e638e4ba3c56a4f
      https://github.com/llvm/llvm-project/commit/0e4be262f4d0e74462b3f3d75e638e4ba3c56a4f
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/DialectIRDL.cpp
    M mlir/lib/Bindings/Python/DialectLLVM.cpp
    M mlir/lib/Bindings/Python/DialectLinalg.cpp
    M mlir/lib/Bindings/Python/DialectQuant.cpp
    M mlir/lib/Bindings/Python/ExecutionEngineModule.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/lib/Bindings/Python/IRTypes.cpp
    M mlir/lib/Bindings/Python/TransformInterpreter.cpp
    M mlir/test/python/lib/PythonTestModuleNanobind.cpp

  Log Message:
  -----------
  [mlir][Python] fix dialect extensions which bind C types (#175405)

Fix some dialect bindings I missed in https://github.com/llvm/llvm-project/pull/174156 so they don't bind C structs (because that leads to multiple registration in the case when multiple packages are used simultaneously).


  Commit: 9bd910dae4758c148df6675c8139183dc7272019
      https://github.com/llvm/llvm-project/commit/9bd910dae4758c148df6675c8139183dc7272019
  Author: Twice <twice at apache.org>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M mlir/lib/Bindings/Python/Rewrite.cpp
    M mlir/test/python/rewrite.py

  Log Message:
  -----------
  [MLIR][Python] Rename `GreedyRewriteDriverConfig` to `GreedyRewriteConfig` (#175409)

This is mainly for two purposes: 
1. to keep it consistent with the C++ class name
`mlir::GreedyRewriteConfig`,
2. to make it shorter.

Since this type was only added a few days ago
(654b3e844f21d3f64521e9cb028efdfebbf99bb4), it shouldn’t cause any
obvious compatibility issues.


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

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

  Log Message:
  -----------
  Fix Bazel build for 0e4be26 (#175412)


  Commit: 00915b22ffa63cc5ed6dc1c701e9bfe30bbbae07
      https://github.com/llvm/llvm-project/commit/00915b22ffa63cc5ed6dc1c701e9bfe30bbbae07
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-10 (Sat, 10 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Use static arrays+ArrayRef instead of SmallVector to select P extension vector VTs. NFC (#175390)


  Commit: 8b53523163249d41eabf12867a89a05e9d018f8c
      https://github.com/llvm/llvm-project/commit/8b53523163249d41eabf12867a89a05e9d018f8c
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M libcxx/test/libcxx/time/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][chrono][NFC] Refactor `nodiscard.verify.cpp` (#175411)

A pre-requisite for https://github.com/llvm/llvm-project/pull/174968 -
just moved around a few lines as a first step to splitting the test.


  Commit: 62d4aa1ad8fe7ddf881e97f31a8d39aee567da89
      https://github.com/llvm/llvm-project/commit/62d4aa1ad8fe7ddf881e97f31a8d39aee567da89
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fpext.ll

  Log Message:
  -----------
  InstCombine: Add fpext SimplifyDemandedFPClass baseline tests (#174848)


  Commit: 9466e285f661693942fa28bc914d5859f2349899
      https://github.com/llvm/llvm-project/commit/9466e285f661693942fa28bc914d5859f2349899
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

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

  Log Message:
  -----------
  [clang-repl] Teach the default orc runtime finder to search in more locations (#175416)

This should resolve a recent solaris failure reported in #175322.


  Commit: 6559bdab615442a5e08992bfbe310d94cf6f5be2
      https://github.com/llvm/llvm-project/commit/6559bdab615442a5e08992bfbe310d94cf6f5be2
  Author: ofri frishman <ofri4321 at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.h
    M mlir/include/mlir/Dialect/SCF/Transforms/Passes.td
    M mlir/lib/Dialect/SCF/Transforms/LoopSpecialization.cpp

  Log Message:
  -----------
  [mlir] Remove loop peeling explicit C'tor (#175419)

The SCF dialect loop peeling pass has an explicit C'tor. This creates an
inconvenience to use non default pass options, since they can only be
passed as a string after the pass creation. After removing the explicit
C'tor, the code auto generation creates 2 C'tors, which one of them can
directly receive pass options struct in case non default values are
required.
The explicit C'tor does not match auto generated C'tor convention, so
this change requires any uses of the pass in downstream projects to
update to use the auto generated C'tor.


  Commit: 1d4743e1bc7bd19e4d8e4139e878e6421bd303a4
      https://github.com/llvm/llvm-project/commit/1d4743e1bc7bd19e4d8e4139e878e6421bd303a4
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/containers/container.node/node_handle.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/memory.nodiscard.verify.cpp
    R libcxx/test/libcxx/diagnostics/node_handle.nodiscard.verify.cpp
    M libcxx/test/libcxx/language.support/nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/memory/nodiscard.verify.cpp
    M libcxx/test/libcxx/utilities/variant/nodiscard.verify.cpp
    R libcxx/test/std/containers/container.node/node_handle.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][NFC] Refactored `nodiscard.verify.cpp` tests (#175285)

Moved tests to the correct locations.
Removed a redundant test.


  Commit: 48a6157eb05186dabad7f3785dfae719a5e8d984
      https://github.com/llvm/llvm-project/commit/48a6157eb05186dabad7f3785dfae719a5e8d984
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

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

  Log Message:
  -----------
  [mlir][Interfaces][NFC] Document that `RegionBranchTerminatorOpInterface` is mandatory (#174978)

Document that implementing the `RegionBranchTerminatorOpInterface` is
mandatory. Omitting this interface on a block terminator that models
region branching may lead to invalid/incomplete analyses and
transformations.

This commit does not change the op/interface semantics. It just puts in
writing an assumption that is made throughout the code base. For
example:

- It is baked into the API design of the `RegionBranchOpInterface`. You
cannot query the region successors of block terminators that do not
implement the `RegionBranchTerminatorOpInterface`:
`RegionBranchOpInterface::getSuccessors()` takes a `RegionBranchPoint`
parameter, and such region branch points can be constructed only from
`RegionBranchTerminatorOpInterface` and not arbitrary `Operation *`.
- Helper functions + default interface method implementations enumerate
region branch points by looking for `RegionBranchTerminatorOpInterface`
and ignoring other operations. E.g.,
`RegionBranchOpInterface::getAllRegionBranchPoints`, default
implementation of `RegionBranchOpInterface::getSuccessorRegions(Region
&)`, default implementation of
`RegionBranchOpInterface::getPredecessorValues`.
- Core analyses such as `DeadCodeAnalysis` look for
`RegionBranchTerminatorOpInterface` and misbehave when the interface is
not implemented. The analysis does not (and cannot) query region
successors of a region branching terminator that does not implement the
`RegionBranchTerminatorOpInterface`. In practice, this means that
forgetting to implement the `RegionBranchTerminatorOpInterface` may
incorrectly classify regions as dead.
- Other analyses / transformations that look for and depend on the
implementation of `RegionBranchTerminatorOpInterface`:
`mlir::getControlFlowPredecessors`,
`AbstractDenseBackwardDataFlowAnalysis`, ownership-based buffer
deallocation pass.


  Commit: 7e4f390c385f9dd9e8bb0912b35f1361e3d06c83
      https://github.com/llvm/llvm-project/commit/7e4f390c385f9dd9e8bb0912b35f1361e3d06c83
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fpext.ll

  Log Message:
  -----------
  InstCombine: Handle fpext in SimplifyDemandedFPClass (#174849)


  Commit: 12cccb96de36bdef7bbdd7b77543a9063f7c0ecc
      https://github.com/llvm/llvm-project/commit/12cccb96de36bdef7bbdd7b77543a9063f7c0ecc
  Author: Maya Amrami <mayaam88 at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/test/Dialect/MemRef/ops.mlir

  Log Message:
  -----------
  Reapply [mlir][memref]: Allow collapse of strided unit dim even if strides are dynamic (#171039)


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
    M llvm/test/Transforms/LoopVectorize/epilog-vectorization-reductions.ll

  Log Message:
  -----------
  [LV] Handle live-ins in findRecipe.

Skip live-ins in findRecipe to prevent a crash for cases with degenerate
reductions (where the backedge value is a live-in). Such reductions
should be removed, but this requires further changes.

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


  Commit: 1cb9b790f008dc6b6396d9653abd996640f76102
      https://github.com/llvm/llvm-project/commit/1cb9b790f008dc6b6396d9653abd996640f76102
  Author: Kunqiu Chen <camsyn at foxmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/keep-label-name.ll
    A llvm/test/tools/UpdateTestChecks/update_test_checks/Inputs/keep-label-name.ll.expected
    A llvm/test/tools/UpdateTestChecks/update_test_checks/keep-label-name.test
    M llvm/utils/UpdateTestChecks/common.py

  Log Message:
  -----------
  [UTC] Align label var handling of old lines to new lines (#173850)

BB labels have been treated as variables in newer UTC versions. 

However, UTC previously handled BB labels in old lines differently from
new lines, causing incorrect `remap_metavar_names`.

E.g., 
- New lines var `exit:` and `label %exit`: UTC generalized them as
`[[@@]]` and `[[@@]]`.
- Old lines var `[[EXIT]]:` and `label %[[EXIT]]`: UTC generalized them
as `[[@@]]:` and `label %[[@@]]`, which mismatched with the
generalization of new lines.

This mismatch might cause unexpected variable name remappings, even if
the new lines are indeed equivalent to the old lines.

This PR aligns label var handling of old lines to new lines, i.e.,
generalizes `[[EXIT]]:` and `label %[[EXIT]]` as `[[@@]]` and `[[@@]]`.


  Commit: 99ab1dd145dd4e9a3a149568e65d3901b4245d4b
      https://github.com/llvm/llvm-project/commit/99ab1dd145dd4e9a3a149568e65d3901b4245d4b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll

  Log Message:
  -----------
  InstCombine: Implement SimplifyDemandedFPClass for sqrt (#173883)


  Commit: 3920bc61ca5d35009a34673fb2f4914cc1d2205d
      https://github.com/llvm/llvm-project/commit/3920bc61ca5d35009a34673fb2f4914cc1d2205d
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetLowering.h
    M llvm/lib/Target/AArch64/AArch64ISelLowering.h
    M llvm/lib/Target/AMDGPU/AMDGPUISelLowering.h
    M llvm/lib/Target/ARM/ARMISelLowering.h
    M llvm/lib/Target/AVR/AVRISelLowering.h
    M llvm/lib/Target/CSKY/CSKYISelLowering.h
    M llvm/lib/Target/Hexagon/HexagonISelLowering.h
    M llvm/lib/Target/Lanai/LanaiISelLowering.h
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.h
    M llvm/lib/Target/M68k/M68kISelLowering.h
    M llvm/lib/Target/MSP430/MSP430ISelLowering.h
    M llvm/lib/Target/Mips/MipsISelLowering.h
    M llvm/lib/Target/PowerPC/PPCISelLowering.h
    M llvm/lib/Target/RISCV/RISCVISelLowering.h
    M llvm/lib/Target/Sparc/SparcISelLowering.h
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/lib/Target/VE/VEISelLowering.h
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.h
    M llvm/lib/Target/X86/X86ISelLowering.h
    M llvm/lib/Target/XCore/XCoreISelLowering.h
    M llvm/test/CodeGen/Generic/half-op.ll
    M llvm/test/CodeGen/Generic/half.ll

  Log Message:
  -----------
  [TargetLowering] Change the `softPromoteHalfType` default to `true` (#175149)

The default `f16` lowering has some issues that result in incorrect
float behavior, so over time most targets have switched to use
`softPromoteHalfType`. Swap to soft promotion by default and add
overrides for SystemZ and AMDGPU, which are the two remaining backends
that still depend on this behavior.

All basic `f16` op tests now pass on all remaining experimental arches.

Fixes: https://github.com/llvm/llvm-project/issues/97981
Fixes: https://github.com/llvm/llvm-project/issues/97975


  Commit: 362b653c69be12a4d444acf26c14165e1bb52537
      https://github.com/llvm/llvm-project/commit/362b653c69be12a4d444acf26c14165e1bb52537
  Author: Aryan Kadole <aryankadole95 at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

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

  Log Message:
  -----------
  [InstCombine] Fold Minimum over trailing or leading zeros (#173768)

Add support for
`umin(clz(x), clz(y)) => clz(x | y)`
`umin(ctz(x), ctz(y)) => ctz(x | y)`

[C++ source](https://godbolt.org/z/E8abbjT7G)
[alive proof](https://alive2.llvm.org/ce/z/mh94_n)

Fixes #173691


  Commit: 76ce0349778b27d70871f2d4ade45a1d5d5d6545
      https://github.com/llvm/llvm-project/commit/76ce0349778b27d70871f2d4ade45a1d5d5d6545
  Author: Michał Górny <mgorny at gentoo.org>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M clang/unittests/Basic/CMakeLists.txt

  Log Message:
  -----------
  [clang] [unittest] Fix linking against dylib (#175317)

Fix a regression introduced in #174513 that would cause `BasicTests` to
link directly to static `LLVMTargetParser` library instead of using the
component linking, to respect dylib.

Signed-off-by: Michał Górny <mgorny at gentoo.org>


  Commit: a779fdffe9bf6f2b15e558a56ae18061ffd48deb
      https://github.com/llvm/llvm-project/commit/a779fdffe9bf6f2b15e558a56ae18061ffd48deb
  Author: Aviral Garg <gargaviral99 at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

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

  Log Message:
  -----------
  [Support] Add KnownBits::isNonPositive() helper and exhaustive test coverage for sign predicates (#175284)

This patch adds:

1. KnownBits::isNonPositive() - Returns true if this value is known to
be non-positive (i.e., the signed maximum value is <= 0). This is
implemented using getSignedMaxValue().isNonPositive().

2. SignPredicatesExhaustive test - An exhaustive test that validates the
correctness of isNegative(), isNonNegative(), isStrictlyPositive(),
isNonPositive(), and isNonZero() by iterating through all possible
KnownBits combinations for 1-bit and 4-bit widths and verifying that the
predicates return true if and only if all possible values represented by
the KnownBits satisfy the predicate.

Fixes #175203


  Commit: 363903eb3ed34f64164632266140ba3d609bdb81
      https://github.com/llvm/llvm-project/commit/363903eb3ed34f64164632266140ba3d609bdb81
  Author: Andrzej Warzyński <andrzej.warzynski at arm.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    A clang/test/CIR/CodeGenBuiltins/AArch64/acle_sve_dup.c

  Log Message:
  -----------
  [CIR][AArch64] Add lowering for unpredicated svdup builtins (#174433)

This PR adds CIR lowering support for unpredicated `svdup` SVE builtins.
The corresponding ACLE intrinsics are documented at:
* https://developer.arm.com/architectures/instruction-sets/intrinsics

(search for svdup).

Since LLVM provides a direct intrinsic for svdup with a 1:1 mapping, CIR
lowers these builtins by emitting a call to the corresponding LLVM
intrinsic.

DESIGN NOTES
------------
With this change, ACLE intrinsics that have a corresponding LLVM intrinsic can
generally be lowered by CIR by reusing LLVM intrinsic metadata, avoiding
duplicated intrinsic-name definitions, unless codegen-relevant SVETypeFlags are
involved. As a consequence, CIR may no longer emit NYI diagnostics for
intrinsics that (a) have a known LLVM intrinsic mapping and (b) do not use such
codegen-relevant `SVETypeFlag`s; these intrinsics are lowered directly.

IMPLEMENTATION NOTES
--------------------
* Intrinsic discovery logic mirrors the approach in
  CodeGen/TargetBuiltins/ARM.cpp, but is simplified since CIR only
  requires the intrinsic name.
* Test inputs are copied from the existing svdup tests:
  tests/CodeGen/AArch64/sve-intrinsics/acle_sve_dup.c.
* The LLVM IR produced _with_ and _without_ `-fclangir` is identical,
  modulo basic block labels, SROA, and function attributes.

EXAMPLE LOWERING
----------------
Input:
```C

svint8_t test_svdup_n_s8(int8_t op)
{
  return svdup_n_s8(op);
}
```

OUTPUT 1 (default):
```llvm
define dso_local <vscale x 16 x i8> @test_svdup_n_s8(i8 noundef %op) #0 {
entry:
  %op.addr = alloca i8, align 1
  store i8 %op, ptr %op.addr, align 1
  %0 = load i8, ptr %op.addr, align 1
  %1 = call <vscale x 16 x i8> @llvm.aarch64.sve.dup.x.nxv16i8(i8 %0)
  ret <vscale x 16 x i8> %1
}
```

OUTPUT 2 (via `-fclangir`):
```llvm
define dso_local <vscale x 16 x i8> @test_svdup_n_s8(i8 %0) #0 {
  %2 = alloca i8, i64 1, align 1
  %3 = alloca <vscale x 16 x i8>, i64 1, align 16
  store i8 %0, ptr %2, align 1
  %4 = load i8, ptr %2, align 1
  %5 = call <vscale x 16 x i8> @llvm.aarch64.sve.dup.x.nxv16i8(i8 %4)
  store <vscale x 16 x i8> %5, ptr %3, align 16
  %6 = load <vscale x 16 x i8>, ptr %3, align 16
  ret <vscale x 16 x i8> %6
}
```


  Commit: f25ddef03618e263c2a545b3a870b592fa9532a7
      https://github.com/llvm/llvm-project/commit/f25ddef03618e263c2a545b3a870b592fa9532a7
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/tools/clang-repl/ClangRepl.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp

  Log Message:
  -----------
  [clang-repl] Fix OrcRuntime lookup for Solaris and unit tests. (#175435)

The out-of-process execution in the interpreter depends on the orc
runtime. It is generally easy to discover as it is in the clang runtime
path. However, the clang runtime path is relative to clang's resource
directory which is relative to the clang binary. That does not work well
if clang is linked into a different binary which can be in a random
place in the build directory structure.

This patch performs a conservative approach to detect the common
directory structure and correctly infer the paths. That fixes the
out-of-process execution unittests. The patch also contains a small
adjustment for solaris.

Another take on trying to fix the issue uncovered by #175322.


  Commit: 3448695896a1acec8f0b8d09fe8a8b3890be077a
      https://github.com/llvm/llvm-project/commit/3448695896a1acec8f0b8d09fe8a8b3890be077a
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/ELFRelocs/LoongArch.def
    M llvm/test/tools/llvm-readobj/ELF/reloc-types-loongarch64.test
    M llvm/unittests/Object/ELFTest.cpp

  Log Message:
  -----------
  [llvm][LoongArch] Add reloc types for LA32R/LA32S (#175352)

This patch introduces the relocation types added in la-abi-sepcs v2.50.

Link: https://github.com/loongson/la-abi-specs/pull/16


  Commit: 88774913887a156abd607d7d90f7c639659a8d4b
      https://github.com/llvm/llvm-project/commit/88774913887a156abd607d7d90f7c639659a8d4b
  Author: Valeriy Savchenko <vsavchenko at apple.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownBits.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownBits.cpp
    A llvm/test/Transforms/InstCombine/vector-reduce-add-known-bits.ll
    M llvm/test/Transforms/PhaseOrdering/AArch64/udotabd.ll
    M llvm/unittests/Support/KnownBitsTest.cpp

  Log Message:
  -----------
  [ValueTracking] Support horizontal vector add in computeKnownBits (#174410)

Alive2 proofs:
* Leading zeros - [4vi32](https://alive2.llvm.org/ce/z/w--S2D),
[16vi8](https://alive2.llvm.org/ce/z/hEdVks)
* Leading ones - [4vi16](https://alive2.llvm.org/ce/z/RyPdBS),
[16vi8](https://alive2.llvm.org/ce/z/UTFFt9)


  Commit: e7f23b410b4123f125b269ed67794e4bb451d233
      https://github.com/llvm/llvm-project/commit/e7f23b410b4123f125b269ed67794e4bb451d233
  Author: Trevor Gross <tg at trevorgross.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SystemZ/SystemZISelLowering.h
    M llvm/test/CodeGen/SystemZ/fmuladd-soft-float.ll

  Log Message:
  -----------
  [SystemZ] Remove the `softPromoteHalfType` override (#175410)

`softPromoteHalfType` is being phased out because it is prone to
miscompilations (further context at [1]). SystemZ is one of the few
remaining platforms to override the default, so remove it here.

This only affects SystemZ when the `soft-float` option is used.

[1]: https://github.com/llvm/llvm-project/pull/175149


  Commit: 1c0c9aeae681dbed90fcb19edd8a41e10a17f867
      https://github.com/llvm/llvm-project/commit/1c0c9aeae681dbed90fcb19edd8a41e10a17f867
  Author: Vedran Miletić <vedran at miletic.net>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CAS/OnDiskGraphDB.h

  Log Message:
  -----------
  [llvm][CAS] Fixed build with -D_LIBCPP_REMOVE_TRANSITIVE_INCLUDES (#173797)


  Commit: f987bbddda6724e2f127d199b92af1979fed4126
      https://github.com/llvm/llvm-project/commit/f987bbddda6724e2f127d199b92af1979fed4126
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc-round.ll
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fptrunc.ll

  Log Message:
  -----------
  InstCombine: Add fptrunc SimplifyDemandedFPClass baseline tests (#175420)

Also llvm.fptrunc.round, which should be the same.


  Commit: 3ad028173bb773dfb05bf11cbd99218f64ab530b
      https://github.com/llvm/llvm-project/commit/3ad028173bb773dfb05bf11cbd99218f64ab530b
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/test/Transforms/Attributor/nofpclass-sqrt.ll
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-sqrt.ll
    M llvm/unittests/Analysis/ValueTrackingTest.cpp

  Log Message:
  -----------
  ValueTracking: sqrt never returns subnormal (#174846)


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

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86FixupBWInsts.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/fixup-bw-copy.mir
    M llvm/test/CodeGen/X86/fixup-bw-inst.mir
    M llvm/test/DebugInfo/MIR/InstrRef/x86-fixup-bw-inst-subreb.mir

  Log Message:
  -----------
  [X86][NewPM] Port x86-fixup-bw-insts to NPM (#175399)

Similar to other pass portings. Refactor into an implementation class,
rename the old pass, and add a wrapper around the implementation for the
new pass manager. Handle PSI/MBFI similar to other backend passes.


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

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

  Log Message:
  -----------
  [AArch64] Remove dead tuimm5sN tablegen Operands. NFC (#174735)

I believe these were last used in https://reviews.llvm.org/D71773.


  Commit: 2f7e218017db69454ea84e1849fcb9a11b1f7fef
      https://github.com/llvm/llvm-project/commit/2f7e218017db69454ea84e1849fcb9a11b1f7fef
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/induction-costs.ll

  Log Message:
  -----------
  [VPlan] Add missing sext(sub) SCEV fold to getSCEVExprForVPValue.

SCEV has a manual fold when doing SCEV construction from IR, that is not
integrated in the regular SCEV construction functions. Mirror the
behavior in getSCEVExprForVPValue, to match results when constructing
SCEVs from IR.

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


  Commit: c726fff61cb3bd5a3a98c52bb63b99fcb3b25524
      https://github.com/llvm/llvm-project/commit/c726fff61cb3bd5a3a98c52bb63b99fcb3b25524
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-11 (Sun, 11 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
    M llvm/test/Transforms/InstCombine/and.ll
    M llvm/test/Transforms/InstCombine/binop-cast.ll
    M llvm/test/Transforms/InstCombine/conditional-negation.ll
    M llvm/test/Transforms/InstCombine/sub-ashr-or-to-icmp-select.ll
    M llvm/test/Transforms/InstCombine/xor-ashr.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [InstCombine][profcheck] Add unknown branch weights to selects created in InstCombineAndOrXor.cpp (#175269)

These select instructions were created from combinations of bitwise
operators which have no branch weight information.

Tracking issue: #147390


  Commit: bc51c9d5f2fecc5237fe24cbee42dd036c338b8d
      https://github.com/llvm/llvm-project/commit/bc51c9d5f2fecc5237fe24cbee42dd036c338b8d
  Author: CarvedCoder <shreyansbehera84 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/log.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/log.h
    A libc/src/__support/math/log_range_reduction.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/log.cpp
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log2.cpp
    R libc/src/math/generic/log_range_reduction.h
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor log to header-only shared math (#175395)

Refactors log to a header-only shared math implementation.

Fixes #175369


  Commit: f091be6d53e447391ca23142cf9d49b2654116d7
      https://github.com/llvm/llvm-project/commit/f091be6d53e447391ca23142cf9d49b2654116d7
  Author: Vedran Miletić <vedran at miletic.net>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/Shared/CMakeLists.txt
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/CMakeLists.txt

  Log Message:
  -----------
  [ORC] Fixed incorrect additional header dirs (#175193)

The CMake ADDITIONAL_HEADER_DIRS directive for two Orc libraries,
specifically Shared and TargetProcess, used incorrect values that
pointed to its parent library include directory instead of its own. This
is now fixed.


  Commit: 282f8f79d7844af8952a444535e7bae204d28836
      https://github.com/llvm/llvm-project/commit/282f8f79d7844af8952a444535e7bae204d28836
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/test/CodeGen/RISCV/fold-addi-loadstore.ll
    M llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll

  Log Message:
  -----------
  [RISCV] Add support for QC.E.LI in RISCVMergeBaseOffset (#175310)

When we have `Xqcili` enabled and it is the `small code model`, we use
the `QC.E.LI` instruction to materialize addresses. Add support for
`QC.E.LI` in the `RISCVMergeBaseOffset` pass to merge the offset of the
address calculation into the offset field in a global address lowering
sequence.


  Commit: dcf8ae80289fd5e343b6ca172073388b6d227b62
      https://github.com/llvm/llvm-project/commit/dcf8ae80289fd5e343b6ca172073388b6d227b62
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A llvm/include/llvm/ExecutionEngine/Orc/BacktraceTools.h
    A llvm/lib/ExecutionEngine/Orc/BacktraceTools.cpp
    M llvm/lib/ExecutionEngine/Orc/CMakeLists.txt
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  Reapply "[ORC] Add utilities for limited symbolication of JIT backtra… (#175469)

…ces"

This reapplies 906b48616c03948a4df62a5a144f7108f3c455e8, which was
reverted in c11df52f9b847170b766fb71defd2a9222d95a8d due to bot
failures.

The testcase has been dropped from this recommit as it failed on several
bots (possbly due to differing backtrace formats or failure modes). I'll
re-introduce the testcase in a follow-up commit so that it cane be
iterated on (and re-reverted if necessary) without affecting the options
introduced by this commit. (Since these options are best-effort
debugging tools it's ok if they live in-tree without a test for now).


  Commit: 81d5b36f34cd0e7f10e3bc90dd82d36452ab08a6
      https://github.com/llvm/llvm-project/commit/81d5b36f34cd0e7f10e3bc90dd82d36452ab08a6
  Author: Muhammad Bassiouni <60100307+bassiounix at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/shared/math/log.h
    M libc/src/__support/math/CMakeLists.txt
    M libc/src/__support/math/log.h
    M libc/src/math/generic/log10.cpp
    M libc/src/math/generic/log2.cpp

  Log Message:
  -----------
  [libc][math] Fix GPU build fails (#175474)


  Commit: ee8a4bc9d76fd69a65d4186a329914df3bd750cf
      https://github.com/llvm/llvm-project/commit/ee8a4bc9d76fd69a65d4186a329914df3bd750cf
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libclc/clc/lib/amdgcn/SOURCES
    A libclc/clc/lib/amdgcn/math/clc_ldexp.cl
    R libclc/clc/lib/amdgcn/math/clc_ldexp_override.cl
    M libclc/clc/lib/amdgpu/SOURCES
    A libclc/clc/lib/amdgpu/math/clc_sqrt.cl
    R libclc/clc/lib/amdgpu/math/clc_sqrt_fp64.cl
    M libclc/clc/lib/r600/SOURCES
    A libclc/clc/lib/r600/math/clc_rsqrt.cl
    R libclc/clc/lib/r600/math/clc_rsqrt_override.cl
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc] Remove llvm-link --override flag and make implementation self-contained (#175134)

Revert --override flag added in 28d9255aa7c0 and avoid defining the same
symbol across multiple files of a target, simplifying the build and
easing the transition to CMake add_library for libclc.

amdgcn ldexp now uses __builtin_elementwise_ldexp.

No functional changes to clc_sqrt or clc_rsqrt.


  Commit: cd2caf658071157b35471f54a4afe2aa8f86b473
      https://github.com/llvm/llvm-project/commit/cd2caf658071157b35471f54a4afe2aa8f86b473
  Author: Elvis Wang <elvis.wang at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlan.h
    M llvm/lib/Transforms/Vectorize/VPlanPatternMatch.h
    M llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/early_exit_costs.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/scalable-tailfold.ll
    M llvm/test/Transforms/LoopVectorize/RISCV/uniform-load-store.ll
    M llvm/test/Transforms/LoopVectorize/pr43166-fold-tail-by-masking.ll

  Log Message:
  -----------
  [LV] Simplify extract-lane with scalar operand to the scalar value itself. (#174534)

This patch simplifies extract-lane(%lane_num, %X) to %X when %X is a
scalar value. Extracting from a scalar is redundant since there is only
one value to extract.


  Commit: 458a983df422df85363ec40b1f1556f55b238aac
      https://github.com/llvm/llvm-project/commit/458a983df422df85363ec40b1f1556f55b238aac
  Author: Icenowy Zheng <uwu at icenowy.me>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/RuntimeDyld/RuntimeDyld.cpp

  Log Message:
  -----------
  [RuntimeDyld][MIPS] Use AT for stub function instead of T9 (#174354)

The stub function is generated for R_MIPS_26 relocation, which could be
used for local jumping inside a function, and do not expect any
temporary register to be clobbered.

Use AT instead of T9 for the stub function, otherwise functions using T9
will be messed up.

Signed-off-by: Icenowy Zheng <uwu at icenowy.me>


  Commit: 79be97d90a5aa1bfe8667ce494c30ed4c4dcccf6
      https://github.com/llvm/llvm-project/commit/79be97d90a5aa1bfe8667ce494c30ed4c4dcccf6
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/shared/math.h
    A libc/shared/math/ilogbf16.h
    M libc/src/__support/math/CMakeLists.txt
    A libc/src/__support/math/ilogbf16.h
    M libc/src/math/generic/CMakeLists.txt
    M libc/src/math/generic/ilogbf16.cpp
    M libc/test/shared/CMakeLists.txt
    M libc/test/shared/shared_math_test.cpp
    M utils/bazel/llvm-project-overlay/libc/BUILD.bazel

  Log Message:
  -----------
  [libc][math] Refactor ilogbf16 implementation to header-only in src/__support/math folder. (#175450)

Closes [#175346](https://github.com/llvm/llvm-project/issues/175346),
Part of #175344


  Commit: 91dafc7f40541ca18943c0370e4408578e60cb64
      https://github.com/llvm/llvm-project/commit/91dafc7f40541ca18943c0370e4408578e60cb64
  Author: Anthonin Bonnefoy <anthonin.bonnefoy at datadoghq.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.cpp

  Log Message:
  -----------
  [ORC][JITLink] Fix unitialised JIT dump header (#175204)

When trying to perf inject JIT dump generatd through the perf plugin,
perf fails with the following error:
```
jitdump file contains invalid or unsupported flags 0xf5880666c26c
0x2b750 [0xa8]: failed to process type: 10 [Operation not permitted]
```
It turns out that Header's Flags field was never initialized, so the
value could be random.
This patch fixes the issue by initialising all Header's fields.

Co-authored-by: Lang Hames <lhames at gmail.com>


  Commit: 187ca8609ab838516bbc5e96d7cb9e65e82e95a3
      https://github.com/llvm/llvm-project/commit/187ca8609ab838516bbc5e96d7cb9e65e82e95a3
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A llvm/test/ExecutionEngine/JITLink/AArch64/backtrace-symbolication.s

  Log Message:
  -----------
  Reapply "[llvm-jitlink] Replace IR backtrace symbolication test..." (… (#175476)

…#175242)

This reapplies 451ca458cf51d553f5c49e67d841280e8166f933, which was
reverted in 25976e83606f1a7615e3725e6038bb53ee96c3d5 due to bot
failures.

The REQUIRES line has been further constrained to try to address the
failures.


  Commit: bdc6a6778df049b618afff73e2e5001d639057a7
      https://github.com/llvm/llvm-project/commit/bdc6a6778df049b618afff73e2e5001d639057a7
  Author: Haohai Wen <haohai.wen at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/AsmPrinter/PseudoProbePrinter.cpp
    M llvm/test/CodeGen/X86/pseudo-probe-desc-check.ll

  Log Message:
  -----------
  [PseudoProbe] Add switch to control illegal guid warnings (#174927)

Do not verify GUID existence in pseudo probe desc by default since it
generates false positive warnings with ThinLTO.
User can use -pseudo-probe-verify-guid-existence-in-desc to verify it
explicitly.


  Commit: e0cf581ad42a624940f58b8304d92ff6163edc1a
      https://github.com/llvm/llvm-project/commit/e0cf581ad42a624940f58b8304d92ff6163edc1a
  Author: Haocong Lu <haoconglu at qq.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/test/CodeGen/X86/keylocker.c

  Log Message:
  -----------
  [Clang][X86] Remove useless `extractvalue` on aesencwide/aesdecwide builtin CodeGen (#175113)

This is a pre-commit of CIR codegen for `aesencwide/aesdecwide` builtin,
remove useless `extractvalue` on clang CodeGen for this builtin.


  Commit: a3ca7caa74808e8726c58b483d7c69391d01dbce
      https://github.com/llvm/llvm-project/commit/a3ca7caa74808e8726c58b483d7c69391d01dbce
  Author: Wenju He <wenju.he at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libclc/cmake/modules/AddLibclc.cmake

  Log Message:
  -----------
  [libclc][NFC] Remove unused builtins_opt_lib_tgt (#175479)

It was left behind after f07988ff3ec8.


  Commit: 564f2be43f813409cf10c110508eb4e621e26278
      https://github.com/llvm/llvm-project/commit/564f2be43f813409cf10c110508eb4e621e26278
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    A llvm/lib/Target/RISCV/RISCVMachineScheduler.cpp
    A llvm/lib/Target/RISCV/RISCVMachineScheduler.h
    M llvm/lib/Target/RISCV/RISCVTargetMachine.cpp

  Log Message:
  -----------
  [RISCV] Add a custom pre-ra scheduler

Currently we do nothing RISC-V specific in this scheduler.

This is a part of vtype-based scheduling.

Reviewers: BeMg, mshockwave, lukel97, preames, topperc

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


  Commit: 67601a43b57a2df9c9b51463b84b3610878556ab
      https://github.com/llvm/llvm-project/commit/67601a43b57a2df9c9b51463b84b3610878556ab
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/CMakeLists.txt
    M llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    A llvm/lib/Target/RISCV/RISCVVSETVLIInfoAnalysis.cpp
    A llvm/lib/Target/RISCV/RISCVVSETVLIInfoAnalysis.h

  Log Message:
  -----------
  [RISCV][NFC] Add RISCVVSETVLIInfoAnalysis

This can be reused by #95924.

Reviewers: BeMg, topperc, lukel97, preames, mshockwave

Reviewed By: mshockwave, topperc

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


  Commit: 79a1b80af8567431113815f9ee3ba167ca45160a
      https://github.com/llvm/llvm-project/commit/79a1b80af8567431113815f9ee3ba167ca45160a
  Author: Pengcheng Wang <wangpengcheng.pp at bytedance.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVFeatures.td
    M llvm/lib/Target/RISCV/RISCVMachineScheduler.cpp
    M llvm/lib/Target/RISCV/RISCVMachineScheduler.h
    M llvm/test/CodeGen/RISCV/features-info.ll
    A llvm/test/CodeGen/RISCV/rvv/rvv-vtype-based-scheduler.ll

  Log Message:
  -----------
  [RISCV] Schedule RVV instructions with compatible vtype/vl first

This can reduce some vsetvli toggles.

This can be done in pre-ra scheduling as we have moved insertion of
vsetvli after the first RA.

Currently, we override `tryCandidate` and add a new heuristic based
on comparison of `vtype`/`vl`.

Reviewers: asb, preames, topperc, lukel97, mshockwave, BeMg

Reviewed By: mshockwave, lukel97

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


  Commit: f114d9592697707c1cd58be0075a6b53bcd39040
      https://github.com/llvm/llvm-project/commit/f114d9592697707c1cd58be0075a6b53bcd39040
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/Orc/TargetProcess/JITLoaderPerf.cpp

  Log Message:
  -----------
  [ORC] Simplify zero initializer. NFCI. (#175482)

Based on suggestion from @macdice on
https://github.com/llvm/llvm-project/pull/175204. Thanks @macdice!


  Commit: ba6a59c8750c61287a70a4562fd54a16d086b695
      https://github.com/llvm/llvm-project/commit/ba6a59c8750c61287a70a4562fd54a16d086b695
  Author: aokblast <aokblast at FreeBSD.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp

  Log Message:
  -----------
  [JITLink] Set correct triple instead of hard-code the value to linux (#175404)


  Commit: f827c20ccf73bf5a26a579465a634a8db95abdb6
      https://github.com/llvm/llvm-project/commit/f827c20ccf73bf5a26a579465a634a8db95abdb6
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
  [llvm-jitlink] Remove redundant ExecutorAddr constructor calls. NFCI. (#175488)

These ExecutorAddr calls were legacy from pre-ExecutorSymbolDef code.
The getAddress method already returns an ExecutorAddr, so there's no
need for them anymore.


  Commit: 145e28d061ae560f5b61c3fc2b9d487632d2ab43
      https://github.com/llvm/llvm-project/commit/145e28d061ae560f5b61c3fc2b9d487632d2ab43
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support logical comparison codegen for P extension (#174626)

Result type of P extension's comparison instructions is same as operands
and the result bits are all 1s or 0s so we need to set
ZeroOrNegativeOneBooleanContent to make sext(setcc) auto combined.


  Commit: 743f0a4fdbef8886d46a5a80a29a814491bd5000
      https://github.com/llvm/llvm-project/commit/743f0a4fdbef8886d46a5a80a29a814491bd5000
  Author: Himadhith <79003240+Himadhith at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/PowerPC/PPCISelDAGToDAG.cpp
    M llvm/test/CodeGen/PowerPC/compare-vector-with-zero.ll
    M llvm/test/CodeGen/PowerPC/pr61315.ll
    M llvm/test/CodeGen/PowerPC/setcc-logic.ll
    M llvm/test/CodeGen/PowerPC/vector-popcnt-128-ult-ugt.ll

  Log Message:
  -----------
  [PowerPC] Optimize not equal compares against zero vectors (#150422)

This patch is for special cases involving 0 vectors. During the
comparison of vector operands, current code generation checks with
`vcmpequh (vector compare equal unsigned halfword)` followed by a
negation `xxlnor (VSX Vector Logical NOR XX3-form)`.

This means that for the special case, instead of using `vcmpequh` and
then negating the result, we can directly use `vcmpgtuh (vector compare
greater than unsigned halfword)`.

As a result the negation is avoided since the only condition where this
will be false is for 0 as it is an `unsigned halfword`.

---------

Co-authored-by: himadhith <himadhith.v at ibm.com>


  Commit: 3575501b5a7f92cb9285e6e9232d04df47b56495
      https://github.com/llvm/llvm-project/commit/3575501b5a7f92cb9285e6e9232d04df47b56495
  Author: killcerr <kill_cerr at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [clang] fix warning (#174587)

```shell
input_line_0:10:30: warning: comparison of integers of different signs: 'int' and 'unsigned long' [-Wsign-compare]
```


  Commit: 1f1dee3b2e9e552e3eebdb1c5aacfdc53c4ed0c8
      https://github.com/llvm/llvm-project/commit/1f1dee3b2e9e552e3eebdb1c5aacfdc53c4ed0c8
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp

  Log Message:
  -----------
  Fix gcc name shadow warning. (#175490)

Addresses comment in #175322


  Commit: 966c95f6d489ddd34ad90d067c58814ebda3d493
      https://github.com/llvm/llvm-project/commit/966c95f6d489ddd34ad90d067c58814ebda3d493
  Author: Amina Chabane <amina.chabane at arm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64SchedNeoverseN2.td
    M llvm/test/tools/llvm-mca/AArch64/Cortex/A710-sve-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-basic-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-bf16-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-complxnum-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-fp16fml-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-fptoint-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-i8mm-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-mte-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-neon-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-rcpc-immo-instructions.s
    M llvm/test/tools/llvm-mca/AArch64/Neoverse/N2-sve-instructions.s

  Log Message:
  -----------
  [AArch64] Update NZCV flag-setting instructions' throughput for Neoverse N2 (#174740)

According to the [N2
SWOG](https://developer.arm.com/documentation/109914/latest/),
flag-setting instructions for arithmetic/logical instructions should
have a throughput of 3.

[Similar to the V2
model](https://github.com/llvm/llvm-project/pull/113542).


  Commit: 43138d627290271b7decd5daf0b5ec23a4171b8d
      https://github.com/llvm/llvm-project/commit/43138d627290271b7decd5daf0b5ec23a4171b8d
  Author: Philipp Tomsich <philipp.tomsich at vrull.eu>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/test/Driver/aarch64-mcpu.c
    A clang/test/Driver/print-enabled-extensions/aarch64-ampere1c.c
    M clang/test/Misc/target-invalid-cpu-note/aarch64.c
    M llvm/docs/ReleaseNotes.md
    M llvm/lib/Target/AArch64/AArch64Processors.td
    M llvm/lib/Target/AArch64/AArch64Subtarget.cpp
    M llvm/lib/TargetParser/Host.cpp
    M llvm/test/CodeGen/AArch64/cpus.ll
    M llvm/unittests/TargetParser/Host.cpp
    M llvm/unittests/TargetParser/TargetParserTest.cpp

  Log Message:
  -----------
  [Aarch64] Add support for Ampere1C core (#175442)

This patch adds initial support for the ARMv9.2+ Ampere1C core.


  Commit: a5fa2464356ced456e93ac1033e7460355d4eeaf
      https://github.com/llvm/llvm-project/commit/a5fa2464356ced456e93ac1033e7460355d4eeaf
  Author: moorabbit <moorabbit at proton.me>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/docs/LanguageExtensions.rst
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/Builtins.td
    M clang/lib/CodeGen/CGBuiltin.cpp
    A clang/test/CodeGen/builtin-stackaddress.c
    A clang/test/CodeGenCXX/builtin-stackaddress.cpp
    M clang/test/Sema/builtin-stackaddress.c
    M llvm/docs/LangRef.rst
    M llvm/include/llvm/CodeGen/ISDOpcodes.h
    M llvm/include/llvm/IR/Intrinsics.td
    M llvm/lib/CodeGen/SelectionDAG/LegalizeDAG.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/Sparc/SparcISelLowering.cpp
    A llvm/test/CodeGen/AArch64/stackaddress.ll
    A llvm/test/CodeGen/ARM/stackaddress.ll
    A llvm/test/CodeGen/NVPTX/stackaddress.ll
    A llvm/test/CodeGen/SPARC/stackaddress.ll
    A llvm/test/CodeGen/X86/stackaddress.ll

  Log Message:
  -----------
     [Clang] Add `__builtin_stack_address` (#148281)

Add support for `__builtin_stack_address` builtin. The semantics match
those of GCC's builtin with the same name.

`__builtin_stack_address` returns the starting address of the stack
region that may be used by called functions. It may or may not include
the space used for on-stack arguments passed to a callee (See [GCC
Bug/121013](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=121013)).

Fixes #82632.


  Commit: 9725cb8ede9de6b006398e46b1360dc86e5d866f
      https://github.com/llvm/llvm-project/commit/9725cb8ede9de6b006398e46b1360dc86e5d866f
  Author: Nathan Gauër <brioche at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPushConstantAccess.cpp
    M llvm/test/CodeGen/SPIRV/vk-pushconstant-access.ll
    M llvm/test/CodeGen/SPIRV/vk-pushconstant-layout.ll

  Log Message:
  -----------
  [SPIR-V] Fix Linkage capability with pushconstant (#175192)

When the SPIR-V backend handles a push constant, a new global with a
target-specific is generated. This global should have the same
visibility as the source, but turns out it was not the case: linkage was
still external, but visibility went from hidden to visible.

This causes the later passes to generate a Linkage decoration, adding
the Linkage capability, which is not compatible with Vulkan. Fixing
this.


  Commit: e5b6833e49d2752466612aa0ac71f185b1d4afc7
      https://github.com/llvm/llvm-project/commit/e5b6833e49d2752466612aa0ac71f185b1d4afc7
  Author: Sam Parker <sam.parker at arm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyTargetTransformInfo.cpp
    M llvm/test/CodeGen/WebAssembly/memory-interleave.ll
    M llvm/test/CodeGen/WebAssembly/simd-pr61780.ll
    M llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll

  Log Message:
  -----------
  [WebAssembly] vi8 mul cost modelling. (#175177)

We've already optimised these, so update the cost model to reflect it.
And skip the isBeforeLegalize check when lowering i8 muls, because it
then misses the cases where, say v32i8, has been type legalised into 2x
v16i8.

Also explicitly disable memory interleaving for any factor other than
two or four.


  Commit: 19317ad1d91e669e8791cbf0c6c304274ebcbb00
      https://github.com/llvm/llvm-project/commit/19317ad1d91e669e8791cbf0c6c304274ebcbb00
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A clang/include/clang/Interpreter/IncrementalExecutor.h
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    R clang/lib/Interpreter/IncrementalExecutor.h
    M clang/lib/Interpreter/Interpreter.cpp
    A clang/lib/Interpreter/OrcIncrementalExecutor.cpp
    A clang/lib/Interpreter/OrcIncrementalExecutor.h
    M clang/lib/Interpreter/Wasm.cpp
    M clang/lib/Interpreter/Wasm.h
    M clang/tools/clang-repl/ClangRepl.cpp
    M clang/unittests/Interpreter/InterpreterExtensionsTest.cpp
    M clang/unittests/Interpreter/OutOfProcessInterpreterTests.cpp

  Log Message:
  -----------
  [clang-repl] Rework layering of incremental executors. (#175448)

The original Interpreter implementation had a hard dependency on ORC and
grew organically with the addition of out-of-process JIT support. This
tightly coupled the Interpreter to a specific execution engine and
leaked ORC-specific assumptions (runtime layout, symbol lookup,
exception model) into higher layers.

The WebAssembly integration demonstrated that incremental execution can
be implemented without ORC, exposing the need for a cleaner abstraction
boundary.

This change introduces an IncrementalExecutor interface and moves
ORC-based execution behind a concrete implementation. The Interpreter
now depends only on the abstract executor, improving layering and
encapsulation.

In addition, the Interpreter can be configured with user-provided
incremental executor implementations, enabling ORC-independent
execution, easier testing, and future extensions without modifying the
core Interpreter.


  Commit: fcff5b076543773ad910cb97348390f67d5b75d2
      https://github.com/llvm/llvm-project/commit/fcff5b076543773ad910cb97348390f67d5b75d2
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    A llvm/test/CodeGen/LoongArch/lsx/issue174606.ll

  Log Message:
  -----------
  [LoongArch] Disable strict node mutation to fix strict FP lowering crash (#175484)

The patch disables strict node mutation for LoongArch by setting
IsStrictFPEnabled to true.

This change fixes the current strict FP lowering crash only.
ISD::STRICT_FSETCC and ISD::STRICT_FSETCCS can be further improved.

Fixes #174606


  Commit: e51f25a3ca027800a458db6d77fa3151171400a7
      https://github.com/llvm/llvm-project/commit/e51f25a3ca027800a458db6d77fa3151171400a7
  Author: DaKnig <37626476+DaKnig at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/test/CodeGen/AArch64/arm64-vabs.ll

  Log Message:
  -----------
  [SDAG] Combine select into ABD?, for const (#173581)

(select (setcc ...) (sub a, b) (sub b, a))

When b is const, the `sub a, b` becomes `add a, -b` which we take care of in this patch with the m_SpecificNeg() matcher.


  Commit: 6bde19f4bbe63a48d6d3ee4649c58f6ed8cc04c2
      https://github.com/llvm/llvm-project/commit/6bde19f4bbe63a48d6d3ee4649c58f6ed8cc04c2
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [lldb] Disable flaky TestDetachResumes.py on Windows/AArch64

This patch marks TestDetachResumes.py skipped on Windows/AArch64.
It has been failing intermittently on Windows AArch64 buildbot:
https://lab.llvm.org/buildbot/#/builders/141/

This extends the prior change that disabled the same test on Windows
x86_64 (commit 6d8d4cf9a46b3729732736ffe288f6b722d85121 by Dmitry
Vasilyev, 2025-06-23). See #144891 for background and original
discussion.


  Commit: 9a632fd684e1729b93f9f5272ad6b5798f38ba77
      https://github.com/llvm/llvm-project/commit/9a632fd684e1729b93f9f5272ad6b5798f38ba77
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStlVariant.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/TestDataFormatterStdVariant.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/variant/main.cpp

  Log Message:
  -----------
  [LLDB] Fix MS STL `variant` with non-trivial types (#171489)

When using `std::variant` with non-trivial types, we need to go through
multiple bases to find the `_Which` member. The MSVC STL implements this
in `xsmf_control.h` which conditionally adds/deletes copy/move
constructors/operators.

We now go to `_Variant_base` (the holder of `_Which`). This inherits
from `_Variant_storage`, which is our entry point to finding the n-th
storage (going through `_Tail`).


  Commit: b646209ddc940275b9b1381b67c9be0bcc022419
      https://github.com/llvm/llvm-project/commit/b646209ddc940275b9b1381b67c9be0bcc022419
  Author: Jonathan Thackray <jonathan.thackray at arm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [AArch64][llvm] Add extra dependencies for recently added features (#175215)


  Commit: 91268a50f246676479452b0bec36bab88bfe0dcd
      https://github.com/llvm/llvm-project/commit/91268a50f246676479452b0bec36bab88bfe0dcd
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/include/scoped_allocator
    R libcxx/test/libcxx/diagnostics/scoped_allocator.nodiscard.verify.cpp
    A libcxx/test/libcxx/utilities/allocator.adaptor/scoped_allocator.nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][scoped_allocator] Applied `[[nodiscard]]` (#175291)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/allocator.adaptor

Towards #172124


  Commit: 4cec62299dadbcb44035c14228c834c0be990d73
      https://github.com/llvm/llvm-project/commit/4cec62299dadbcb44035c14228c834c0be990d73
  Author: Vassil Vassilev <v.g.vassilev at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Interpreter/IncrementalExecutor.h
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    M clang/lib/Interpreter/Wasm.cpp
    M clang/lib/Interpreter/Wasm.h

  Log Message:
  -----------
  [clang-repl] Move the produced temporary files in wasm in a temp folder. (#175508)

This patch avoids bloating the current folder with temporary files
created by wasm and moves them in a separate tmp directory. This patch
is a version of a downstream one resolving this issue.

Co-authored with Anutosh Bhat.


  Commit: f0982d5d44272f0e612fd1f2a64e7e49ed7d20c1
      https://github.com/llvm/llvm-project/commit/f0982d5d44272f0e612fd1f2a64e7e49ed7d20c1
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/test/AST/ByteCode/cxx23.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix calling lambdas with broken instance pointers (#175511)

Clang will make the instance pointer be of type 'int' if it is invalid,
which trips up later logic. Mark functions as invalid if any of their
parameters is and compile + check them early in CallPtr.

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


  Commit: ac62f12192c2f516b9aa3131d5192152b7f02b3e
      https://github.com/llvm/llvm-project/commit/ac62f12192c2f516b9aa3131d5192152b7f02b3e
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/AMDGPU/IR/AMDGPU.td
    M mlir/lib/Dialect/AMDGPU/IR/AMDGPUDialect.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/test/Dialect/AMDGPU/canonicalize.mlir

  Log Message:
  -----------
  [mlir][amdgpu] Remove redundant barriers (#175436)


  Commit: 2a8be8bd73b49776ed370a10861d7da3e1b9794f
      https://github.com/llvm/llvm-project/commit/2a8be8bd73b49776ed370a10861d7da3e1b9794f
  Author: Hans Wennborg <hans at hanshq.net>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticSemaKinds.td
    M clang/include/clang/Sema/Sema.h
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaChecking.cpp
    R clang/test/SemaCXX/warn-tsan-atomic-fence.cpp

  Log Message:
  -----------
  Revert "[Clang] Warn when `std::atomic_thread_fence` is used with `fsanitize=thread`" (#175520)

Reverts llvm/llvm-project#166542

It caused clang to assert with: `!isa<CXXDestructorDecl>(D) && "Use
other ctor with dtor decls!"`
see comment on the PR.


  Commit: a6378b66fe7c021a98ade55bb6f829bf4a3388a0
      https://github.com/llvm/llvm-project/commit/a6378b66fe7c021a98ade55bb6f829bf4a3388a0
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
   [ReachingDefAnalysis][NFC] Use named constants. (#175075)


  Commit: 3dfb782333bf929945f63e5b0b1cad378b0bd87a
      https://github.com/llvm/llvm-project/commit/3dfb782333bf929945f63e5b0b1cad378b0bd87a
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/CodeGenOptions.def
    M clang/include/clang/Options/Options.td
    M clang/lib/CodeGen/Targets/AMDGPU.cpp
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
    M llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.h
    A llvm/test/CodeGen/AMDGPU/expand-waitcnt-profiling.ll

  Log Message:
  -----------
  [AMDGPU][SIInsertWaitcnt] Implement Waitcnt Expansion for Profiling (#169345)

Reference issue: https://github.com/ROCm/llvm-project/issues/67

This patch adds support for expanding s_waitcnt instructions into
sequences with decreasing counter values, enabling PC-sampling profilers
to identify which specific memory operation is causing a stall.

This is controlled via:
Clang flag: -mamdgpu-expand-waitcnt-profiling /
-mno-amdgpu-expand-waitcnt-profiling
Function attribute: "amdgpu-expand-waitcnt-profiling"

When enabled, instead of emitting a single waitcnt, the pass generates a
sequence that waits for each outstanding operation individually. For
example, if there are 5 outstanding memory operations and the target is
to wait until 2 remain:


**Original**: 
s_waitcnt vmcnt(2)

**Expanded**:  
s_waitcnt vmcnt(4)
s_waitcnt vmcnt(3)
s_waitcnt vmcnt(2)

The expansion starts from (Outstanding - 1) down to the target value,
since waitcnt(Outstanding) would be a no-op (the counter is already at
that value).

- Uses ScoreBrackets to determine the actual number of outstanding
operations
- Only expands when operations complete in-order
- Skips expansion for mixed event types (e.g., LDS+SMEM on same counter)
- Skips expansion for scalar memory (always out-of-order)

Releated previous work for Reference
- **PR**: llvm/llvm-project#79236 (related `-amdgpu-waitcnt-forcezero`)

---------

Co-authored-by: Pierre van Houtryve <pierre.vanhoutryve at amd.com>


  Commit: b574f44a7d5ce968d9fe8e3c3329a1b8062090e2
      https://github.com/llvm/llvm-project/commit/b574f44a7d5ce968d9fe8e3c3329a1b8062090e2
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/docs/use/lldbdap.md

  Log Message:
  -----------
  [LLDB] Increase level of headings in lldb-dap docs (#175519)

The lldb-dap docs had more than one top-level heading (one `#`). All top
level headings are shown in the "Using LLDB" list on the left side. In
this case, "Supported Features" and "Configuration Settings Reference"
showed up there.

With this PR, these headings are increased by one level. This also
increases the level of "Debug Console" (child of "Supported Features")
and "Common/Launch/Attach configurations" (child of "Configuration
Settings Reference").


  Commit: 4415ea5bd34e2228e92dddb529d706006b5d404e
      https://github.com/llvm/llvm-project/commit/4415ea5bd34e2228e92dddb529d706006b5d404e
  Author: Muhammad Omair Javaid <omair.javaid at linaro.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/frame/var-dil/expr/Casts/main.cpp

  Log Message:
  -----------
  [lldb] Fix TestFrameVarDILCast.py build on Windows AArch64

This patch adds <cstddef> to main.cpp in TestFrameVarDILCast.py so that
std::nullptr_t is properly declared. It fixes the TestFrameVarDILCast.py
compile failure observed on the LLDB Windows AArch64 buildbot:
https://lab.llvm.org/buildbot/#/builders/141

The issue was introduced by commit 539cf92 in #170332.


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

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
    A llvm/test/Transforms/LoopVectorize/X86/predicated-udiv.ll

  Log Message:
  -----------
  [VPlan] Don't fold UDiv in replicate regions. (#175460)

The UDiv fold added in d12e993 (#174581) is currently also applied to
replicate regions, which means we may end up with VPInstructions in
replicate regions, which is currently nots supported.

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

PR: https://github.com/llvm/llvm-project/pull/175460


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

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

  Log Message:
  -----------
  [InstCombine][X86] Move simplifyX86FPMaxMin handling from simplifyDemandedVectorEltsIntrinsic to instCombineIntrinsic (#175441)

My fault for missing this when reviewing #174806 - technically we might
benefit from demanded elts handling for these intrinsics some day, but
the base implementation should be in instCombineIntrinsic

Noticed while reviewing #175375 which I recommended reuses more of the
simplifyX86FPMaxMin handling.


  Commit: 4790a1419907cef0466ca3e34e0e6f1b2ba0360f
      https://github.com/llvm/llvm-project/commit/4790a1419907cef0466ca3e34e0e6f1b2ba0360f
  Author: Qihan Cai <caiqihan021 at hotmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86CompressEVEX.cpp
    M llvm/test/CodeGen/X86/avx512-ext.ll
    M llvm/test/CodeGen/X86/avx512-insert-extract.ll
    M llvm/test/CodeGen/X86/avx512dqvl-intrinsics-upgrade.ll
    M llvm/test/CodeGen/X86/evex-to-vex-compress.mir
    M llvm/test/CodeGen/X86/masked_compressstore.ll
    M llvm/test/CodeGen/X86/masked_expandload.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter.ll
    M llvm/test/CodeGen/X86/masked_gather_scatter_widen.ll
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll
    A llvm/test/CodeGen/X86/pr174871.ll
    M llvm/test/CodeGen/X86/pr77459.ll
    M llvm/test/CodeGen/X86/vector-reduce-and-bool.ll
    M llvm/test/CodeGen/X86/vector-shuffle-v1.ll

  Log Message:
  -----------
  [X86] Allow EVEX compression for VPMOV*2M + KMOV pattern (#175219)

This patch extends the X86CompressEVEX pass to recognize and compress
multi-instruction masking patterns. It also adds relevant tests for the
new pattern.

Fixes #171746
Fixes #174871


  Commit: ff005aaa48de3442ca79dc7a724c1b732ae0bb7e
      https://github.com/llvm/llvm-project/commit/ff005aaa48de3442ca79dc7a724c1b732ae0bb7e
  Author: Karlo Basioli <basioli at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  Fix bazel test failures caused in #175435 (#175533)


  Commit: ce4fcfc9e4b391c24d89f24d9ef1fc1f6ed230ee
      https://github.com/llvm/llvm-project/commit/ce4fcfc9e4b391c24d89f24d9ef1fc1f6ed230ee
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/RuntimeDyldChecker.h
    A llvm/test/ExecutionEngine/JITLink/AArch64/ELF_zero_sized_symbols_with_show_addrs.s
    A llvm/test/ExecutionEngine/JITLink/Generic/llvm-jitlink-option-show-addrs.test
    M llvm/tools/llvm-jitlink/llvm-jitlink-elf.cpp
    M llvm/tools/llvm-jitlink/llvm-jitlink.cpp

  Log Message:
  -----------
   [llvm-jitlink] Make -show-addrs work without -check, fix fallout. (#175491)

Ensures that the address scraping passes are added to the JIT linker pipeline
if either of the -check or -show-addrs are passed. Prior to this commit we only
considered -check, so passing -show-addrs on its own was printing an empty
(unpopulated) symbol table.

This change exposed bugs in RuntimeDyldChecker's `MemoryRegionInfo` type, aned
llvm-jitlink's symbol printing code:

 - `MemoryRegionInfo` was assuming that zero-sized symbols wouldn't be defined
   and was using Size == 0 as a proxy for "region info uninitialized". This was
   triggering assertions for valid LinkGraphs containing zero-sized symbols.

 - llvm-jitlink's symbol printing code was assuming that all defined symbols
   contained content, and was not correctly handling zero-fill / absolute
   symbols. This triggered assertions about requesting content addresses for
   non-content symbols.

This commit fixes the issues above, and adds both a generic testcase for the
-show-addrs option, and an ELF-specific testcase with a zero-sized symbol to
check that the option works for such symbols.


  Commit: 0275c9fa5fec375a4362e9f315dfba5284ad91f4
      https://github.com/llvm/llvm-project/commit/0275c9fa5fec375a4362e9f315dfba5284ad91f4
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/ExecutionEngine/JITLink/AArch64/backtrace-symbolication.s

  Log Message:
  -----------
  [llvm-jitlink] Remove build_version directive. (#175523)

Fixes a warning on some bots.


  Commit: 8380b57b7ec4adc715c7e4458dedb07e586b9477
      https://github.com/llvm/llvm-project/commit/8380b57b7ec4adc715c7e4458dedb07e586b9477
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Sema/SemaOverload.cpp
    M clang/test/Sema/constexpr.c

  Log Message:
  -----------
  [Clang] prevent an assertion failure caused by C++ constant expression checks in C23 floating conversions (#174113)

Fixes #173847

---

This patch addresses an assertion failure during compilation of C23 code
involving floating-point conversions.

As part of the C23 constexpr support introduced in PR #73099, Clang
began reusing parts of the C++ constant evaluation and narrowing logic.
In C23 mode, a failed constant evaluation caused the condition to
proceed to C++ constant-expression checks, resulting in an assertion
failure.

This change evaluates constants using `EvaluateAsRValue` in C23 mode and
restricts C++ constant-expression checks to C++ mode.


  Commit: 51ee583b1a02b6a4dce86dbe36af91ec60d45137
      https://github.com/llvm/llvm-project/commit/51ee583b1a02b6a4dce86dbe36af91ec60d45137
  Author: kadir çetinkaya <kadircet at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp

  Log Message:
  -----------
  [include-cleaner] Report refs from macro-concat'd tokens as ambigious (#175532)

Previously we completely ignored these references as we couldn't detect
whether some pieces of concat'd token originated from main file and we
wanted to prevent false positives. Unfortunately these are resulting in
false negatives in certain cases and are breaking builds.

After this change, include-cleaner will treat such references as
ambigious to prevent deletion of likely-used headers (if they're already
directly included), while still giving user the opportunity to
explicitly delete them.


  Commit: e66123080cf164b374937766eaf7b7587c4a1673
      https://github.com/llvm/llvm-project/commit/e66123080cf164b374937766eaf7b7587c4a1673
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/test/API/commands/frame/var-dil/basics/LocalVars/TestFrameVarDILLocalVars.py

  Log Message:
  -----------
  [lldb][test] Remove unused imports in TestFrameVarDILLocalVars.py (#175541)


  Commit: 14e97d649b72a404ab3d2738dca58708dd2a23f3
      https://github.com/llvm/llvm-project/commit/14e97d649b72a404ab3d2738dca58708dd2a23f3
  Author: Nick Kreeger <nick.kreeger at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Shape/Transforms/OutlineShapeComputation.cpp

  Log Message:
  -----------
  [mlir][Shape] Fix Yoda condition in OutlineShapeComputation (#174146)

Change `nullptr != inpDefOp` to `inpDefOp != nullptr` for better
readability and consistency with LLVM coding standards.


  Commit: b983b0e92a77970a81efda0f99d64127b21efc62
      https://github.com/llvm/llvm-project/commit/b983b0e92a77970a81efda0f99d64127b21efc62
  Author: zhijian lin <zhijian at ca.ibm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAG.h
    M llvm/include/llvm/CodeGen/SelectionDAGTargetInfo.h
    M llvm/include/llvm/IR/RuntimeLibcalls.td
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.cpp
    M llvm/lib/Target/PowerPC/PPCSelectionDAGInfo.h
    M llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZSelectionDAGInfo.h
    M llvm/test/CodeGen/PowerPC/milicode32.ll
    M llvm/test/CodeGen/PowerPC/milicode64.ll

  Log Message:
  -----------
  [PowerPC] using milicode call for strcpy instead of lib call (#174782)

AIX has "millicode" routines, which are functions loaded at boot time
into fixed addresses in kernel memory. This allows them to be customized
for the processor. The __strcpy routine is a millicode implementation;
we use millicode for the strcpy function instead of a library call to
improve performance.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>


  Commit: 2220c00d6d33dac55385cd3c2aaac1bf9f8eddc2
      https://github.com/llvm/llvm-project/commit/2220c00d6d33dac55385cd3c2aaac1bf9f8eddc2
  Author: lonely eagle <2020382038 at qq.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/lib/Analysis/DataFlow/SparseAnalysis.cpp

  Log Message:
  -----------
  [mlir][dataflow] Use OpWithFlags skipRegions to replace opName when print op in SparseAnalysis.cpp (NFC) (#175418)


  Commit: 263802c56b4db3fc9b6ed9fd313499cb03ca44da
      https://github.com/llvm/llvm-project/commit/263802c56b4db3fc9b6ed9fd313499cb03ca44da
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/Builder/IntrinsicCall.cpp
    M flang/test/Lower/Intrinsics/show_descriptor.f90

  Log Message:
  -----------
  [flang] Enhance show_descriptor intrinsic to avoid extra descriptor copies (#173461)

Originally, the argument to show_descriptor() intrinsic was declared
with the passing mechanism of "asBox". This resulted in `fir.load`
instruction to be emitted to pass descriptor "asBox", which resulted in
extra llvm.memcpy in LLVM IR. The current change eliminates this, so
that show_descriptor() prints information about the original descriptor,
not about its copy.

The current change modifies the passing mechanism of the argument to
show_intrinsic() to "asInquired". The lowering of show_descriptor() now
passes the reference to a descriptor directly to the runtime routine. If
descriptor is passed as a value in SSA register, then it's spilled on
the stack and its address is passed to the runtime routine. If a
non-descriptor value is passed to show_descriptor(), then this value is
spilled to the stack, wrapped into a descriptor that is also spilled to
the stack, and the resulting descriptor pointer is passed to
show_descriptor().

show_descriptor() LIT test was modified to correspond to the new
implementation and additional test cases were added to it.


  Commit: 185f078a6fbb7ff4d1a7f9ac5d0416a8964e1006
      https://github.com/llvm/llvm-project/commit/185f078a6fbb7ff4d1a7f9ac5d0416a8964e1006
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/src/__support/GPU/allocator.cpp

  Log Message:
  -----------
  [libc] Improve SIMT control flow in the GPU allocator

Summary:
The Volta independent thread scheduling is very difficult to work with.
This is a first attempt to make the logic more sound when lanes execute
independently. This isn't all that's required, but it ends up improving
control flow for AMDGPU as well.


  Commit: 3b2d14ba1c9e0c2089b193ea40de465a13f83263
      https://github.com/llvm/llvm-project/commit/3b2d14ba1c9e0c2089b193ea40de465a13f83263
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU] Inline two helpers in SIInsertWaitcnts. NFC. (#174557)


  Commit: 03e1a4329dd6a92467eeb5cc1522afd0123dca30
      https://github.com/llvm/llvm-project/commit/03e1a4329dd6a92467eeb5cc1522afd0123dca30
  Author: Rose Hudson <rose.hudson at sony.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/test/Driver/ps5-linker.c

  Log Message:
  -----------
  [PS5][Driver] forward -ffat-lto-objects to the linker (#172854)

When clang is driving the linker and is passed -ffat-lto-objects, pass
it on to the linker as --fat-lto-objects.


  Commit: 46016e63b710f3a9b9742bb4c6540f1dde1bd451
      https://github.com/llvm/llvm-project/commit/46016e63b710f3a9b9742bb4c6540f1dde1bd451
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/include/string

  Log Message:
  -----------
  [libc++] Make basic_string::__erase_external_with_move noexcept (#171591)

`__erase_external_with_move` is in the dylib, so the compiler doesn't
see the definition. Marking it `noexcept` sometimes allows clang to
remove exceptions related code, improving code size slightly.


  Commit: 48a5c1dc5c07875c8b69556fc4e1ecf96ad38ede
      https://github.com/llvm/llvm-project/commit/48a5c1dc5c07875c8b69556fc4e1ecf96ad38ede
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/dl-insts-err.s
    M llvm/test/MC/AMDGPU/elf-header-cov.s
    M llvm/test/MC/AMDGPU/elf-lds-error.s
    M llvm/test/MC/AMDGPU/elf-notes-verify-amdgcn.s
    M llvm/test/MC/AMDGPU/elf-notes-verify-r600.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ldsdir_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/gfx11_asm_opsel_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_ds.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_operands.s
    M llvm/test/MC/AMDGPU/gfx950-unsupported.s
    M llvm/test/MC/AMDGPU/gfx950_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx950_asm_vop3.s
    M llvm/test/MC/AMDGPU/hsa-gfx1250-v4.s
    M llvm/test/MC/AMDGPU/hsa-gfx1251-v4.s
    M llvm/test/MC/AMDGPU/hsa-sym-expr-failure.s
    M llvm/test/MC/AMDGPU/invalid-instructions-spellcheck.s
    M llvm/test/MC/AMDGPU/isa-version-hsa.s
    M llvm/test/MC/AMDGPU/isa-version-pal.s
    M llvm/test/MC/AMDGPU/isa-version-unk.s
    M llvm/test/MC/AMDGPU/mai-err-gfx942.s
    M llvm/test/MC/AMDGPU/mai-gfx942.s
    M llvm/test/MC/AMDGPU/mai-gfx950.s
    M llvm/test/MC/AMDGPU/mcexpr_amd_err.s
    M llvm/test/MC/AMDGPU/mubuf-gfx950.s
    M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx10_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx11_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_vop3cx_warn.txt
    M llvm/test/MC/Disassembler/AMDGPU/si-support.txt

  Log Message:
  -----------
  [AMDGPU] Use -filetype=null for MC tests that do not check stdout (#175543)


  Commit: 27074aa31aca7651ad6d2f4edcdb34d422509a1a
      https://github.com/llvm/llvm-project/commit/27074aa31aca7651ad6d2f4edcdb34d422509a1a
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    A llvm/test/CodeGen/AMDGPU/waitcnt-debug-output-crash.ll

  Log Message:
  -----------
  [AMDGPU] Fix crash in SIInsertWaitcnts debug output (#175518)

In some cases we were accessing `OldWaitcntInstr.getParent()->end()`
after `OldWaitcntInstr` had already been erased from its parent.


  Commit: a823a2ab6d9032be7cf037ec2e1db3ec501659db
      https://github.com/llvm/llvm-project/commit/a823a2ab6d9032be7cf037ec2e1db3ec501659db
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/SPIR.h
    M clang/test/Sema/spirv-address-space.c

  Log Message:
  -----------
  [SPIR-V] Do not allow AS(2) to convert to generic (#175275)

Summary:
The original logic permitted this, while it's not permitted by the
standard.

---------

Co-authored-by: Dmitry Sidorov <18708689+MrSidims at users.noreply.github.com>


  Commit: 52d6170c9f2d64ae78ae301d454e216aa865f248
      https://github.com/llvm/llvm-project/commit/52d6170c9f2d64ae78ae301d454e216aa865f248
  Author: NagaChaitanya Vellanki <pnagato at protonmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/avx512vlfp16intrin.h
    M clang/lib/Headers/avx512vlintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/test/CodeGen/X86/avx-builtins.c
    M clang/test/CodeGen/X86/avx512f-builtins.c
    M clang/test/CodeGen/X86/avx512fp16-builtins.c
    M clang/test/CodeGen/X86/avx512vl-builtins.c
    M clang/test/CodeGen/X86/avx512vlfp16-builtins.c
    M clang/test/CodeGen/X86/sse-builtins.c
    M clang/test/CodeGen/X86/sse2-builtins.c

  Log Message:
  -----------
  [X86][Clang] VectorExprEvaluator::VisitCallExpr / InterpretBuiltin - Allow SSE/AVX FP MAX/MIN intrinsics to be used in constexpr (#171966)

* Implemented a generic function interp__builtin_elementwise_fp_binop
* NaN, Infinity, Denormal cases can be integrated into the lambda in
future. For, now these cases are hardcoded in the generic function

Resolves: #169991


  Commit: 670ecd7c358e3f29f852b564a0edfbe8a4e1734a
      https://github.com/llvm/llvm-project/commit/670ecd7c358e3f29f852b564a0edfbe8a4e1734a
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M .github/workflows/issue-write.yml

  Log Message:
  -----------
  GHA: Add the "Check LLVM ABI" flow to issue-write (#175549)

This is needed to properly test that #172673 is working as expected.


  Commit: b04cf3b0fdbfb504066c7f358098ff518daa20ee
      https://github.com/llvm/llvm-project/commit/b04cf3b0fdbfb504066c7f358098ff518daa20ee
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/cse.ll

  Log Message:
  -----------
  [VPlan] Remove verifier check that EVL can only be used by VPInstruction with one use (#175502)

Fixes #175028

We have a VPlanVerifier assertion that a VPInstruction that uses EVL
only has one use. This used to hold until we implemented CSE, but now we
can run into the case where e.g. a multiply from an expanded
VPWidenPointerInductionRecipe gets cse'd, causing it to have multiple
uses:

    EMIT ir<%0> = WIDEN-POINTER-INDUCTION ir<%.pre3>, ir<6>, vp<%5>
    EMIT ir<%1> = WIDEN-POINTER-INDUCTION ir<%.pre>, ir<6>, vp<%5>
    EMIT-SCALAR vp<%5> = EXPLICIT-VECTOR-LENGTH vp<%avl>

    -->

    EMIT-SCALAR vp<%10> = EXPLICIT-VECTOR-LENGTH vp<%avl>
    EMIT vp<%11> = mul ir<6>, vp<%10>
    EMIT vp<%ptr.ind> = ptradd vp<%pointer.phi>, vp<%11>
    EMIT vp<%12> = mul ir<6>, vp<%10>
    EMIT vp<%ptr.ind>.1 = ptradd vp<%pointer.phi>.1, vp<%12>

    -->

    EMIT-SCALAR vp<%5> = EXPLICIT-VECTOR-LENGTH vp<%avl>
    EMIT vp<%6> = mul ir<6>, vp<%5>
    EMIT vp<%ptr.ind> = ptradd vp<%pointer.phi>, vp<%6>
    EMIT vp<%ptr.ind>.1 = ptradd vp<%pointer.phi>.1, vp<%6>

This removes the check, as I'm not sure it's that useful anymore now
that we have CSE. Coincidentally, this crash only happened on RV32
because RV64 requires zexting the EVL, which sidesteps a lot of the
checks to begin with.


  Commit: 194a4d2e933fc1bfbfb7662013a4d05e828dd5e4
      https://github.com/llvm/llvm-project/commit/194a4d2e933fc1bfbfb7662013a4d05e828dd5e4
  Author: Alex Bradbury <asb at igalia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/test/CodeGen/RISCV/intrinsic-cttz-elts-vscale.ll

  Log Message:
  -----------
  [RISCV] Fix ReplaceNodeResults of Intrinsic::experimental_cttz_elts for RV32 (#174992)

The test case added in this patch crashes on rv32v without this fix. We
attempt to trunc the i32 type of the select produced by lowerCttzElts to
i64, which asserts. Use getZExtOrTrunc instead.


  Commit: 26e10cda55d14c1d9ebe6ce4fc36c62eb650ae82
      https://github.com/llvm/llvm-project/commit/26e10cda55d14c1d9ebe6ce4fc36c62eb650ae82
  Author: Robert Imschweiler <robert.imschweiler at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M openmp/cmake/modules/LibompHandleFlags.cmake
    M openmp/runtime/CMakeLists.txt
    M openmp/runtime/src/CMakeLists.txt
    A openmp/runtime/test/Unit/lit.cfg.py
    A openmp/runtime/test/Unit/lit.site.cfg.py.in
    M openmp/runtime/test/lit.cfg
    A openmp/runtime/unittests/CMakeLists.txt
    A openmp/runtime/unittests/README.md
    A openmp/runtime/unittests/String/CMakeLists.txt
    A openmp/runtime/unittests/String/TestKmpStr.cpp

  Log Message:
  -----------
  [OpenMP] Add libomp unit test infrastructure (#168063)

(The tests in `TestKmpStr.cpp` are an automatically generated POC to
make sure things work.)


  Commit: 128731fbd32150d512cc912ec891e5c55fe605dd
      https://github.com/llvm/llvm-project/commit/128731fbd32150d512cc912ec891e5c55fe605dd
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [SCEV] Handle all PtrtoIntExpr construction in CastSinkingRewriter (NFC) (#174435)

Move SCEVPtrToIntSinkingRewriter out of getLosslessPtrToIntExpr to be
re-used for PtrToAddr. Also streamline code in getLosslessPtrToIntExpr
by moving zero handling to the rewriter and removing special handling
for SCEVUnknown in getLosslessPtrToIntExpr. Instead, always use the
rewriter, which will automatically handle the case where the expression
is a SCEVUnknown.

This makes it slightly easier to add support for PtrToAddr as follow-up
to https://github.com/llvm/llvm-project/pull/158032

PR: https://github.com/llvm/llvm-project/pull/174435


  Commit: b9859d05fdf28503fe303c479848ea0ee60c75b3
      https://github.com/llvm/llvm-project/commit/b9859d05fdf28503fe303c479848ea0ee60c75b3
  Author: Guilherme oliveira de campos <oliveira.gui at hotmail.com.br>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86InstCombineIntrinsic.cpp
    A llvm/test/Transforms/InstCombine/X86/x86-scalar-max-min.ll

  Log Message:
  -----------
  [X86] InstCombine: Generalize scalar SSE MAX/MIN intrinsics (#175375)

Fixes #175162

This patch handles x86_sse_max_ss/min_ss and related intrinsics. It
check if is known to be safe to convert them to llvm.maxnum/minnum.

These intrinsics can be converted to `@llvm.maxnum` and `@llvm.minnum`.
This optimization can be done if the inputs are free of: NaN, Inf,
Subnormal, and NegZero. If it is not sure to be free of these, the
instructions remain the same.


  Commit: f73f43cf5086b884bd3df7e1a1b60bd5a0626655
      https://github.com/llvm/llvm-project/commit/f73f43cf5086b884bd3df7e1a1b60bd5a0626655
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/CMakeLists.txt
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-union.cpp
    A cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-union.test
    M llvm/utils/lldbDataFormatters.py

  Log Message:
  -----------
  [llvm][formatters] Add LLDB formatter for llvm::PointerUnion (#175218)

We make use of the fact that the `PointerUnion` element is a
`PointerIntPair`, for which we have a synthetic provider already. We get
the `Int` portion of the pair (which is the index into the template
parameter pack of the union) to get the active type and the `Pointer`
portion of the pair to get the actual pointer value.

Before:
```
(lldb) (lldb) v -T z_float
(llvm::PointerUnion<Z *, float *>) z_float = {
  (llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> >, 0, Z *, float *>) llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *>, llvm::PointerIntPairInfo<void *, 1, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> > >, 0, Z *, float *> = {
    (llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> >, 1, float *>) llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *>, llvm::PointerIntPairInfo<void *, 1, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> > >, 1, float *> = {
      (llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> >, 2>) llvm::pointer_union_detail::PointerUnionMembers<llvm::PointerUnion<Z *, float *>, llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *>, llvm::PointerIntPairInfo<void *, 1, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> > >, 2> = {
        (llvm::PointerIntPair<void *, 1, int, llvm::pointer_union_detail::PointerUnionUIntTraits<Z *, float *> >) Val = {...}
      }
    }
  }
}
```

After:
```
(llvm::PointerUnion<Z *, float *>) z_float = {
  (float *) Pointer = 0x000000016fdfebb0
}
```


  Commit: f2ba54ad4f01f66c56eda0ade9636d4978e72e5b
      https://github.com/llvm/llvm-project/commit/f2ba54ad4f01f66c56eda0ade9636d4978e72e5b
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A llvm/test/CodeGen/RISCV/rda-liveins.mir

  Log Message:
  -----------
  [ReachingDefAnalysis] Test RDA on live-in registers. (#175389)

We plan to track live-in registers in RDA. Precommit a test for that.


  Commit: b22c149770afa90556c91e8519d0f46dd93baad5
      https://github.com/llvm/llvm-project/commit/b22c149770afa90556c91e8519d0f46dd93baad5
  Author: Nerixyz <nerixdev at outlook.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  [LLDB] Mention MSVC STL formatters in release notes (#175527)

We already had a few MSVC STL formatters at the last release, but we
postponed the release note entry until they support PDB. The formatters
now support PDB.

There are still some left (see
https://github.com/llvm/llvm-project/issues/24834#issuecomment-3049291996),
but the most common types are formatted.


  Commit: 527d0afcb73e6af89d0a2ddd5044e4d0febc63d7
      https://github.com/llvm/llvm-project/commit/527d0afcb73e6af89d0a2ddd5044e4d0febc63d7
  Author: eiytoq <eiytoq at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/include/__numeric/midpoint.h

  Log Message:
  -----------
  [libc++] Removed unused internal helper functions from the midpoint.h header (#175514)


  Commit: 16078f07c44a1155aac5f25a6c9fdf123041a693
      https://github.com/llvm/llvm-project/commit/16078f07c44a1155aac5f25a6c9fdf123041a693
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/JSON.h
    M llvm/lib/Support/JSON.cpp

  Log Message:
  -----------
  [Support][NFC] Move JSON::dump out-of-line (#175558)

Prevents redundant compilation into all objects that include the header.


  Commit: 3c45c54156eb699eff643c4bc7f642a0fabf048c
      https://github.com/llvm/llvm-project/commit/3c45c54156eb699eff643c4bc7f642a0fabf048c
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake
    M llvm/cmake/modules/HandleLLVMOptions.cmake

  Log Message:
  -----------
  [CMake] Move RTTI flag calculation to AddLLVM.cmake (#175553)

This should help users who use AddLLVM.cmake without HandleLLVMOptions.
Note that remains MSVC is unlikely to work.

Follow up of #174084.


  Commit: 04e5bc7dfbd0a5b4c00470ccea4cc43dcfc2d38a
      https://github.com/llvm/llvm-project/commit/04e5bc7dfbd0a5b4c00470ccea4cc43dcfc2d38a
  Author: Kerry McLaughlin <kerry.mclaughlin at arm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/lib/Basic/Targets/AArch64.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Sema/SemaARM.cpp
    M clang/test/CodeGen/arm_acle.c
    M clang/test/CodeGen/builtins-arm64.c
    M clang/test/Preprocessor/aarch64-target-features.c
    M clang/test/Preprocessor/init-aarch64.c
    M clang/test/Sema/builtins-arm64.c
    M llvm/include/llvm/IR/IntrinsicsAArch64.td
    M llvm/lib/IR/Verifier.cpp
    M llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
    M llvm/lib/Target/AArch64/AArch64InstrGISel.td
    M llvm/lib/Target/AArch64/AArch64InstrInfo.td
    M llvm/lib/Target/AArch64/GISel/AArch64LegalizerInfo.cpp
    A llvm/test/CodeGen/AArch64/range-prefetch.ll
    A llvm/test/Verifier/AArch64/intrinsic-immarg.ll

  Log Message:
  -----------
  [AArch64] Add support for range prefetch intrinsic (#170490)

This patch adds support in Clang for the RPRFM instruction, by adding
the following intrinsics:

```
void __pldx_range(unsigned int *access_kind*, unsigned int retention_policy,
                               signed int length*, unsigned int count, signed int stride,
                               size_t reuse distance,  void const *addr);

void __pld_range(unsigned int access_kind*, unsigned int retention_policy,
                              uint64_t metadata, void const *addr);
```

The `__ARM_PREFETCH_RANGE` macro can be used to test whether these
intrinsics are implemented. If the RPRFM instruction is not available, this
instruction is a NOP.

This implements the following ACLE proposal:
https://github.com/ARM-software/acle/pull/423


  Commit: 123b6a2766f14d95254c72f7c2bea37a6e9cd9c9
      https://github.com/llvm/llvm-project/commit/123b6a2766f14d95254c72f7c2bea37a6e9cd9c9
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Give VPInstruction::ExplicitVectorLength name. NFC (#175493)

This makes it a tad easier to read VPlan dumps, e.g.

    WIDEN vp.store vp<%7>, ir<%val>, vp<%5>
    ->
    WIDEN vp.store vp<%7>, ir<%val>, vp<%evl>


  Commit: 68239d53c5fedc51bd9a5cded637cc6c3edd4a65
      https://github.com/llvm/llvm-project/commit/68239d53c5fedc51bd9a5cded637cc6c3edd4a65
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/cmake/modules/AddLLVM.cmake

  Log Message:
  -----------
  [CMake][NFC] Drop unnecessary GTest RTTI define (#175555)

gtest automatically determines GTEST_HAS_RTTI from pre-defined compiler
macros, there is no need to explicitly define this and especially no
need to define this for every single source file.


  Commit: e531f48fc473c93742775102efa0faef3d5c2e93
      https://github.com/llvm/llvm-project/commit/e531f48fc473c93742775102efa0faef3d5c2e93
  Author: Alex Voicu <alexandru.voicu at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/SPIRV/SPIRVPostLegalizer.cpp
    A llvm/test/CodeGen/SPIRV/instructions/zext_sext_deduce_type.ll

  Log Message:
  -----------
  [SPIRV] Deduce result type for `G_SEXT` and `G_ZEXT` (#175401)

During legalisation we can fold / combine `sext` followed by a widening
via `zext`. Unfortunately, this yields a new result register with no
SPIRV Type, which leads to incorrect behaviour during post legalisation
when we end up deducing the (narrower) type from the operand. This patch
corrects the behaviour in that it ensures that we use the (widened) type
of the result to yield the SPIRV Type for the register.


  Commit: fd90b7cd1fd3f1477094efc5fc53898edc0a77db
      https://github.com/llvm/llvm-project/commit/fd90b7cd1fd3f1477094efc5fc53898edc0a77db
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/Frontend/ModuleDependencyCollector.cpp

  Log Message:
  -----------
  [clang] Bypass sandbox in `ModuleDependencyCollector` (#175220)

This PR disables the sandbox for file collection within
`ModuleDependencyCollector`. This is typically only invoked when the
`-module-dependency-dir` option is specified for generating a crash
report, where the sandbox is not as crucial as for regular compilation.


  Commit: a698f7ebdf3bac1abc1a176ffc886b940f64b237
      https://github.com/llvm/llvm-project/commit/a698f7ebdf3bac1abc1a176ffc886b940f64b237
  Author: Jan Svoboda <jan_svoboda at apple.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/CrossTU/CrossTranslationUnit.cpp

  Log Message:
  -----------
  [clang] Prevent sandbox violations in `CrossTranslationUnitContext` (#175097)

This uses the VFS to load a file instead of using
`MemoryBuffer::getBufferForFile()` directly to avoid sandbox violation.
Sandbox is then disabled for `CreateASTUnitFromCommandLine()` which
invokes the driver which is not expected to be free of sandbox
violations.


  Commit: 98640226ba2e1ea8821240d84bb893fb4470f1e4
      https://github.com/llvm/llvm-project/commit/98640226ba2e1ea8821240d84bb893fb4470f1e4
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/examples/LLVMPrintFunctionNames/CMakeLists.txt
    M clang/examples/PrintFunctionNames/CMakeLists.txt
    M llvm/tools/bugpoint-passes/CMakeLists.txt
    M offload/unittests/Conformance/lib/CMakeLists.txt

  Log Message:
  -----------
  [CMake][NFC] Don't use uninitialized LLVM_REQUIRES_* (#175554)

LLVM_REQUIRES_* are per-target flags that are never set globally. Yet,
some files used these (undefined) flags for some logic. This patch
emoves these dead checks/unconditionally executes the logic. Note that
the referenced *.exports files are empty, so there is no need to make
related logic conditional on MSVC.


  Commit: 9c5708c257c447a90edc66cbc0e78bc990ce6de6
      https://github.com/llvm/llvm-project/commit/9c5708c257c447a90edc66cbc0e78bc990ce6de6
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/add-sub-no-carry.s
    M llvm/test/MC/AMDGPU/atomic-fadd-insts.s
    M llvm/test/MC/AMDGPU/buf-fmt-d16-packed.s
    M llvm/test/MC/AMDGPU/buf-fmt-d16-unpacked.s
    M llvm/test/MC/AMDGPU/cpol-err.s
    M llvm/test/MC/AMDGPU/dpp-err.s
    M llvm/test/MC/AMDGPU/dpp64.s
    M llvm/test/MC/AMDGPU/ds-err.s
    M llvm/test/MC/AMDGPU/ds-gfx9.s
    M llvm/test/MC/AMDGPU/ds.s
    M llvm/test/MC/AMDGPU/ds_swizzle.s
    M llvm/test/MC/AMDGPU/exp-err.s
    M llvm/test/MC/AMDGPU/exp-gfx10.s
    M llvm/test/MC/AMDGPU/expressions-gfx10.s
    M llvm/test/MC/AMDGPU/expressions-gfx9.s
    M llvm/test/MC/AMDGPU/expressions.s
    M llvm/test/MC/AMDGPU/fixup64.s
    M llvm/test/MC/AMDGPU/flat-gfx10.s
    M llvm/test/MC/AMDGPU/flat-gfx9.s
    M llvm/test/MC/AMDGPU/flat-global.s
    M llvm/test/MC/AMDGPU/flat-scratch-instructions.s
    M llvm/test/MC/AMDGPU/flat-scratch-st-mode.s
    M llvm/test/MC/AMDGPU/flat-scratch.s
    M llvm/test/MC/AMDGPU/flat.s
    M llvm/test/MC/AMDGPU/fma-mix.s
    M llvm/test/MC/AMDGPU/gfx10-constant-bus.s
    M llvm/test/MC/AMDGPU/gfx1011_err.s
    M llvm/test/MC/AMDGPU/gfx1030_err.s
    M llvm/test/MC/AMDGPU/gfx1030_unsupported.s
    M llvm/test/MC/AMDGPU/gfx10_asm_dpp16.s
    M llvm/test/MC/AMDGPU/gfx10_asm_dpp8.s
    M llvm/test/MC/AMDGPU/gfx10_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_sdwa.s
    M llvm/test/MC/AMDGPU/gfx10_err_pos.s
    M llvm/test/MC/AMDGPU/gfx10_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_dpp.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e32.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e64.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_e64_dpp.s
    M llvm/test/MC/AMDGPU/gfx10_unsupported_sdwa.s
    M llvm/test/MC/AMDGPU/gfx11_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_exp.s
    M llvm/test/MC/AMDGPU/gfx11_asm_flat_errs.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx11_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_sopk_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vinterp_err-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vinterp_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vopd_err.s
    M llvm/test/MC/AMDGPU/gfx11_asm_wmma.s
    M llvm/test/MC/AMDGPU/gfx11_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_dpp.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_e32.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_e64.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_sdwa-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_unsupported_sdwa.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_load_tr.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_smem.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_sopk.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_sopp.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_sopp_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_unsupported.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vbuffer_mubuf.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vbuffer_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vflat_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vimage_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop1_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop1_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3_from_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p_dpp8.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd3.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vopd_errs.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_vsample_err.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx1250_asm_wmma_w32_err.s
    M llvm/test/MC/AMDGPU/gfx1250_err.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop1_err.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop1_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop1_err.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop2_dpp16.s
    M llvm/test/MC/AMDGPU/gfx1251_asm_vop3_from_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx1251_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_global_load_tr.s
    M llvm/test/MC/AMDGPU/gfx12_asm_mimg_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_smem_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mtbuf_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vbuffer_mubuf_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop1_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop2_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp16-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_dpp8-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_dpp8_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopc_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_fake16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopcx_t16_err.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vopd_errs.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w32.s
    M llvm/test/MC/AMDGPU/gfx12_asm_wmma_w64.s
    M llvm/test/MC/AMDGPU/gfx12_err.s
    M llvm/test/MC/AMDGPU/gfx12_flat_instructions_err.s
    M llvm/test/MC/AMDGPU/gfx12_unsupported.s
    M llvm/test/MC/AMDGPU/gfx7_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx7_err_pos.s
    M llvm/test/MC/AMDGPU/gfx7_unsupported.s
    M llvm/test/MC/AMDGPU/gfx8_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx8_err_pos.s
    M llvm/test/MC/AMDGPU/gfx8_unsupported.s
    M llvm/test/MC/AMDGPU/gfx9-asm-err.s
    M llvm/test/MC/AMDGPU/gfx9-vop2be-literal.s
    M llvm/test/MC/AMDGPU/gfx908_err.s
    M llvm/test/MC/AMDGPU/gfx908_err_pos.s
    M llvm/test/MC/AMDGPU/gfx90a_asm_features.s
    M llvm/test/MC/AMDGPU/gfx90a_err.s
    M llvm/test/MC/AMDGPU/gfx90a_err_pos.s
    M llvm/test/MC/AMDGPU/gfx90a_ldst_acc.s
    M llvm/test/MC/AMDGPU/gfx942_asm_features.s
    M llvm/test/MC/AMDGPU/gfx942_err.s
    M llvm/test/MC/AMDGPU/gfx942_err_pos.s
    M 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_err.s
    M llvm/test/MC/AMDGPU/gfx950_invalid_encoding.txt
    M llvm/test/MC/AMDGPU/gfx9_4_generic_unsupported.s
    M llvm/test/MC/AMDGPU/gfx9_asm_ds_err.s
    M llvm/test/MC/AMDGPU/gfx9_err_pos.s
    M llvm/test/MC/AMDGPU/gfx9_unsupported.s
    M llvm/test/MC/AMDGPU/lds_direct-err.s
    M llvm/test/MC/AMDGPU/lds_direct-gfx10.s
    M llvm/test/MC/AMDGPU/literal16-err.s
    M llvm/test/MC/AMDGPU/literalv216-err.s
    M llvm/test/MC/AMDGPU/literalv216.s
    M llvm/test/MC/AMDGPU/mad-mix.s
    M llvm/test/MC/AMDGPU/mai-err.s
    M llvm/test/MC/AMDGPU/mai-gfx950-err.s
    M llvm/test/MC/AMDGPU/mai.s
    M llvm/test/MC/AMDGPU/mimg-err-gfx942.s
    M llvm/test/MC/AMDGPU/mimg-err.s
    M llvm/test/MC/AMDGPU/mimg.s
    M llvm/test/MC/AMDGPU/misaligned-vgpr-tuples-err.s
    M llvm/test/MC/AMDGPU/mtbuf-gfx10.s
    M llvm/test/MC/AMDGPU/mtbuf.s
    M llvm/test/MC/AMDGPU/mubuf-gfx9.s
    M llvm/test/MC/AMDGPU/mubuf.s
    M llvm/test/MC/AMDGPU/out-of-range-registers.s
    M llvm/test/MC/AMDGPU/reg-syntax-err.s
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s
    M llvm/test/MC/AMDGPU/smem-err.s
    M llvm/test/MC/AMDGPU/smem.s
    M llvm/test/MC/AMDGPU/smrd-err.s
    M llvm/test/MC/AMDGPU/smrd.s
    M llvm/test/MC/AMDGPU/sop1-err.s
    M llvm/test/MC/AMDGPU/sop1.s
    M llvm/test/MC/AMDGPU/sop2-err.s
    M llvm/test/MC/AMDGPU/sop2.s
    M llvm/test/MC/AMDGPU/sopc-err.s
    M llvm/test/MC/AMDGPU/sopc.s
    M llvm/test/MC/AMDGPU/sopk-err.s
    M llvm/test/MC/AMDGPU/sopk.s
    M llvm/test/MC/AMDGPU/sopp-err.s
    M llvm/test/MC/AMDGPU/sopp.s
    M llvm/test/MC/AMDGPU/trap.s
    M llvm/test/MC/AMDGPU/vintrp-e64-err.s
    M llvm/test/MC/AMDGPU/vintrp-err.s
    M llvm/test/MC/AMDGPU/vop-err.s
    M llvm/test/MC/AMDGPU/vop1-gfx9-err.s
    M llvm/test/MC/AMDGPU/vop1-gfx9.s
    M llvm/test/MC/AMDGPU/vop1.s
    M llvm/test/MC/AMDGPU/vop2-err.s
    M llvm/test/MC/AMDGPU/vop2.s
    M llvm/test/MC/AMDGPU/vop3-convert.s
    M llvm/test/MC/AMDGPU/vop3-errs.s
    M llvm/test/MC/AMDGPU/vop3-gfx9.s
    M llvm/test/MC/AMDGPU/vop3-modifiers-err.s
    M llvm/test/MC/AMDGPU/vop3.s
    M llvm/test/MC/AMDGPU/vop3p-err.s
    M llvm/test/MC/AMDGPU/vop_dpp.s
    M llvm/test/MC/AMDGPU/vop_sdwa.s
    M llvm/test/MC/AMDGPU/vopc-errs.s
    M llvm/test/MC/AMDGPU/vopc-vi.s
    M llvm/test/MC/AMDGPU/wave32.s
    M llvm/test/MC/AMDGPU/xdl-insts-err.s
    M llvm/test/MC/AMDGPU/xnack-mask.s
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_buffer_err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_vop3p_err.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w32.txt
    M llvm/test/MC/Disassembler/AMDGPU/gfx12_dasm_wmma_w64.txt

  Log Message:
  -----------
  [AMDGPU] Use -filetype=null for more MC tests. NFCI. (#175567)

Following on from #175543 which did the same only for tests not using
`FileCheck -implicit-check-not=error:` or similar.


  Commit: 9ad052edbf549384182509e3de6f2eaf90e0e09d
      https://github.com/llvm/llvm-project/commit/9ad052edbf549384182509e3de6f2eaf90e0e09d
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/hsa-diag-v4.s
    M llvm/test/MC/AMDGPU/unknown-target-cpu.s
    M llvm/test/MC/Disassembler/AMDGPU/decode-err.txt

  Log Message:
  -----------
  [AMDGPU] Remove unneeded -show-encoding option from MC tests. NFC. (#175569)


  Commit: 669d71be6fd3e4a91de671788c8c522a7a937774
      https://github.com/llvm/llvm-project/commit/669d71be6fd3e4a91de671788c8c522a7a937774
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/test/Transforms/Attributor/nofpclass.ll

  Log Message:
  -----------
  ValueTracking: Fix handling of fadd with mixed denormal modes (#175454)

Fix case where the input mode is IEEE, the output flushes, and the
input could be subnormal. Also improves accuracy with positive zero
case.


  Commit: 48d163684c9ad5b416913d83e6b11fb32d0c0998
      https://github.com/llvm/llvm-project/commit/48d163684c9ad5b416913d83e6b11fb32d0c0998
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/include/__memory_resource/memory_resource.h
    M libcxx/include/__memory_resource/monotonic_buffer_resource.h
    M libcxx/include/__memory_resource/polymorphic_allocator.h
    M libcxx/include/__memory_resource/synchronized_pool_resource.h
    M libcxx/include/__memory_resource/unsynchronized_pool_resource.h
    R libcxx/test/libcxx/diagnostics/memory_resource.nodiscard.verify.cpp
    M libcxx/test/libcxx/mem/mem.res/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][memory_resource] Applied `[[nodiscard]]` (#172134)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/mem.res

Towards #172124

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>
Co-authored-by: Nikolas Klauser <nikolasklauser at berlin.de>


  Commit: 01e089ee5e6c87f3be0668e1e2a145fc3906ff6b
      https://github.com/llvm/llvm-project/commit/01e089ee5e6c87f3be0668e1e2a145fc3906ff6b
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/include/flang/Parser/parse-tree-visitor.h

  Log Message:
  -----------
  [flang] Remove unnecessary overloads of Walk in parse tree visitor (#175563)

These actions are now performed by the trait-based Walk functions.


  Commit: d5e610a6dc8491a9fd6908fb10e4fae65691ed95
      https://github.com/llvm/llvm-project/commit/d5e610a6dc8491a9fd6908fb10e4fae65691ed95
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/GenericList.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxx.h
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
    M lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp

  Log Message:
  -----------
  [lldb][Formatters] Remove broken/redundant lookup into anonymous child when extracting from compressed pairs (#175564)

(brought to my attention in
https://github.com/llvm/llvm-project/pull/155153#discussion_r2682666325)

This patch removes the `anon_struct_idx` of
`GetValueOrOldCompressedPair`.

The latest `_LIBCPP_COMPRESSED_PAIR` wraps the members in an anonymous
structure. Around the time of the original patch that introduced
`GetValueOrOldCompressedPair`
(https://github.com/llvm/llvm-project/pull/155153),
`GetChildMemberWithName` wasn't capable of "seeing through" anonymous
structures when searching for children. However, around the same time as
https://github.com/llvm/llvm-project/pull/155153 landed, the
`GetChildMemberWithName` behaviour was fixed (in
https://github.com/llvm/llvm-project/pull/138487). So regardless of
whether the the compressed pair is wrapped in an anonymous structure,
simply calling `GetChildMemberWithName` is the right thing to do.

We weren't even using the result of `GetChildAtIndex`, so we were always
calling `GetChildMemberWithName` with the root ValueObject anyways.

Our `libcxx-simulators` already test both compressed pair layouts, so no
extra coverage is needed here.


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

  Changed paths:
    M llvm/test/CodeGen/X86/isint.ll

  Log Message:
  -----------
  [X86] isint.ll - ensure have test coverage for all x86-64 cpu levels (#175574)


  Commit: 02bc04f726b1046e0ddf7985b37f3c7c80b4e071
      https://github.com/llvm/llvm-project/commit/02bc04f726b1046e0ddf7985b37f3c7c80b4e071
  Author: Fang He <hf.enigma at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    R clang/test/CodeGen/AArch64/sve2p2-intriniscs/acle_sve2p2_compact.c
    R clang/test/CodeGen/AArch64/sve2p2-intriniscs/acle_sve2p2_expand.c
    R clang/test/CodeGen/AArch64/sve2p2-intriniscs/acle_sve2p2_firstp.c
    R clang/test/CodeGen/AArch64/sve2p2-intriniscs/acle_sve2p2_lastp.c
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve2p2_compact.c
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve2p2_expand.c
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve2p2_firstp.c
    A clang/test/CodeGen/AArch64/sve2p2-intrinsics/acle_sve2p2_lastp.c

  Log Message:
  -----------
  Fix typo in 'clang/test/CodeGen/AArch64/sve2p2-intriniscs' folder name (#175481)

Fixes #175480.

Tests are merged with the correct
[sve2p2-intrinsics](https://github.com/llvm/llvm-project/tree/main/clang/test/CodeGen/AArch64/sve2p2-intrinsics)
folder.


  Commit: f6d0a512972a74ef100723b9526a6a0ddb23f894
      https://github.com/llvm/llvm-project/commit/f6d0a512972a74ef100723b9526a6a0ddb23f894
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86FixupInstTuning.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-fixup-inst-tuning (#175576)

Port x86-fixup-inst-tuning to the new pass manager. Standard porting
with refactoring of the pass to an impl, renaming the legacy pass, and
adding a NewPM wrapper around the impl. No test coverage added for now
as there are no MIR->MIR tests exercising this pass and we do not have
enough ported to run any end to end tests.


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

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
    A llvm/test/Transforms/LoopVectorize/AArch64/partial-reduce-add-sdot-i16-i32.ll

  Log Message:
  -----------
  [AArch64] Define cost of i16->i32 udot/sdot instructions (#174102)

i16 -> i32 dot-product operations are natively supported with SVE2p1 and
SME2. This updates the cost-model so that those operations are
recognized as cheap by the LoopVectorizer.


  Commit: ab34189878802ce137bee6c9515c7817fc3fe2b4
      https://github.com/llvm/llvm-project/commit/ab34189878802ce137bee6c9515c7817fc3fe2b4
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/JITLink/systemz.h
    M llvm/lib/ExecutionEngine/JITLink/ELF_systemz.cpp
    M llvm/lib/ExecutionEngine/JITLink/systemz.cpp
    M llvm/test/ExecutionEngine/JITLink/systemz/ELF_systemz_reloc_call_pic.s
    M llvm/test/ExecutionEngine/JITLink/systemz/ELF_systemz_reloc_plt.s

  Log Message:
  -----------
  [JITLink] Add GOT indirection optimization for SystemZ (#171919)

Optimize the GOT and Stub relocations if the edge target address is in
range from call site - Indirect jump by plt stub can be replaced with
direct jump to target in post-allocation optimization.


  Commit: e289b2e765ed279e57e4643a4f602d2328ac4af4
      https://github.com/llvm/llvm-project/commit/e289b2e765ed279e57e4643a4f602d2328ac4af4
  Author: Nick Kreeger <nick.kreeger at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A mlir/include/mlir/Dialect/Utils/VerificationUtils.h
    M mlir/lib/Dialect/Bufferization/IR/BufferizationOps.cpp
    M mlir/lib/Dialect/GPU/IR/GPUDialect.cpp
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/lib/Dialect/Utils/CMakeLists.txt
    A mlir/lib/Dialect/Utils/VerificationUtils.cpp
    M mlir/test/Dialect/Bufferization/invalid.mlir
    M mlir/test/Dialect/GPU/invalid.mlir
    M mlir/test/Dialect/MemRef/invalid.mlir
    M mlir/test/Dialect/Tensor/invalid.mlir

  Log Message:
  -----------
   [mlir][Utils] Add VerificationUtils (NFC) (#174336)

Introduces `VerificationUtils` to consolidate common operation
verification patterns in MLIR. This initial implementation provides
`verifyDynamicDimensionCount()` to reduce code duplication across
dialect verifiers.

This is an NFC (No Functional Change) refactoring that improves code
maintainability by extracting reusable verification logic into a shared
utility.


  Commit: 6ff416cabc8cead5bdd1c1845cf8f28808ec4a68
      https://github.com/llvm/llvm-project/commit/6ff416cabc8cead5bdd1c1845cf8f28808ec4a68
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/LegalizeTypes.h
    M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
    M llvm/test/CodeGen/AArch64/vector-extract-last-active.ll
    M llvm/test/CodeGen/X86/vector-extract-last-active.ll

  Log Message:
  -----------
  [ISel] Implement operand widening for VECTOR_FIND_LAST_ACTIVE. (#174389)

Implement WidenVecOp_VECTOR_FIND_LAST_ACTIVE to properly widen the
vector operand for @llvm.experimental.vector.extract.last.active.

Currently lowering crashes when widening of the operand is needed:

 WidenVectorOperand op #0: t15: i64 = find_last_active t14
 LLVM ERROR: Do not know how to widen this operator's operand!

Depends on github.com/https://github.com/llvm/llvm-project/pull/174384
to avoid infinite cycles in the X86 tests.

PR: https://github.com/llvm/llvm-project/pull/174389


  Commit: f4217fd4a333ce073fdfd75b5479be35886f3599
      https://github.com/llvm/llvm-project/commit/f4217fd4a333ce073fdfd75b5479be35886f3599
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV] Add Zbb to P extension SIMD tests. NFC (#175378)

It's likely the P extension will depend on Zbb and this improves the
code.


  Commit: 50c1a69db0f551d204d2cb29abd8dabb185a8392
      https://github.com/llvm/llvm-project/commit/50c1a69db0f551d204d2cb29abd8dabb185a8392
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExpr.cpp
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/test/CodeGenHLSL/BoolMatrix.hlsl

  Log Message:
  -----------
  [HLSL][Matrix] Load and store ConstantMatrixBoolTypes as i32 FixedVectorTypes (#175245)

Fixes #175236 

This pull request improves support for HLSL constant matrix types with
boolean elements in Clang's code generation. The main changes ensure
that boolean (i1) matrices are correctly represented and stored as i32
vectors in LLVM IR. This includes updates to both the code generation
logic and related tests.

### Code generation improvements for HLSL boolean matrices

* Updated `convertTypeForLoadStore` in `CodeGenTypes.cpp` to represent
constant matrix types with boolean elements as `FixedVectorType` of
integers, ensuring atomic load/store operations and correct element type
conversion for HLSL.
* Modified `EmitToMemory` in `CGExpr.cpp` to handle both
`ExtVectorBoolType` and `ConstantMatrixBoolType`, improving the handling
of boolean matrices during memory emission.

### Test updates for boolean matrix codegen

* Adjusted test expectations in `BoolMatrix.hlsl` to reflect the new
representation, showing stores and loads of `<N x i32>` instead of `<N x
i1>` for boolean matrices, and added zero-extension where necessary.
* Added a new test for a 4x4 boolean matrix function to verify correct
code generation for initial stores to boolean matrix parameter
declaration allocas.


  Commit: 2cfa9b258ecad0c095568d19174489e04c88ccc2
      https://github.com/llvm/llvm-project/commit/2cfa9b258ecad0c095568d19174489e04c88ccc2
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll

  Log Message:
  -----------
  InstCombine: SimplifyDemandedFPClass multiple use support for select (#175548)


  Commit: ad38c3987f8ecee618c46202173360cbc89f2021
      https://github.com/llvm/llvm-project/commit/ad38c3987f8ecee618c46202173360cbc89f2021
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/CommandLine.h

  Log Message:
  -----------
  [Support][NFC] Drop unnecessary default lambdas (#175577)

These lambdas must be instantiated and code-generated in multiple CUs;
instead use the null/default state of std::function as default state.

Very minor compile-time improvement of Clang/LLVM.


  Commit: 7676471c708535f7533b1d766bb02e9698c1bb29
      https://github.com/llvm/llvm-project/commit/7676471c708535f7533b1d766bb02e9698c1bb29
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Support/UnicodeNameToCodepoint.cpp
    M llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
    M llvm/utils/UnicodeData/UnicodeNameMappingGenerator.cpp

  Log Message:
  -----------
  [Support][NFC] Make unicode tables constant (#175573)

There's no reason that these large tables are mutable.


  Commit: effa813844a6a52613cc6e59c19cb35eeb08b6b6
      https://github.com/llvm/llvm-project/commit/effa813844a6a52613cc6e59c19cb35eeb08b6b6
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/cmake/modules/AddMLIRPython.cmake

  Log Message:
  -----------
  [mlir][Python] don't build libnanobind if module only has "pure" sources (#175090)

Like IREE's
[`IREECompilerBuildPythonModules`](https://github.com/iree-org/iree/blob/47fe908217caef04be21608cfcf45d44410f8dad/compiler/bindings/python/CMakeLists.txt#L300-L305).
Note, setting `MLIR_BINDINGS_PYTHON_NB_DOMAIN` on
`add_mlir_python_modules` explicitly would also workaround issues
related to this (and is generally recommended for projects building
multiple bindings packages).

---------

Co-authored-by: Rahul Kayaith <rkayaith at amd.com>


  Commit: 47910d62fe8c3324ef1a2c708b17d3d4ca0ff6b6
      https://github.com/llvm/llvm-project/commit/47910d62fe8c3324ef1a2c708b17d3d4ca0ff6b6
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
    M llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll

  Log Message:
  -----------
  [RISCV] Detect QC_E_ADDAI and fold in RISCVMergeBaseOffset (#175496)


  Commit: 619a9c1e81ff8d4ee57bf152cf045e50708b91e7
      https://github.com/llvm/llvm-project/commit/619a9c1e81ff8d4ee57bf152cf045e50708b91e7
  Author: Maksim Levental <maksim.levental at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Bindings/Python/IRCore.h
    M mlir/include/mlir/Bindings/Python/Nanobind.h
    M mlir/include/mlir/Bindings/Python/NanobindUtils.h
    M mlir/lib/Bindings/Python/IRAffine.cpp
    M mlir/lib/Bindings/Python/IRCore.cpp
    M mlir/test/python/dialects/python_test.py
    M mlir/test/python/dialects/rocdl.py
    M mlir/test/python/dialects/ub.py
    M mlir/test/python/ir/value.py

  Log Message:
  -----------
  [mlir][Python] downcast Value to BlockArgument or OpResult (#175264)

This PR adds "downcasting" of `ir.Value` to either `BlockArgument` or
`OpResult` (and then potentially further down if a user-registered
"value caster" exists). Also this PR changes `__str__` to return the
correct thing (`OpResult(...)` or `BlockArgument(...)` instead of
generic `Value(...)`).


  Commit: 4191b0cd0f56f76568313eef6809151a1fec86c4
      https://github.com/llvm/llvm-project/commit/4191b0cd0f56f76568313eef6809151a1fec86c4
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Platform/WebAssembly/CMakeLists.txt
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
    M lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.h
    A lldb/source/Plugins/Platform/WebAssembly/PlatformWasmRemoteGDBServer.cpp
    A lldb/source/Plugins/Platform/WebAssembly/PlatformWasmRemoteGDBServer.h
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
    M lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h

  Log Message:
  -----------
  [lldb] Make PlatformWasm a RemoteAwarePlatform (#175263)

This PR makes `PlatformWasm` a `RemoteAwarePlatform` that can connect to
a remote GDB platform server. `PlatformWasmRemoteGDBServer` inherits
from `PlatformRemoteGDBServer`, with the only difference that it picks
the correct Process plugin when launching and attaching. The approach is
identical to the one taken by `PlatformAndroid`.

The context is that we're working on a platform based approach for
discovering and attaching Wasm processes running under JSC with the
[newly added debugging
support](https://github.com/WebKit/WebKit/pull/51462).


  Commit: 7e7d9dc0ee8209d8d1f0b254e2386ec70b4847e5
      https://github.com/llvm/llvm-project/commit/7e7d9dc0ee8209d8d1f0b254e2386ec70b4847e5
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/Maintainers.md

  Log Message:
  -----------
  [lldb] Nominate John Harrison and Ebuka Ezike as lldb-dap maintainers (#175031)

As the lead maintainer, I've been asked by the project council to
confirm that we have an up-to-date list of active maintainers for LLDB.

In light of that, I'd like to nominate Ebuka and John as lldb-dap
maintainer and replace Greg, who hasn't been active in this area
recently. I did not move Greg to "former maintainer" as he's still
listed for other components.

As a reminder, our community policies regarding the responsibilities of
maintainers can be found here:
https://llvm.org/docs/DeveloperPolicy.html#maintainers.


  Commit: 9057744221afaf14e8a71449e660293db763577c
      https://github.com/llvm/llvm-project/commit/9057744221afaf14e8a71449e660293db763577c
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Optimizer/CodeGen/CodeGen.cpp
    M flang/test/Fir/convert-to-llvm.fir
    A flang/test/Integration/select-case-pointer-assign.f90

  Log Message:
  -----------
  [flang] Fix SelectCaseOpConversion to convert block signatures (#175298)

When `fir.select_case` branches to blocks with arguments that have FIR
types (e.g., `!fir.ref`), the block signature must be converted to LLVM
types before creating the branch. Otherwise, the branch passes LLVM
types (`!llvm.ptr`) but the block expects FIR types, causing a type
mismatch error.

This adds block signature conversion similar to what
`SelectOpConversionBase` already does for `fir.select` and
`fir.select_rank`.


  Commit: ccbe36f16d88fc6608efb381ecfc8904a1f55437
      https://github.com/llvm/llvm-project/commit/ccbe36f16d88fc6608efb381ecfc8904a1f55437
  Author: khaki3 <47756807+khaki3 at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Lower/Bridge.cpp
    M flang/lib/Lower/OpenACC.cpp
    M flang/lib/Semantics/check-acc-structure.cpp
    R flang/test/Lower/OpenACC/Todo/acc-cache.f90
    A flang/test/Lower/OpenACC/acc-cache.f90
    M flang/test/Semantics/OpenACC/acc-cache-validity.f90

  Log Message:
  -----------
  [flang][acc] Implement cache directive lowering (#174897)

The `acc.cache` operation is currently defined to be associated with a
loop. However, this implementation generates `acc.cache` as a standalone
data entry operation inside the loop body. The `acc.cache` operation
definition should be updated in a future change to reflect this usage.

Key implementation details:
- Add semantic checks to validate cache-specific constraints: at least
  one bound must be specified for array sections, and only unit stride
  is supported
- Use the shared `gatherDataOperandAddrAndBounds` infrastructure to
  generate `acc.bounds` for cache operands, handling single elements
  (`arr(i)`), full ranges (`arr(l:u)`), and partial ranges with missing
  bounds (`arr(l:)` or `arr(:u)`)
- Set the data clause to `acc_cache` with the `readonly` modifier via
  the `modifiers` attribute when the `readonly` clause is present
- Update the symbol map so subsequent lowering uses the cache result
- Insert cache operations after loop iterator setup
- Add symbol scope management for constructs inside `acc.loop`


  Commit: e6691b08c8f75af6d5f1bd93db54927d918171d6
      https://github.com/llvm/llvm-project/commit/e6691b08c8f75af6d5f1bd93db54927d918171d6
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/InterleavedRange.h

  Log Message:
  -----------
  [LLVM][Support] Minor code cleanup in `InterleavedRange` (#175237)

Remove redundant empty checks for prefix/suffix strings and flush() for
raw_string_ostream.


  Commit: 88f4c0a1036204808940bddab788ee923c7df8b1
      https://github.com/llvm/llvm-project/commit/88f4c0a1036204808940bddab788ee923c7df8b1
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64GenRegisterBankInfo.def

  Log Message:
  -----------
  [NFC][LLVM][AArch64] Simplify `checkPartialMappingIdx` (#173050)

Remove `First` check by skipping iterating over first element.


  Commit: d28daddd2bf23dd5fde76173ffd9820e7dd43337
      https://github.com/llvm/llvm-project/commit/d28daddd2bf23dd5fde76173ffd9820e7dd43337
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [llvm][RISCV] Support rounding mulh for P extension codegen (#171593)

In p extension spec, rounding is performed by adding 1 << (elt_bits - 1)
to its result.

Stack on: #171581


  Commit: 9f3551154cde91ae39f251773240ea8d45cd837c
      https://github.com/llvm/llvm-project/commit/9f3551154cde91ae39f251773240ea8d45cd837c
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-ir2vec/llvm-ir2vec.cpp

  Log Message:
  -----------
  [NFC][LLVM] Namespace cleanup in llvm-ir2vec.cpp (#175252)

- Add "using namespace" at top of the file.
- Make some file-local functions static


  Commit: 8e8a5502cbc08eec5b929d2d93adf7e898c24359
      https://github.com/llvm/llvm-project/commit/8e8a5502cbc08eec5b929d2d93adf7e898c24359
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/tools/llvm-dis/llvm-dis.cpp

  Log Message:
  -----------
  [NFC][LLVM] Minor namespace cleanup in llvm-dis.cpp (#175254)

Move static function `printDebugLoc` out of anonymous namespace.


  Commit: d0235a150df2048e34136f894ccaa304230f5209
      https://github.com/llvm/llvm-project/commit/d0235a150df2048e34136f894ccaa304230f5209
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A .github/workflows/ids-check.yml
    A llvm/utils/git/ids-check-helper.py
    M llvm/utils/git/requirements.txt
    M llvm/utils/git/requirements.txt.in

  Log Message:
  -----------
  [ci] Add ids workflow for checking llvm apis have been annotated with LLVM_ABI (#172673)

This PR adds a workflow which checks that llvm apis have been annotated
with LLVM_ABI.

Co-authored-by: mcbarton <matthew.c.barton at hotmail.co.uk>


  Commit: 774ea531eaeed8771ef8318e67873575f79c05b6
      https://github.com/llvm/llvm-project/commit/774ea531eaeed8771ef8318e67873575f79c05b6
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/docs/ImplementationDefinedBehavior.rst
    M libcxx/include/fstream
    A libcxx/test/extensions/libcxx/input.output/file.streams/fstreams/filebuf.members/close.dont-get-rid-of-buffer.pass.cpp

  Log Message:
  -----------
  [libc++] Fix filebuf resetting its underlying buffer upon close() (#168947)

When closing a filebuf, we would previously call setbuf(0, 0). Not only
does this get rid of any underlying buffer set by the user, but it also
sets the unbuffered mode.

This means that if the filebuf is then reopened to keep writing to a
file, it would have lost track of the original user-provided buffer (or
the default one which has a size of 4096), and instead it would use the
unbuffered mode, which is terribly slow.

This led to a bug report where users were complaining that closing and
reopening the filebuf led to a significantly worse performance than
using it without having closed and reopened. While this is a slightly
unusual usage pattern, it should definitely work.

rdar://161833214


  Commit: e8cceccea19473e2eb717178da179d2ce86b4d8a
      https://github.com/llvm/llvm-project/commit/e8cceccea19473e2eb717178da179d2ce86b4d8a
  Author: Ramkumar Ramachandra <artagnon at tenstorrent.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/IVDescriptors.cpp
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-decreasing.ll
    M llvm/test/Transforms/LoopVectorize/iv-select-cmp-trunc.ll

  Log Message:
  -----------
  [IVDesc] Fix off-by-one error in FindFirstIV ranges (#174441)

ConstantRange::getNonEmpty was excluding MAX and MAX - 1 in FindFirstIV
vectorization, and this was discovered in an i1 miscompile, where it
returns the full range: fix it to exclude MAX only. The change has also
necessitated fixing a test that's not supposed to be vectorized.

Fixes #173459.

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


  Commit: 05c769e062986d1628323c7120d97ddec2454ec5
      https://github.com/llvm/llvm-project/commit/05c769e062986d1628323c7120d97ddec2454ec5
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-rounding-intrinsics.ll

  Log Message:
  -----------
  InstCombine: Add SimplifyDemandedFPClass tests for round (#174841)

Add tests for the family of rounding intrinsics


  Commit: c80d20daa13dfcc8c792b1dcfadad0d5f7f3e77f
      https://github.com/llvm/llvm-project/commit/c80d20daa13dfcc8c792b1dcfadad0d5f7f3e77f
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/utils/TableGen/BUILD.gn
    M llvm/utils/gn/secondary/llvm/utils/TableGen/Common/BUILD.gn

  Log Message:
  -----------
  [gn] port 13055d60bb9f


  Commit: 0a45652bc3e58534f48f7f81dfae8b2b991f591a
      https://github.com/llvm/llvm-project/commit/0a45652bc3e58534f48f7f81dfae8b2b991f591a
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/test/Driver/crash-ir-repro.cpp

  Log Message:
  -----------
  [Clang][Driver] Disable crash-ir-repro.cpp on HWAasan

Similar to 964f9c0754937730953b5d6e0cfd9c352010fd16.


  Commit: 8821654715dcebf45ffd1e467b0ce2daf6946195
      https://github.com/llvm/llvm-project/commit/8821654715dcebf45ffd1e467b0ce2daf6946195
  Author: anoopkg6 <anoop.kumar6 at ibm.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/TargetInfo.h

  Log Message:
  -----------
  Fix #173673 assertion "Output operand lower bound is not zero" with asm output operand with '+Kr' constarint (#175470)

Fix #173673: Add flag output operand info to ConstraintInfo enum to
distinguish getOutputOperandBounds for flag output operand bounds.


  Commit: 5f9092a19b9f56f5ad084993df1f0cdb703c7cd8
      https://github.com/llvm/llvm-project/commit/5f9092a19b9f56f5ad084993df1f0cdb703c7cd8
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M mlir/lib/Support/TypeID.cpp

  Log Message:
  -----------
  [MLIR][NFC] Fix ambiguity between const char* and Twine (#175600)

This only shows up once Twine gets included, e.g. through a pre-compiled
header. Avoid this ambiguity with an explicit cast.


  Commit: 21aa00b916e00e635423c684e3be60e6028b7781
      https://github.com/llvm/llvm-project/commit/21aa00b916e00e635423c684e3be60e6028b7781
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/compiler-rt/test/asan/BUILD.gn

  Log Message:
  -----------
  [gn] port 305c413c92acfdd1

Not sure if this is everything; looks like only asan tests might be
hooked up in the GN build.


  Commit: dbd52bd55854f484d4393f86a33044f10cbbfe70
      https://github.com/llvm/llvm-project/commit/dbd52bd55854f484d4393f86a33044f10cbbfe70
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M offload/include/Shared/Debug.h
    M offload/include/Shared/Profile.h
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  [OFFLOAD][OpenMP] Remove old style REPORT support (#175607)

Fix the few remaining usages and remove the support for the old REPORT
macro.


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

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-rounding-intrinsics.ll

  Log Message:
  -----------
  InstCombine: Handle rounding intrinsics in SimplifyDemandedFPClass (#174842)


  Commit: 501416a755d1b85ca10507301aac273843a15a39
      https://github.com/llvm/llvm-project/commit/501416a755d1b85ca10507301aac273843a15a39
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/LoopUtils.h
    M llvm/lib/Transforms/Scalar/LoopFlatten.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp

  Log Message:
  -----------
  [Transforms][NFC] Remove unused include in LoopUtils (#175601)

This avoids pulling in LoopAccessAnalysis, which is a rather heavy header
that is rarely needed, in ~45 source files.


  Commit: 8042c93a58341cbaa80d7ff2a7a681dc840dffa4
      https://github.com/llvm/llvm-project/commit/8042c93a58341cbaa80d7ff2a7a681dc840dffa4
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/json/namespace.cpp

  Log Message:
  -----------
  [clang-doc] Add variables to the namespace HTML template (#175226)


  Commit: d7ee9f21413b4f09db7facff7f857f4cb9f957bd
      https://github.com/llvm/llvm-project/commit/d7ee9f21413b4f09db7facff7f857f4cb9f957bd
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV] Add isel patterns for ANDN/ORN/XNOR with P+Zbb. (#175384)


  Commit: 8fb1200c95e49144d7ca7162c8cde7e97ec6f05e
      https://github.com/llvm/llvm-project/commit/8fb1200c95e49144d7ca7162c8cde7e97ec6f05e
  Author: Raul Tambre <raul at tambre.ee>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/make/Makefile.rules
    M lldb/test/Shell/helper/toolchain.py

  Log Message:
  -----------
  [NFCI][lldb][test][asm] Enable AT&T syntax explicitly (#172358)

Implementation files using the Intel syntax typically explicitly specify it.
Do the same for the few files using AT&T syntax.

This enables building LLVM with `-mllvm -x86-asm-syntax=intel` in one's Clang config files
(i.e. a global preference for Intel syntax).

Unreverts: 14c69497b31038b37c273417f43bd2cfe169c86f


  Commit: 5db5782da16b546d0f515c5d5cc4c7a3bc0b7f5e
      https://github.com/llvm/llvm-project/commit/5db5782da16b546d0f515c5d5cc4c7a3bc0b7f5e
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/cmake/modules/LLVMLibCHeaderRules.cmake
    M libc/config/baremetal/aarch64/headers.txt
    M libc/config/baremetal/arm/headers.txt
    M libc/config/baremetal/riscv/headers.txt
    M libc/hdr/CMakeLists.txt
    A libc/hdr/elf_macros.h
    M libc/hdr/types/CMakeLists.txt
    A libc/hdr/types/Elf32_Addr.h
    A libc/hdr/types/Elf32_Chdr.h
    A libc/hdr/types/Elf32_Dyn.h
    A libc/hdr/types/Elf32_Ehdr.h
    A libc/hdr/types/Elf32_Half.h
    A libc/hdr/types/Elf32_Lword.h
    A libc/hdr/types/Elf32_Nhdr.h
    A libc/hdr/types/Elf32_Off.h
    A libc/hdr/types/Elf32_Phdr.h
    A libc/hdr/types/Elf32_Rel.h
    A libc/hdr/types/Elf32_Rela.h
    A libc/hdr/types/Elf32_Shdr.h
    A libc/hdr/types/Elf32_Sword.h
    A libc/hdr/types/Elf32_Sym.h
    A libc/hdr/types/Elf32_Verdaux.h
    A libc/hdr/types/Elf32_Verdef.h
    A libc/hdr/types/Elf32_Vernaux.h
    A libc/hdr/types/Elf32_Verneed.h
    A libc/hdr/types/Elf32_Versym.h
    A libc/hdr/types/Elf32_Word.h
    A libc/hdr/types/Elf64_Addr.h
    A libc/hdr/types/Elf64_Chdr.h
    A libc/hdr/types/Elf64_Dyn.h
    A libc/hdr/types/Elf64_Ehdr.h
    A libc/hdr/types/Elf64_Half.h
    A libc/hdr/types/Elf64_Lword.h
    A libc/hdr/types/Elf64_Nhdr.h
    A libc/hdr/types/Elf64_Off.h
    A libc/hdr/types/Elf64_Phdr.h
    A libc/hdr/types/Elf64_Rel.h
    A libc/hdr/types/Elf64_Rela.h
    A libc/hdr/types/Elf64_Shdr.h
    A libc/hdr/types/Elf64_Sword.h
    A libc/hdr/types/Elf64_Sxword.h
    A libc/hdr/types/Elf64_Sym.h
    A libc/hdr/types/Elf64_Verdaux.h
    A libc/hdr/types/Elf64_Verdef.h
    A libc/hdr/types/Elf64_Vernaux.h
    A libc/hdr/types/Elf64_Verneed.h
    A libc/hdr/types/Elf64_Versym.h
    A libc/hdr/types/Elf64_Word.h
    A libc/hdr/types/Elf64_Xword.h
    M libc/include/CMakeLists.txt
    M libc/include/elf.yaml
    A libc/include/link.h.def
    M libc/include/link.yaml
    M libc/include/llvm-libc-macros/elf-macros.h
    M libc/include/llvm-libc-macros/link-macros.h
    M libc/include/llvm-libc-types/CMakeLists.txt
    A libc/include/llvm-libc-types/Elf32_Addr.h
    A libc/include/llvm-libc-types/Elf32_Chdr.h
    A libc/include/llvm-libc-types/Elf32_Dyn.h
    A libc/include/llvm-libc-types/Elf32_Ehdr.h
    A libc/include/llvm-libc-types/Elf32_Half.h
    A libc/include/llvm-libc-types/Elf32_Lword.h
    A libc/include/llvm-libc-types/Elf32_Nhdr.h
    A libc/include/llvm-libc-types/Elf32_Off.h
    A libc/include/llvm-libc-types/Elf32_Phdr.h
    A libc/include/llvm-libc-types/Elf32_Rel.h
    A libc/include/llvm-libc-types/Elf32_Rela.h
    A libc/include/llvm-libc-types/Elf32_Shdr.h
    A libc/include/llvm-libc-types/Elf32_Sword.h
    A libc/include/llvm-libc-types/Elf32_Sym.h
    A libc/include/llvm-libc-types/Elf32_Verdaux.h
    A libc/include/llvm-libc-types/Elf32_Verdef.h
    A libc/include/llvm-libc-types/Elf32_Vernaux.h
    A libc/include/llvm-libc-types/Elf32_Verneed.h
    A libc/include/llvm-libc-types/Elf32_Versym.h
    A libc/include/llvm-libc-types/Elf32_Word.h
    A libc/include/llvm-libc-types/Elf64_Addr.h
    A libc/include/llvm-libc-types/Elf64_Chdr.h
    A libc/include/llvm-libc-types/Elf64_Dyn.h
    A libc/include/llvm-libc-types/Elf64_Ehdr.h
    A libc/include/llvm-libc-types/Elf64_Half.h
    A libc/include/llvm-libc-types/Elf64_Lword.h
    A libc/include/llvm-libc-types/Elf64_Nhdr.h
    A libc/include/llvm-libc-types/Elf64_Off.h
    A libc/include/llvm-libc-types/Elf64_Phdr.h
    A libc/include/llvm-libc-types/Elf64_Rel.h
    A libc/include/llvm-libc-types/Elf64_Rela.h
    A libc/include/llvm-libc-types/Elf64_Shdr.h
    A libc/include/llvm-libc-types/Elf64_Sword.h
    A libc/include/llvm-libc-types/Elf64_Sxword.h
    A libc/include/llvm-libc-types/Elf64_Sym.h
    A libc/include/llvm-libc-types/Elf64_Verdaux.h
    A libc/include/llvm-libc-types/Elf64_Verdef.h
    A libc/include/llvm-libc-types/Elf64_Vernaux.h
    A libc/include/llvm-libc-types/Elf64_Verneed.h
    A libc/include/llvm-libc-types/Elf64_Versym.h
    A libc/include/llvm-libc-types/Elf64_Word.h
    A libc/include/llvm-libc-types/Elf64_Xword.h
    M libc/src/__support/OSUtil/linux/CMakeLists.txt
    M libc/src/__support/OSUtil/linux/vdso.cpp
    M libc/startup/linux/CMakeLists.txt
    M libc/startup/linux/do_start.cpp

  Log Message:
  -----------
  [libc] Provide a minimal implementation of elf.h (#172766)

Some of the baremetal users of libc use elf.h to generate coredumps and
we would like to support this use case without needing Linux elf.h.


  Commit: bbcab0bf573ef3c95ca1fa6753c3a30f6f60a5d1
      https://github.com/llvm/llvm-project/commit/bbcab0bf573ef3c95ca1fa6753c3a30f6f60a5d1
  Author: Justin Lebar <justin.lebar at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Analysis/ValueTracking.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineCompares.cpp
    M llvm/test/Transforms/InstCombine/saturating-add-sub.ll

  Log Message:
  -----------
  [InstCombine] Fix i1 ssub.sat compare folding (#173742)

For every type other than i1, ssub.sat x, y = 0 implies x == y.  But
ssub.sat.i1 0, -1 = 0 (because the result of 1 saturates to 0).

The changes to instcombine are not strictly necessary.  Instcombine
canonicalizes the ssub.sat.i1 before we arrive at these pattern-matches.
The real fix is in ValueTracking.

Nonetheless we agreed in review it makes sense to add these checks to
instcombine, even though they're currently unreachable:
https://github.com/llvm/llvm-project/pull/173742#issuecomment-3696631396

This was found by a fuzzer I'm working on!


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

  Changed paths:
    A llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll

  Log Message:
  -----------
  InstCombine: Add baseline tests for fadd SimplifyDemandedFPClass handling (#174852)


  Commit: 150c8b022ccaf0f2e80cd08411bd4b1273c0a6d0
      https://github.com/llvm/llvm-project/commit/150c8b022ccaf0f2e80cd08411bd4b1273c0a6d0
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-profdata/sample-nametable.test

  Log Message:
  -----------
  [ProfData] Temporarily disable sample-nametable.test on hwasan

Similar to 0a45652bc3e58534f48f7f81dfae8b2b991f591a to get the hwasan
bot unblocked for now.


  Commit: 21b3b37dbb0c352dfeadcf27472992ebcbf954d8
      https://github.com/llvm/llvm-project/commit/21b3b37dbb0c352dfeadcf27472992ebcbf954d8
  Author: Justin Fargnoli <jfargnoli at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/test/CodeGen/builtins-nvptx-ptx60.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm103a.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch-O0.ll
    A llvm/test/CodeGen/NVPTX/ptx-version-validation.ll
    M llvm/test/CodeGen/NVPTX/rsqrt.ll
    M llvm/test/CodeGen/NVPTX/sm-version.ll
    M llvm/test/CodeGen/NVPTX/surf-tex.py
    R llvm/test/CodeGen/NVPTX/wmma-ptx86-sm120a.py
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  [NVPTX] Validate user-specified PTX version against SM version (#174834)

When users explicitly specify a PTX version via `-mattr=+ptxNN` that's
insufficient for their target SM, we now emit a fatal error. Previously,
we silently upgraded the PTX version to the minimum required for the
target SM.

When no SM or PTX version is specified, we now use PTX 3.2 (the minimum
for the default SM 3.0) instead of PTX 6.0.


  Commit: 6b674e5605d511ca5b8a7359a648b99506cacf03
      https://github.com/llvm/llvm-project/commit/6b674e5605d511ca5b8a7359a648b99506cacf03
  Author: Deric C. <cheung.deric at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp
    A llvm/test/tools/dxil-dis/switch.ll

  Log Message:
  -----------
  [DirectX] Update DXILValueEnumerator for the new SwitchInst format (#174672)

Fixes #174485

This PR replicates the changes to
`llvm/lib/Bitcode/Writer/ValueEnumerator.cpp` from #170984 into
`llvm/lib/Target/DirectX/DXILWriter/DXILValueEnumerator.cpp` to support
the changes made to the SwitchInst format.

This PR also adds a new dxil-dis test to ensure that SwitchInst is being
successfully written to DXIL.


  Commit: 123259903226125f5e70f3bd6dae4fd799bfe50c
      https://github.com/llvm/llvm-project/commit/123259903226125f5e70f3bd6dae4fd799bfe50c
  Author: fineg74 <61437305+fineg74 at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M offload/liboffload/API/Memory.td
    M offload/liboffload/src/OffloadImpl.cpp
    M offload/plugins-nextgen/level_zero/include/L0Device.h
    M offload/unittests/OffloadAPI/CMakeLists.txt
    A offload/unittests/OffloadAPI/memory/olMemRegister.cpp

  Log Message:
  -----------
  [OFFLOAD] Add memory data locking API for libomptarget migration (#173138)

Add liboffload memory data locking API for libomptarget migration

This PR adds liboffload memory data locking API that needed to make
libomptarget to use liboffload


  Commit: fbde9240e929c841e96eb03daf057204035bac99
      https://github.com/llvm/llvm-project/commit/fbde9240e929c841e96eb03daf057204035bac99
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libcxx/test/benchmarks/algorithms/lexicographical_compare.bench.cpp
    M libcxx/test/benchmarks/bitset.bench.cpp
    M libcxx/test/benchmarks/to_chars.bench.cpp

  Log Message:
  -----------
  [libc++] Remove some low value benchmarks (#175178)

This patch removes some of the benchmarks in our suite that are
relatively low value. Specifically:
- `lexicographical_compare` isn't benchmarked with every number of
    elements between 1 and 8 anymore
- `bitset` isn't benchmarked with as many sizes anymore. Instead, only
    some representative sizes are benchmarked.
- `to_chars` isn't benchmarked for every possible base anymore, but only
    2, 8, 10, 16 and 23 (so we have an uncommon base as well)


  Commit: b595849e7c50a37ae96ca939ff29cb82c2281789
      https://github.com/llvm/llvm-project/commit/b595849e7c50a37ae96ca939ff29cb82c2281789
  Author: Teja Alaghari <teja.alaghari at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
    A llvm/test/Transforms/AMDGPU/mbcnt-negative-cases.ll
    A llvm/test/Transforms/AMDGPU/mbcnt-wave32-optimizations.ll
    A llvm/test/Transforms/AMDGPU/mbcnt-wave64-optimizations.ll

  Log Message:
  -----------
  [AMDGPU]: Rewrite mbcnt_lo/mbcnt_hi to work item ID where applicable (#160496)

This PR aims to optimize `llvm.amdgcn.mbcnt.lo` and
`llvm.amdgcn.mbcnt.hi` intrinsic patterns into simpler `workitem.id.x`
operations when work group sizes are known at compile time for
**improving performance of lane ID calculations**.

**visitMbcntLo:**
- Simple replacement: When `workgroup_size == wave_size` → Replace with
`workitem.id.x`
- Bitmask optimization: When work group evenly splits into waves →
Replace with `workitem.id.x & (wave_size - 1)`

**visitMbcntHi:**
- Copy optimization: On wave32, `mbcnt.hi(mask, val)` → `val` (upper 32
bits are always 0)
- Full pattern optimization: `mbcnt.hi(~0, mbcnt.lo(~0, 0))` → Replace
with `workitem.id.x`


**Example 1: Simple Replacement**
```llvm
; Before:
%a = call i32 @llvm.amdgcn.mbcnt.lo(i32 -1, i32 0); With workgroup_size = 32
; After:
%a = call i32 @llvm.amdgcn.workitem.id.x()
```

**Example 2: Bitmask Optimization**
```llvm
; Before:
%a = call i32 @llvm.amdgcn.mbcnt.lo(i32 -1, i32 0); With workgroup_size = 64 (2 waves)
; After:
%tid = call i32 @llvm.amdgcn.workitem.id.x()
%a = and i32 %tid, 31
```

**Example 3: Copy Optimization**
```llvm
; Before:
%a = call i32 @llvm.amdgcn.mbcnt.hi(i32 -1, i32 %val); With workgroup_size = 32
ret i32 %a
; After:
ret i32 %val
```

**Example 4: Full Pattern Optimization**
```llvm
; Before:
%a = call i32 @llvm.amdgcn.mbcnt.lo(i32 -1, i32 0)
%b = call i32 @llvm.amdgcn.mbcnt.hi(i32 -1, i32 %a); With workgroup_size = 64
; After:
%b = call i32 @llvm.amdgcn.workitem.id.x()

; Before:
%a = call i32 @llvm.amdgcn.mbcnt.lo(i32 -1, i32 0)
%b = call i32 @llvm.amdgcn.mbcnt.hi(i32 -1, i32 %a); With workgroup_size = 48 (Partial mask)
; After:
%tid = call i32 @llvm.amdgcn.workitem.id.x()
%b = and i32 %tid, 31
```


  Commit: 9007f1dd459e76c2818a8b32e8661dad90a60e70
      https://github.com/llvm/llvm-project/commit/9007f1dd459e76c2818a8b32e8661dad90a60e70
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/include/elf.yaml

  Log Message:
  -----------
  [libc] Fix a typo in DT_BIND_NOW macro name (#175619)

This was accidentally introduced in #172766.


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

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

  Log Message:
  -----------
  [VPlan] Check for store group once in VPInterleaveBase() (NFC)

Avoid repeated check as suggeted independently in
https://github.com/llvm/llvm-project/pull/172758.


  Commit: 9f0d0bbaf4f43578dcd07531bf04ad63c61feecb
      https://github.com/llvm/llvm-project/commit/9f0d0bbaf4f43578dcd07531bf04ad63c61feecb
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86FixupSetCC.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/DebugInfo/X86/x86fixupsetcc-debug-instr-num.mir

  Log Message:
  -----------
  [X86][NewPM] Port x86-fixup-setcc (#175609)

Similar to other portings, except this time we do not refactor to an
impl since there is a single runOnMachineFunction definition that can
easily be made static. Test coverage added.


  Commit: b4df4695f747dee93218f30a4bd519f928e1945d
      https://github.com/llvm/llvm-project/commit/b4df4695f747dee93218f30a4bd519f928e1945d
  Author: Artem Belevich <tra at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Cuda.h
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    A clang/test/Driver/cuda-arch-list.cu

  Log Message:
  -----------
  [CUDA] Implement __CUDA_ARCH_LIST__ macro and refactor architecture helpers (#175260)

Closes #172937
https://docs.nvidia.com/cuda/cuda-compiler-driver-nvcc/#virtual-architecture-macros

> The architecture list macro `__CUDA_ARCH_LIST__` is a list of
comma-separated `__CUDA_ARCH__` values for each of the virtual
architectures specified in the compiler invocation. The list is sorted
in numerically ascending order.

Note that unlike NVCC which defines the macro for all C/C++/CUDA
compilations done with nvcc, clang defines the macro *only* for CUDA
compilations.


  Commit: 0c9919d7ea520a0ba9391c96e99a6959997e805d
      https://github.com/llvm/llvm-project/commit/0c9919d7ea520a0ba9391c96e99a6959997e805d
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    R llvm/test/Transforms/AMDGPU/mbcnt-negative-cases.ll
    R llvm/test/Transforms/AMDGPU/mbcnt-wave32-optimizations.ll
    R llvm/test/Transforms/AMDGPU/mbcnt-wave64-optimizations.ll
    A llvm/test/Transforms/InstCombine/AMDGPU/mbcnt-negative-cases.ll
    A llvm/test/Transforms/InstCombine/AMDGPU/mbcnt-wave32-optimizations.ll
    A llvm/test/Transforms/InstCombine/AMDGPU/mbcnt-wave64-optimizations.ll

  Log Message:
  -----------
  AMDGPU: Move test to correct place

Fixes test location from b595849e7c50a37ae96ca939ff29cb82c2281789


  Commit: 496824017e04b0452c8491aaed5656a909f04c3d
      https://github.com/llvm/llvm-project/commit/496824017e04b0452c8491aaed5656a909f04c3d
  Author: Kim Gräsman <kim.grasman at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  Remove CXXRecordDecl printer FIXME (#175397)

It suggested it would be better to print attributes before the decl
kind, to be consistent with value declarations.

But attributes are not accepted by the language before the decl kind:

    [[deprecated]] class A;
    __attribute__((deprecated)) class A;
    __declspec(deprecated) class A;

are all invalid or ignored. The only way to put an attribute before the
decl kind is with something like:

    [[deprecated]] struct A {} a;

But that declares a variable, not a record tyoe, and will be correctly
handled by the variable decl printer.


  Commit: 47f744ac15bfda664e11fda0b45152780948274e
      https://github.com/llvm/llvm-project/commit/47f744ac15bfda664e11fda0b45152780948274e
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86LowerTileCopy.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-lower-tile-copy (#175625)

Similar to other portings. No specific test coverage as there are no
MIR->MIR tests that exercise this pass.


  Commit: 9f6f16563f4c62ec3a997a4478ab8c8ccdab7d35
      https://github.com/llvm/llvm-project/commit/9f6f16563f4c62ec3a997a4478ab8c8ccdab7d35
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Interpreter/BUILD.gn

  Log Message:
  -----------
  [gn] port 19317ad1d91e


  Commit: dbe3e9b019237f381081a90966df514dfd0d9407
      https://github.com/llvm/llvm-project/commit/dbe3e9b019237f381081a90966df514dfd0d9407
  Author: Nico Weber <thakis at chromium.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/Interpreter/BUILD.gn

  Log Message:
  -----------
  [gn] Skip most interpreter tests for now

A recent change made it so that the orc runtime is required now.
This is likely to be addressed (since it also breaks CMake users
that don't build the orc runtime), so this disabling quite a few
tests seems alright.


  Commit: 7d96b39c4f15d34c452a64a2d4f5e53eee757e27
      https://github.com/llvm/llvm-project/commit/7d96b39c4f15d34c452a64a2d4f5e53eee757e27
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericCycleInfo.h
    M llvm/include/llvm/DebugInfo/DWARF/DWARFTypePrinter.h
    M llvm/include/llvm/IR/ModuleSummaryIndex.h
    M llvm/lib/Analysis/CFGSCCPrinter.cpp
    M llvm/lib/Analysis/CallGraph.cpp
    M llvm/lib/Analysis/InlineAdvisor.cpp
    M llvm/lib/Analysis/ScalarEvolution.cpp
    M llvm/lib/CodeGen/TargetInstrInfo.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFUnwindTablePrinter.cpp
    M llvm/lib/DebugInfo/GSYM/InlineInfo.cpp
    M llvm/lib/DebugInfo/GSYM/LineTable.cpp
    M llvm/lib/FileCheck/FileCheck.cpp
    M llvm/lib/Frontend/HLSL/HLSLRootSignature.cpp
    M llvm/lib/MC/MCInstPrinter.cpp
    M llvm/lib/Transforms/IPO/MemProfContextDisambiguation.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/tools/llvm-config/llvm-config.cpp
    M llvm/tools/llvm-exegesis/lib/Analysis.cpp
    M llvm/utils/TableGen/Common/PredicateExpander.cpp

  Log Message:
  -----------
  [NFC][LLVM] Adopt ListSeparator/interleaved in more places (#172909)

Adopt `ListSeparator` and `interleaved` in various places instead of
manual code to print separators between loop iterations.


  Commit: b76c84e70f4fb420b26b3887d9270fdb90d41933
      https://github.com/llvm/llvm-project/commit/b76c84e70f4fb420b26b3887d9270fdb90d41933
  Author: Krish Gupta <krishom70 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/check-omp-loop.cpp
    M flang/test/Semantics/OpenMP/cray-pointer-usage.f90
    M flang/test/Semantics/OpenMP/linear-clause01.f90
    M flang/test/Semantics/OpenMP/linear-iter.f90
    A flang/test/Semantics/OpenMP/simd-linear-array.f90

  Log Message:
  -----------
  [flang][OpenMP] Fix crash when arrays used in LINEAR clause (#175383)

Closes #171007

Found this crash while testing OpenMP code - turns out putting an array
in a LINEAR clause on SIMD directives causes the compiler to blow up
with "unknown LLVM dialect type" and hit an UNREACHABLE.

The issue is that LINEAR clauses only accept scalar variables (rank 0),
but we weren't checking for that early enough. The invalid array type
would slip through semantic analysis and then crash during MLIR to LLVM
IR translation when it tried to convert the type.

**What changed:**
- Added a rank check in the LINEAR clause validation to catch arrays up
front
- Made an exception for `declare simd` with the REF modifier since
that's actually allowed per spec
- Added tests covering different array types (1D, multi-dim,
assumed-shape)
- Updated existing tests that now catch the new error

Tested with the original reproducer and it now fails cleanly with a
proper error message instead of crashing.


  Commit: d514b32c239570e3eeb8ca0cca43338923904c99
      https://github.com/llvm/llvm-project/commit/d514b32c239570e3eeb8ca0cca43338923904c99
  Author: mcbarton <matthew.c.barton at hotmail.co.uk>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M .github/workflows/ids-check.yml

  Log Message:
  -----------
  Fix syntax error in ids-check.yml workflow (#175629)

[petrhosek](https://github.com/petrhosek) commented on this PR went in
https://github.com/llvm/llvm-project/pull/172673#issuecomment-3740109442
that the ids check workflow has a syntax error in it. After looking at
the workflow, it appears to be missing - on the uses lines. After this
change and having looked at the file in Githubs file editor, no syntax
error red lines are now appearing so this should fix it.


  Commit: dae3b49cba8d5831ccd93397c36af0c8e51e7ab1
      https://github.com/llvm/llvm-project/commit/dae3b49cba8d5831ccd93397c36af0c8e51e7ab1
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M offload/include/Shared/Debug.h
    M offload/include/Shared/EnvironmentVar.h
    M offload/plugins-nextgen/common/include/MemoryManager.h
    M offload/plugins-nextgen/common/include/PluginInterface.h
    M offload/plugins-nextgen/common/src/GlobalHandler.cpp
    M offload/plugins-nextgen/common/src/PluginInterface.cpp
    M offload/plugins-nextgen/host/dynamic_ffi/ffi.cpp
    M offload/plugins-nextgen/host/src/rtl.cpp
    M offload/plugins-nextgen/level_zero/include/L0Trace.h
    M offload/plugins-nextgen/level_zero/src/L0Context.cpp
    M offload/plugins-nextgen/level_zero/src/L0Device.cpp
    M offload/plugins-nextgen/level_zero/src/L0DynWrapper.cpp
    M offload/plugins-nextgen/level_zero/src/L0Kernel.cpp
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp
    M offload/plugins-nextgen/level_zero/src/L0Options.cpp
    M offload/plugins-nextgen/level_zero/src/L0Plugin.cpp
    M offload/plugins-nextgen/level_zero/src/L0Program.cpp

  Log Message:
  -----------
  [Offload] Update debug message printig in the plugins (#175205)

* Prepare a set of debug types in llvm::offload::debug to be used in
plugin code
* Update debug messages in the plugins


  Commit: 38cb7ddca295f46ad0962be8aae9f8e58c0d68f8
      https://github.com/llvm/llvm-project/commit/38cb7ddca295f46ad0962be8aae9f8e58c0d68f8
  Author: Julian Pokrovsky <raventid at users.noreply.github.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    M llvm/test/Transforms/VectorCombine/X86/shuffle-of-fma-const.ll

  Log Message:
  -----------
  [VectorCombine] foldPermuteOfIntrinsic - support multiple uses of shuffled ops (#175299)

Fixes #173039


  Commit: c152a0b9b08281c3dc9a16da2d5d4d54928eab55
      https://github.com/llvm/llvm-project/commit/c152a0b9b08281c3dc9a16da2d5d4d54928eab55
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86SuppressAPXForReloc.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/test/CodeGen/X86/apx/reloc.mir

  Log Message:
  -----------
  [X86][NewPM] Port x86-suppress-apx-for-relocation (#175634)

Standard porting. No impl class was used as it was easy enough to just
rename the original runOnMachineFunction impl and make it static.


  Commit: 564c0c169f8a5bc363dbb076eaa0c05849f375cd
      https://github.com/llvm/llvm-project/commit/564c0c169f8a5bc363dbb076eaa0c05849f375cd
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [VPlan] Cache other type for VPWidenRecipe with Select opcode (NFC).

Add back caching + assertions after landing
https://github.com/llvm/llvm-project/pull/174234.


  Commit: 0815ed34b8109db89330883ecb42dd6dd251b763
      https://github.com/llvm/llvm-project/commit/0815ed34b8109db89330883ecb42dd6dd251b763
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx10-constant-bus.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop1.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop2.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vop3.s
    M llvm/test/MC/AMDGPU/gfx10_asm_vopc_e64.s
    M llvm/test/MC/AMDGPU/gfx11_asm_operands.s
    M llvm/test/MC/AMDGPU/lds_direct-gfx10.s
    M llvm/test/MC/AMDGPU/literalv216.s
    M llvm/test/MC/AMDGPU/wave32.s

  Log Message:
  -----------
  [AMDGPU] Generate checks for a few more MC tests (#175640)


  Commit: 70bd0e227393b1f4fb31dc4976126bcfdddc4537
      https://github.com/llvm/llvm-project/commit/70bd0e227393b1f4fb31dc4976126bcfdddc4537
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86FixupVectorConstants.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-fixup-vector-constants (#175622)

Similar to other portings. No new test coverage because there are no
passes that even start/stop at this pass, much less capture only a
MIR->MIR transformation.


  Commit: 57e4ff268143f5ff4d01d4a6e6796e7c0e6cd037
      https://github.com/llvm/llvm-project/commit/57e4ff268143f5ff4d01d4a6e6796e7c0e6cd037
  Author: Lily Gorsheneva <bgorshenev at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for e289b2e (#175642)


  Commit: 55ba30bd37c8d8694581cbf0819b0158398f5e7d
      https://github.com/llvm/llvm-project/commit/55ba30bd37c8d8694581cbf0819b0158398f5e7d
  Author: Anonmiraj <ezzibrahimx at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M libc/src/math/docs/add_math_function.md

  Log Message:
  -----------
  [libc] update add_math_function.md to reflect __support/math refactor (#175500)

Updated the math guide to reflect the recent refactor

closes #175371.


  Commit: 5334c5148637dc58ae0e527b7b2c7c0569542271
      https://github.com/llvm/llvm-project/commit/5334c5148637dc58ae0e527b7b2c7c0569542271
  Author: Kirill Pertsev <kika at kikap.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/BasicBlock.h
    M llvm/lib/Transforms/InstCombine/InstCombinePHI.cpp
    M llvm/lib/Transforms/Scalar/SROA.cpp

  Log Message:
  -----------
  [IR][InstCombine] Fix O(n^2) complexity in SliceUpIllegalIntegerPHI (#175468)

Add a hasInsertionPt() helper, which is equivalent to
getFirstInsertionPt() != end(), but performs the check in O(1) instead
of O(n). In particular, this avoids quadratic complexity inside
SliceUpIllegalIntegerPHI().

Fixes #175465.
Should fix https://github.com/rust-lang/rust/issues/129713.


  Commit: 3cfae43d07a478cbf75454419842824d62aedd40
      https://github.com/llvm/llvm-project/commit/3cfae43d07a478cbf75454419842824d62aedd40
  Author: DannyDaoBoYang <daobo.yang41 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/test/CIR/CodeGenBuiltins/X86/avx512bw-builtins.c
    M clang/test/CIR/CodeGenBuiltins/X86/avx512f-builtins.c

  Log Message:
  -----------
  [CIR] Add support for X86 pmovqd512_mask and pmovwb512_mask builtins (#173802)

-Add CIR support for pmovqd512_mask.
-In addition, I noticed pmovwb512_mask uses identical
truncation-and-selection logic
[X86.cpp.](https://github.com/llvm/llvm-project/blob/main/clang/lib/CodeGen/TargetBuiltins/X86.cpp#L1638),
so I added support for pmovwb512_mask using the same logic.
-Added a new LIT test case in
clang/test/CIR/CodeGen/pmovqd-mask-builtins.c to verify correct CIR
generation for both builtins.
-Added a type cast fix in CirGenCleanup.cpp where std::max encountered a
type mismatch between size_t and unsigned long on Win64. This caused
compile error on Windows for me while building it. Edit: This fix has
been moved to here https://github.com/llvm/llvm-project/pull/174519

This is my first request to this repo. If you noticed anything wrong
please comment and I'm looking forward for corrections.

Addresses #167765


  Commit: ba76e02d671157c438aa725b0d550c7c31972909
      https://github.com/llvm/llvm-project/commit/ba76e02d671157c438aa725b0d550c7c31972909
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/SelectionDAGISel.h
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAGISel.cpp
    M llvm/utils/TableGen/DAGISelMatcherEmitter.cpp

  Log Message:
  -----------
  [SelectionDAGISel] Remove unused opcodes. NFC (#175621)

Nodes with 0 results should always have OPFL_Chain. We don't need other
CompressedNodeInfo opcodes for 0 results.


  Commit: a76dbdd2685553e5a219c06f06e40438c9dad9ad
      https://github.com/llvm/llvm-project/commit/a76dbdd2685553e5a219c06f06e40438c9dad9ad
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/include/lldb/API/SBSymbol.h
    M lldb/include/lldb/Symbol/Symbol.h
    M lldb/include/lldb/lldb-defines.h
    M lldb/source/API/SBSymbol.cpp

  Log Message:
  -----------
  [lldb] Change SBSymbol::GetID() to return LLDB_INVALID_SYMBOL_ID for invalid symbols (#175545)

Return UINT32_MAX instead of 0 when SBSymbol has no underlying symbol,
since 0 is a valid symbol ID.
This makes it possible to distinguish between a valid symbol with ID 0
and an invalid/uninitialised symbol.

From
https://github.com/llvm/llvm-project/pull/172687#discussion_r2628319927


  Commit: 7275248f41c95229c000af18bb44d15ac3c36d1d
      https://github.com/llvm/llvm-project/commit/7275248f41c95229c000af18bb44d15ac3c36d1d
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 27cbe6e8f6c7


  Commit: 9cd7908d5f8beceb1756a32cd8b7f3946a29d428
      https://github.com/llvm/llvm-project/commit/9cd7908d5f8beceb1756a32cd8b7f3946a29d428
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 564f2be43f81


  Commit: 37ac7842a35096e54016614dfc962984c4d881a2
      https://github.com/llvm/llvm-project/commit/37ac7842a35096e54016614dfc962984c4d881a2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/lib/Headers/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 5c4324326d77


  Commit: 0fedcf9fbcadff47c8e747c844b2ec3bbab53bfb
      https://github.com/llvm/llvm-project/commit/0fedcf9fbcadff47c8e747c844b2ec3bbab53bfb
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/Target/RISCV/BUILD.gn

  Log Message:
  -----------
  [gn build] Port 67601a43b57a


  Commit: e4d2e4c27bb81f45c6e2385e87caff29b0e61da5
      https://github.com/llvm/llvm-project/commit/e4d2e4c27bb81f45c6e2385e87caff29b0e61da5
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/clang/unittests/Serialization/BUILD.gn

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


  Commit: be518278fdb8c46a0d25268afe81e04370f49cc2
      https://github.com/llvm/llvm-project/commit/be518278fdb8c46a0d25268afe81e04370f49cc2
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/lib/ExecutionEngine/Orc/BUILD.gn

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


  Commit: a062249932f8b41f9c188ef9189d5a11552ab1b8
      https://github.com/llvm/llvm-project/commit/a062249932f8b41f9c188ef9189d5a11552ab1b8
  Author: hidekisaito <hidekido at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-ds-prefetch-pattern.ll
    A llvm/test/CodeGen/AMDGPU/waitcnt-loop-opt.mir

  Log Message:
  -----------
  [AMDGPU] Add DS loop waitcnt optimization for GFX12+ (#172728)

Add support for flushing DS_CNT in loop preheaders when the loop uses
values that were DS-loaded outside the loop. This is similar to the
existing VMEM loop optimization.

Assisted-by: Cursor / claude-4.5-opus-high


  Commit: 62c97aa5194bf93e771d14f86efeedb5353035d2
      https://github.com/llvm/llvm-project/commit/62c97aa5194bf93e771d14f86efeedb5353035d2
  Author: Sirraide <aeternalmail at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/CodeGen/ModuleBuilder.h
    M clang/lib/CodeGen/CodeGenAction.cpp
    M clang/lib/CodeGen/ModuleBuilder.cpp
    M clang/tools/clang-import-test/clang-import-test.cpp
    M clang/unittests/CodeGen/TestCompiler.h
    M lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp

  Log Message:
  -----------
  [Clang] Improve CodeGenerator API a bit (#175239)

Essentially, figuring out how to use `CodeGenerator` was very confusing
to me and I figured the API could be improved a bit, so:
- the `CodeGenerator` ctor is now protected since an instance of
`CodeGenerator` that is not a `CodeGeneratorImpl` is a bit useless (and
deriving from it and implementing it yourself honestly just defeats the
point of using this to begin with);
- `ReleaseModule()` releases ownership of the module, so it should
return a `unique_ptr`;
- `CreateLLVMCodeGen()` also returns a `unique_ptr` now;
- added a `CreateLLVMCodeGen()` overload that takes a
`CompilerInstance&` and uses some of its state instead of requiring the
user to pass everything in manually; this is consistent w/ other parts
of our API, and most uses of this function in the codebase can be
refactored to use that overload instead (and a code search I did also
showed that a lot of people that use this API also just use the state
from a `CompilerInstance`).

I should have liked to replace `CreateLLVMCodeGen` w/
`CodeGenerator::Create`, but there are a lot of uses of
`CreateLLVMCodeGen()` in the wild, so the only thing we could do is keep
`CreateLLVMCodeGen()` and deprecate it, and at that point I don’t think
it’s really worth it; I added a comment to the `CodeGenerator()`
constructor declaration that points to it though.

Fixes #172169.


  Commit: d07062acd4bb10c5c5664c85af04f0822184b971
      https://github.com/llvm/llvm-project/commit/d07062acd4bb10c5c5664c85af04f0822184b971
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/tools/clang-nvlink-wrapper/ClangNVLinkWrapper.cpp

  Log Message:
  -----------
  [Clang] Fix warning on device debugging when passing `-O0` (#175628)

Summary:
CUDA's Toolchain doesn't support debug information with optimizations,
so we warn on this. The logic was printing this even if you pass `-O0`
yourself. Also fix not passing `-g`.


  Commit: c259ed51a38277c4d22ab2ac8260327170aa0700
      https://github.com/llvm/llvm-project/commit/c259ed51a38277c4d22ab2ac8260327170aa0700
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp

  Log Message:
  -----------
  [lldb][NativePDB] NFC: Remove Clang-specific typedef handling (#175623)

Missed this one in https://github.com/llvm/llvm-project/pull/173111

Also tweaks `PdbAstBuilder::ToCompilerType` to make it more clear that
the change is correct and take advantage of asserts in `TypeSystemClang`

This is part of the work to allow language-agnostic `PdbAstBuilder` (see
RFC:
https://discourse.llvm.org/t/rfc-lldb-make-pdbastbuilder-language-agnostic/89117)


  Commit: b491241734137ee6b6b8e483fceb7d755b200639
      https://github.com/llvm/llvm-project/commit/b491241734137ee6b6b8e483fceb7d755b200639
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/git/github-automation.py

  Log Message:
  -----------
  [utils][git] Skip subscribers for PRs labeled as skip-precommit-approval (#174819)

skip-precommit-approval label is intended for simple PR that don't
require approval. To reduce the volume of notifications, avoid sending
notifications to subscribers for PRs labeled as such.


  Commit: 71293e4495589e3ab1f8a9ff625a139da4ed3f1f
      https://github.com/llvm/llvm-project/commit/71293e4495589e3ab1f8a9ff625a139da4ed3f1f
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M compiler-rt/test/lsan/TestCases/swapcontext.cpp

  Log Message:
  -----------
  [lsan] Fix flaky test in swapcontext.cpp (#175635)

LSan, by design, can have false negatives, making it unreliable to check
that the leak was found in the stack-allocated case:
```
==123685==Scanning STACK range 0x7ffe6e554ca0-0x7ffe6e557000.
==123685==0x7ffe6e554de0: found 0x51e0000009f0 pointing into chunk 0x51e000000000-0x51e000000c00 of size 3072.
==123685==0x7ffe6e554e30: found 0x51e000000c00 pointing into chunk 0x51e000000c00-0x51e000001668 of size 2664. <- this prevented the leak from being found
```

This has led to flakiness on the buildbots e.g.,
https://lab.llvm.org/buildbot/#/builders/66/builds/24669
```
# | /home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/test/lsan/TestCases/swapcontext.cpp:44:11: error: CHECK: expected string not found in input
# | // CHECK: SUMMARY: {{.*}}Sanitizer: 2664 byte(s) leaked in 1 allocation(s)
...
Failed Tests (2):
  LeakSanitizer-HWAddressSanitizer-x86_64 :: TestCases/swapcontext.cpp
  LeakSanitizer-Standalone-x86_64 :: TestCases/swapcontext.cpp
```

This patch fixes the issue by clearing the buffer, as suggested by
Vitaly.


  Commit: 12131c9f8dfa98282886872db5859c319d590092
      https://github.com/llvm/llvm-project/commit/12131c9f8dfa98282886872db5859c319d590092
  Author: Leonard Grey <leonard at leonardgrey.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.cpp
    M lldb/source/Plugins/SymbolFile/NativePDB/PdbAstBuilder.h
    M lldb/source/Plugins/SymbolFile/NativePDB/SymbolFileNativePDB.cpp

  Log Message:
  -----------
  [lldb][NativePDB] NFC: Add language-agnostic hooks for AST population (#175624)

Currently, `SymbolFileNativePDB` calls several `PdbAstBuilder` methods
for side-effects to ensure the AST is populated.

This change adds new void-returning methods for `SymbolFileNativePDB` to
use as a hook instead, so that it doesn't depend on Clang-specific parts
of `PdbAstBuilder`'s interface.

This is part of the work to allow language-agnostic `PdbAstBuilder` (see
RFC:
https://discourse.llvm.org/t/rfc-lldb-make-pdbastbuilder-language-agnostic/89117)


  Commit: 55e7a89fd31778ebbae4184f8141901dbb93d3a4
      https://github.com/llvm/llvm-project/commit/55e7a89fd31778ebbae4184f8141901dbb93d3a4
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp
    M llvm/lib/Target/X86/X86TileConfig.cpp
    M llvm/test/CodeGen/X86/AMX/amx-greedy-ra.ll

  Log Message:
  -----------
  [X86][NewPM] Port x86-tile-config (#175647)

Standard porting. Use callbacks to get the needed analyses to make the
pass portable between Legacy/New PMs and to prevent computing anything
if we do not have any AMX registers in the function. No test coverage
for now as amx-greedy-ra.ll is the only test that references this pass
and needs pass pipeline setup in order to work which I plan on getting
to this week.


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

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

  Log Message:
  -----------
  [VPlan] Merge Select with previous cases in ::computeCost (NFC).

Merge cases calling the same helper, as suggested post-commit in
https://github.com/llvm/llvm-project/pull/174234


  Commit: fa36b0cdb0aa47a42357672a33ca5b3467c557b5
      https://github.com/llvm/llvm-project/commit/fa36b0cdb0aa47a42357672a33ca5b3467c557b5
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystemClang] Simplify TypeSystemClang::IsEnumerationType implementation (#175560)

We were calling into `IsIntegerType` to determine the signedness of the
enum. Calling the relevant `clang::Type` API is simpler.

This shouldn't have any observable behaviour change.

We were lacking unit-test coverage for this. Added some tests that pass
before and after this change.


  Commit: 5c764b4e3c4255d85dffefa441f2fa456b19dfde
      https://github.com/llvm/llvm-project/commit/5c764b4e3c4255d85dffefa441f2fa456b19dfde
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Support/KnownFPClass.h

  Log Message:
  -----------
  KnownFPClass: Make LLVM_ABI checker happy (#175654)

Warned on PRs that happened to touch nearby lines.


  Commit: 496729fe7e711a99056465e59bf8a0d6c254b62b
      https://github.com/llvm/llvm-project/commit/496729fe7e711a99056465e59bf8a0d6c254b62b
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp

  Log Message:
  -----------
  [Offload] Fix level_zero plugin build (#175664)

Build has been broken when OMPTARGET_DEBUG is undefined.


  Commit: 0828533645b2d80ed1abb875367c696e8827c6e5
      https://github.com/llvm/llvm-project/commit/0828533645b2d80ed1abb875367c696e8827c6e5
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86PreTileConfig.cpp
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-pre-tile-config (#175649)

Standard pass porting. Used callbacks to get MLI so we do not compute it
in the common case where we have no AMX registers. Also moved the call
to releaseMemory into runOnMachineFunction through a scope exit rather
than calling it through the pass manager so we can get consistent
behavior across both PMs. No test coverage added in this one as we also
need x86-tile-config to be able to run any tests.


  Commit: 1023f91d3d85161fed9a71aa6630c8cd9a0f0e27
      https://github.com/llvm/llvm-project/commit/1023f91d3d85161fed9a71aa6630c8cd9a0f0e27
  Author: Chenguang Wang <w3cing at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [llvm][RISCV] Suppress unused `IsMulH` warning. (#175653)

Introduced in commit d28daddd. `IsMulH` is only used in assert(), and
triggers unused variable warnings in non-debug builds.


  Commit: 44df98e963d7853274a2225140dcdc3acb2fcb49
      https://github.com/llvm/llvm-project/commit/44df98e963d7853274a2225140dcdc3acb2fcb49
  Author: Andy Kaylor <akaylor at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    M clang/test/CIR/CodeGen/goto.cpp
    M clang/test/CIR/CodeGen/pointers.cpp
    M clang/test/CIR/CodeGen/switch.cpp
    M clang/test/CIR/CodeGen/ternary.cpp
    M clang/test/CIR/Lowering/goto.cir
    M clang/test/CIR/Transforms/canonicalize.cir

  Log Message:
  -----------
  [CIR] Implement simple folding for unary operations (#174882)

This extends the UnaryOp folder to handle plus, minus, and not
operations on constant operands.

This is in preparation for a change that will attempt to fold these
unary operations as they are generated, but this change only performs
the folding via the cir-canonicalize pass.


  Commit: 014d2b9d9f187eb071d8d8f84782c5616e9d0e11
      https://github.com/llvm/llvm-project/commit/014d2b9d9f187eb071d8d8f84782c5616e9d0e11
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][TypeSystem] Call Type::isIntegralType from TypeSystemClang::IsIntegerType (#175669)

Instead of re-implementing `Type::isIntegralType`, call it explicitly.

This means we get support for `BitIntType` out-of-the-box.

We don't use `IsIntegerType` here because we want to abide by the
language-specific notions of an integer type (which differ between C++
and C).

The slight behaviour change here is that `IsIntegerType` will now treat
complete enumerations as integers in C. This is correct according to the
C standard.


  Commit: 1c8627fbf32c2ecc3500b66e9ebf574d935650c1
      https://github.com/llvm/llvm-project/commit/1c8627fbf32c2ecc3500b66e9ebf574d935650c1
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/CMakeLists.txt
    M flang/lib/Evaluate/fold-real.cpp
    M llvm/include/llvm/ADT/SmallVector.h

  Log Message:
  -----------
  [llvm][flang] Silence warning, resume -Werror builds of flang (#175053)

Add (void) uses of two parameters to dodge a C++ compiler warning that
has broken -Werror builds of flang since 9-28-25, and restore that
option as the default for flang builds.


  Commit: 3fe94ab4d6aa936c4f8a4bbdd25d1da47d112265
      https://github.com/llvm/llvm-project/commit/3fe94ab4d6aa936c4f8a4bbdd25d1da47d112265
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/docs/Extensions.md

  Log Message:
  -----------
  [flang][NFC] Document that the integrity of parentheses is not violated (#175071)

Add language to flang/docs/Extensions.md to explain why "A+(B*C)" must
round the result of the multiplication, when REAL and the -ffast-math
option is not used.


  Commit: 3874c4541a2e7fe044f02cda962657be35314deb
      https://github.com/llvm/llvm-project/commit/3874c4541a2e7fe044f02cda962657be35314deb
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Semantics/bug175207.f90

  Log Message:
  -----------
  [flang] Handle useless NAMELIST in interface block (#175214)

NAMELIST has no useful purpose in an interface block, but it's allowed.
Fix a crash due to our deferred handling of NAMELIST groups in the
execution part (which doesn't exist in an interface block).

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


  Commit: a8ba9c4fa2ae1ae80738e7848c28c19a9aa564da
      https://github.com/llvm/llvm-project/commit/a8ba9c4fa2ae1ae80738e7848c28c19a9aa564da
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang-rt/lib/runtime/sum.cpp
    M flang-rt/unittests/Runtime/Reduction.cpp
    M flang/include/flang/Evaluate/complex.h
    M flang/include/flang/Evaluate/real.h
    M flang/lib/Evaluate/complex.cpp
    M flang/lib/Evaluate/fold-matmul.h
    M flang/lib/Evaluate/fold-real.cpp
    M flang/lib/Evaluate/fold-reduction.h
    M flang/lib/Evaluate/real.cpp
    A flang/test/Evaluate/bug89528.f90

  Log Message:
  -----------
  [flang] Fix spurious NaN  result from infinite Kahan summation (#175373)

There are six instances of Kahan's extended precision summation
algorithm in flang/flang-rt, and they share a bug: the calculation of
the correction value produces a Nan due to the subtraction Inf-Inf after
the accumulation saturates to Inf. This leads to the surprising Nan
result from SUM([Inf, 0.]).

This bug doesn't affect run-time calculation of SUM when optimization is
enabled -- lowering emits an open-coded SUM that lacks Kahan summation
-- but it does affect compilation-time folding and -O0 runtime results.

Fix the one instance of Kahan summation in the runtime, and consolidate
the other five instances in Evaluate into one new member function, also
corrected.

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


  Commit: 5e256017baf909fa66177fcd71bc00cb6d5dbc1c
      https://github.com/llvm/llvm-project/commit/5e256017baf909fa66177fcd71bc00cb6d5dbc1c
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/mod-file.cpp
    A flang/test/Semantics/modfile82.f90

  Log Message:
  -----------
  [flang] Add missing module file hashes (#175636)

The compiler emits "!need$" lines to module files only for modules
needed by the module's outermost scope, but misses dependences on other
modules that might be USE'd in inner scopes.

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


  Commit: af4427d5a4296d5a00795b76e3114bee546c8339
      https://github.com/llvm/llvm-project/commit/af4427d5a4296d5a00795b76e3114bee546c8339
  Author: Tom Stellard <tstellar at redhat.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M .github/workflows/commit-access-review.yml
    A .github/workflows/commit-create-issue.py

  Log Message:
  -----------
  workflows/commit-access-review: Automatically create the issue (#175400)

We had been doing this manually, and this will be a lot more convenient.


  Commit: 552a696a711a48d4fea2027322cdd866f03b80cf
      https://github.com/llvm/llvm-project/commit/552a696a711a48d4fea2027322cdd866f03b80cf
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    R llvm/test/ExecutionEngine/JITLink/AArch64/backtrace-symbolication.s

  Log Message:
  -----------
  [llvm-jitlink] Remove flaky testcase. (#175680)

On some systems, backtraces contain addresses with their high bits set*.
These high bits prevent symbolication using the JIT symbol table. Since
this test is for a best-effort debugging / diagnosis tool it seems best
to remove the test until/unless we can get it passing on all systems, or
find some way to identify systems that will fail.

See discussion in https://github.com/llvm/llvm-project/pull/175537.

* Note that the test does not use PAC or pointer tagging -- the high
bits are coming from somewhere else. Possibly libunwind, but that is
just speculation.


  Commit: 393ba8c0dc98781ea2ada8e16c6c1f77d22008f7
      https://github.com/llvm/llvm-project/commit/393ba8c0dc98781ea2ada8e16c6c1f77d22008f7
  Author: mitchell <mitchell.xu2 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Tooling/Tooling.cpp
    M clang/unittests/Tooling/ToolingTest.cpp

  Log Message:
  -----------
  [clang][Tooling] Fix assertion failure when processing CUDA files (#173762)

Running clang-tidy on CUDA files without specifying `--cuda-host-only`
or `--cuda-device-only` would trigger an assertion failure in
`Actions.size() > 1`, a related discussion:
https://github.com/llvm/llvm-project/pull/173699#discussion_r2649279975.

This occurred because the Clang Driver generates a single top-level
`OffloadAction` in `-fsyntax-only`, `-E`, `-M`. This commit removes the
overly strict assertions.

Closes #173777


  Commit: 998e0aed7b132a60a63176ba056df522c296a68a
      https://github.com/llvm/llvm-project/commit/998e0aed7b132a60a63176ba056df522c296a68a
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/test/Semantics/OpenMP/linear-clause01.f90

  Log Message:
  -----------
  [flang] Temporarily disabled a check in a test that was breaking buildbots (#175684)

PR https://github.com/llvm/llvm-project/pull/175383 had breaking test
Semantics/OpenMP/linear-clause01.f90

I disabled problematic part of the test for now to let the builds pass.
I will file the issue for PR author to fix the test.


  Commit: 12ecbfb59b865ab98d1cecd78282e640420617c7
      https://github.com/llvm/llvm-project/commit/12ecbfb59b865ab98d1cecd78282e640420617c7
  Author: Andrew Haberlandt <ahaberlandt at apple.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M compiler-rt/test/lit.common.cfg.py

  Log Message:
  -----------
  [Darwin] [compiler-rt] Normalize DYLD_LIBRARY_PATH to workaround LD bug (#175685)

There is an issue in certain versions of LD which causes the wrong
libLTO to be used if the DYLD_LIBRARY_PATH is not normalized.

Will fix these failures:
```
AddressSanitizer-x86_64-darwin.TestCases/Darwin.odr-lto.cpp
AddressSanitizer-x86_64h-darwin.TestCases/Darwin.odr-lto.cpp
```

https://green.lab.llvm.org/job/llvm.org/job/clang-stage1-cmake-RA-incremental/13428/

rdar://168024431


  Commit: 30596a0b037b4010fa18cd1db64706c018007d7a
      https://github.com/llvm/llvm-project/commit/30596a0b037b4010fa18cd1db64706c018007d7a
  Author: Shilei Tian <i at tianshilei.me>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/AMDGPU.h
    A clang/test/CodeGen/AMDGPU/nullptr-in-different-address-spaces.cpp
    M llvm/include/llvm/Support/AMDGPUAddrSpace.h

  Log Message:
  -----------
  [Clang][AMDGPU] Get correct nullptr value for AS3 and AS5 (#175610)


  Commit: 9596c9242f9511dfb08db3508883b3367c757cd9
      https://github.com/llvm/llvm-project/commit/9596c9242f9511dfb08db3508883b3367c757cd9
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/test/CodeGen/RISCV/zdinx-spill.ll
    A llvm/test/CodeGen/RISCV/zilsd-spill.ll

  Log Message:
  -----------
  [RISCV] Use LD_RV32/SD_RV32 for spills and reloads when Zilsd is enabled (#153595)

We are currently only using `PseudoRV32ZdinxSD/LD` for spills and
reloads when the register class is `GPRPairRegClass` . However, we can
use `LD_RV32/SD_RV32` when the `Zilsd` extension is enabled and certain
alignment requirements are met.


  Commit: 1b69dfeaf88106340937c9950f758792259a9fc4
      https://github.com/llvm/llvm-project/commit/1b69dfeaf88106340937c9950f758792259a9fc4
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M flang/CMakeLists.txt
    M flang/include/flang/Semantics/expression.h

  Log Message:
  -----------
  [flang] Turn -Werror back off for Flang build (#175689)

Different build environments are picking up warnings that my testing
didn't expose; turn -Werror back off.
(And also delete an unused data member that was triggering some MSVC
warnings.)


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

  Changed paths:
    M clang/test/CodeGen/AMDGPU/nullptr-in-different-address-spaces.cpp

  Log Message:
  -----------
  [FIX] Add target requirement in `clang/test/CodeGen/AMDGPU/nullptr-in-different-address-spaces.cpp`


  Commit: c6fc6adb7e32bf6fd77e3e73ad74752881e131fb
      https://github.com/llvm/llvm-project/commit/c6fc6adb7e32bf6fd77e3e73ad74752881e131fb
  Author: Vishruth Thimmaiah <vishruththimmaiah at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/avx512vlvp2intersect-builtins.c
    A clang/test/CIR/CodeGenBuiltins/X86/avx512vp2intersect-builtins.c

  Log Message:
  -----------
  [CIR][X86] Add support for `intersect` builtins (#172554)

adds support for the
`__builtin_ia32_vp2intersect_d`/`__builtin_ia32_vp2intersect_q` x86
builtins.

Part of #167765

---------

Signed-off-by: vishruth-thimmaiah <vishruththimmaiah at gmail.com>


  Commit: 587bac637cd8b8de6a0c0dc793dfbcd19901d106
      https://github.com/llvm/llvm-project/commit/587bac637cd8b8de6a0c0dc793dfbcd19901d106
  Author: Sudharsan Veeravalli <svs at qti.qualcomm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVMakeCompressible.cpp
    M llvm/test/CodeGen/RISCV/make-compressible-xqci.mir

  Log Message:
  -----------
  [RISCV] Adjust base cost for Xqcilo loads/stores in RISCVMakeCompressible (#175572)

We only need two uses in Xqcilo load/store instructions for the base
adjustment to be profitable as compared to three uses in the base
load/store instructions.


  Commit: a9037dc95712236065a38bddc2037d8e28a6df49
      https://github.com/llvm/llvm-project/commit/a9037dc95712236065a38bddc2037d8e28a6df49
  Author: Lang Hames <lhames at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A orc-rt/Maintainers.md

  Log Message:
  -----------
  [orc-rt] Add Maintainers.md. (#175691)


  Commit: 26624d51d136716dcea1786dc6ddac56a34e866e
      https://github.com/llvm/llvm-project/commit/26624d51d136716dcea1786dc6ddac56a34e866e
  Author: Shoreshen <372660931 at qq.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/test/CodeGenOpenCL/amdgpu-cluster-dims.cl
    M clang/test/CodeGenOpenCL/amdgpu-features.cl
    M llvm/lib/Target/AMDGPU/AMDGPU.td
    M llvm/lib/Target/AMDGPU/FLATInstructions.td
    M llvm/lib/Target/AMDGPU/GCNSubtarget.h
    M llvm/lib/TargetParser/TargetParser.cpp

  Log Message:
  -----------
  [AMDGPU]Add specific instruction feature for multicast load (#175503)


  Commit: f9c561b56130db8c41311778b8501683ddd0c1d3
      https://github.com/llvm/llvm-project/commit/f9c561b56130db8c41311778b8501683ddd0c1d3
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/LoopUtils.cpp
    M llvm/test/Transforms/LoopVectorize/AArch64/check-prof-info.ll
    M llvm/test/Transforms/LoopVectorize/branch-weights.ll
    M llvm/unittests/Transforms/Utils/LoopUtilsTest.cpp

  Log Message:
  -----------
  [profcheck] Fix encoding of 0 loopEstimatedTrip count (#174896)

We currently encode an estimated trip count of 0 as the latch having branch probabilities 0-0. That's an invalid pair of weights. The probability of a branch is computed as a fraction of its corresponding weight and the sum of the weights. In fact, `BranchProbabilityInfo::calcMetadataWeights` will convert this to a 1-1, meaning 50% - 50%, which isn't quite what we want. To indicate the loop is never taken, we just need to initialize the exit probability to non-zero (hence, 1)

Related: https://reviews.llvm.org/D67905

Issue #147390


  Commit: 2329d0436f5eeda7e73f37b9cfc1dcbce6edd8ff
      https://github.com/llvm/llvm-project/commit/2329d0436f5eeda7e73f37b9cfc1dcbce6edd8ff
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/arm64-homogeneous-prolog-epilog-tail-call.mir

  Log Message:
  -----------
  Remove cleanup of incorrect output in test dir (#171256)

This follows #171255 , removing the cleanup line.


  Commit: 438f887080b6710029d09200ef0e102ea3541cbb
      https://github.com/llvm/llvm-project/commit/438f887080b6710029d09200ef0e102ea3541cbb
  Author: Reid Kleckner <rnk at llvm.org>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/CMakeLists.txt

  Log Message:
  -----------
  [cmake] Make CMAKE_BUILD_TYPE=Release the default (#174520)

Currently, we report a fatal error if the user leaves CMAKE_BUILD_TYPE
blank. This was implemented in https://reviews.llvm.org/D124153 /
350bdf9227ceb , based on this RFC:

https://discourse.llvm.org/t/rfc-select-a-better-linker-by-default-or-warn-about-using-bfd/61899/1

Tom Stellard mentioned that he'd like to revisit this on Discord, and
Aiden, myself, and apparently most people on the original RFC agree, so
I'm proposing we do it. However, on the review, several folks objected
and insisted that Debug was a better default. I want to reopen the
question.

I think we've made the wrong tradeoff. I wish Debug builds worked out of
the box on most systems, but they don't, and LLVM has only gotten bigger
over the last four years, making the build scalability problems of Debug
builds worse. I think we should optimize our build configuration for new
developers, not experienced longtime contributors who are invested
enough to tweak the build to their liking.

With this PR, we emit a warning, and set the build type to Release,
which has a higher likelihood of success for first-time users. Making
the build work out of the box is very important for making LLVM
development more accessible to new contributors, so it seems worth
smoothing over this rough edge.

A separate possible improvement would be to set
LLVM_ENABLE_ASSERTIONS=ON, but that is out of scope for this PR.


  Commit: ed9f5c93dcbbfba53086648db37ca58596802aba
      https://github.com/llvm/llvm-project/commit/ed9f5c93dcbbfba53086648db37ca58596802aba
  Author: Min-Yih Hsu <min.hsu at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVInstrInfoVPseudos.td
    M llvm/test/tools/llvm-mca/RISCV/SiFiveX390/vector-fp.s
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv/fma.test
    M llvm/test/tools/llvm-mca/RISCV/SpacemitX60/rvv/fp.test

  Log Message:
  -----------
  [RISCV] Add the missing SEW search table field to vector FMA instructions (#175646)

We split vector floating point FMA (pseudo) instructions' opcodes by SEW
since c6b7944be4dfbb1fb35301c670812726845acaa7 , but forgot to populate
their `SEW` field, which is used by various search tables. This results
in incorrect pseudo instruction opcodes lookup -- and to a larger
extent, incorrect scheduling class lookups -- in llvm-mca. This patch
fixes such issue.


  Commit: a01b7c23c4c22a236a57e037f8ecb0bc88ecbda8
      https://github.com/llvm/llvm-project/commit/a01b7c23c4c22a236a57e037f8ecb0bc88ecbda8
  Author: Daniil Fukalov <dfukalov at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .gitignore

  Log Message:
  -----------
  [LLVM] Ignore two Cursor specific files. (#175683)


  Commit: 13cd7003adb8472dcd478ec592f1a204298f8537
      https://github.com/llvm/llvm-project/commit/13cd7003adb8472dcd478ec592f1a204298f8537
  Author: Hansang Bae <hansang.bae at intel.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/level_zero/src/L0Memory.cpp

  Log Message:
  -----------
  [NFC][Offload] Rename a function (#175673)

Renamed a function as suggested in #175664.


  Commit: 77613aa7ead051471a32c679ffc2e6ce60751a2f
      https://github.com/llvm/llvm-project/commit/77613aa7ead051471a32c679ffc2e6ce60751a2f
  Author: Zhen Wang <37195552+wangzpgi at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    A flang/test/Lower/CUDA/cuda-gpu-managed.cuf
    M flang/tools/bbc/bbc.cpp

  Log Message:
  -----------
  [flang][CUDA] Apply implicit managed attribute when `-gpu=mem:managed` is used. (#175648)

When `-gpu=mem:managed` is used, allocatable arrays without explicit
CUDA data attributes are implicitly treated as managed. The
`-gpu=mem:managed` flag to enable this feature is currently only
supported in `bbc`.


  Commit: da94edf535e7850f431510c52d503545eaa6c77b
      https://github.com/llvm/llvm-project/commit/da94edf535e7850f431510c52d503545eaa6c77b
  Author: Sameer Sahasrabuddhe <sameer.sahasrabuddhe at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/GenericUniformityImpl.h
    A llvm/test/Analysis/UniformityAnalysis/AMDGPU/irreducible/reducible-subgraph.ll

  Log Message:
  -----------
  [UniformityAnalysis] Jump over reducible cycles when locating join blocks (#174938)

When locating the join blocks of a divergent block, the algorithm relies
on pseudo-edges from the header of a reducible cycle to the cycle exits.
This was missed in the actual traversal, producing unnecessary joins
inside the reducible cycle. This caused an assert in the included test,
which expected that if a join existed in a reducible cycle for a
divergent branch outside the cycle, then it must be header.

This fixes the reverted commit from #174117


  Commit: ee3f4bc92f8477c420c3f236609851eda7294c82
      https://github.com/llvm/llvm-project/commit/ee3f4bc92f8477c420c3f236609851eda7294c82
  Author: Mel Chen <mel.chen at sifive.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/Transforms/LoopVectorize/RISCV/tail-folding-complex-mask.ll

  Log Message:
  -----------
  [LV][NFC] Follow-up fix for #173262 (#175513)


  Commit: 9e1606026c561ae285c5862e59a690ec0f3a9e20
      https://github.com/llvm/llvm-project/commit/9e1606026c561ae285c5862e59a690ec0f3a9e20
  Author: Christudasan Devadasan <christudasan.devadasan at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/CodeGen/TargetInstrInfo.h
    M llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
    M llvm/lib/Target/AArch64/AArch64InstrInfo.h
    M llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
    M llvm/lib/Target/AMDGPU/SIInstrInfo.h
    M llvm/lib/Target/ARC/ARCInstrInfo.cpp
    M llvm/lib/Target/ARC/ARCInstrInfo.h
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.cpp
    M llvm/lib/Target/ARM/ARMBaseInstrInfo.h
    M llvm/lib/Target/ARM/Thumb1InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb1InstrInfo.h
    M llvm/lib/Target/ARM/Thumb2InstrInfo.cpp
    M llvm/lib/Target/ARM/Thumb2InstrInfo.h
    M llvm/lib/Target/AVR/AVRInstrInfo.cpp
    M llvm/lib/Target/AVR/AVRInstrInfo.h
    M llvm/lib/Target/BPF/BPFInstrInfo.cpp
    M llvm/lib/Target/BPF/BPFInstrInfo.h
    M llvm/lib/Target/CSKY/CSKYInstrInfo.cpp
    M llvm/lib/Target/CSKY/CSKYInstrInfo.h
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.cpp
    M llvm/lib/Target/Hexagon/HexagonInstrInfo.h
    M llvm/lib/Target/Lanai/LanaiInstrInfo.cpp
    M llvm/lib/Target/Lanai/LanaiInstrInfo.h
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.h
    M llvm/lib/Target/M68k/M68kInstrInfo.cpp
    M llvm/lib/Target/M68k/M68kInstrInfo.h
    M llvm/lib/Target/MSP430/MSP430InstrInfo.cpp
    M llvm/lib/Target/MSP430/MSP430InstrInfo.h
    M llvm/lib/Target/Mips/MipsInstrInfo.h
    M llvm/lib/Target/NVPTX/NVPTXInstrInfo.h
    M llvm/lib/Target/PowerPC/PPCInstrInfo.cpp
    M llvm/lib/Target/PowerPC/PPCInstrInfo.h
    M llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfo.h
    M llvm/lib/Target/Sparc/SparcInstrInfo.cpp
    M llvm/lib/Target/Sparc/SparcInstrInfo.h
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
    M llvm/lib/Target/SystemZ/SystemZInstrInfo.h
    M llvm/lib/Target/VE/VEInstrInfo.cpp
    M llvm/lib/Target/VE/VEInstrInfo.h
    M llvm/lib/Target/X86/X86InstrInfo.cpp
    M llvm/lib/Target/X86/X86InstrInfo.h
    M llvm/lib/Target/XCore/XCoreInstrInfo.cpp
    M llvm/lib/Target/XCore/XCoreInstrInfo.h
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.cpp
    M llvm/lib/Target/Xtensa/XtensaInstrInfo.h

  Log Message:
  -----------
  [CodeGen][InlineSpiller] Add SubReg argument to loadRegFromStackSlot for subreg-reload (#175581)

This preparatory patch introduces an additional argument to the target hook
loadRegFromStackSlot. Ths is essential for targets to handle subregister-specific
reload in the future. See how this is used for AMDGPU target with PR #175002.


  Commit: bb008e74179328175eb24f9bb35bfd10af6ad548
      https://github.com/llvm/llvm-project/commit/bb008e74179328175eb24f9bb35bfd10af6ad548
  Author: Petr Hosek <phosek at google.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M llvm/utils/git-llvm-push

  Log Message:
  -----------
  [llvm][utils] Make git-llvm-push set the skip-precommit-approval label (#174833)

skip-precommit-approval label is intended for simple PR that don't
require approval. To reduce the volume of notifications, label all PRs
created using the git-llvm-push script with the skip-precommit-approval
label.

Fixes #174825


  Commit: bd28c6ac9a838b000220ada7cb84e27f61c4b5b6
      https://github.com/llvm/llvm-project/commit/bd28c6ac9a838b000220ada7cb84e27f61c4b5b6
  Author: Liu Ke <liuke.gehry at bytedance.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/IR/DebugInfoFlags.def
    M llvm/test/Assembler/debug-info.ll
    M llvm/test/Assembler/disubprogram.ll

  Log Message:
  -----------
  [DebugInfo] Add a new DI flag to record if the name of a template function/type has been simplified (1/3). (#175130)

This flag is used during debug info generation in the LLVM backend to
guide the selective generation of template parameters in the skeleton
CU. As described in [this
RFC](https://discourse.llvm.org/t/rfc-debuginfo-selectively-generate-template-parameters-in-the-skeleton-cu/89395).


  Commit: e4b8d8a474c493f02baff5e11fb9a74d70c02a54
      https://github.com/llvm/llvm-project/commit/e4b8d8a474c493f02baff5e11fb9a74d70c02a54
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/istream
    M libcxx/test/libcxx/input.output/iostream.format/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][istream] Removed `[[nodiscard]]` from `peek()` (#175591)

Calling `peek()` after constructing a stream is something one can use to
make the stream ignore empty inputs:

```
#include <sstream>

int main() {
  std::istringstream s;
  s.peek();
  while (s && !s.eof()) {
    char c;
    s >> c;
    printf("not eof; read \'%c\' (%d)\n", c, c);
  }
}
```

as discussed in
https://github.com/llvm/llvm-project/pull/173754#discussion_r2669631585
this patch removes the `[[nodiscard]]` annotation.


  Commit: a0e0775d91859d6ca32efc5fb8644b6281e98593
      https://github.com/llvm/llvm-project/commit/a0e0775d91859d6ca32efc5fb8644b6281e98593
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Add isCommutable=1 to some binary P extension instructions. (#175692)

This allows MachineCSE to commute these instructions if it would allow
CSE.


  Commit: 2b839f66ae0191039fb82049ec515bcbd726f612
      https://github.com/llvm/llvm-project/commit/2b839f66ae0191039fb82049ec515bcbd726f612
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/LoongArchISelLowering.cpp
    M llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
    A llvm/test/CodeGen/LoongArch/musttail.ll
    M llvm/test/CodeGen/LoongArch/tail-calls.ll

  Log Message:
  -----------
  [LoongArch] Enable tail calls for sret and byval functions (#168506)

Allow tail calls for functions returning via sret when the caller's sret
pointer can be reused. Also support tail calls for byval arguments.
    
The previous restriction requiring exact match of caller and callee
arguments is relaxed: tail calls are allowed as long as the callee does
not use more stack space than the caller.

Fixes #168152


  Commit: 124cb2ec9d413145e295ae21adc1c34bf7c8e53c
      https://github.com/llvm/llvm-project/commit/124cb2ec9d413145e295ae21adc1c34bf7c8e53c
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Merge the 'f' and 'r' field argument of the RVPPairBase class. (#175694)

I don't think the spec ever calls this field 'r' for any of the
instructions that use this class. The bit is either a constant 0/1 or
part of 'f'. Make it a 4-bit 'f' and make the derived classes
concatenate the 0/1 when they need to widen from 3 bits to 4.


  Commit: dc257a4609166a9240678f255c866c9280cb9cde
      https://github.com/llvm/llvm-project/commit/dc257a4609166a9240678f255c866c9280cb9cde
  Author: Erick Velez <erickvelez7 at gmail.com>
  Date:   2026-01-12 (Mon, 12 Jan 2026)

  Changed paths:
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/assets/alias-template.mustache
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/comment-template.mustache
    M clang-tools-extra/clang-doc/assets/enum-template.mustache
    M clang-tools-extra/clang-doc/assets/index-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/enum.cpp
    M clang-tools-extra/test/clang-doc/index.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    M clang-tools-extra/test/clang-doc/mustache-index.cpp
    M clang-tools-extra/test/clang-doc/namespace.cpp
    M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp

  Log Message:
  -----------
  [clang-doc] Fix misnamed, mismatched, or incorrect tags (#175112)

This is mostly a chore patch that fixes misnamed, mismatched,
or non-existant tags. That includes renaming the function tags in the
class template to `Has*Methods` instead of `Has*Functions`. The "method"
style was already preferred in the template HTML.

Some extraneous tags were removed from the enum template. All templates
should use
`Description` for rendering comments, but it was still using an old tag
name. Also, the JSON generator currently doesn't serialize individual
enum value comments, so that tag was removed. Same for public members.

`Description` is removed for friends due to the way Mustache handles
missing
tags. If `Description` isn't present, it will use the parent's
description which is undesirable.


  Commit: ef2ec1fbaca4c8194a66d1659428bd55728d5eae
      https://github.com/llvm/llvm-project/commit/ef2ec1fbaca4c8194a66d1659428bd55728d5eae
  Author: Jinjie Huang <huangjinjie at bytedance.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/SampleProfileLoaderBaseImpl.h

  Log Message:
  -----------
  [CSSPGO][NFC] Remove unused code in finalizeWeightPropagation() (#175521)

Remove unused code since the usage of `EntryWeight` was dropped in
[D134756](https://reviews.llvm.org/D134756).


  Commit: af98aadc63637ac674d403c77ccba42b05a3d11c
      https://github.com/llvm/llvm-project/commit/af98aadc63637ac674d403c77ccba42b05a3d11c
  Author: Alexis Engelke <engelke at in.tum.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lld/MachO/Arch/ARM64Common.cpp
    M lld/MachO/Arch/ARM64Common.h
    M lld/MachO/Arch/X86_64.cpp
    M lld/MachO/BPSectionOrderer.cpp
    M lld/MachO/ConcatOutputSection.cpp
    M lld/MachO/EhFrame.cpp
    M lld/MachO/EhFrame.h
    M lld/MachO/ICF.cpp
    M lld/MachO/InputFiles.cpp
    M lld/MachO/InputFiles.h
    M lld/MachO/InputSection.cpp
    M lld/MachO/InputSection.h
    M lld/MachO/MarkLive.cpp
    M lld/MachO/ObjC.cpp
    M lld/MachO/Relocations.cpp
    M lld/MachO/Relocations.h
    M lld/MachO/SyntheticSections.cpp
    M lld/MachO/Target.h
    M lld/MachO/UnwindInfoSection.cpp
    M lld/MachO/Writer.cpp

  Log Message:
  -----------
  [LLD][MachO][NFC] Rename Reloc to Relocation (#175586)

Due to heavy use of using namespace llvm, Reloc is often ambiguous with
llvm::Reloc, the relocation model. Previously, this was sometimes
disambiguated with macho::Reloc. This ambiguity is even more problematic
when using pre-compiled headers, where it's no longer "obvious" whether
it should be Reloc or macho::Reloc.

Therefore, rename Reloc to Relocation. This is also consistent with
lld/ELF, where the type is also named Relocation.


  Commit: 2001da6fd33c188d10f07e4478f7a6303e65ae17
      https://github.com/llvm/llvm-project/commit/2001da6fd33c188d10f07e4478f7a6303e65ae17
  Author: Sander de Smalen <sander.desmalen at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AArch64/AArch64RegisterInfo.cpp
    M llvm/test/CodeGen/AArch64/arm64-addrmode.ll
    M llvm/test/CodeGen/AArch64/preserve_nonecc_varargs_darwin.ll
    M llvm/test/CodeGen/AArch64/register-coalesce-update-subranges-remat.mir
    A llvm/test/CodeGen/AArch64/subreg_to_reg_coalescing_issue.mir

  Log Message:
  -----------
  [AArch64] Disable coalescing of SUBREG_TO_REG with subreg liveness. (#174185)

Handling of SUBREG_TO_REG is currently broken, see #168353 for details.


  Commit: dc1a886fb9df0754dc80c908b227094c14866b77
      https://github.com/llvm/llvm-project/commit/dc1a886fb9df0754dc80c908b227094c14866b77
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/complex.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix CK_ToVoid casts for Complex values (#175709)

We need to remove the pointer to the local variable we've created
specifically for this complex binary operator.

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


  Commit: c4750d0575e6d7297dc297e2dc64e9190cd8dadb
      https://github.com/llvm/llvm-project/commit/c4750d0575e6d7297dc297e2dc64e9190cd8dadb
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.h
    M mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Interfaces/ControlFlowInterfaces.cpp
    M mlir/test/Dialect/SCF/canonicalize.mlir
    M mlir/test/Transforms/remove-dead-values.mlir

  Log Message:
  -----------
  [mlir] Consolidate patterns into `RegionBranchOpInterface` patterns (#174094)

Instead of op-specific cleanup patterns for region branch ops to remove
unused results / block arguments, etc., add a set of patterns that can
handle all `RegionBranchOpInterface` ops. These patterns are enabled
only for selected SCF dialect ops at the moment:
* `scf.execute_region`
* `scf.for`
* `scf.if`
* `scf.index_switch`
* `scf.while`

It is currently not possible to register canoncalization patterns for op
interfaces and some ops have incorrect interface implementations. In
follow-up PRs, the set of ops will be gradually extended within the SCF
dialect (`scf.forall`) and across other dialects
(`gpu.warp_execute_on_lane0`, (maybe) various affine dialect ops, ...),
and maybe eventually to apply to all `RegionBranchOpInterface` ops.

This commit removes many similar canonicalization patterns from the SCF
dialect. The newly added canonicalization patterns allow users to get
the same canonicalizations for free for their own ops. And even a few
additional new canonicalizations
([example](https://github.com/llvm/llvm-project/pull/174094/files#diff-54318cd685386d5519c42be49818e388b09d934edcbe4280548baa3601802977R2241),
[example](https://github.com/llvm/llvm-project/pull/174094/files#diff-54318cd685386d5519c42be49818e388b09d934edcbe4280548baa3601802977R1101),
...).

Implementation outline: This commit adds 3 canonicalization patterns.
* `MakeRegionBranchOpSuccessorInputsDead`: Remove uses of successor
inputs, by swapping them for successor operand values.
* `RemoveDuplicateSuccessorInputUses`: Remove uses of successor inputs
that are duplicates. (Similar to `WhileRemoveDuplicatedResults` in the
SCF dialect.)
* `RemoveDeadRegionBranchOpSuccessorInputs`: Remove dead successor
inputs if all of their "tied" successor inputs are also dead. (Similar
to `WhileUnusedResult` in the SCF dialect.)


  Commit: 6cbf9cef587df6a4e9bba0ec99b3549d0f4b5032
      https://github.com/llvm/llvm-project/commit/6cbf9cef587df6a4e9bba0ec99b3549d0f4b5032
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Interp.h
    M clang/test/AST/ByteCode/c.c

  Log Message:
  -----------
  [clang][bytecode] Check for non-block pointers in CopyArray (#175710)

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


  Commit: e3156c531da5aa4ec604605ed4e19638879d773c
      https://github.com/llvm/llvm-project/commit/e3156c531da5aa4ec604605ed4e19638879d773c
  Author: Piyou Chen <piyou.chen at sifive.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/RISCV.h
    M clang/test/CodeGen/RISCV/bitint.c
    M clang/test/CodeGen/ext-int-cc.c
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    A llvm/test/CodeGen/RISCV/bitint-fp-conv-200.ll
    M llvm/test/CodeGen/RISCV/fpclamptosat.ll

  Log Message:
  -----------
  [RISCV] Support RISCV BitInt larger than 128 (#175515)

fa57074d146925a303263905af415cc78f58f353 constraint the RISCV BitInt
with 128 bits.

It is due to fp <-> int convension will crash in backend.
(https://godbolt.org/z/9o1qr4rje)

This patch enable larger than 128 bits BitInt type by
`setMaxLargeFPConvertBitWidthSupported`.


  Commit: afd7d13d147d3ac92c987cb2d1d27fb6ee9b9dad
      https://github.com/llvm/llvm-project/commit/afd7d13d147d3ac92c987cb2d1d27fb6ee9b9dad
  Author: nataliakokoromyti <126305457+nataliakokoromyti at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/test/AST/ByteCode/codegen.cpp

  Log Message:
  -----------
  [clang][bytecode] Fix crash on arrays with excessive size (#175402)

The bytecode interpreter was crashing when seeing arrays with sizes that
exceed Descriptor::MaxArrayElemBytes. The bounds check in
Program::createDescriptor was using std::numeric_limits<unsigned>::max()
instead of the correct limit Descriptor::MaxArrayElemBytes.

This caused the check to pass for sizes that would later fail the
assertion in the Descriptor constructor.

Fixes #175293


  Commit: e9f758a59b2f887acb07e26e2d480c7369a72009
      https://github.com/llvm/llvm-project/commit/e9f758a59b2f887acb07e26e2d480c7369a72009
  Author: Luke Lau <luke at igalia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VPlanVerifier.cpp
    A llvm/test/Transforms/LoopVectorize/RISCV/pointer-induction-rv32.ll

  Log Message:
  -----------
  [VPlan] Allow VPInstruction::PtrAdd as a user of EVL (#175506)

Fixes #175058

Similar to #175028, on RV64 we insert a zext in between most uses of EVL
so most of the VPlanVerifier EVL checks don't fire unless we're
compiling for RV32.
In this case, we're experiencing a crash because we can have a PtrAdd
that uses EVL. This fixes it by adding PtrAdd to the list of allowed
instructions


  Commit: b685bf0032176b36d5f160025da21407b5ca03d8
      https://github.com/llvm/llvm-project/commit/b685bf0032176b36d5f160025da21407b5ca03d8
  Author: Oleksandr T. <oleksandr.tarasiuk at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/test/Sema/constexpr.c

  Log Message:
  -----------
  [Clang] add long double test to cover constant expression evaluation (#175645)

Fixes
https://github.com/llvm/llvm-project/pull/174113#discussion_r2683013358

--- 

This patch adds a test to cover the `long double` case during constant
expression evaluation


  Commit: b598dcbd757e18f257552d3208ab9734ef40d86d
      https://github.com/llvm/llvm-project/commit/b598dcbd757e18f257552d3208ab9734ef40d86d
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add support for derived-to-base conversions (#175631)

Add support for derived-to-base conversions in lifetime analysis.

Added handling for `CK_UncheckedDerivedToBase` and `CK_DerivedToBase` cast kinds in the `FactsGenerator::VisitImplicitCastExpr` method. These cast kinds are now treated similarly to other conversions by flowing origins from source to destination.

Added a unit test `DerivedToBaseThisArg` that verifies lifetime information is correctly propagated through derived-to-base conversions when using member functions inherited from a base class.


  Commit: 620e479d231aef04fa06dfba854622d3201c50ce
      https://github.com/llvm/llvm-project/commit/620e479d231aef04fa06dfba854622d3201c50ce
  Author: Craig Topper <craig.topper at sifive.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [RISCV] Sync Inst{30-27} assignment into RVPWideningBase. NFC (#175705)

2 of the 3 subclases can pass 'f' straight through from their
instantiations. The third case just needs to concatenate 1b1 to widen f
to 4 bits.


  Commit: e884a44cdd6fe90324dbae331730ec4d6f6404bc
      https://github.com/llvm/llvm-project/commit/e884a44cdd6fe90324dbae331730ec4d6f6404bc
  Author: Georgiy Samoylov <g.samoylov at syntacore.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/include/lldb/Target/Platform.h
    M lldb/source/Plugins/ABI/RISCV/ABISysV_riscv.cpp
    M lldb/source/Plugins/Platform/AIX/PlatformAIX.cpp
    M lldb/source/Plugins/Platform/AIX/PlatformAIX.h
    M lldb/source/Plugins/Platform/Linux/PlatformLinux.cpp
    M lldb/source/Plugins/Platform/Linux/PlatformLinux.h
    M lldb/source/Target/RegisterContextUnwind.cpp

  Log Message:
  -----------
  [lldb][RISCV] Implement trap handler unwind plan (#166531)

This patch introduces special unwind plan for trap handling for RISC-V
and fixes `TestHandleAbort`


  Commit: ef90ba684d012790c86ac1b5e7c6b325abe78803
      https://github.com/llvm/llvm-project/commit/ef90ba684d012790c86ac1b5e7c6b325abe78803
  Author: Utkarsh Saxena <usx at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    M clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    M clang/lib/Sema/SemaDecl.cpp
    M clang/test/Sema/warn-lifetime-analysis-nocfg.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/test/SemaCXX/attr-lifetimebound.cpp

  Log Message:
  -----------
  [LifetimeSafety] Merge lifetimebound attribute on implicit 'this' across method redeclarations (#172146)

Followup on https://github.com/llvm/llvm-project/pull/107627  
Fixes https://github.com/llvm/llvm-project/issues/62072  
Fixes https://github.com/llvm/llvm-project/issues/172013
Fixes https://github.com/llvm/llvm-project/issues/175391

This PR adds support for merging the `lifetimebound` attribute on the implicit `this` parameter when merging method declarations. Previously, if a method was declared with `lifetimebound` on its function type (which represents the implicit `this` parameter), this attribute would not be propagated to the method definition, causing lifetime safety warnings to be missed.

The implementation adds helper functions to extract the `lifetimebound` attribute from a function type and to merge this attribute from an old method declaration to a new one when appropriate.


  Commit: b0445a1ee6d1c7166408180bd8471e43493beb3b
      https://github.com/llvm/llvm-project/commit/b0445a1ee6d1c7166408180bd8471e43493beb3b
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/test/AST/ByteCode/cxx11.cpp

  Log Message:
  -----------
  [clang][bytecode] Diagnose regular CK_LValueBitCast cast nodes (#175721)

We already do this similarly for CXXReinterpretCastExprs, except in that
case we try harder to make things work.


  Commit: 9339d419ff164c1532b66c1eba9dd3254fa72736
      https://github.com/llvm/llvm-project/commit/9339d419ff164c1532b66c1eba9dd3254fa72736
  Author: Teja Alaghari <teja.alaghari at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [TwoAddressInstruction] Track MadeChange when eliminating REG_SEQUENCE (#173535)

When `eliminateRegSequence()` is called, the pass modifies the
`MachineFunction` but `MadeChange` was not being set to true.
This causes the pass to incorrectly return `PreservedAnalyses::all()`
even though changes were made.


  Commit: 4ef3f8dbc1c3ac4e15731d43b2ae350dc52d6c0f
      https://github.com/llvm/llvm-project/commit/4ef3f8dbc1c3ac4e15731d43b2ae350dc52d6c0f
  Author: David Green <david.green at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/MIRParser/MILexer.cpp
    M llvm/lib/CodeGen/MIRParser/MILexer.h
    M llvm/lib/CodeGen/MIRParser/MIParser.cpp
    M llvm/lib/CodeGen/MachineBasicBlock.cpp
    A llvm/test/CodeGen/MIR/Generic/machine-basic-block-ehscope-entry.mir

  Log Message:
  -----------
  [MIR] Add parsing for ehscope_entry. (#175592)

This makes sure that IsEHScopeEntry is written and can be re-parsed.


  Commit: 8aa9c717f6bf6a8844c109742d520805c50003ab
      https://github.com/llvm/llvm-project/commit/8aa9c717f6bf6a8844c109742d520805c50003ab
  Author: Matej Košík <m4tej.kosik at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/TypeSystem/Clang/TypeSystemClang.cpp
    M lldb/test/API/python_api/sbtype_basic_type/TestSBTypeBasicType.py

  Log Message:
  -----------
  [lldb] Make sure that the "TypeSystemClang::GetBuiltinTypeByName" method returns the correct value also for "_BitInt(...)" types. (#165857)

When trying to get the `SBType` object corresponding to the
`_BitInt(...)` type name, we have noticed that the
`SBTarget::FindFirstType` metod returns `nil`. This branch proposes:
- some test that demonstrate that the problem exists
- a possible fix

---------

Co-authored-by: Matej Košík <matej.kosik at codasip.com>
Co-authored-by: Michael Buch <michaelbuch12 at gmail.com>


  Commit: 85c3c83ae54c9e81924f1ca048cfddc8d36bbb02
      https://github.com/llvm/llvm-project/commit/85c3c83ae54c9e81924f1ca048cfddc8d36bbb02
  Author: David Green <david.green at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/Analysis.cpp
    A llvm/test/CodeGen/AArch64/seh-unreachable-loop.mir

  Log Message:
  -----------
  [SEH] Ensure unreachable blocks are placed in EHScopeMembership (#175550)

The tests function has an unreachable block bb.2 leading to an
unreachable infinite loop bb.3. As BlockFolding removes the unreachable
bb.2, bb.3 is left only referencing itself. This block is then not
marked as unreachable and so left out of EHScopeMembership, leading to
an assert that FallThroughEHScope != EHScopeMembership.end(). This patch
makes sure that blocks not otherwise collected are added to
EHScopeMembership in the same way as unreachable blocks.


  Commit: 822a45f4b4909289f84d119f1e5891b486d74f5e
      https://github.com/llvm/llvm-project/commit/822a45f4b4909289f84d119f1e5891b486d74f5e
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .github/workflows/release-tasks.yml
    M llvm/utils/release/github-upload-release.py

  Log Message:
  -----------
  [llvm][release] Reveal download links based on uploaded assets (#167688)

For the 21.x release, download links were supposed to be revealed once
all the release builds had completed successfully. In reality, MacOS
never had a successful build so I had to hand edit the release messages.
This PR fixes this by focusing instead on what is in the release assets
after the release build step has finished (in whatever state that might
be).

1. Links are now built from a format string, with the linked files being
format arguments for that string. This is a balance between ease of
editing the format, and having the file names for use later (I tried
regex-ing file names out of the final links, which can work but is error
prone and will be hard to debug in production).

Here's an example line:
```
  <!-- LINUX_X86 * [Linux x86_64](https://github.com/llvm/llvm-project/releases/download/llvmorg-vX.Y.Z-1/LLVM-vX.Y.Z-1-Linux-X64.tar.xz) ([signature](https://github.com/llvm/llvm-project/releases/download/llvmorg-vX.Y.Z-1/LLVM-vX.Y.Z-1-Linux-X64.tar.xz.jsonl)) -->
```

2. `uncomment_download_links` now looks at the release assets to decide
whether to reveal a given link line. If all the files that line links to
are present, it will be revealed. This means we can run this at the end
of release-tasks.yml, where it will be atomic.

This process is done for all assets we would like to link to, not just
the ones currently built in GitHub. So if some become automatically
built, they will "just work". If we want to hand edit the links in,
that's still an option because the full links are in the release
message, but hidden from view.

As we are looking for `<!-- SOME_TAG`, the script can be run multiple
times on the same release and it will not try to edit anything already
revealed.

As it's possible no link lines have all their files, the text
immediately after the links has been updated to make sense when there
are no links.

Initially I was going to accumulate the statuses from the release build
matrix job, but this does not seem to be possible
(https://github.com/orgs/community/discussions/17245). Workarounds for
this often include uploading artifacts from each job, which for us, is
the same as checking the release's assets.


  Commit: 1546138e6f18f2e7d0ca90eebe0ffc18c2364bf6
      https://github.com/llvm/llvm-project/commit/1546138e6f18f2e7d0ca90eebe0ffc18c2364bf6
  Author: Brandon Wu <brandon.wu at sifive.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/RISCV/RISCVISelLowering.cpp
    M llvm/lib/Target/RISCV/RISCVInstrInfoP.td
    M llvm/test/CodeGen/RISCV/rvp-ext-rv32.ll
    M llvm/test/CodeGen/RISCV/rvp-ext-rv64.ll

  Log Message:
  -----------
  [RISCV][llvm] Support min/max codegen for P extension (#175494)


  Commit: bd6bfba3e50343c112a04b639394ab85be17c29b
      https://github.com/llvm/llvm-project/commit/bd6bfba3e50343c112a04b639394ab85be17c29b
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M cmake/Modules/LLVMVersion.cmake
    M libcxx/include/__config
    M llvm/utils/gn/secondary/llvm/version.gni
    M llvm/utils/lit/lit/__init__.py
    M llvm/utils/mlgo-utils/mlgo/__init__.py

  Log Message:
  -----------
  Bump version to 23.0.0-git


  Commit: 752d7f590e45fdf50825b1a3674bedc1e13e6ca4
      https://github.com/llvm/llvm-project/commit/752d7f590e45fdf50825b1a3674bedc1e13e6ca4
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang/docs/ReleaseNotes.rst
    M flang/docs/ReleaseNotes.md
    M lld/docs/ReleaseNotes.rst
    M llvm/docs/ReleaseNotes.md

  Log Message:
  -----------
  Clear release notes


  Commit: 8b5185984e57df12878ea026febb414769c54b03
      https://github.com/llvm/llvm-project/commit/8b5185984e57df12878ea026febb414769c54b03
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/__filesystem/path.h
    A libcxx/test/libcxx/input.output/filesystems/class.path/lifetimebound.verify.cpp

  Log Message:
  -----------
  [libc++] Annotate filesystem::path with [[clang::lifetimebound]] (#175507)

Fixes #175379


  Commit: be0889030e28230268b309ec01fec712f72b507d
      https://github.com/llvm/llvm-project/commit/be0889030e28230268b309ec01fec712f72b507d
  Author: halbi2 <hehiralbi at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/__flat_map/flat_multimap.h
    M libcxx/include/__flat_set/flat_multiset.h

  Log Message:
  -----------
  [libc++][NFC] Remove unused __key_equiv from flat_multimap and flat_multiset (#175612)


  Commit: b6131f37ae7a11db80ff30c8dd807a47675f9ec6
      https://github.com/llvm/llvm-project/commit/b6131f37ae7a11db80ff30c8dd807a47675f9ec6
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/test/benchmarks/containers/associative/associative_container_benchmarks.h

  Log Message:
  -----------
  [libc++] Remove empty container benchmarks that are meaningless from the associative containers (#175180)

We generally try to benchmark the empty container case in the
associcative containers, since there are some case where we previously
ran calculations for significant amounts of time, even though they were
really not needed. However, there are some benchmarks where trying to
run with an empty container doesn't make sense (e.g. when benchmarking
collisions). We've worked around this a bit in the benchmarks by not
actually benchmarking the empty case. This patch removes these
meaningless benchmarks instead to speed up running the benchmarks.


  Commit: 4b8a8e5f14ef0b8b1fa098895d3f491e4f2794be
      https://github.com/llvm/llvm-project/commit/4b8a8e5f14ef0b8b1fa098895d3f491e4f2794be
  Author: Nikita Popov <npopov at redhat.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/negative-i32-offset.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Allow truncation of offset

It's okay if the offset calculation overflows and we have to
truncate.

However, this should really be doing all the offset calculations on
correctly-sized APInts. For the case where the overflow occurs
on 64-bit indices, this would trigger signed integer overflow UB.

Fixes issue reported at:
https://github.com/llvm/llvm-project/pull/171456#issuecomment-3741522625


  Commit: 4ccf926e7f075724e3206f92623c8e00d1d34417
      https://github.com/llvm/llvm-project/commit/4ccf926e7f075724e3206f92623c8e00d1d34417
  Author: Maya Amrami <mayaam88 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Utils/ReshapeOpsUtils.h
    M mlir/lib/Dialect/MemRef/IR/MemRefOps.cpp
    M mlir/lib/Dialect/Tensor/IR/TensorOps.cpp
    M mlir/test/Dialect/MemRef/canonicalize.mlir

  Log Message:
  -----------
  [mlir] Compose expand of collapse to cast (#172864)

In some cases `y = expand(collapse(x))` cannot be folded into x, since x
and y have different types.
In that case, we check if the two types are cast compatible.
If they are, it means the two types have compatible shape and layout and
y can be folded into cast(x).

This causes a change in memref::CastOp::areCastCompatible, where now a
dim of size 1 may have different strides.


  Commit: e259175995f1ec4f8d8646f66cd90ac377361fa5
      https://github.com/llvm/llvm-project/commit/e259175995f1ec4f8d8646f66cd90ac377361fa5
  Author: Aniket Singh <122245575+Aniketsingh54 at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/lib/Conversion/SCFToOpenMP/SCFToOpenMP.cpp
    A mlir/test/Conversion/SCFToOpenMP/vector-reduction.mlir

  Log Message:
  -----------
  [MLIR][SCFToOpenMP] Fix crash when lowering vector reductions (#173978)

This patch fixes a crash in the SCF to OpenMP conversion pass when
encountering scf.parallel with vector reductions.

- Extracts scalar element types for bitwidth calculations.
- Uses DenseElementsAttr for vector splat initializers.
- Bypasses llvm.atomicrmw for vector types (not supported in LLVM IR).

Fixes #173860

---------

Co-authored-by: Aniket Singh <amiket.singh.3200.00 at gmail.com>


  Commit: 6189512f73a343b364f1907b742659bae3bd5b56
      https://github.com/llvm/llvm-project/commit/6189512f73a343b364f1907b742659bae3bd5b56
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/CMakeLists.txt
    M libcxx/include/__algorithm/find_if.h
    A libcxx/include/__memory/valid_range.h
    M libcxx/include/__utility/is_pointer_in_range.h
    R libcxx/include/__utility/is_valid_range.h
    M libcxx/include/module.modulemap.in
    M libcxx/include/streambuf
    M libcxx/test/benchmarks/algorithms/nonmodifying/find.bench.cpp
    M libcxx/test/libcxx/utilities/is_valid_range.pass.cpp

  Log Message:
  -----------
  [libc++] Optimize std::find_if (#167697)

```
Benchmark                       4ecfaa602f56    80d5ac247d34    Difference    % Difference
----------------------------  --------------  --------------  ------------  --------------
bm_find_if_autovectorization         1901.51          306.12      -1595.39         -83.90%
```


  Commit: 1e72f290fa3fbe87858045017cc2ac5c2682f0d9
      https://github.com/llvm/llvm-project/commit/1e72f290fa3fbe87858045017cc2ac5c2682f0d9
  Author: LLVM GN Syncbot <llvmgnsyncbot at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [gn build] Port 6189512f73a3


  Commit: f0054a48966e684df26e589f2fc803932e03aba4
      https://github.com/llvm/llvm-project/commit/f0054a48966e684df26e589f2fc803932e03aba4
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/.clang-format
    M libcxx/include/__config
    M libcxx/src/experimental/tzdb.cpp
    M libcxx/src/include/overridable_function.h
    M libcxx/src/new.cpp
    M libcxx/src/verbose_abort.cpp
    M libcxxabi/src/stdlib_new_delete.cpp

  Log Message:
  -----------
  [libc++] Replace uses of _LIBCPP_WEAK with [[gnu::weak]] (#171798)

Using `_LIBCPP_WEAK` doesn't give us anything that using `[[gnu::weak]]`
directly couldn't, so we can just expand the macro.
As a drive-by this also refactors `_LIBCPP_OVERRIDABLE_FUNCTION`.


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

  Changed paths:
    M llvm/test/MC/AMDGPU/writelane_m0.s

  Log Message:
  -----------
  [AMDGPU] Generate checks for writelane_m0.s


  Commit: 5cc742e4b4db3698faa712563ccbdcf1f6faaa4f
      https://github.com/llvm/llvm-project/commit/5cc742e4b4db3698faa712563ccbdcf1f6faaa4f
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx1150_asm_features-fake16.s
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3p_features.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3p_features.s

  Log Message:
  -----------
  [AMDGPU] Generate checks for some MC features tests

The update script removes some empty "//" comment lines in these files.


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

  Changed paths:
    M llvm/test/MC/AMDGPU/reg-syntax-extra.s

  Log Message:
  -----------
  [AMDGPU] Generate checks for reg-syntax-extra.s

This just required tweaking a check prefix.


  Commit: 1562161cd20cf13386b03556ba2c3deafa26f4fe
      https://github.com/llvm/llvm-project/commit/1562161cd20cf13386b03556ba2c3deafa26f4fe
  Author: Ivan Butygin <ivan.butygin at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/Arith/Transforms/Passes.h
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/include/mlir/Interfaces/LoopLikeInterface.td
    M mlir/lib/Dialect/Arith/Transforms/CMakeLists.txt
    M mlir/lib/Dialect/Arith/Transforms/IntRangeOptimizations.cpp
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/lib/Interfaces/LoopLikeInterface.cpp
    M mlir/test/Dialect/Arith/int-range-narrowing.mlir
    M mlir/test/Dialect/SCF/invalid.mlir

  Log Message:
  -----------
  [mlir] IntRangeNarrowing: Narrow loop induction variables. (#175455)

There are 2 parts:
* Update `LoopLikeOpInterface` to check the supported induction var type
and to update the loop bounds.
* Implement `NarrowLoopBounds` pattern which tries to narrow loop
induction var and bounds using this new interface.


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

  Changed paths:
    M llvm/lib/Transforms/Scalar/SeparateConstOffsetFromGEP.cpp
    M llvm/test/Transforms/SeparateConstOffsetFromGEP/negative-i32-offset.ll

  Log Message:
  -----------
  [SeparateConstOffsetFromGEP] Perform offset calculations on APInt (#175732)

In general, GEP offset calculations are allowed to overflow (if no
poison flags are set). Using int64_t for this purpose can result in C
level signed integer overflow, which is UB. It also means that we
incorrectly model whether some offsets are zero, and thus generate
redundant zero-index GEPs.

Change the code to track offsets in APInts of the pointer index size,
like we do in other places (like accumulateConstantOffset etc).


  Commit: fc4273f45d8ffeba8d5aad646bc0172c0c1e348c
      https://github.com/llvm/llvm-project/commit/fc4273f45d8ffeba8d5aad646bc0172c0c1e348c
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-union.cpp
    M cross-project-tests/debuginfo-tests/llvm-prettyprinters/lldb/pointer-union.test

  Log Message:
  -----------
  [cross-project-tests][formatters] Add test for printing dynamic pointer type in llvm::PointerUnion

Make sure we show the concrete type of the pointer.


  Commit: 8246257cac48457b5dc90d8b20c1fe6b7537d790
      https://github.com/llvm/llvm-project/commit/8246257cac48457b5dc90d8b20c1fe6b7537d790
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Vectorize/VectorCombine.cpp
    A llvm/test/Transforms/VectorCombine/AMDGPU/combine-scalar-selects.ll

  Log Message:
  -----------
  Reapply "[VectorCombine] Fold scalar selects from bitcast into vector select" (#174762)

Reapply https://github.com/llvm/llvm-project/pull/173990 with fixes for
post-commit review comments.

---------

Co-authored-by: padivedi <padivedi at amd.com>
Co-authored-by: Christudasan Devadasan <christudasan.devadasan at amd.com>


  Commit: 5cbd2f1ecb4bf661a4191244ada0d0979d127316
      https://github.com/llvm/llvm-project/commit/5cbd2f1ecb4bf661a4191244ada0d0979d127316
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/X86/masked_gather.ll

  Log Message:
  -----------
  [X86] masked_gather.ll - add mask from scalar value and test coverage for "fast-gather" avx2 targets (#175736)

Test coverage to help #175385


  Commit: 75006cd90a8cbfda45d1b10820709df31716010e
      https://github.com/llvm/llvm-project/commit/75006cd90a8cbfda45d1b10820709df31716010e
  Author: Jay Foad <jay.foad at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/MC/AMDGPU/gfx11_asm_vop3-fake16.s
    M llvm/test/MC/AMDGPU/gfx12_asm_vop3-fake16.s

  Log Message:
  -----------
  [AMDGPU] Generate checks for *_asm_vop3-fake16.s


  Commit: 3d418e5a42cad496923f1bd5d37cf8f9dc7689f0
      https://github.com/llvm/llvm-project/commit/3d418e5a42cad496923f1bd5d37cf8f9dc7689f0
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .github/workflows/ids-check.yml

  Log Message:
  -----------
  ids-check: Specify path input for `changed-files` (#175723)

This was causing issues when running the workflow.

https://github.com/llvm/llvm-project/actions/runs/20948190719/job/60195336123


  Commit: bf260af290461e813489d5b4e3dab437b32517cf
      https://github.com/llvm/llvm-project/commit/bf260af290461e813489d5b4e3dab437b32517cf
  Author: Cullen Rhodes <cullen.rhodes at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/tools/llvm-exegesis/AArch64/setReg_init_check.s

  Log Message:
  -----------
  [llvm-exegesis] Fix non-existent lit substitution in setReg_init_check.s (#175547)

According to [1] there is no '%d' substitution. Not sure if it was
intended as a substitution but it's confusing, so I've updated the test
to dump the object file to '%t.o', i.e.:

  <build_dir>/test/tools/llvm-exegesis/AArch64/Output/setReg_init_check.s.tmp.o

[1] https://llvm.org/docs/CommandGuide/lit.html#substitutions


  Commit: 98925a06aa05c69d26792ebb2682431f0f1b2e3f
      https://github.com/llvm/llvm-project/commit/98925a06aa05c69d26792ebb2682431f0f1b2e3f
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp

  Log Message:
  -----------
  [lldb] Fix crash in lldb when unique pointer is not valid (#175737)

check if the internal pointer is not null.


  Commit: 6aaa7fd7fbd9981d8947f6d13441bcd9d2052fc1
      https://github.com/llvm/llvm-project/commit/6aaa7fd7fbd9981d8947f6d13441bcd9d2052fc1
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h
    A llvm/test/CodeGen/AMDGPU/machine-scheduler-rematerialization-scoring.mir
    M llvm/test/CodeGen/AMDGPU/machine-scheduler-sink-trivial-remats-attr.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/mfma-loop.ll

  Log Message:
  -----------
  [AMDGPU][Scheduler] Scoring system for rematerializations (#175050)

This is a significant refactoring of the scheduler's rematerialization
stage meant to improve rematerialization capabilities and lay strong
foundations for future improvements.

As before, the stage identifies scheduling regions in which RP must be
reduced (so-called "target regions"), then rematerializes registers to
try and achieve the desired reduction. All regions affected by
rematerializations are re-scheduled, and, if the MIR is deemed worse
than before, rematerializations are rolled back to leave the MIR in its
pre-stage state.

The core contribution is a scoring system to estimate the benefit of
each rematerialization candidate. This score favors rematerializing
candidates which, in order, would

1. (if the function is spilling) reduce RP in highest-frequency target
regions,
2. be rematerialized to lowest-frequency target regions, and
3. reduce RP in the highest number of target regions.

All rematerialization opportunities are initially scored and
rematerialized in decreasing score order until RP objectives are met or
pre-computed scores diverge from reality; in the latter case remaining
candidates are re-scored and the process repeats. New tests in
`machine-scheduler-rematerialization-scoring.mir` showcase how the
scoring system dictates which rematerialization are the most beneficial
and therefore performed first

A minor contribution included in this PR following previous feedback is
that rollback now happens in-place i.e., without having to re-create the
rematerialized MI. This leaves original slot indices and registers
untouched. We achieve this by temporarily switching the opcode of
rollback-able instructions to a debug opcode during re-scheduling so
that they are ignored.


  Commit: 762512f92f63ff00e2cf98b71d15d0209159eed6
      https://github.com/llvm/llvm-project/commit/762512f92f63ff00e2cf98b71d15d0209159eed6
  Author: Michael Buch <michaelbuch12 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/unittests/Symbol/TestTypeSystemClang.cpp

  Log Message:
  -----------
  [lldb][tests] Add signed-ness tests for _BitInt

We have special logic for creating `_BitInt` types by name. This patch adds tests to ensure we create the types with the correct signed-ness.


  Commit: 25b4d1e1de765982d6c3ca552e8fae1631714ddd
      https://github.com/llvm/llvm-project/commit/25b4d1e1de765982d6c3ca552e8fae1631714ddd
  Author: Timm Baeder <tbaeder at redhat.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/Compiler.cpp
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/test/AST/ByteCode/builtins.cpp
    M clang/test/Parser/MicrosoftExtensions.c

  Log Message:
  -----------
  [clang][bytecode] Don't evaluate builtin_assume argument (#175740)

This is what the current interpreter does.


  Commit: 6e04d71ac91c36b927e01d043af302dfc35a68a2
      https://github.com/llvm/llvm-project/commit/6e04d71ac91c36b927e01d043af302dfc35a68a2
  Author: Eugene Epshteyn <eepshteyn at nvidia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang/test/Lower/array-elemental-subroutines.f90
    M flang/test/Lower/array-expression-slice-1.f90
    M flang/test/Lower/array-expression-slice-2.f90
    M flang/test/Lower/array-expression-subscript.f90
    M flang/test/Lower/array-substring.f90

  Log Message:
  -----------
  [flang][NFC] Converted five tests from old lowering to new lowering (part 5) (#175008)

Tests converted in Lower: array-elemental-subroutines.f90,
array-expression-slice-1.f90, array-expression-slice-2.f90,
array-expression-subscript.f90, array-substring.f90


  Commit: 7c40b0e865dc4784c3a5b720e43d89edaa0c30a2
      https://github.com/llvm/llvm-project/commit/7c40b0e865dc4784c3a5b720e43d89edaa0c30a2
  Author: Karlo Basioli <basioli at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  Fix Bazel build for 1562161 (#175751)

Co-authored-by: Pranav Kant <prka at google.com>


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

  Changed paths:
    M llvm/test/CodeGen/X86/masked_load.ll
    M llvm/test/CodeGen/X86/masked_store.ll

  Log Message:
  -----------
  [X86] Add test coverage showing AVX1/2 poor handling of scalar -> bool vectors for masked load/store (#175746)

Test coverage to help #175385


  Commit: aa0ba7e01d48639890c54de66c96d777a102e66a
      https://github.com/llvm/llvm-project/commit/aa0ba7e01d48639890c54de66c96d777a102e66a
  Author: ZhaoQi <zhaoqi01 at loongson.cn>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/test/Driver/loongarch-relax-features.c
    M llvm/docs/ReleaseNotes.md
    A llvm/test/DebugInfo/LoongArch/relax_dwo_ranges.ll

  Log Message:
  -----------
  [LoongArch][Driver] Allow `-gsplit-dwarf` and `-mrelax` to be used together (#175727)

Benefit from https://github.com/llvm/llvm-project/pull/166597 and
https://github.com/llvm/llvm-project/pull/164813, DWARF fission is now
compatible with linker relaxation.

Similar to RISC-V, this commit allows `-gsplit-dwarf` and `-mrelax` to
be used together.

A new test `relax_dwo_ranges.ll` same as RISC-V is also added.


  Commit: c745e9b67dd1e549ae8b79bb994da8a77643d816
      https://github.com/llvm/llvm-project/commit/c745e9b67dd1e549ae8b79bb994da8a77643d816
  Author: Ebuka Ezike <yerimyah1 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/packages/Python/lldbsuite/test/lldbtest.py
    M lldb/packages/Python/lldbsuite/test/tools/lldb-dap/dap_server.py
    A lldb/test/API/tools/lldb-dap/launch/io/Makefile
    A lldb/test/API/tools/lldb-dap/launch/io/TestDAP_launch_io.py
    A lldb/test/API/tools/lldb-dap/launch/io/main.cpp
    M lldb/tools/lldb-dap/Handler/RequestHandler.cpp
    M lldb/tools/lldb-dap/JSONUtils.cpp
    M lldb/tools/lldb-dap/Protocol/ProtocolRequests.cpp
    M lldb/tools/lldb-dap/README.md
    M lldb/tools/lldb-dap/extension/package.json
    M lldb/tools/lldb-dap/tool/lldb-dap.cpp

  Log Message:
  -----------
  [lldb-dap] Add testcases for stdio redirection on different console types. (#175048)

There are some bugs when launching in terminal with args and stdio
redirection.

- lldb-dap `--stdio` args is passed to the debuggee (should we change
this to use `--` to separate debuggee args from lldb-dap args, similar
to how we handle the `--client` args? ).

#### It also changes the behaviour of stdio redirection.
If a redirection is not specified, it uses to lldb default value. e.g.
```jsonc
"stdio": ["./stdin"]` 
// now becomes 
"stdio", ["./stdio", "./default_stdout", "./default_stderr"]
// instead of 
"stdio", ["./stdin", "./stdin", "./stdin"]
// took quite some time to figure out where my output is going to.
```

Fixes [#174445](https://github.com/llvm/llvm-project/issues/174445)

Other bug I noticed but should be in a different PR.
- debuggee args that contains newline are not properly escaped when sent
to the terminal.


  Commit: 56398ed96de017342da41b3f2d280e92234bd6bf
      https://github.com/llvm/llvm-project/commit/56398ed96de017342da41b3f2d280e92234bd6bf
  Author: Fabrice de Gans <Steelskin at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .github/workflows/ids-check.yml

  Log Message:
  -----------
  ids-check: Disable workflow on push (#175752)

The workflow is only meant to run on PRs.


  Commit: 7af6abd6a48fde095a1373f8d47676c8f14dee18
      https://github.com/llvm/llvm-project/commit/7af6abd6a48fde095a1373f8d47676c8f14dee18
  Author: Abhinav Garg <39309352+abhigargrepo at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPURegBankLegalizeRules.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.end.cf.i64.ll
    M llvm/test/CodeGen/AMDGPU/lds-global-non-entry-func.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.raw.ptr.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.atomic.buffer.load.ll
    M llvm/test/CodeGen/AMDGPU/llvm.amdgcn.struct.ptr.atomic.buffer.load.ll

  Log Message:
  -----------
  [AMDGPU][GlobalISel] Add RegBankLegalize support for amd_gcn_end_cf (#175118)


  Commit: 017a27cb1ac8ae0ff8ac2549293c2f95989d8469
      https://github.com/llvm/llvm-project/commit/017a27cb1ac8ae0ff8ac2549293c2f95989d8469
  Author: Pankaj Dwivedi <pankajkumar.divedi at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/docs/AMDGPUUsage.rst

  Log Message:
  -----------
  [AMDGPU][Docs] Document amdgpu-expand-waitcnt-profiling attribute (#175750)


  Commit: 50d112c396eaa326df316bc4b920fb721c0bc4f9
      https://github.com/llvm/llvm-project/commit/50d112c396eaa326df316bc4b920fb721c0bc4f9
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGExprScalar.cpp
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/lib/CodeGen/CodeGenFunction.h
    M clang/lib/CodeGen/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h

  Log Message:
  -----------
  [MC/DC] Prune MCDCLogOpStack and use CGF.isMCDCDecisionExpr. NFC (#125410)

`MCDCLogOpStack` is used only for detection of the Decision root. It can
be detected with `MCDC::State::DecisionByStmt`.


  Commit: 8722171013be0abb37e81c6d8e58b86f3e3a3de6
      https://github.com/llvm/llvm-project/commit/8722171013be0abb37e81c6d8e58b86f3e3a3de6
  Author: David Green <david.green at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/load-store-forwarding.ll

  Log Message:
  -----------
  [AArch64][GlobalISel] Add GISel test coverage for load-store-forwarding.ll. NFC


  Commit: 125d24af767e11c4f4730f9e9f72aee2dbecec49
      https://github.com/llvm/llvm-project/commit/125d24af767e11c4f4730f9e9f72aee2dbecec49
  Author: Lucas Ramirez <11032120+lucas-rami at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp
    M llvm/lib/Target/AMDGPU/GCNSchedStrategy.h

  Log Message:
  -----------
  [AMDGPU][Scheduler] Fix compile failure due to const/sort interaction (#175755)

On some configurations sorting `ScoredRemat` objects which contains
const members causes a compile failure due to impossibility of
swapping/moving objects. The problem was introduced in #175050.

This removes const from those fields to address the issue. The design
will soon change anyway to not rely on sorting objects of this type, and
consts were only here for semantic clarity.


  Commit: 0055129eb5937fdd335c6bbde19d8eae8dc2c1fd
      https://github.com/llvm/llvm-project/commit/0055129eb5937fdd335c6bbde19d8eae8dc2c1fd
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang-rt/cmake/modules/HandleLibs.cmake

  Log Message:
  -----------
  [flang-rt] Fix unused flag warning when compiling for the GPU (#175643)

Summary:
Because we link the `cxx` target directly we do not need to use this
flag, that's also why we pass `-nostdinc++` which makes this an unused
command line flag, hence the warning.


  Commit: a33654b60bb795dc54fecf6a549382fbc1b6f015
      https://github.com/llvm/llvm-project/commit/a33654b60bb795dc54fecf6a549382fbc1b6f015
  Author: Rose Hudson <rose.hudson at sony.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A llvm/test/Transforms/SampleProfile/Inputs/fn-alias.prof
    A llvm/test/Transforms/SampleProfile/fn-alias.ll

  Log Message:
  -----------
  [SampleProf] test that calls to function aliases get profile info (#169355)

When a call is made to a function alias, in
SampleProfileLoader::generateMDProfMetadata we look up the actual call
target name in the profile to resolve the alias, in the same way as we
do for indirect calls. Add a test for this so we don't lose profile info
on these calls some day.


  Commit: 793d9c91f23dd0139c0308a05afaf73c48166d10
      https://github.com/llvm/llvm-project/commit/793d9c91f23dd0139c0308a05afaf73c48166d10
  Author: Joseph Huber <huberjn at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang-rt/CMakeLists.txt

  Log Message:
  -----------
  [flang-rt] Disable testing support for the GPU cross build (#175583)

Summary:
We're starting to provide the GPU version of the Fortran runtime with
the GPU cross-build semantics. This does not support tests right now but
will attempt to build the unit tests and fail to find gtest for the GPU.
Disable this for now so it can build.


  Commit: c6013a196611f88672537961c8cc90237f353dad
      https://github.com/llvm/llvm-project/commit/c6013a196611f88672537961c8cc90237f353dad
  Author: Abhinav Pradeep <abhinav.pradeep at oracle.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    M clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    M clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    M clang/lib/Analysis/LifetimeSafety/Loans.cpp
    M clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/test/Sema/warn-lifetime-safety.cpp
    M clang/unittests/Analysis/LifetimeSafetyTest.cpp

  Log Message:
  -----------
  [LifetimeSafety] Add support for tracking non-trivially destructed temporary objects (#172007)

Add support for tracking loans to temporary materializations that
require non-trivial destructors. We only support non-trivially
destructed temporaries as they have a nice end-of-life marker via the
`CFGTemporaryDtor`.

This small PR introduces the following changes:
1. AccessPaths can now also represent `MaterializeTemporaryExpr *` via
`llvm::PointerUnion`
3. `FactsGenerator::VisitMaterializeTemporaryExpr` now checks to see if
the temporary materialization is such that it requires a non-trivial
destructor (by checking for a child `CXXBindTemporaryExpr` node when all
implicit casts are stripped away), and if so: creates a Loan whose
AccessPath is a pointer to that `MaterializeTemporaryExpr`, and issues
it to the origin represented by the `MaterializeTemporaryExpr` node we
were called on. When we cannot find a child `CXXBindTemporaryExpr`, we
fall-back to an `OriginFlow` as before.
4. `FactsGenerator::handleTemporaryDtor` is called from
`FactsGenerator::run` when it encounters a `CFGTemporaryDtor`. It then
issues an `ExpireFact` for loan to the corresponding destructed
temporary by matching on `CXXBindTemporaryExpr *`
5. Unit tests are extended via the matcher `HasLoanToATemporary` which
can check if an origin has a loan to at least 1 temporary. This is done
as we are not nicely and reproducibly able to uniquely identify a loan
with `AccessPath` `MaterializeTemporaryExpr *`, so we settle for
checking the presence of at least a loan to a temporary.
6. A lit test is added for the case where an already destructed
temporary is used.

Addresses: [#152514](https://github.com/llvm/llvm-project/issues/152514)


  Commit: bf5975e2bab0714707baaf454be1cf4146118c53
      https://github.com/llvm/llvm-project/commit/bf5975e2bab0714707baaf454be1cf4146118c53
  Author: Antonio Frighetto <me at antoniofrighetto.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/InstCombine/InstructionCombining.cpp
    M llvm/test/Transforms/InstCombine/switch-xor.ll

  Log Message:
  -----------
  [InstCombine] Restrain folding switch condition operation into case to one-use

It may be profitable to simplify the switch condition operation into
their cases if such a condition is used only by the switch.


  Commit: 9780d421ce5439ca2e9aa9cb3a29866070d20314
      https://github.com/llvm/llvm-project/commit/9780d421ce5439ca2e9aa9cb3a29866070d20314
  Author: NAKAMURA Takumi <geek4civic at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/AST/IgnoreExpr.h
    M clang/lib/CodeGen/CodeGenFunction.cpp
    M clang/test/CoverageMapping/mcdc-nested-expr.cpp

  Log Message:
  -----------
  [MC/DC] Handle __builtin_expect as if parenthses (#125405)

Fixes #124565


  Commit: 53ad9cdc32b7e6935bb1f2314acf42e678463104
      https://github.com/llvm/llvm-project/commit/53ad9cdc32b7e6935bb1f2314acf42e678463104
  Author: Louis Dionne <ldionne.2 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/__math/special_functions.h

  Log Message:
  -----------
  [libc++] Fix typo in math special functions

Extracted from #156270

Co-Authored-by: Austin Jiang <austinjiangboyu at gmail.com>


  Commit: 1cd8e8756be7fce7bc484056ffd21d16e11e77b2
      https://github.com/llvm/llvm-project/commit/1cd8e8756be7fce7bc484056ffd21d16e11e77b2
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/X86/X86.h
    M llvm/lib/Target/X86/X86ArgumentStackSlotRebase.cpp
    M llvm/lib/Target/X86/X86PassRegistry.def
    M llvm/lib/Target/X86/X86TargetMachine.cpp

  Log Message:
  -----------
  [X86][NewPM] Port x86-argument-stack-slot (#175659)

Standard porting. Refactor runOnMachineFunction to a static function,
and then wrap it in the legacy/new PMs. Rename the pass to be consistent
with other backend passes.


  Commit: ad3e3d809e0b1fae79ba5f1fad1b4cb59688daa1
      https://github.com/llvm/llvm-project/commit/ad3e3d809e0b1fae79ba5f1fad1b4cb59688daa1
  Author: actink <actink at 163.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
    M llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
    M llvm/test/CodeGen/X86/fold-int-pow2-with-fmul-or-fdiv.ll
    M llvm/test/CodeGen/X86/known-never-zero.ll
    M llvm/test/CodeGen/X86/known-pow2.ll
    M llvm/test/CodeGen/X86/pr172046.ll
    M llvm/test/CodeGen/X86/pr89877.ll

  Log Message:
  -----------
  [SDAG] fix miss opt: shl nuw + zext adds unnecessary masking (#172046)

close: #171750


  Commit: 84bbaa097c591b32e0f20a546ae6397705ba5ceb
      https://github.com/llvm/llvm-project/commit/84bbaa097c591b32e0f20a546ae6397705ba5ceb
  Author: Kai Nacke <kai.peter.nacke at ibm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/MC/MCGOFFStreamer.h
    M llvm/include/llvm/MC/MCObjectStreamer.h
    M llvm/lib/MC/GOFFObjectWriter.cpp
    M llvm/lib/MC/MCGOFFStreamer.cpp
    M llvm/lib/Target/SystemZ/MCTargetDesc/SystemZHLASMAsmStreamer.cpp
    M llvm/test/CodeGen/SystemZ/zos-hlasm-out.ll
    A llvm/test/CodeGen/SystemZ/zos-symbol-2.ll

  Log Message:
  -----------
  [SystemZ][z/OS] Handle labels for parts (#175665)

Global data is emitted into parts, which are modelled as a MCSection. A
label (symbol of type LD) is not allowed in a part, which requires
special handling. The approach is to not emit the label at all, and
using the part symbol in relocations.


  Commit: 32ec071e3865f7654d4702d14f91272769f84081
      https://github.com/llvm/llvm-project/commit/32ec071e3865f7654d4702d14f91272769f84081
  Author: Zichen Lu <mikaovo2000 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/IR/Module.cpp
    M llvm/unittests/IR/ModuleTest.cpp

  Log Message:
  -----------
  [IR] Fix Module move-assignment missing NamedMDSymTab, ComdatSymTab and Parent update (#175501)

`Module::operator=(Module&&)` had three bugs:
1. `NamedMDSymTab` was not moved, may causing getNamedMetadata() to
fail.
2. `ComdatSymTab` was not moved, may causing getOrInsertComdat() to
fail.
3. `NamedMDNode::Parent` was not updated after splice, may causing
getParent() to return the wrong Module.


  Commit: fde0d50aceb52b33388ff44e588a1c70f4d5b65b
      https://github.com/llvm/llvm-project/commit/fde0d50aceb52b33388ff44e588a1c70f4d5b65b
  Author: Jakub Kuderski <jakub at nod-labs.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/STLForwardCompat.h
    M llvm/unittests/ADT/STLForwardCompatTest.cpp

  Log Message:
  -----------
  [ADT] Forward-port constexpr invoke from C++20 (#175690)

I want to use it to simplify https://github.com/llvm/llvm-project/pull/175056


  Commit: af39416f8b9a9e8bee8fe7af2c3b7e1f7470a766
      https://github.com/llvm/llvm-project/commit/af39416f8b9a9e8bee8fe7af2c3b7e1f7470a766
  Author: Mehdi Amini <joker.eph at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/Basic/Targets/NVPTX.cpp
    M clang/lib/Basic/Targets/NVPTX.h
    M clang/test/CodeGen/builtins-nvptx-ptx60.cu
    M clang/test/CodeGen/builtins-nvptx.c
    M clang/test/CodeGen/nvptx_attributes.c
    M clang/test/CodeGenCUDA/convergent.cu
    M clang/test/CodeGenSYCL/kernel-caller-entry-point.cpp
    M flang/lib/Frontend/CompilerInstance.cpp
    M flang/test/Lower/OpenMP/target_cpu_features.f90
    M llvm/lib/Target/NVPTX/NVPTX.td
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.cpp
    M llvm/lib/Target/NVPTX/NVPTXSubtarget.h
    M llvm/test/CodeGen/NVPTX/clusterlaunchcontrol-multicast.ll
    M llvm/test/CodeGen/NVPTX/convert-sm100a.ll
    M llvm/test/CodeGen/NVPTX/convert-sm103a.ll
    M llvm/test/CodeGen/NVPTX/f32-ex2.ll
    M llvm/test/CodeGen/NVPTX/fexp2.ll
    M llvm/test/CodeGen/NVPTX/flog2.ll
    M llvm/test/CodeGen/NVPTX/i128.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch-O0.ll
    R llvm/test/CodeGen/NVPTX/ptx-version-validation.ll
    M llvm/test/CodeGen/NVPTX/rsqrt.ll
    M llvm/test/CodeGen/NVPTX/sm-version.ll
    M llvm/test/CodeGen/NVPTX/surf-tex.py
    A llvm/test/CodeGen/NVPTX/wmma-ptx86-sm120a.py
    M mlir/include/mlir/Dialect/GPU/Transforms/Passes.td
    M mlir/include/mlir/Dialect/LLVMIR/NVVMOps.td

  Log Message:
  -----------
  Revert "[NVPTX] Validate user-specified PTX version against SM version" (#175760)

Reverts llvm/llvm-project#174834

Bots are broken.


  Commit: 496f2ef087e9a182a7aa72fd11f3187baf04272d
      https://github.com/llvm/llvm-project/commit/496f2ef087e9a182a7aa72fd11f3187baf04272d
  Author: A. Jiang <de34 at live.cn>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/input.output/iostream.format/quoted.manip/quoted_traits.compile.pass.cpp
    R libcxx/test/std/input.output/iostream.format/quoted.manip/quoted_traits.compile.pass.cpp

  Log Message:
  -----------
  [libc++][test] Move the SFINAE test for return types of `quoted` to `libcxx/test/libcxx/` (#157026)

[quoted.manip] only specifies that `operator<<`/`operator>>` is
well-formed for operands with suitable types, and leaves it undefined
whether they are SFINAE-friendly.

Although it's worthwhile making them SFINAE-friendly, perhaps the
SFINAE-friendliness should be considered as a libc++-specific choice at
this moment.

See LWG4364 for whether this should be considered portable.


  Commit: 3bf53844cfedf09f22d2786e57ef81d5d41fe249
      https://github.com/llvm/llvm-project/commit/3bf53844cfedf09f22d2786e57ef81d5d41fe249
  Author: Matthias Springer <me at m-sp.org>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/include/mlir/Dialect/SCF/IR/SCFOps.td
    M mlir/lib/Dialect/SCF/IR/SCF.cpp
    M mlir/test/Analysis/DataFlow/test-dead-code-analysis.mlir

  Log Message:
  -----------
  [mlir][SCF] Fix region branch op interfaces for `scf.forall` and its terminator (#174221)

`scf.forall` does not completely implement the
`RegionBranchOpInterface`: `scf.forall.in_parallel` does not implement
the `RegionBranchTerminatorOpInterface`.

Incomplete interface implementation is a problem for transformations
that try to understand the control flow by querying the
`RegionBranchOpInterface`.

Detailed explanation of what is wrong with the current implementation.
- There is exactly one region branch point: "parent". `in_parallel` is
not a region branch point because it does not implement the
`RegionBranchTerminatorOpInterface`. (Clarified in #174978.)
- `ForallOp::getSuccessorRegions(parent)` returns one region successors:
the region of the `scf.forall` op.
- Since there is no region branch point in the region, there is no way
to leave the region. This means: once you enter the region, you are
stuck in it indefinitely. (It is unspecified what happens once you are
in the region, but we can be sure that you cannot leave it.)

This commit adds the `RegionBranchTerminatorOpInterface` (via
`ReturnLike`) to `scf.forall.in_parallel` to indicate the after leaving
the region, the control flow returns to the parent. (Note: Only block
terminators in directly nested regions can be region branch terminators,
so `in_parallel` is the only possible op. I.e., `parallel_insert_slice`
cannot be a region branch terminator.)

This commit also removes all successor operands / inputs from the
implementation. The number of successor operands and successor inputs
must match, but `scf.forall.in_parallel` has no operands. Therefore, the
region must also have 0 successor inputs. Therefore, the `scf.forall` op
must also have 0 successor operands.

This commit also adds a missing control flow edge from "parent" to
"parent": in case of 0 threads, the region is not entered.

Depends on #174978.


  Commit: 88500e5a6b71973c38a26c1e70025918bf9609fc
      https://github.com/llvm/llvm-project/commit/88500e5a6b71973c38a26c1e70025918bf9609fc
  Author: David Spickett <david.spickett at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M lldb/unittests/DAP/ProtocolTypesTest.cpp

  Log Message:
  -----------
  [lldb][test] Fix warning in DAP unit tests

ProtocolTypesTest.cpp:1140:19: warning: loop variable '[value, expected]' creates a copy from type 'std::pair<lldb_dap::protocol::ExceptionBreakMode, llvm::StringRef> const' [-Wrange-loop-construct]
  for (const auto [value, expected] : test_cases) {

Not that it matters because the types are lightweight, but the warning
is creating noise in my builds.


  Commit: 6889c3863e310fac53b418c2d570ac66e2c4f6ae
      https://github.com/llvm/llvm-project/commit/6889c3863e310fac53b418c2d570ac66e2c4f6ae
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/__ranges/data.h
    A libcxx/test/libcxx/ranges/range.adaptors/range.access/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges] Applied `[[nodiscard]]` to Range access (#173550)

`[[nodiscard]]` should be applied to functions where discarding the
return value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.access

Towards #172124


  Commit: dd63117c1a97836d2bd8856457927e3f20149b33
      https://github.com/llvm/llvm-project/commit/dd63117c1a97836d2bd8856457927e3f20149b33
  Author: Fateme Hosseini <quic_fhossein at quicinc.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
    A llvm/test/CodeGen/Hexagon/hvx-constpool-vector-type.ll

  Log Message:
  -----------
  [Hexagon] Fix PIC crash when lowering HVX vector constants (#175413)

Fix a PIC-only crash in Hexagon HVX lowering where we ended up treating
a vector-typed constant-pool reference as an address (e.g. when forming
PC-relative addresses), which triggers a type mismatch during lowering.
Build the constant-pool reference with the target pointer type instead,
then load the HVX vector from that address.


  Commit: c88cbaf2b204795c04596ee3071ce3484f0e610a
      https://github.com/llvm/llvm-project/commit/c88cbaf2b204795c04596ee3071ce3484f0e610a
  Author: hev <wangrui at loongson.cn>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/LoongArch/AsmParser/LoongArchAsmParser.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.cpp
    M llvm/lib/Target/LoongArch/LoongArchInstrInfo.td
    M llvm/lib/Target/LoongArch/LoongArchMCInstLower.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchBaseInfo.h
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCAsmInfo.cpp
    M llvm/lib/Target/LoongArch/MCTargetDesc/LoongArchMCCodeEmitter.cpp
    M llvm/test/MC/LoongArch/Basic/Integer/invalid.s
    M llvm/test/MC/LoongArch/Macros/macros-call.s

  Log Message:
  -----------
  [llvm][LoongArch] Add call30 and tail30 macro instruction support (#175356)

Link:
https://sourceware.org/pipermail/binutils/2025-December/146091.html


  Commit: ed0eaa4aef5985fbdc591d3a3fad49d191f1ff34
      https://github.com/llvm/llvm-project/commit/ed0eaa4aef5985fbdc591d3a3fad49d191f1ff34
  Author: azwolski <antoni.zwolski at intel.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [X86] Add bf16 support to isFMAFasterThanFMulAndFAdd for basic FMA optimizations (#172006)

This PR extends `isFMAFasterThanFMulAndFAdd` in `X86ISelLowering` to
handle
bfloat types. This enables basic FMA optimizations for bf16
operations on AVX10.2 targets.

Includes tests for scalar and vector bf16 cases:
- Scalar bf16 FMA lowering (AVX10.2 do not support scalar bf16
operations)
- Vector bf16 FMA fusion for 128-bit, 256-bit, and 512-bit widths


  Commit: 7581c7018bc47f07b0acc5e9fa7f24d2085ea016
      https://github.com/llvm/llvm-project/commit/7581c7018bc47f07b0acc5e9fa7f24d2085ea016
  Author: Nikolas Klauser <nikolasklauser at berlin.de>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libcxx/include/__algorithm/unwrap_iter.h

  Log Message:
  -----------
  [libc++] Simplify __unwrap_iter a bit (#175153)

`__unwrap_iter` doesn't need to SFINAE away, so we can just check inside
the function body whether an iterator is copy constructible. This
reduces the overload set, improving compile times a bit.


  Commit: 351d06a8191e3ae50a73149c3b67ae2decb49e26
      https://github.com/llvm/llvm-project/commit/351d06a8191e3ae50a73149c3b67ae2decb49e26
  Author: MaPePeR <MaPePeR at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [MLIR][Python] Improve Iterator performance. Don't `throw` in `dunderNext` methods. (#175377)

In
https://github.com/llvm/llvm-project/pull/174139#issuecomment-3733259370
I wrote a scuffed benchmark that mostly iterates MLIR Container Types in
Python. My changes from that PR made the performance worse, so I closed
it.

However, when experimetning with that I also saw a large(?) performance
gain by changing the `dunderNext` methods of the various Iterators to
use `PyErr_SetNone(PyExc_StopIteration);` instead of `throw
nb::stop_iteration();`.

<details><summary>Benchmark attempt script</summary>

```python
import timeit

from mlir.ir import Context, Location, Module, InsertionPoint, Block, Region, OpView
from mlir.dialects import func, builtin, scf, arith

def generate_module():
    m = Module.create()
    with InsertionPoint(m.body):
        f = func.FuncOp("main", builtin.FunctionType.get([], []))
    with InsertionPoint(f.body.blocks.append()):
        generate_ops(10, 2)
        func.ReturnOp([])
    return m

def generate_ops(count: int, depth: int):
    if depth == 0:
        return
    lower = arith.ConstantOp(builtin.IntegerType.get_signless(64), 0)
    upper = arith.ConstantOp(builtin.IntegerType.get_signless(64), 100)
    step =  arith.ConstantOp(builtin.IntegerType.get_signless(64), 1)
    for i in range(count):
        forop = scf.ForOp(lower, upper, step)
        with InsertionPoint(forop.region.blocks[0]):
            generate_ops(count, depth - 1)
            scf.YieldOp([])

def walk_module(m: Module):
    walk_block(m.body)

def walk_region(region: Region):
    for block in region.blocks:
        walk_block(block)

def walk_block(block: Block):
    for predecessors in block.predecessors:
        pass
    for successors in block.successors:
        pass
    for op in block.operations:
        walk_op(op)

def walk_op(op: OpView):
    for result in op.results:
        pass
    for successors in op.successors:
        pass
    for operands in op.operands:
        pass
    for region in op.regions:
        walk_region(region)

with Context(), Location.unknown():
    m = generate_module()

    #  From timeit.main:
    t = timeit.Timer(lambda: walk_module(m))
    number, _ = t.autorange()
    repeats = 5
    raw_timings = t.repeat(repeats, number)
    timings = [dt / number for dt in raw_timings]
    best = min(timings)
    print(f"{number} loops, best of {repeats}: {best * 1000:.3g} msecs per loop")
```
</details>


The performance of the benchmark went from
```
50 loops, best of 5: 5.97 msecs per loop
```
to
```
50 loops, best of 5: 5.12 msecs per loop
```
in my setup, which is a ~14% improvement. (Though you should validate
that yourself, probably. My test setup is very scuffed)

The functions were previously set to return a C++ type like `PyRegion`.
Because of the removal of the `throw` they now had to [return a `NULL`
value to
Python](https://github.com/python/cpython/blob/aa8578dc54df2af9daa3353566359e602e5905cf/Objects/call.c#L49-L61),
so I changed the return type to
`nanobind::typed<nanobind::object,PyRegion>` so I could return an
`nb::object()` in case an error was set and otherwise `nb::cast` the
`PyRegion` value to `nb::object` instead of returning it directly.

I'm not a huge fan, that this changes the external "Usage" of the
functions, because now they won't bubble up exceptions, when they are
called from C++ The return type and Python Error State have to be
checked instead.
I couldn't find any location that called them in llvm itself, though.
Maybe these functions should not be public, because they are only
supposed to be called from Python anyway?

---------

Co-authored-by: Maksim Levental <maksim.levental at gmail.com>


  Commit: 7c2f49373bceacf224b8160a7300be624ed5914e
      https://github.com/llvm/llvm-project/commit/7c2f49373bceacf224b8160a7300be624ed5914e
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h
    M offload/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  [OFFLOAD] Update CUDA and AMD plugins to new debug format (#175757)

This should be the last step before completely removing the DP macro.


  Commit: b93e2432ad1615c383125373861ee02208e8a167
      https://github.com/llvm/llvm-project/commit/b93e2432ad1615c383125373861ee02208e8a167
  Author: mcbarton <matthew.c.barton at hotmail.co.uk>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ExecutionEngine/Orc/BacktraceTools.h

  Log Message:
  -----------
  Remove LLVM_ABI from symbolicate declaration in BacktraceTools.h (#175764)

The class is already annotated with LLVM_ABI, so individual members shouldn't be.


  Commit: 86e114a9b24f16d7bb305a0be9cb565bca0b5224
      https://github.com/llvm/llvm-project/commit/86e114a9b24f16d7bb305a0be9cb565bca0b5224
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h
    M offload/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  Revert "[OFFLOAD] Update CUDA and AMD plugins to new debug format" (#175786)

Reverts llvm/llvm-project#175757


  Commit: 62f629a661cbcdac1e73a1c51179550bce97d2a2
      https://github.com/llvm/llvm-project/commit/62f629a661cbcdac1e73a1c51179550bce97d2a2
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/LowerMemIntrinsics.h
    M llvm/lib/Transforms/Utils/LowerMemIntrinsics.cpp
    M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memcpy-inline-non-constant-len.ll
    M llvm/test/Transforms/PreISelIntrinsicLowering/X86/memset-inline-non-constant-len.ll
    M llvm/utils/profcheck-xfail.txt

  Log Message:
  -----------
  [LowerMemIntrinsics] Propagate value profile to branch weights (#174490)

If the mem intrinsics have value profile information associated, we can synthesize branch weights when converting them (the intrinsics) to loops.  
  
Issue #147390


  Commit: f8ae05130e4672da9bc617883aa74d7f74604ab7
      https://github.com/llvm/llvm-project/commit/f8ae05130e4672da9bc617883aa74d7f74604ab7
  Author: Hristo Hristov <hghristov.rmm at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A libcxx/test/libcxx/ranges/range.adaptors/range.as_rvalue/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.as_rvalue_view/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.common.view/adaptor.nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.common.view/nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.common/nodiscard.verify.cpp
    R libcxx/test/libcxx/ranges/range.adaptors/range.counted/adaptor.nodiscard.verify.cpp
    A libcxx/test/libcxx/ranges/range.adaptors/range.counted/nodiscard.verify.cpp

  Log Message:
  -----------
  [libc++][ranges][NFC] Cleanup `nodiscard.verify.cpp` tests (#175725)

- Removed redundant files
- Renamed files to the common `nodiscard.verify.cpp`


  Commit: 4a9a13cb8c8348378a85726a268a34052590c220
      https://github.com/llvm/llvm-project/commit/4a9a13cb8c8348378a85726a268a34052590c220
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/ADT/FloatingPointMode.h
    M llvm/include/llvm/Support/KnownFPClass.h
    M llvm/lib/Support/KnownFPClass.cpp
    M llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
    M llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll

  Log Message:
  -----------
  InstCombine: Handle fadd in SimplifyDemandedFPClass (#174853)

Note some of the tests currently fail with alive, but not
due to this patch. Namely, when performing the fadd x, 0 -> x
simplification in functions with non-IEEE denormal handling.
The existing instsimplify ignores the denormals-are-zero hazard by
checking cannotBeNegativeZero instead of isKnownNeverLogicalZero.

Also note the self handling doesn't really do anything yet, other
than propagate consistent known-fpclass information until there is
multiple use support.

This also leaves behind the original ValueTracking support, without
switching to the new KnownFPClass:fadd utility. This will be easier
to clean up after the subsequent fsub support patch.


  Commit: 34603dba6987dc9aeb1a52181ed7d291ff5a2283
      https://github.com/llvm/llvm-project/commit/34603dba6987dc9aeb1a52181ed7d291ff5a2283
  Author: Mircea Trofin <mtrofin at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Utils/CMakeLists.txt

  Log Message:
  -----------
  Fix dependencies after PR #174490 (#175793)

Added the missing direct dependency (it was already an indirect dependency due to `Analysis`)


  Commit: 94cc82d742e53a2fcaa5bcb7b42f24907b7ca8b2
      https://github.com/llvm/llvm-project/commit/94cc82d742e53a2fcaa5bcb7b42f24907b7ca8b2
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Frontend/OpenMP/ConstructDecompositionT.h

  Log Message:
  -----------
  [OpenMP] Remove special handling of implicit clauses in decomposition (#174654)

Applying implicit clauses should not cause any issues. The only
exception is that "simd linear(x)" could imply a "firstprivate", and
that clause is not allowed on the simd construct.
Add a check for that specific case, and apply all implicit clauses as if
they were explicit.


  Commit: d20f617ab83c69b046640824577d16c61f4a305d
      https://github.com/llvm/llvm-project/commit/d20f617ab83c69b046640824577d16c61f4a305d
  Author: Rahul Joshi <rjoshi at nvidia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/include/llvm/Analysis/BlockFrequencyInfoImpl.h
    M llvm/include/llvm/Analysis/LazyCallGraph.h
    M llvm/include/llvm/Support/FormatVariadic.h
    M llvm/lib/Analysis/ImportedFunctionsInliningStatistics.cpp
    M llvm/lib/CodeGen/MIRCanonicalizerPass.cpp
    M llvm/lib/CodeGen/MachineBlockPlacement.cpp
    M llvm/lib/CodeGen/ModuloSchedule.cpp
    M llvm/lib/CodeGen/TargetLoweringObjectFileImpl.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp
    M llvm/lib/DebugInfo/GSYM/GsymCreator.cpp
    M llvm/lib/IR/Attributes.cpp
    M llvm/lib/IR/Core.cpp
    M llvm/lib/IR/DiagnosticInfo.cpp
    M llvm/lib/IR/Mangler.cpp
    M llvm/lib/LTO/LTOCodeGenerator.cpp
    M llvm/lib/Object/Archive.cpp
    M llvm/lib/Object/ArchiveWriter.cpp
    M llvm/lib/Object/IRSymtab.cpp
    M llvm/lib/ObjectYAML/DWARFEmitter.cpp
    M llvm/lib/ObjectYAML/WasmEmitter.cpp
    M llvm/lib/Remarks/YAMLRemarkParser.cpp
    M llvm/lib/Support/Chrono.cpp
    M llvm/tools/lli/lli.cpp
    M llvm/tools/llvm-cov/TestingSupport.cpp
    M llvm/tools/llvm-cxxdump/llvm-cxxdump.cpp
    M llvm/tools/llvm-exegesis/lib/BenchmarkResult.cpp
    M llvm/tools/llvm-ifs/llvm-ifs.cpp
    M llvm/tools/llvm-libtool-darwin/llvm-libtool-darwin.cpp
    M llvm/tools/llvm-lipo/llvm-lipo.cpp
    M llvm/tools/llvm-mca/Views/BottleneckAnalysis.cpp
    M llvm/tools/llvm-mca/Views/DispatchStatistics.cpp
    M llvm/tools/llvm-mca/Views/InstructionView.cpp
    M llvm/tools/llvm-mca/Views/RegisterFileStatistics.cpp
    M llvm/tools/llvm-mca/Views/RetireControlUnitStatistics.cpp
    M llvm/tools/llvm-mca/Views/SummaryView.cpp
    M llvm/tools/llvm-mca/llvm-mca.cpp
    M llvm/tools/llvm-nm/llvm-nm.cpp
    M llvm/tools/llvm-objdump/COFFDump.cpp
    M llvm/tools/llvm-objdump/ELFDump.cpp
    M llvm/tools/llvm-objdump/MachODump.cpp
    M llvm/tools/llvm-objdump/WasmDump.cpp
    M llvm/tools/llvm-objdump/XCOFFDump.cpp
    M llvm/tools/llvm-rtdyld/llvm-rtdyld.cpp
    M llvm/tools/llvm-size/llvm-size.cpp
    M llvm/tools/obj2yaml/obj2yaml.cpp
    M llvm/unittests/Frontend/HLSLRootSignatureDumpTest.cpp
    M llvm/unittests/Support/raw_ostream_test.cpp

  Log Message:
  -----------
  [NFCI][LLVM] Remove `raw_string_ostream::flush` calls (#164086)

Remove calls to `flush()` on `raw_string_ostream` objects as they are not needed.


  Commit: 5cb4d32e3ddaa891bffc8fd215af985f154d264f
      https://github.com/llvm/llvm-project/commit/5cb4d32e3ddaa891bffc8fd215af985f154d264f
  Author: Krzysztof Drewniak <Krzysztof.Drewniak at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .gitignore

  Log Message:
  -----------
  [NFC] Add tablegen_compile_commands.yml to .gitignore (#175687)

People may want to symlink the autogonerated
tablegen_compile_commands.yml into their source directories by analogy
with compile_commands.json, and so this commit given them similar
.gitignore treatment.


  Commit: 2e0e4f6cb3a336b695b18eaec62a844b535b6dbd
      https://github.com/llvm/llvm-project/commit/2e0e4f6cb3a336b695b18eaec62a844b535b6dbd
  Author: Matt Arsenault <Matthew.Arsenault at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Target/AMDGPU/SIISelLowering.cpp
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslate-bf16.ll
    M llvm/test/CodeGen/AMDGPU/GlobalISel/irtranslator-function-args.ll
    M llvm/test/CodeGen/AMDGPU/bf16.ll
    M llvm/test/CodeGen/AMDGPU/constant-address-space-32bit.ll
    M llvm/test/CodeGen/AMDGPU/llvm.exp2.bf16.ll
    M llvm/test/CodeGen/AMDGPU/llvm.log2.bf16.ll
    M llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
    M llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll

  Log Message:
  -----------
  AMDGPU: Directly use v2bf16 as register type for bf16 vectors. (#175761)

Previously we were casting v2bf16 to i32, unlike the f16 case. Simplify
this by using the natural vector type. This is probably a leftover from
before v2bf16 was treated as legal. This is preparation for fixing a
miscompile in globalisel.


  Commit: e6cdfb75ac88719c3bb6f3cab17ec0c8a781a34f
      https://github.com/llvm/llvm-project/commit/e6cdfb75ac88719c3bb6f3cab17ec0c8a781a34f
  Author: Austin Jiang <austinjiangboyu at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M bolt/lib/Core/DebugNames.cpp
    M bolt/test/X86/Inputs/dwarf4-gdb-index-types-helper.s
    M bolt/test/X86/Inputs/dwarf4-gdb-index-types-main.s
    M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
    M clang-tools-extra/clangd/Hover.cpp
    M clang-tools-extra/clangd/index/FileIndex.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/faster-strsplit-delimiter.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity.cpp
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaDeclCXX.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
    M clang/test/Analysis/csv2json.py
    M clang/test/Analysis/cxx-uninitialized-object-inheritance.cpp
    M clang/test/Analysis/cxx-uninitialized-object.cpp
    M clang/test/Analysis/uninit-ps-rdar6145427.m
    M clang/test/CXX/except/except.spec/p13-friend.cpp
    M clang/test/CodeGenCXX/ctor-empty-nounique.cpp
    M clang/unittests/Format/FormatTestCSharp.cpp
    M compiler-rt/lib/builtins/arm/addsf3.S
    M compiler-rt/lib/builtins/fp_add_impl.inc
    M compiler-rt/lib/gwp_asan/tests/backtrace.cpp
    M flang-rt/unittests/Runtime/NumericalFormatTest.cpp
    M flang/lib/Lower/ConvertConstant.cpp
    M flang/lib/Semantics/check-omp-structure.cpp
    M libc/src/__support/RPC/rpc_server.h
    M libc/src/__support/math/cbrt.h
    M libc/src/__support/str_to_float.h
    M libc/src/stdio/generic/fgets.cpp
    M libc/src/stdlib/strfroml.cpp
    M libc/test/integration/startup/gpu/rpc_interface_test.cpp
    M lldb/docs/resources/lldbgdbremote.md
    M lldb/docs/resources/qemu-testing.rst
    M lldb/include/lldb/API/SBCommandInterpreter.h
    M lldb/include/lldb/Target/Platform.h
    M lldb/source/Plugins/ObjectFile/ELF/ObjectFileELF.h
    M lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
    M lldb/source/Plugins/TraceExporter/common/TraceHTR.cpp
    M lldb/source/Plugins/TraceExporter/common/TraceHTR.h
    M lldb/source/ValueObject/DILEval.cpp
    M lldb/test/API/linux/aarch64/mte_core_file/TestAArch64LinuxMTEMemoryTagCoreFile.py
    M lldb/test/API/linux/aarch64/mte_tag_access/TestAArch64LinuxMTEMemoryTagAccess.py
    M lldb/test/API/macosx/dsym_modules/TestdSYMModuleInit.py
    M lldb/test/Shell/SymbolFile/DWARF/split-dwarf-expression-eval-bug.cpp
    M lldb/unittests/Utility/StreamTest.cpp
    M llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
    M llvm/include/llvm/Support/LEB128.h
    M llvm/include/llvm/Support/raw_socket_stream.h
    M llvm/lib/CodeGen/RegisterPressure.cpp
    M llvm/lib/DebugInfo/DWARF/DWARFContext.cpp
    M llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
    M llvm/lib/Support/TextEncoding.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUPostLegalizerCombiner.cpp
    M llvm/lib/Target/AMDGPU/AMDGPUSwLowerLDS.cpp
    M llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
    M llvm/lib/Target/WebAssembly/WebAssemblyISelLowering.cpp
    M llvm/lib/Target/X86/X86SchedLunarlakeP.td
    M llvm/lib/Transforms/IPO/AttributorAttributes.cpp
    M llvm/lib/Transforms/Scalar/LICM.cpp
    M llvm/lib/Transforms/Scalar/LoopIdiomRecognize.cpp
    M llvm/lib/Transforms/Scalar/LoopStrengthReduce.cpp
    M llvm/lib/Transforms/Utils/IRNormalizer.cpp
    M llvm/test/CodeGen/AArch64/settag-merge-nonaligned-fp.ll
    M llvm/test/CodeGen/AMDGPU/coalescing_makes_lanes_undef.mir
    M llvm/test/DebugInfo/typeunit-header.test
    M llvm/test/MC/COFF/section.s
    M llvm/test/Transforms/PreISelIntrinsicLowering/X86/objc-arc.ll
    M llvm/test/tools/dsymutil/X86/modules-empty.m
    M llvm/test/tools/llvm-mca/X86/Haswell/mulx-same-regs.s
    M llvm/test/tools/llvm-mca/X86/SkylakeClient/mulx-same-regs.s
    M llvm/test/tools/llvm-mca/X86/Znver3/mulx-same-regs.s
    M llvm/test/tools/llvm-ranlib/D-flag.test
    M mlir/include/mlir/Analysis/DataFlowFramework.h
    M mlir/include/mlir/Dialect/Bufferization/Transforms/BufferViewFlowAnalysis.h
    M mlir/include/mlir/Interfaces/TilingInterface.td
    M mlir/lib/Dialect/Arith/IR/ArithOps.cpp
    M mlir/lib/Dialect/SparseTensor/IR/Detail/DimLvlMapParser.cpp
    M mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
    M mlir/test/Dialect/Arith/invalid.mlir
    M mlir/test/lib/Analysis/TestDataFlowFramework.cpp
    M openmp/libompd/gdb-plugin/ompdModule.c
    M openmp/runtime/src/kmp_runtime.cpp
    M openmp/runtime/test/api/omp60_memory_routines.c

  Log Message:
  -----------
  Fix typos and spelling errors across codebase (#156270)

Corrected various spelling mistakes such as 'occurred', 'receiver',
'initialized', 'length', and others in comments, variable names,
function names, and documentation throughout the project. These
changes improve code readability and maintain consistency in naming
and documentation.

Co-authored-by: Louis Dionne <ldionne.2 at gmail.com>


  Commit: efad3563ea461025808049e10ef6c5faff5e4b77
      https://github.com/llvm/llvm-project/commit/efad3563ea461025808049e10ef6c5faff5e4b77
  Author: Alex Duran <alejandro.duran at intel.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M offload/plugins-nextgen/amdgpu/dynamic_hsa/hsa.cpp
    M offload/plugins-nextgen/amdgpu/src/rtl.cpp
    M offload/plugins-nextgen/amdgpu/utils/UtilitiesRTL.h
    M offload/plugins-nextgen/cuda/dynamic_cuda/cuda.cpp
    M offload/plugins-nextgen/cuda/src/rtl.cpp

  Log Message:
  -----------
  [OFFLOAD] Update CUDA and AMD plugins to new debug format (#175787)


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

  Changed paths:
    A libcxx/docs/Status/Cxx2cIssues.csvgb
    A libcxx/utils/conformance
    M libcxx/utils/requirements.txt
    R libcxx/utils/synchronize_csv_status_files.py

  Log Message:
  -----------
  [libc++] Improve the script to manage libc++ conformance issues (#172905)

The previous script was fairly inflexible. This patch refactors the
script into a tool that can be used in various ways to manage the
conformance-tracking bits of libc++. This should make it possible to
synchronize the CSV status files, but also to find Github issues that
aren't linked to the 'C++ Standards Conformance' project, to create
missing issues more easily, etc.


  Commit: aa299269eae40dd7f25a41f1885d6db16ffc9105
      https://github.com/llvm/llvm-project/commit/aa299269eae40dd7f25a41f1885d6db16ffc9105
  Author: DaKnig <37626476+DaKnig at users.noreply.github.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
    M llvm/test/CodeGen/AArch64/dag-combine-setcc.ll
    M llvm/test/CodeGen/Thumb2/mve-vabdus.ll

  Log Message:
  -----------
  [SDAG] (setcc (sub nsw a, b), zero, s??) -> (setcc a, b, s??) (#175459)

This often happens when the dag combiner produces sign/zero extends and
realizes that nsw/nuw can be added, for example in the case of `(abds
(sext a), (sext b))`

alive2:
- slt, nsw: [link](https://alive2.llvm.org/ce/z/cgjMSx)
- sgt, nsw: [link](https://alive2.llvm.org/ce/z/JP7h2f)
- sle, nsw: [link](https://alive2.llvm.org/ce/z/n5Wuc_)
- sge, nsw: [link](https://alive2.llvm.org/ce/z/Eps53-)


  Commit: 0316441d5ca6cb4bab3dc4e27a3794992eb5cbf5
      https://github.com/llvm/llvm-project/commit/0316441d5ca6cb4bab3dc4e27a3794992eb5cbf5
  Author: Kalvin <hikaph+oss at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/LangOptions.h
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/Options/Options.td
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    M clang/test/Lexer/has_feature_undefined_behavior_sanitizer.cpp

  Log Message:
  -----------
  Add fine-grained `__has_feature()` cutout (#170822)

This is a follow-up to pull #148323. It mints
`-fsanitize-ignore-for-ubsan-feature=...`, accepting a list of (UBSan)
sanitizers that should not cause
`__has_feature(undefined_behavior_sanitizer)` to evaluate true.

---------

Co-authored-by: Kalvin Lee <kdlee at chromium.org>


  Commit: 0a69bccce9ec985ee875154b0a0689be1facc0df
      https://github.com/llvm/llvm-project/commit/0a69bccce9ec985ee875154b0a0689be1facc0df
  Author: Peter Rong <peterrong96 at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/CodeGen/CGObjCGNU.cpp
    M clang/lib/CodeGen/CGObjCMac.cpp
    M clang/lib/CodeGen/CGObjCRuntime.h

  Log Message:
  -----------
  [ObjCDirectPreconditionThunk] Setup helper functions (#170617)

## TL;DR

This is a stack of PRs implementing features to expose direct methods
ABI.
You can see the RFC, design, and discussion
[here](https://discourse.llvm.org/t/rfc-optimizing-code-size-of-objc-direct-by-exposing-function-symbols-and-moving-nil-checks-to-thunks/88866).

https://github.com/llvm/llvm-project/pull/170616 Flag
`-fobjc-direct-precondition-thunk` set up
https://github.com/llvm/llvm-project/pull/170617 **Code refactoring to
ease later reviews**
https://github.com/llvm/llvm-project/pull/170618 Thunk generation
https://github.com/llvm/llvm-project/pull/170619 Optimizations, some
class objects can be known to be realized

## Implementation details


1. `GenerateDirectMethodsPreconditionCheck`: Move some functionalities
to a separate functions. Those functions will be reused if we move
precondition checks into a thunk
2. `GenerateClassRealization` separates the class realization `[self
self]` logic into a new function. It comes handy later when we need to
sometimes inline class realization (for va arg functions)
3. Create `DirectMethodInfo`, a two pointer struct that manage true
implementation and its thunk. When `ObjCDirectPreconditionThunk` is not
used, only true implementation is valid pointing to the LLVM IR
Function.

## Tests

None, existing ones shouldn't break


  Commit: 377efc730beb292d1f51025d51ea27d86196ff06
      https://github.com/llvm/llvm-project/commit/377efc730beb292d1f51025d51ea27d86196ff06
  Author: Longsheng Du <longshengd at nvidia.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M mlir/lib/Dialect/Arith/IR/InferIntRangeInterfaceImpls.cpp
    M mlir/lib/Dialect/LLVMIR/IR/NVVMDialect.cpp
    M mlir/test/Dialect/Arith/int-range-interface.mlir
    M mlir/test/Dialect/LLVMIR/nvvm-test-range.mlir
    M mlir/test/lib/Dialect/Test/TestOpDefs.cpp
    M mlir/test/lib/Dialect/Test/TestOps.td

  Log Message:
  -----------
  [mlir][arith] Fix SelectOp unsafe int range inference with uninitialized range case (#173716)

This PR fixes a bug in `arith::SelectOp::inferResultRangesFromOptional`
where uninitialized SelectOp branch int ranges were incorrectly joined
with initialized int ranges during dataflow analysis, leading to
incorrect folding in `-int-range-optimizations`.

**The Issue:**
When a `arith.select` branch has an uninitialized range (e.g., from an
op like `nvvm.read.ptx.sreg.cluster.ctaid.x`, `scf.switch`, `llvm.call`,
... that lacks range inference), the analysis computed
`IntegerValueRange::join(Uninitialized, Constant) = Constant`. This
caused the `arith.select` to be replaced with the constant, ignoring the
dynamic branch.

**Example:**
```mlir
// The bug before fix: -int-range-optimizations replaces %1 with %c32
// led to incorrect results and unsafe behaviours
%0 = nvvm.read.ptx.sreg.cluster.ctaid.x : i32 // Uninitialized int range
%c32 = arith.constant 32 : i32
%1 = arith.select %cond, %0, %c32 : i32
```

**The Fix:**
Explicitly ensure `inferResultRangesFromOptional` all select cases have
initialized ranges before combining them. If any case is uninitialized,
the result is now treated as max range. Also added default max range for
`nvvmInferResultRanges` and `test.without_bounds` op to simulate and
test uninitialized ranges.

---------

Co-authored-by: Jakub Kuderski <kubakuderski at gmail.com>


  Commit: f07877b2ea748b6f778cb5f3901127f6cad1c26f
      https://github.com/llvm/llvm-project/commit/f07877b2ea748b6f778cb5f3901127f6cad1c26f
  Author: Ryotaro Kasuga <kasuga.ryotaro at fujitsu.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A llvm/test/Analysis/DependenceAnalysis/monotonicity-loop-guard.ll

  Log Message:
  -----------
  [DA] Add tests for nsw doesn't hold on entire iteration space (NFC) (#162281)

The monotonicity definition states its domain as follows:

```
/// The property of monotonicity of a SCEV. To define the monotonicity, assume
/// a SCEV defined within N-nested loops. Let i_k denote the iteration number
/// of the k-th loop. Then we can regard the SCEV as an N-ary function:
///
///   F(i_1, i_2, ..., i_N)
///
/// The domain of i_k is the closed range [0, BTC_k], where BTC_k is the
/// backedge-taken count of the k-th loop
```

Current monotonicity check implementation doesn't match this definition
because:

- Just checking nowrap property of addrecs recursively is not sufficient
to ensure monotonicity over the entire domain. The nowrap property may
hold for certain paths but not for all possible iteration combinations
of nested loops.
- It doesn't consider cases where exact backedge-taken counts are
unknown.

Therefore we need to fix either the definition or the implementation.
This patch adds the test cases that demonstrate this mismatch.


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

  Changed paths:
    M libcxx/utils/conformance

  Log Message:
  -----------
  [libc++] Fix backslash substitution in RST synchronization scripts


  Commit: fb2c5b1b2bd67274486d19bd5fb30f9a1c7952b8
      https://github.com/llvm/llvm-project/commit/fb2c5b1b2bd67274486d19bd5fb30f9a1c7952b8
  Author: Aiden Grossman <aidengrossman at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/utils/lit/lit/TestRunner.py
    R llvm/utils/lit/tests/Inputs/shtest-shell/capital-t-error-message.txt
    M llvm/utils/lit/tests/shtest-shell.py

  Log Message:
  -----------
  [lit] Remove error message for %T (#175782)

We left an error message for users of %T through the LLVM 22 branch
point to hopefully make it easier for anyone migrating versions rather
than having the checks silently fail with a %T ending up in the executed
command. Now that 22 has branched, we can remove this check as we all
downstream users should have seen the error by this point.


  Commit: a05f603c71240f46235586f9d85ad84c05c09538
      https://github.com/llvm/llvm-project/commit/a05f603c71240f46235586f9d85ad84c05c09538
  Author: Krzysztof Parzyszek <Krzysztof.Parzyszek at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M flang/lib/Lower/OpenMP/ClauseProcessor.cpp
    M flang/lib/Lower/OpenMP/Clauses.cpp
    M llvm/include/llvm/Frontend/OpenMP/ClauseT.h

  Log Message:
  -----------
  [flang][Lower] Lower OmpDependClause to Depend or Doacross (#175772)

The clause::Depend class was a variant that either held a TaskDep class
or a Doacross clause. This mirrors the OmpDependClause in the AST, which
due to changes in the OpenMP spec can contain two different forms.

This is not actually necessary, and we can save some complexity by
having clause::Depend only represent task dependence, and lowering
OmpDependClause to either clause:Depend or clause::Doacross.


  Commit: 18c5225d649dcd24c941a5f716c056947994094c
      https://github.com/llvm/llvm-project/commit/18c5225d649dcd24c941a5f716c056947994094c
  Author: David Green <david.green at arm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-load-rcpc_immo.ll
    M llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll

  Log Message:
  -----------
  [AArch64] Regenerate arm64-pcsections.ll and aarch64-atomic-load-rcpc_immo.ll. NFC


  Commit: c461d3cf5e8b9cd2e930d7a275ecdd485b6fcc29
      https://github.com/llvm/llvm-project/commit/c461d3cf5e8b9cd2e930d7a275ecdd485b6fcc29
  Author: Alan Zhao <ayzhao at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [profcheck][InstCombine] Preserve weights for xor statements (#175678)

When simplifying an xor statement with logical boolean operands, we may
be able to preserve branch weight data if the simplified instruction's
conditional was the first operand of one of the two logical boolean
inputs.

Tracking issue: #147390


  Commit: 2dca9aa9d6db3b5eab4e8b9d3274a5d86d4e3905
      https://github.com/llvm/llvm-project/commit/2dca9aa9d6db3b5eab4e8b9d3274a5d86d4e3905
  Author: Mikhail Gudim <mgudim at qti.qualcomm.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/test/CodeGen/RISCV/rda-stack.mir

  Log Message:
  -----------
  [RISCV][test] Fix `rda-stack.mir` test. (#175788)

It was using `BEQ $x0, $x0, ...` which is treated as conditional branch.
The intent of the test was to use unconditional branch. Replace it with
`PseudoBR ...`.


  Commit: 8784816a419069b68aa0f798dc882d70e0176fdd
      https://github.com/llvm/llvm-project/commit/8784816a419069b68aa0f798dc882d70e0176fdd
  Author: Simon Pilgrim <llvm-dev at redking.me.uk>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ExprConstant.cpp
    M llvm/include/llvm/ADT/APInt.h
    M llvm/lib/Support/APInt.cpp
    M llvm/lib/Target/X86/X86ISelLowering.cpp
    M llvm/unittests/ADT/APIntTest.cpp

  Log Message:
  -----------
  [ADT] Add APInt::truncSSatU truncation from signed to unsigned variant (#175603)

This matches the behaviour of ISD::TRUNCATE_SSAT_U and X86ISD::PACKUS
truncations: saturate signed input to unsigned result -
`truncate(smin(smax(x, 0), C))`

Add unit test coverage and update existing PACKUS constant folding to
use the APInt helper


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

  Changed paths:
    M llvm/include/llvm/ADT/STLExtras.h
    M llvm/include/llvm/ADT/STLForwardCompat.h
    M llvm/unittests/ADT/STLExtrasTest.cpp
    M llvm/unittests/ADT/STLForwardCompatTest.cpp

  Log Message:
  -----------
  [ADT] Introduce bind_{front,back}, [not_]equal_to (#175056)

Introduce a llvm::bind_front and llvm::bind_back. To demonstrate its
utility, we pose the problem of shortening a common idiom where we use
an STL algorithm like all_of or any_of, and check the members of the
range against a value: we introduce llvm::{equal_to, not_equal_to} in
terms of llvm::bind_{front, back}.

---------

Co-authored-by: Jakub Kuderski <jakub at nod-labs.com>
Co-authored-by: Yanzuo Liu <zwuis at outlook.com>


  Commit: 1c305aebd640cd43d1c8529049bb9a5463c9c562
      https://github.com/llvm/llvm-project/commit/1c305aebd640cd43d1c8529049bb9a5463c9c562
  Author: Björn Pettersson <bjorn.a.pettersson at ericsson.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/lib/Transforms/Scalar/SROA.cpp
    M llvm/test/Transforms/SROA/scalable-vectors-with-known-vscale.ll
    M llvm/test/Transforms/SROA/slice-width.ll
    M llvm/test/Transforms/SROA/vector-conversion.ll
    M llvm/test/Transforms/SROA/vector-promotion.ll

  Log Message:
  -----------
  [SROA] Use shufflevector instead of select for vector blend (#175756)

A patch from May 2013, commit 1e211913b56f390, changed SROA into using a
select instruction to perform vector blend. Idea was that using a select
was the canonical form, and that we optimize select better than
shufflevector.

This patch is changing SROA back into using shufflevector instead of
select when doing the blend (inserting a smaller vector into a larger
vector).

Motivation:
Nowadays InstCombine is canonicalizing this kind of vector blends, using
vector select instructions, into a shufflevector instruction. So it is
assumed that shufflevector is the canonical form now. It is also assumed
that we are better at optimizing shufflevector today, compared to back
in 2013.

Commit f26710d97d9c272be8a55 includes links to a discussion from 2016
(https://discourse.llvm.org/t/ir-canonicalization-vector-select-or-shufflevector/42257/6)
about picking shufflevector as the canonical form.


  Commit: c752e12b7622d0ee3483148620fd9d4e97055a3b
      https://github.com/llvm/llvm-project/commit/c752e12b7622d0ee3483148620fd9d4e97055a3b
  Author: Yaxun (Sam) Liu <yaxun.liu at amd.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/Sema/SemaAMDGPU.cpp
    A clang/test/SemaHIP/amdgpu-global-load-lds-template.hip

  Log Message:
  -----------
  [AMDGPU] Fix builtin crash with template parameter size argument (#175767)

## Summary

`__builtin_amdgcn_global_load_lds` and related builtins crash when the
size argument is a template parameter. The semantic checker calls
`VerifyIntegerConstantExpression` without first checking if the
expression is value-dependent, causing an assertion failure.

**Affected builtins:**
- `__builtin_amdgcn_global_load_lds`
- `__builtin_amdgcn_raw_ptr_buffer_load_lds`
- `__builtin_amdgcn_struct_ptr_buffer_load_lds`
- `__builtin_amdgcn_load_to_lds`

**Reproducer:**
```cpp
template<int N>
__device__ void load(void* src, __shared__ void* dst) {
    __builtin_amdgcn_global_load_lds(src, dst, N, 0, 0);  // Crashes
}
template __device__ void load<16>(void*, __shared__ void*);
```

**Error before fix:**
```
Assertion `!isValueDependent() && "Expression evaluator can't be called on a dependent expression."' failed
```

**Fix:** Add `isValueDependent()` check before evaluating the constant
expression. Value-dependent expressions are accepted during template
definition and properly checked during template instantiation.

## Test plan

- [x] New lit test
`clang/test/SemaHIP/amdgpu-global-load-lds-template.hip`
  - Tests valid template parameter sizes compile without errors
  - Tests invalid sizes are caught at template instantiation
- [x] All existing SemaHIP tests pass (17/17)
- [x] Related builtin tests pass


  Commit: 458a2e88cc0595e5456e37cdfbec9bd84d5e2dee
      https://github.com/llvm/llvm-project/commit/458a2e88cc0595e5456e37cdfbec9bd84d5e2dee
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [AMDGPU][Scheduler] Fix use-after-poison by printing before deleting (#175807)

A buildbot was failing with a use-after-poison
(https://lab.llvm.org/buildbot/#/builders/24/builds/16530) after
https://github.com/llvm/llvm-project/pull/175050:
```
==llc==1532559==ERROR: AddressSanitizer: use-after-poison on address 0xe26e74e12368 at pc 0xb36d41bd74dc bp 0xffffed72a450 sp 0xffffed72a448
READ of size 8 at 0xe26e74e12368 thread T0
    #0 0xb36d41bd74d8 in llvm::MachineInstr::print(llvm::raw_ostream&, bool, bool, bool, bool, llvm::TargetInstrInfo const*) const /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/llvm/lib/CodeGen/MachineInstr.cpp:1796:35
    #1 0xb36d3e221b08 in operator<< /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/llvm/include/llvm/CodeGen/MachineInstr.h:2150:6
    #2 0xb36d3e221b08 in llvm::PreRARematStage::rollback(llvm::PreRARematStage::RollbackInfo const&, llvm::BitVector&) const /home/b/sanitizer-aarch64-linux-bootstrap-asan/build/llvm-project/llvm/lib/Target/AMDGPU/GCNSchedStrategy.cpp:2363:57
...
```

This is because it was printing an instruction that had already been
deleted. This patch fixes this by reversing the order.


  Commit: 511e6040cc3e7682dde1542ac049775e502724dd
      https://github.com/llvm/llvm-project/commit/511e6040cc3e7682dde1542ac049775e502724dd
  Author: Zhihui Yang <youngwisdm at gmail.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    A clang/test/CIR/CodeGenBuiltins/X86/permd-builtins.c

  Log Message:
  -----------
  [CIR][X86] Add support for permd builtins (#172132)

Part of https://github.com/llvm/llvm-project/issues/167765


  Commit: 965662ea0104f6f3e9394589552c625fd8959017
      https://github.com/llvm/llvm-project/commit/965662ea0104f6f3e9394589552c625fd8959017
  Author: Thurston Dang <thurston at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    A llvm/test/Instrumentation/MemorySanitizer/AArch64/neon-dot-product.ll

  Log Message:
  -----------
  [msan][NFCI] Add tests for dot product intrinsics on Arm (#174042)

Forked from llvm/test/CodeGen/AArch64/neon-dot-product.ll, simplified to
directly use function parameters only.

N.B. https://github.com/llvm/llvm-project/pull/174038 has some tests
that incidentally use dot-product intrinsics.


  Commit: e0f4988ddc6e56d794d0bfb55216254c4fd59848
      https://github.com/llvm/llvm-project/commit/e0f4988ddc6e56d794d0bfb55216254c4fd59848
  Author: Michael Jones <michaelrj at google.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M libc/Maintainers.rst

  Log Message:
  -----------
  [libc][docs] Update list of active maintainers. (#175666)


  Commit: d52c7da0863f0c777382de37b22960f824ac7f48
      https://github.com/llvm/llvm-project/commit/d52c7da0863f0c777382de37b22960f824ac7f48
  Author: Helena Kotas <hekotas at microsoft.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

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

  Log Message:
  -----------
  [HLSL] Simplify register value conversion and fix a few clang-tidy issues (#175697)

Moves `SlotNumStr` conversion back outside of the `ValidateRegisterNumber` function.
Also fixes couple of few clang-tidy issues and adds `llvm_unreachable` to catch unexpected declarations.

Related to #136809


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

  Changed paths:
    M flang/lib/Semantics/resolve-names.cpp
    M flang/test/Lower/CUDA/cuda-gpu-managed.cuf
    M flang/tools/bbc/bbc.cpp

  Log Message:
  -----------
  [flang][cuda] Remove extra managed spelling from bbc (#175803)

`bbc` is just a testing tool so we don't need to support multiple option
spelling. Keep it simple.


  Commit: dedf1684b33ee22c69b3630a0a6a5148acf634cf
      https://github.com/llvm/llvm-project/commit/dedf1684b33ee22c69b3630a0a6a5148acf634cf
  Author: Aaron Ballman <aaron at aaronballman.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/Maintainers.rst

  Log Message:
  -----------
  Nominations for code coverage maintainer in Clang (#175773)

Per discussion on
[Discourse](https://discourse.llvm.org/t/rfc-integrating-singlebytecoverage-with-branch-coverage/82492/15),
I am nominating @chapuni and @evodius96 as maintainers of code coverage
in Clang.

Please accept this PR to signal your acceptance of the nomination, if
you'd like.

Additionally, I took a shot at adding contact information for you, so
please let me know if anything is wrong or missing.


  Commit: aaa0d5da736ea9901d37d671ddae31456c6c196c
      https://github.com/llvm/llvm-project/commit/aaa0d5da736ea9901d37d671ddae31456c6c196c
  Author: Victor Chernyakin <chernyakin.victor.j at outlook.com>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/ReleaseNotes.rst
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    M clang/unittests/ASTMatchers/ASTMatchersNodeTest.cpp

  Log Message:
  -----------
  [clang][ASTMatchers] Add `functionTypeLoc` matcher (#173668)

To be used in #173340.


  Commit: b8d5ef9d2e197234da197986b606b6753e363f24
      https://github.com/llvm/llvm-project/commit/b8d5ef9d2e197234da197986b606b6753e363f24
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineAdvisorPlugin/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Analysis/InlineOrderPlugin/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Passes/Plugins/DoublerPlugin/BUILD.gn
    M llvm/utils/gn/secondary/llvm/unittests/Passes/Plugins/TestPlugin/BUILD.gn

  Log Message:
  -----------
  gn build: Add missing TargetLibraryInfo dep to pass and analysis plugins.


  Commit: 4b5bca3ff9c0e2d3e148f520c6ed7ae806da6f97
      https://github.com/llvm/llvm-project/commit/4b5bca3ff9c0e2d3e148f520c6ed7ae806da6f97
  Author: Peter Collingbourne <peter at pcc.me.uk>
  Date:   2026-01-13 (Tue, 13 Jan 2026)

  Changed paths:
    M .ci/all_requirements.txt
    A .ci/buildbot/README.md
    A .ci/buildbot/worker.py
    M .ci/cache_lit_timing_files.py
    M .ci/compute_projects.py
    M .ci/generate_test_report_github.py
    M .ci/generate_test_report_lib.py
    M .ci/generate_test_report_lib_test.py
    M .ci/metrics/metrics.py
    M .ci/monolithic-linux.sh
    M .ci/monolithic-windows.sh
    A .ci/premerge_advisor_explain.py
    A .ci/premerge_advisor_upload.py
    M .ci/requirements.txt
    M .ci/utils.sh
    M .clang-tidy
    M .git-blame-ignore-revs
    M .gitattributes
    M .github/CODEOWNERS
    A .github/actions/build-container/action.yml
    A .github/actions/push-container/action.yml
    R .github/copilot-instructions.md
    A .github/instructions/lldb.instructions.md
    A .github/instructions/llvm.instructions.md
    M .github/new-prs-labeler.yml
    M .github/renovate.json
    M .github/workflows/bazel-checks.yml
    A .github/workflows/build-ci-container-tooling.yml
    M .github/workflows/build-ci-container-windows.yml
    M .github/workflows/build-ci-container.yml
    M .github/workflows/build-metrics-container.yml
    M .github/workflows/check-ci.yml
    M .github/workflows/ci-post-commit-analyzer.yml
    M .github/workflows/commit-access-greeter.yml
    M .github/workflows/commit-access-review.py
    M .github/workflows/commit-access-review.yml
    A .github/workflows/commit-create-issue.py
    A .github/workflows/containers/github-action-ci-tooling/Dockerfile
    M .github/workflows/containers/github-action-ci-windows/Dockerfile
    M .github/workflows/containers/github-action-ci/Dockerfile
    M .github/workflows/docs.yml
    M .github/workflows/email-check.yaml
    M .github/workflows/get-llvm-version/action.yml
    M .github/workflows/gha-codeql.yml
    M .github/workflows/hlsl-test-all.yaml
    A .github/workflows/ids-check.yml
    M .github/workflows/issue-release-workflow.yml
    M .github/workflows/issue-subscriber.yml
    M .github/workflows/issue-write.yml
    M .github/workflows/libc-fullbuild-tests.yml
    M .github/workflows/libc-overlay-tests.yml
    M .github/workflows/libclang-abi-tests.yml
    M .github/workflows/libclang-python-tests.yml
    M .github/workflows/libcxx-build-and-test.yaml
    M .github/workflows/libcxx-build-containers.yml
    M .github/workflows/libcxx-check-generated-files.yml
    M .github/workflows/libcxx-run-benchmarks.yml
    M .github/workflows/llvm-abi-tests.yml
    M .github/workflows/llvm-bugs.yml
    M .github/workflows/merged-prs.yml
    M .github/workflows/mlir-spirv-tests.yml
    M .github/workflows/new-issues.yml
    M .github/workflows/new-prs.yml
    M .github/workflows/pr-code-format.yml
    M .github/workflows/pr-code-lint.yml
    R .github/workflows/pr-request-release-note.yml
    M .github/workflows/pr-subscriber.yml
    M .github/workflows/premerge.yaml
    M .github/workflows/release-asset-audit.py
    M .github/workflows/release-asset-audit.yml
    M .github/workflows/release-binaries-all.yml
    R .github/workflows/release-binaries-save-stage/action.yml
    R .github/workflows/release-binaries-setup-stage/action.yml
    M .github/workflows/release-binaries.yml
    M .github/workflows/release-documentation.yml
    M .github/workflows/release-doxygen.yml
    M .github/workflows/release-lit.yml
    M .github/workflows/release-sources.yml
    M .github/workflows/release-tasks.yml
    M .github/workflows/scorecard.yml
    M .github/workflows/spirv-tests.yml
    A .github/workflows/test-unprivileged-download-artifact.yml
    M .github/workflows/unprivileged-download-artifact/action.yml
    A .github/workflows/upload-release-artifact/action.yml
    M .github/workflows/version-check.yml
    M .gitignore
    A bolt/Maintainers.md
    R bolt/Maintainers.txt
    M bolt/README.md
    M bolt/docs/BAT.md
    M bolt/docs/BinaryAnalysis.md
    M bolt/docs/CommandLineArgumentReference.md
    M bolt/docs/Heatmaps.md
    M bolt/docs/OptimizingClang.md
    M bolt/docs/OptimizingLinux.md
    A bolt/docs/PointerAuthDesign.md
    M bolt/docs/RuntimeLibrary.md
    M bolt/docs/doxygen.cfg.in
    M bolt/docs/index.rst
    M bolt/include/bolt/Core/BinaryBasicBlock.h
    M bolt/include/bolt/Core/BinaryContext.h
    M bolt/include/bolt/Core/BinaryFunction.h
    M bolt/include/bolt/Core/BinaryFunctionCallGraph.h
    M bolt/include/bolt/Core/DIEBuilder.h
    M bolt/include/bolt/Core/DebugData.h
    M bolt/include/bolt/Core/DebugNames.h
    M bolt/include/bolt/Core/MCPlus.h
    M bolt/include/bolt/Core/MCPlusBuilder.h
    A bolt/include/bolt/Passes/AArch64RelaxationPass.h
    R bolt/include/bolt/Passes/ADRRelaxationPass.h
    M bolt/include/bolt/Passes/BinaryPasses.h
    M bolt/include/bolt/Passes/CacheMetrics.h
    M bolt/include/bolt/Passes/FixRelaxationPass.h
    M bolt/include/bolt/Passes/FrameAnalysis.h
    M bolt/include/bolt/Passes/IdenticalCodeFolding.h
    M bolt/include/bolt/Passes/LivenessAnalysis.h
    M bolt/include/bolt/Passes/LongJmp.h
    M bolt/include/bolt/Passes/PLTCall.h
    A bolt/include/bolt/Passes/PointerAuthCFIAnalyzer.h
    A bolt/include/bolt/Passes/PointerAuthCFIFixup.h
    M bolt/include/bolt/Passes/ProfileQualityStats.h
    M bolt/include/bolt/Passes/ReachingDefOrUse.h
    M bolt/include/bolt/Passes/ReorderAlgorithm.h
    M bolt/include/bolt/Passes/TailDuplication.h
    M bolt/include/bolt/Profile/ProfileYAMLMapping.h
    M bolt/include/bolt/Profile/YAMLProfileReader.h
    M bolt/include/bolt/Profile/YAMLProfileWriter.h
    M bolt/include/bolt/Rewrite/DWARFRewriter.h
    M bolt/include/bolt/Rewrite/MetadataRewriters.h
    M bolt/include/bolt/Rewrite/RewriteInstance.h
    M bolt/include/bolt/Utils/CommandLineOpts.h
    M bolt/lib/Core/BinaryBasicBlock.cpp
    M bolt/lib/Core/BinaryContext.cpp
    M bolt/lib/Core/BinaryEmitter.cpp
    M bolt/lib/Core/BinaryFunction.cpp
    M bolt/lib/Core/BinaryFunctionCallGraph.cpp
    M bolt/lib/Core/BinarySection.cpp
    M bolt/lib/Core/CallGraph.cpp
    M bolt/lib/Core/DIEBuilder.cpp
    M bolt/lib/Core/DebugData.cpp
    M bolt/lib/Core/DebugNames.cpp
    M bolt/lib/Core/DynoStats.cpp
    M bolt/lib/Core/Exceptions.cpp
    M bolt/lib/Core/HashUtilities.cpp
    M bolt/lib/Core/MCPlusBuilder.cpp
    M bolt/lib/Core/Relocation.cpp
    A bolt/lib/Passes/AArch64RelaxationPass.cpp
    R bolt/lib/Passes/ADRRelaxationPass.cpp
    M bolt/lib/Passes/Aligner.cpp
    M bolt/lib/Passes/BinaryPasses.cpp
    M bolt/lib/Passes/CMakeLists.txt
    M bolt/lib/Passes/CacheMetrics.cpp
    M bolt/lib/Passes/FrameAnalysis.cpp
    M bolt/lib/Passes/IdenticalCodeFolding.cpp
    M bolt/lib/Passes/Inliner.cpp
    M bolt/lib/Passes/Instrumentation.cpp
    M bolt/lib/Passes/LongJmp.cpp
    M bolt/lib/Passes/PAuthGadgetScanner.cpp
    A bolt/lib/Passes/PointerAuthCFIAnalyzer.cpp
    A bolt/lib/Passes/PointerAuthCFIFixup.cpp
    M bolt/lib/Passes/ProfileQualityStats.cpp
    M bolt/lib/Passes/RegReAssign.cpp
    M bolt/lib/Passes/ReorderFunctions.cpp
    M bolt/lib/Passes/ShrinkWrapping.cpp
    M bolt/lib/Passes/SplitFunctions.cpp
    M bolt/lib/Passes/StackAvailableExpressions.cpp
    M bolt/lib/Passes/TailDuplication.cpp
    M bolt/lib/Passes/VeneerElimination.cpp
    M bolt/lib/Profile/DataAggregator.cpp
    M bolt/lib/Profile/DataReader.cpp
    M bolt/lib/Profile/StaleProfileMatching.cpp
    M bolt/lib/Profile/YAMLProfileReader.cpp
    M bolt/lib/Profile/YAMLProfileWriter.cpp
    M bolt/lib/Rewrite/BinaryPassManager.cpp
    M bolt/lib/Rewrite/BuildIDRewriter.cpp
    M bolt/lib/Rewrite/CMakeLists.txt
    M bolt/lib/Rewrite/DWARFRewriter.cpp
    M bolt/lib/Rewrite/GNUPropertyRewriter.cpp
    M bolt/lib/Rewrite/MachORewriteInstance.cpp
    M bolt/lib/Rewrite/PseudoProbeRewriter.cpp
    A bolt/lib/Rewrite/RSeqRewriter.cpp
    M bolt/lib/Rewrite/RewriteInstance.cpp
    M bolt/lib/RuntimeLibs/InstrumentationRuntimeLibrary.cpp
    M bolt/lib/Target/AArch64/AArch64MCPlusBuilder.cpp
    M bolt/lib/Target/X86/X86MCPlusBuilder.cpp
    M bolt/lib/Utils/CommandLineOpts.cpp
    M bolt/runtime/hugify.cpp
    M bolt/runtime/instr.cpp
    M bolt/runtime/sys_aarch64.h
    M bolt/runtime/sys_riscv64.h
    M bolt/runtime/sys_x86_64.h
    M bolt/test/AArch64/Inputs/plt-gnu-ld.yaml
    M bolt/test/AArch64/bf_min_alignment.s
    M bolt/test/AArch64/bti-note.test
    M bolt/test/AArch64/compact-code-model.s
    M bolt/test/AArch64/constant-island-alignment.s
    A bolt/test/AArch64/constant-island-entry.s
    R bolt/test/AArch64/data-at-0-offset.c
    A bolt/test/AArch64/epilogue-determination.s
    M bolt/test/AArch64/exceptions-plt.cpp
    A bolt/test/AArch64/function-data-marker.s
    M bolt/test/AArch64/hook-fini.s
    A bolt/test/AArch64/hook-init.s
    M bolt/test/AArch64/ifunc.test
    A bolt/test/AArch64/inline-armv8.3-returns.s
    A bolt/test/AArch64/inline-armv8.3-tailcall.s
    A bolt/test/AArch64/inline-bti-dbg.s
    A bolt/test/AArch64/inline-bti.s
    A bolt/test/AArch64/inline-pauth-lr.s
    A bolt/test/AArch64/instrument-no-fini.s
    A bolt/test/AArch64/invalid-code-padding.s
    A bolt/test/AArch64/ldr-relaxation.s
    M bolt/test/AArch64/lit.local.cfg
    A bolt/test/AArch64/long-jmp-bti-ignored.s
    A bolt/test/AArch64/long-jmp-bti.s
    M bolt/test/AArch64/no-bti-note.test
    A bolt/test/AArch64/pacret-cfi-disallow.s
    A bolt/test/AArch64/pacret-cfi-incorrect.s
    A bolt/test/AArch64/pacret-cfi-reorder.s
    A bolt/test/AArch64/pacret-cfi.s
    A bolt/test/AArch64/pacret-split-funcs.s
    M bolt/test/AArch64/plt-call.test
    M bolt/test/AArch64/plt-got.test
    A bolt/test/AArch64/relocation-type-print.s
    A bolt/test/AArch64/rseq.s
    A bolt/test/AArch64/safe-icf.s
    M bolt/test/AArch64/text-data.c
    M bolt/test/AArch64/tls.c
    M bolt/test/AArch64/unsupported-passes.test
    A bolt/test/AArch64/validate-branch-target.s
    A bolt/test/AArch64/veneer-lite-mode.s
    M bolt/test/RISCV/reloc-label-diff.s
    M bolt/test/X86/Inputs/dwarf4-gdb-index-types-helper.s
    M bolt/test/X86/Inputs/dwarf4-gdb-index-types-main.s
    A bolt/test/X86/Inputs/dwarf4-str-split-dwarf.s
    A bolt/test/X86/Inputs/dwarf5-str-split-dwarf.s
    A bolt/test/X86/Inputs/test-coro-probes.yaml
    A bolt/test/X86/Inputs/test_coro.cpp
    M bolt/test/X86/bolt-address-translation-yaml.test
    M bolt/test/X86/callcont-fallthru.s
    M bolt/test/X86/cdsplit-call-scale.s
    M bolt/test/X86/dwarf4-ftypes-dwp-input-dwo-output.test
    M bolt/test/X86/dwarf4-ftypes-dwp-input-dwp-output.test
    A bolt/test/X86/dwarf4-str-dwp-input-dwo-output.test
    A bolt/test/X86/dwarf5-str-dwp-input-dwo-output.test
    M bolt/test/X86/dwarf5-two-cu-str-offset-table.test
    M bolt/test/X86/dwarf5-type-unit-no-cu-str-offset-table.test
    A bolt/test/X86/fragment-alias.s
    M bolt/test/X86/heatmap-preagg.test
    A bolt/test/X86/hook-init.s
    A bolt/test/X86/instrument-no-fini.s
    M bolt/test/X86/internal-call-instrument-so.s
    M bolt/test/X86/jt-symbol-disambiguation-3.s
    M bolt/test/X86/lit.local.cfg
    M bolt/test/X86/match-blocks-with-pseudo-probes-inline.test
    M bolt/test/X86/match-blocks-with-pseudo-probes.test
    M bolt/test/X86/nolbr.s
    M bolt/test/X86/pre-aggregated-perf.test
    A bolt/test/X86/pseudoprobe-coro.test
    M bolt/test/X86/pseudoprobe-decoding-inline.test
    M bolt/test/X86/pseudoprobe-decoding-noinline.test
    A bolt/test/X86/rseq.s
    M bolt/test/X86/split-landing-pad.s
    M bolt/test/X86/unclaimed-jt-entries.s
    A bolt/test/X86/unclaimed-pc-rel.s
    A bolt/test/X86/validate-branch-target.s
    M bolt/test/code-at-high-address.c
    M bolt/test/dump-dot-func.test
    A bolt/test/dwarf5-missing-dwo.c
    M bolt/test/dwo-name-retrieving.test
    M bolt/test/indirect-goto-relocs.test
    M bolt/test/lsda-section-name.cpp
    M bolt/test/merge-fdata-bat-no-lbr.test
    A bolt/test/merge-fdata-mem-prof.test
    M bolt/test/merge-fdata-mixed-bat-no-lbr.test
    M bolt/test/merge-fdata-mixed-mode.test
    M bolt/test/merge-fdata-no-lbr-mode.test
    M bolt/test/perf2bolt/AArch64/perf2bolt-spe.test
    M bolt/test/perf2bolt/perf_test.test
    A bolt/test/print-only.test
    M bolt/test/runtime/AArch64/inline-memcpy.s
    A bolt/test/runtime/AArch64/instrumentation-ind-call-bti.c
    A bolt/test/runtime/AArch64/long-jmp-bti-plt.c
    A bolt/test/runtime/AArch64/pacret-eh-function-split.cpp
    A bolt/test/runtime/AArch64/pacret-eh.cpp
    A bolt/test/runtime/AArch64/pacret-synchronous-unwind.cpp
    M bolt/test/runtime/X86/asm-dump.c
    M bolt/test/runtime/X86/instrument-wrong-target.s
    M bolt/test/runtime/X86/unclaimed-jt-entries.s
    M bolt/test/runtime/wait_file.sh
    A bolt/test/safe-icf-relative-vtable.cpp
    M bolt/test/timers.c
    M bolt/test/yaml-profile-kind.c
    M bolt/tools/heatmap/heatmap.cpp
    M bolt/tools/merge-fdata/merge-fdata.cpp
    M bolt/unittests/CMakeLists.txt
    M bolt/unittests/Core/MCPlusBuilder.cpp
    A bolt/unittests/Passes/CMakeLists.txt
    A bolt/unittests/Passes/PointerAuthCFIFixup.cpp
    M bolt/unittests/Profile/PerfSpeEvents.cpp
    M bolt/utils/bughunter.sh
    A bolt/utils/docker-tests/Dockerfile
    M bolt/utils/docker/Dockerfile
    A clang-tools-extra/Maintainers.rst
    R clang-tools-extra/Maintainers.txt
    M clang-tools-extra/clang-doc/BitcodeReader.cpp
    M clang-tools-extra/clang-doc/BitcodeReader.h
    M clang-tools-extra/clang-doc/BitcodeWriter.cpp
    M clang-tools-extra/clang-doc/BitcodeWriter.h
    M clang-tools-extra/clang-doc/CMakeLists.txt
    M clang-tools-extra/clang-doc/ClangDoc.cpp
    M clang-tools-extra/clang-doc/ClangDoc.h
    M clang-tools-extra/clang-doc/Generators.cpp
    M clang-tools-extra/clang-doc/Generators.h
    M clang-tools-extra/clang-doc/HTMLGenerator.cpp
    R clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
    M clang-tools-extra/clang-doc/JSONGenerator.cpp
    M clang-tools-extra/clang-doc/MDGenerator.cpp
    M clang-tools-extra/clang-doc/Mapper.cpp
    M clang-tools-extra/clang-doc/Mapper.h
    M clang-tools-extra/clang-doc/Representation.cpp
    M clang-tools-extra/clang-doc/Representation.h
    M clang-tools-extra/clang-doc/Serialize.cpp
    M clang-tools-extra/clang-doc/Serialize.h
    M clang-tools-extra/clang-doc/YAMLGenerator.cpp
    A clang-tools-extra/clang-doc/assets/alias-template.mustache
    M clang-tools-extra/clang-doc/assets/clang-doc-mustache.css
    M clang-tools-extra/clang-doc/assets/class-template.mustache
    M clang-tools-extra/clang-doc/assets/comment-template.mustache
    M clang-tools-extra/clang-doc/assets/enum-template.mustache
    M clang-tools-extra/clang-doc/assets/function-template.mustache
    A clang-tools-extra/clang-doc/assets/head-template.mustache
    A clang-tools-extra/clang-doc/assets/index-template.mustache
    M clang-tools-extra/clang-doc/assets/namespace-template.mustache
    A clang-tools-extra/clang-doc/assets/navbar-template.mustache
    M clang-tools-extra/clang-doc/support/File.h
    M clang-tools-extra/clang-doc/support/Utils.cpp
    M clang-tools-extra/clang-doc/support/Utils.h
    M clang-tools-extra/clang-doc/tool/CMakeLists.txt
    M clang-tools-extra/clang-doc/tool/ClangDocMain.cpp
    M clang-tools-extra/clang-include-fixer/IncludeFixer.cpp
    M clang-tools-extra/clang-include-fixer/find-all-symbols/STLPostfixHeaderMap.cpp
    M clang-tools-extra/clang-tidy/.clang-format
    M clang-tools-extra/clang-tidy/.clang-tidy
    M clang-tools-extra/clang-tidy/ClangTidy.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/ClangTidyCheck.h
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.cpp
    M clang-tools-extra/clang-tidy/ClangTidyDiagnosticConsumer.h
    M clang-tools-extra/clang-tidy/ClangTidyForceLinker.h
    M clang-tools-extra/clang-tidy/ClangTidyModule.cpp
    M clang-tools-extra/clang-tidy/ClangTidyModule.h
    M clang-tools-extra/clang-tidy/ClangTidyModuleRegistry.h
    M clang-tools-extra/clang-tidy/ClangTidyOptions.cpp
    M clang-tools-extra/clang-tidy/ClangTidyOptions.h
    M clang-tools-extra/clang-tidy/ClangTidyProfiling.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.cpp
    M clang-tools-extra/clang-tidy/ExpandModularHeadersPPCallbacks.h
    M clang-tools-extra/clang-tidy/FileExtensionsSet.h
    M clang-tools-extra/clang-tidy/GlobList.cpp
    M clang-tools-extra/clang-tidy/NoLintDirectiveHandler.cpp
    M clang-tools-extra/clang-tidy/abseil/AbseilMatcher.h
    M clang-tools-extra/clang-tidy/abseil/AbseilTidyModule.cpp
    M clang-tools-extra/clang-tidy/abseil/CMakeLists.txt
    M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationAdditionCheck.h
    M clang-tools-extra/clang-tidy/abseil/DurationComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationConversionCastCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationFactoryFloatCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationFactoryScaleCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationRewriter.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationRewriter.h
    M clang-tools-extra/clang-tidy/abseil/DurationSubtractionCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/DurationUnnecessaryConversionCheck.h
    M clang-tools-extra/clang-tidy/abseil/FasterStrsplitDelimiterCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/NoInternalDependenciesCheck.h
    M clang-tools-extra/clang-tidy/abseil/RedundantStrcatCallsCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/StringFindStartswithCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/StringFindStrContainsCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/abseil/TimeComparisonCheck.h
    M clang-tools-extra/clang-tidy/abseil/TimeSubtractionCheck.cpp
    A clang-tools-extra/clang-tidy/abseil/UncheckedStatusOrAccessCheck.cpp
    A clang-tools-extra/clang-tidy/abseil/UncheckedStatusOrAccessCheck.h
    M clang-tools-extra/clang-tidy/abseil/UpgradeDurationConversionsCheck.cpp
    M clang-tools-extra/clang-tidy/altera/AlteraTidyModule.cpp
    M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.cpp
    M clang-tools-extra/clang-tidy/altera/IdDependentBackwardBranchCheck.h
    M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.cpp
    M clang-tools-extra/clang-tidy/altera/KernelNameRestrictionCheck.h
    M clang-tools-extra/clang-tidy/altera/SingleWorkItemBarrierCheck.h
    M clang-tools-extra/clang-tidy/altera/StructPackAlignCheck.cpp
    M clang-tools-extra/clang-tidy/altera/UnrollLoopsCheck.cpp
    M clang-tools-extra/clang-tidy/android/AndroidTidyModule.cpp
    M clang-tools-extra/clang-tidy/android/CloexecAccept4Check.h
    M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.cpp
    M clang-tools-extra/clang-tidy/android/CloexecAcceptCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecCheck.cpp
    M clang-tools-extra/clang-tidy/android/CloexecCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecCreatCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecDupCheck.cpp
    M clang-tools-extra/clang-tidy/android/CloexecDupCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecEpollCreate1Check.h
    M clang-tools-extra/clang-tidy/android/CloexecEpollCreateCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecFopenCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecInotifyInit1Check.h
    M clang-tools-extra/clang-tidy/android/CloexecInotifyInitCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecMemfdCreateCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.cpp
    M clang-tools-extra/clang-tidy/android/CloexecOpenCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecPipe2Check.h
    M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.cpp
    M clang-tools-extra/clang-tidy/android/CloexecPipeCheck.h
    M clang-tools-extra/clang-tidy/android/CloexecSocketCheck.h
    M clang-tools-extra/clang-tidy/android/ComparisonInTempFailureRetryCheck.cpp
    M clang-tools-extra/clang-tidy/boost/BoostTidyModule.cpp
    M clang-tools-extra/clang-tidy/boost/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/boost/UseToStringCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ArgumentCommentCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/AssertSideEffectCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/AssignmentInIfConditionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BadSignalToKillThreadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BranchCloneCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/BugproneTidyModule.cpp
    M clang-tools-extra/clang-tidy/bugprone/CMakeLists.txt
    M clang-tools-extra/clang-tidy/bugprone/CapturingThisInMemberVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ChainedComparisonCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ComparePointerToMemberVirtualFunctionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/CopyConstructorInitCheck.h
    A clang-tools-extra/clang-tidy/bugprone/CopyConstructorMutatesArgumentCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/CopyConstructorMutatesArgumentCheck.h
    M clang-tools-extra/clang-tidy/bugprone/CrtpConstructorAccessibilityCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DanglingHandleCheck.h
    A clang-tools-extra/clang-tidy/bugprone/DefaultOperatorNewOnOveralignedTypeCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/DefaultOperatorNewOnOveralignedTypeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/DerivedMethodShadowingBaseMethodCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/DynamicStaticInitializersCheck.h
    M clang-tools-extra/clang-tidy/bugprone/EasilySwappableParametersCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/EmptyCatchCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ExceptionCopyConstructorThrowsCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/ExceptionCopyConstructorThrowsCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ExceptionEscapeCheck.h
    A clang-tools-extra/clang-tidy/bugprone/FloatLoopCounterCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/FloatLoopCounterCheck.h
    M clang-tools-extra/clang-tidy/bugprone/FoldInitTypeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/ForwardDeclarationNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ForwardingReferenceOverloadCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ImplicitWideningOfMultiplicationResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InaccurateEraseCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncDecInConditionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IncorrectEnableIfCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/InfiniteLoopCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/IntegerDivisionCheck.h
    M clang-tools-extra/clang-tidy/bugprone/InvalidEnumDefaultInitializationCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/LambdaFunctionNameCheck.h
    M clang-tools-extra/clang-tidy/bugprone/MacroParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MacroRepeatedSideEffectsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MisplacedOperatorInStrlenInAllocCheck.h
    M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MisplacedPointerArithmeticInAllocCheck.h
    M clang-tools-extra/clang-tidy/bugprone/MisplacedWideningCastCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MoveForwardingReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MultiLevelImplicitPointerConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MultipleNewInOneExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/MultipleStatementMacroCheck.h
    M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NarrowingConversionsCheck.h
    M clang-tools-extra/clang-tidy/bugprone/NonZeroEnumToBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NondeterministicPointerIterationOrderCheck.h
    M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/NotNullTerminatedResultCheck.h
    M clang-tools-extra/clang-tidy/bugprone/OptionalValueConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/PosixReturnCheck.h
    A clang-tools-extra/clang-tidy/bugprone/RandomGeneratorSeedCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/RandomGeneratorSeedCheck.h
    A clang-tools-extra/clang-tidy/bugprone/RawMemoryCallOnNonTrivialTypeCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/RawMemoryCallOnNonTrivialTypeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/RedundantBranchConditionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ReturnConstRefFromParameterCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SignalHandlerCheck.h
    M clang-tools-extra/clang-tidy/bugprone/SignedCharMisuseCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SizeofExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SmartPtrArrayMismatchCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SpuriouslyWakeUpFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StandaloneEmptyCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/StdNamespaceModificationCheck.cpp
    A clang-tools-extra/clang-tidy/bugprone/StdNamespaceModificationCheck.h
    M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/StringConstructorCheck.h
    M clang-tools-extra/clang-tidy/bugprone/StringIntegerAssignmentCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousEnumUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousIncludeCheck.h
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemoryComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMemsetUsageCheck.h
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousMissingCommaCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousReallocUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousSemicolonCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringCompareCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SuspiciousStringviewDataUsageCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SwappedArgumentsCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/SwitchMissingDefaultCaseCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TaggedUnionMemberCountCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ThrowKeywordMissingCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/ThrowingStaticInitializationCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/TooSmallLoopVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UncheckedOptionalAccessCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UncheckedStringToNumberConversionCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UndefinedMemoryManipulationCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UndelegatedConstructorCheck.h
    M clang-tools-extra/clang-tidy/bugprone/UnhandledExceptionAtNewCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnintendedCharOstreamOutputCheck.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/bugprone/UnusedLocalNonTrivialVariableCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedRaiiCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UnusedReturnValueCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/UseAfterMoveCheck.h
    M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.cpp
    M clang-tools-extra/clang-tidy/bugprone/VirtualNearMissCheck.h
    M clang-tools-extra/clang-tidy/cert/CERTTidyModule.cpp
    M clang-tools-extra/clang-tidy/cert/CMakeLists.txt
    R clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.cpp
    R clang-tools-extra/clang-tidy/cert/DefaultOperatorNewAlignmentCheck.h
    R clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.cpp
    R clang-tools-extra/clang-tidy/cert/DontModifyStdNamespaceCheck.h
    R clang-tools-extra/clang-tidy/cert/FloatLoopCounter.cpp
    R clang-tools-extra/clang-tidy/cert/FloatLoopCounter.h
    R clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.cpp
    R clang-tools-extra/clang-tidy/cert/LimitedRandomnessCheck.h
    R clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.cpp
    R clang-tools-extra/clang-tidy/cert/MutatingCopyCheck.h
    R clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.cpp
    R clang-tools-extra/clang-tidy/cert/NonTrivialTypesLibcMemoryCallsCheck.h
    R clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.cpp
    R clang-tools-extra/clang-tidy/cert/ProperlySeededRandomGeneratorCheck.h
    R clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.cpp
    R clang-tools-extra/clang-tidy/cert/ThrownExceptionTypeCheck.h
    M clang-tools-extra/clang-tidy/concurrency/ConcurrencyTidyModule.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidCapturingLambdaCoroutinesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/AvoidNonConstGlobalVariablesCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/CMakeLists.txt
    M clang-tools-extra/clang-tidy/cppcoreguidelines/CppCoreGuidelinesTidyModule.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InitVariablesCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/InterfacesGlobalInitCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MacroUsageCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MisleadingCaptureDefaultByValueCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/MissingStdForwardCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/NoMallocCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/NoSuspendWithLockCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/OwningMemoryCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/PreferMemberInitializerCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsArrayToPointerDecayCheck.h
    R clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.cpp
    R clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccess.h
    A clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccessCheck.cpp
    A clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsAvoidUncheckedContainerAccessCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsConstantArrayIndexCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProBoundsPointerArithmeticCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeConstCastCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeCstyleCastCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeMemberInitCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeReinterpretCastCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeStaticCastDowncastCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeUnionAccessCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/ProTypeVarargCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/RvalueReferenceParamNotMovedCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SlicingCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.cpp
    M clang-tools-extra/clang-tidy/cppcoreguidelines/SpecialMemberFunctionsCheck.h
    M clang-tools-extra/clang-tidy/cppcoreguidelines/VirtualClassDestructorCheck.cpp
    M clang-tools-extra/clang-tidy/custom/CustomTidyModule.cpp
    M clang-tools-extra/clang-tidy/custom/QueryCheck.cpp
    M clang-tools-extra/clang-tidy/darwin/DarwinTidyModule.cpp
    A clang-tools-extra/clang-tidy/doc8.ini
    M clang-tools-extra/clang-tidy/fuchsia/CMakeLists.txt
    M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsCallsCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.cpp
    M clang-tools-extra/clang-tidy/fuchsia/DefaultArgumentsDeclarationsCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/FuchsiaTidyModule.cpp
    R clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.cpp
    R clang-tools-extra/clang-tidy/fuchsia/MultipleInheritanceCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.cpp
    M clang-tools-extra/clang-tidy/fuchsia/OverloadedOperatorCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/StaticallyConstructedObjectsCheck.h
    A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.cpp
    A clang-tools-extra/clang-tidy/fuchsia/TemporaryObjectsCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/TrailingReturnCheck.h
    M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.cpp
    M clang-tools-extra/clang-tidy/fuchsia/VirtualInheritanceCheck.h
    R clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.cpp
    R clang-tools-extra/clang-tidy/google/AvoidCStyleCastsCheck.h
    M clang-tools-extra/clang-tidy/google/AvoidNSObjectNewCheck.cpp
    M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.cpp
    M clang-tools-extra/clang-tidy/google/AvoidThrowingObjCExceptionCheck.h
    M clang-tools-extra/clang-tidy/google/AvoidUnderscoreInGoogletestNameCheck.cpp
    M clang-tools-extra/clang-tidy/google/CMakeLists.txt
    M clang-tools-extra/clang-tidy/google/DefaultArgumentsCheck.h
    M clang-tools-extra/clang-tidy/google/ExplicitConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.cpp
    M clang-tools-extra/clang-tidy/google/FunctionNamingCheck.h
    M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.cpp
    M clang-tools-extra/clang-tidy/google/GlobalVariableDeclarationCheck.h
    M clang-tools-extra/clang-tidy/google/GoogleTidyModule.cpp
    M clang-tools-extra/clang-tidy/google/IntegerTypesCheck.cpp
    M clang-tools-extra/clang-tidy/google/TodoCommentCheck.cpp
    M clang-tools-extra/clang-tidy/google/TodoCommentCheck.h
    R clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.cpp
    R clang-tools-extra/clang-tidy/google/UnnamedNamespaceInHeaderCheck.h
    M clang-tools-extra/clang-tidy/google/UpgradeGoogletestCaseCheck.cpp
    M clang-tools-extra/clang-tidy/google/UsingNamespaceDirectiveCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/ExceptionBaseclassCheck.h
    M clang-tools-extra/clang-tidy/hicpp/HICPPTidyModule.cpp
    M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/MultiwayPathsCoveredCheck.h
    M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.cpp
    M clang-tools-extra/clang-tidy/hicpp/NoAssemblerCheck.h
    M clang-tools-extra/clang-tidy/hicpp/SignedBitwiseCheck.h
    M clang-tools-extra/clang-tidy/linuxkernel/LinuxKernelTidyModule.cpp
    A clang-tools-extra/clang-tidy/llvm/.clang-tidy
    M clang-tools-extra/clang-tidy/llvm/HeaderGuardCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/IncludeOrderCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/LLVMTidyModule.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferIsaOrDynCastInConditionalsCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/PreferStaticOverAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/TwineLocalCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/UseNewMLIROpBuilderCheck.cpp
    M clang-tools-extra/clang-tidy/llvm/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/InlineFunctionDeclCheck.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/LLVMLibcTidyModule.cpp
    M clang-tools-extra/clang-tidy/llvmlibc/NamespaceConstants.h
    M clang-tools-extra/clang-tidy/llvmlibc/RestrictSystemLibcHeadersCheck.cpp
    A clang-tools-extra/clang-tidy/misc/AnonymousNamespaceInHeaderCheck.cpp
    A clang-tools-extra/clang-tidy/misc/AnonymousNamespaceInHeaderCheck.h
    M clang-tools-extra/clang-tidy/misc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ConfusableIdentifierCheck.h
    M clang-tools-extra/clang-tidy/misc/ConfusableTable/BuildConfusableTable.cpp
    M clang-tools-extra/clang-tidy/misc/ConstCorrectnessCheck.cpp
    M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.cpp
    M clang-tools-extra/clang-tidy/misc/CoroutineHostileRAIICheck.h
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/DefinitionsInHeadersCheck.h
    M clang-tools-extra/clang-tidy/misc/HeaderIncludeCycleCheck.cpp
    M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.cpp
    M clang-tools-extra/clang-tidy/misc/IncludeCleanerCheck.h
    M clang-tools-extra/clang-tidy/misc/MiscTidyModule.cpp
    R clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.cpp
    R clang-tools-extra/clang-tidy/misc/MisleadingBidirectional.h
    A clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.cpp
    A clang-tools-extra/clang-tidy/misc/MisleadingBidirectionalCheck.h
    R clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.cpp
    R clang-tools-extra/clang-tidy/misc/MisleadingIdentifier.h
    A clang-tools-extra/clang-tidy/misc/MisleadingIdentifierCheck.cpp
    A clang-tools-extra/clang-tidy/misc/MisleadingIdentifierCheck.h
    M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.cpp
    M clang-tools-extra/clang-tidy/misc/MisplacedConstCheck.h
    A clang-tools-extra/clang-tidy/misc/MultipleInheritanceCheck.cpp
    A clang-tools-extra/clang-tidy/misc/MultipleInheritanceCheck.h
    M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.cpp
    M clang-tools-extra/clang-tidy/misc/NewDeleteOverloadsCheck.h
    M clang-tools-extra/clang-tidy/misc/NoRecursionCheck.cpp
    R clang-tools-extra/clang-tidy/misc/NonCopyableObjects.cpp
    R clang-tools-extra/clang-tidy/misc/NonCopyableObjects.h
    A clang-tools-extra/clang-tidy/misc/NonCopyableObjectsCheck.cpp
    A clang-tools-extra/clang-tidy/misc/NonCopyableObjectsCheck.h
    M clang-tools-extra/clang-tidy/misc/OverrideWithDifferentVisibilityCheck.cpp
    A clang-tools-extra/clang-tidy/misc/PredictableRandCheck.cpp
    A clang-tools-extra/clang-tidy/misc/PredictableRandCheck.h
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.cpp
    M clang-tools-extra/clang-tidy/misc/RedundantExpressionCheck.h
    M clang-tools-extra/clang-tidy/misc/StaticAssertCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/ThrowByValueCatchByReferenceCheck.h
    M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnconventionalAssignOperatorCheck.h
    M clang-tools-extra/clang-tidy/misc/UniqueptrResetReleaseCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedAliasDeclsCheck.h
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedParametersCheck.h
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UnusedUsingDeclsCheck.h
    M clang-tools-extra/clang-tidy/misc/UseAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.cpp
    M clang-tools-extra/clang-tidy/misc/UseInternalLinkageCheck.h
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/AvoidBindCheck.h
    M clang-tools-extra/clang-tidy/modernize/AvoidCArraysCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.cpp
    A clang-tools-extra/clang-tidy/modernize/AvoidCStyleCastCheck.h
    M clang-tools-extra/clang-tidy/modernize/CMakeLists.txt
    M clang-tools-extra/clang-tidy/modernize/ConcatNestedNamespacesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/DeprecatedHeadersCheck.h
    M clang-tools-extra/clang-tidy/modernize/DeprecatedIosBaseAliasesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.cpp
    M clang-tools-extra/clang-tidy/modernize/IntegralLiteralExpressionMatcher.h
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertCheck.h
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.cpp
    M clang-tools-extra/clang-tidy/modernize/LoopConvertUtils.h
    M clang-tools-extra/clang-tidy/modernize/MacroToEnumCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/MakeSharedCheck.h
    M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/MakeSmartPtrCheck.h
    M clang-tools-extra/clang-tidy/modernize/MakeUniqueCheck.h
    M clang-tools-extra/clang-tidy/modernize/MinMaxUseInitializerListCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ModernizeTidyModule.cpp
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
    M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RawStringLiteralCheck.h
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/RedundantVoidArgCheck.h
    M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ReplaceAutoPtrCheck.h
    M clang-tools-extra/clang-tidy/modernize/ReplaceDisallowCopyAndAssignMacroCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ReplaceRandomShuffleCheck.h
    M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/ReturnBracedInitListCheck.h
    M clang-tools-extra/clang-tidy/modernize/TypeTraitsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UnaryStaticAssertCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseAutoCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseBoolLiteralsCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseConstraintsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseDefaultMemberInitCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseDesignatedInitializersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEmplaceCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDefaultCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseEqualsDeleteCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseIntegerSignComparisonCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNodiscardCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNoexceptCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseNullptrCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseOverrideCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseScopedLockCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdFormatCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseStdPrintCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseTrailingReturnTypeCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseTransparentFunctorsCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseUncaughtExceptionsCheck.h
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.cpp
    M clang-tools-extra/clang-tidy/modernize/UseUsingCheck.h
    M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.cpp
    M clang-tools-extra/clang-tidy/mpi/BufferDerefCheck.h
    M clang-tools-extra/clang-tidy/mpi/MPITidyModule.cpp
    M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.cpp
    M clang-tools-extra/clang-tidy/mpi/TypeMismatchCheck.h
    R clang-tools-extra/clang-tidy/objc/AssertEquals.cpp
    R clang-tools-extra/clang-tidy/objc/AssertEquals.h
    A clang-tools-extra/clang-tidy/objc/AssertEqualsCheck.cpp
    A clang-tools-extra/clang-tidy/objc/AssertEqualsCheck.h
    M clang-tools-extra/clang-tidy/objc/CMakeLists.txt
    M clang-tools-extra/clang-tidy/objc/ForbiddenSubclassingCheck.h
    M clang-tools-extra/clang-tidy/objc/MissingHashCheck.cpp
    M clang-tools-extra/clang-tidy/objc/NSDateFormatterCheck.cpp
    M clang-tools-extra/clang-tidy/objc/NSInvocationArgumentLifetimeCheck.cpp
    M clang-tools-extra/clang-tidy/objc/ObjCTidyModule.cpp
    M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.cpp
    M clang-tools-extra/clang-tidy/objc/PropertyDeclarationCheck.h
    M clang-tools-extra/clang-tidy/objc/SuperSelfCheck.cpp
    M clang-tools-extra/clang-tidy/openmp/OpenMPTidyModule.cpp
    M clang-tools-extra/clang-tidy/openmp/UseDefaultNoneCheck.cpp
    M clang-tools-extra/clang-tidy/performance/CMakeLists.txt
    M clang-tools-extra/clang-tidy/performance/EnumSizeCheck.cpp
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.cpp
    M clang-tools-extra/clang-tidy/performance/FasterStringFindCheck.h
    M clang-tools-extra/clang-tidy/performance/ForRangeCopyCheck.cpp
    M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.cpp
    M clang-tools-extra/clang-tidy/performance/ImplicitConversionInLoopCheck.h
    M clang-tools-extra/clang-tidy/performance/InefficientAlgorithmCheck.cpp
    M clang-tools-extra/clang-tidy/performance/InefficientStringConcatenationCheck.h
    M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.cpp
    M clang-tools-extra/clang-tidy/performance/InefficientVectorOperationCheck.h
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.cpp
    M clang-tools-extra/clang-tidy/performance/MoveConstArgCheck.h
    M clang-tools-extra/clang-tidy/performance/MoveConstructorInitCheck.cpp
    M clang-tools-extra/clang-tidy/performance/NoAutomaticMoveCheck.cpp
    M clang-tools-extra/clang-tidy/performance/NoexceptDestructorCheck.h
    M clang-tools-extra/clang-tidy/performance/NoexceptFunctionBaseCheck.h
    M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.cpp
    M clang-tools-extra/clang-tidy/performance/NoexceptMoveConstructorCheck.h
    M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.cpp
    M clang-tools-extra/clang-tidy/performance/NoexceptSwapCheck.h
    M clang-tools-extra/clang-tidy/performance/PerformanceTidyModule.cpp
    M clang-tools-extra/clang-tidy/performance/TriviallyDestructibleCheck.cpp
    M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.cpp
    M clang-tools-extra/clang-tidy/performance/TypePromotionInMathFnCheck.h
    R clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.cpp
    R clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitialization.h
    A clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitializationCheck.cpp
    A clang-tools-extra/clang-tidy/performance/UnnecessaryCopyInitializationCheck.h
    M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.cpp
    M clang-tools-extra/clang-tidy/performance/UnnecessaryValueParamCheck.h
    M clang-tools-extra/clang-tidy/plugin/ClangTidyPlugin.cpp
    M clang-tools-extra/clang-tidy/portability/AvoidPragmaOnceCheck.cpp
    M clang-tools-extra/clang-tidy/portability/PortabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.cpp
    M clang-tools-extra/clang-tidy/portability/RestrictSystemIncludesCheck.h
    M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.cpp
    M clang-tools-extra/clang-tidy/portability/SIMDIntrinsicsCheck.h
    M clang-tools-extra/clang-tidy/readability/AmbiguousSmartptrResetCallCheck.cpp
    R clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.cpp
    R clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDecls.h
    A clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDeclsCheck.cpp
    A clang-tools-extra/clang-tidy/readability/AvoidConstParamsInDeclsCheck.h
    M clang-tools-extra/clang-tidy/readability/AvoidNestedConditionalOperatorCheck.h
    M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/AvoidReturnWithVoidValueCheck.h
    M clang-tools-extra/clang-tidy/readability/AvoidUnconditionalPreprocessorIfCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/BracesAroundStatementsCheck.h
    M clang-tools-extra/clang-tidy/readability/CMakeLists.txt
    M clang-tools-extra/clang-tidy/readability/ConstReturnTypeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerContainsCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerDataPointerCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ContainerSizeEmptyCheck.cpp
    R clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.cpp
    R clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStatic.h
    A clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStaticCheck.cpp
    A clang-tools-extra/clang-tidy/readability/ConvertMemberFunctionsToStaticCheck.h
    M clang-tools-extra/clang-tidy/readability/DeleteNullPointerCheck.h
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/DuplicateIncludeCheck.h
    M clang-tools-extra/clang-tidy/readability/ElseAfterReturnCheck.cpp
    M clang-tools-extra/clang-tidy/readability/EnumInitialValueCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionCognitiveComplexityCheck.cpp
    M clang-tools-extra/clang-tidy/readability/FunctionSizeCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierLengthCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.h
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ImplicitBoolConversionCheck.h
    M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.cpp
    M clang-tools-extra/clang-tidy/readability/InconsistentDeclarationParameterNameCheck.h
    A clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.cpp
    A clang-tools-extra/clang-tidy/readability/InconsistentIfElseBracesCheck.h
    M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/IsolateDeclarationCheck.h
    M clang-tools-extra/clang-tidy/readability/MagicNumbersCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MakeMemberFunctionConstCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MathMissingParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/MisleadingIndentationCheck.h
    M clang-tools-extra/clang-tidy/readability/MisplacedArrayIndexCheck.h
    M clang-tools-extra/clang-tidy/readability/NamedParameterCheck.cpp
    M clang-tools-extra/clang-tidy/readability/NamespaceCommentCheck.cpp
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
    M clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.h
    M clang-tools-extra/clang-tidy/readability/OperatorsRepresentationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/QualifiedAutoCheck.cpp
    M clang-tools-extra/clang-tidy/readability/ReadabilityTidyModule.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantAccessSpecifiersCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantCastingCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantControlFlowCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantDeclarationCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantFunctionPtrDereferenceCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantInlineSpecifierCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantMemberInitCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.h
    M clang-tools-extra/clang-tidy/readability/RedundantPreprocessorCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantStringCStrCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.cpp
    M clang-tools-extra/clang-tidy/readability/RedundantStringInitCheck.h
    A clang-tools-extra/clang-tidy/readability/RedundantTypenameCheck.cpp
    A clang-tools-extra/clang-tidy/readability/RedundantTypenameCheck.h
    M clang-tools-extra/clang-tidy/readability/ReferenceToConstructedTemporaryCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SimplifyBooleanExprCheck.h
    M clang-tools-extra/clang-tidy/readability/SimplifySubscriptExprCheck.cpp
    M clang-tools-extra/clang-tidy/readability/StaticAccessedThroughInstanceCheck.h
    M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.cpp
    M clang-tools-extra/clang-tidy/readability/StaticDefinitionInAnonymousNamespaceCheck.h
    M clang-tools-extra/clang-tidy/readability/StringCompareCheck.cpp
    M clang-tools-extra/clang-tidy/readability/SuspiciousCallArgumentCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UniqueptrDeleteReleaseCheck.h
    M clang-tools-extra/clang-tidy/readability/UppercaseLiteralSuffixCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseAnyOfAllOfCheck.h
    M clang-tools-extra/clang-tidy/readability/UseConcisePreprocessorDirectivesCheck.cpp
    M clang-tools-extra/clang-tidy/readability/UseStdMinMaxCheck.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.cpp
    M clang-tools-extra/clang-tidy/tool/ClangTidyMain.h
    A clang-tools-extra/clang-tidy/tool/check_alphabetical_order.py
    A clang-tools-extra/clang-tidy/tool/check_alphabetical_order_test.py
    M clang-tools-extra/clang-tidy/tool/clang-tidy-diff.py
    M clang-tools-extra/clang-tidy/tool/run-clang-tidy.py
    M clang-tools-extra/clang-tidy/utils/ASTUtils.cpp
    M clang-tools-extra/clang-tidy/utils/ASTUtils.h
    M clang-tools-extra/clang-tidy/utils/Aliasing.cpp
    M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.cpp
    M clang-tools-extra/clang-tidy/utils/BracesAroundStatement.h
    M clang-tools-extra/clang-tidy/utils/DeclRefExprUtils.cpp
    M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.cpp
    M clang-tools-extra/clang-tidy/utils/DesignatedInitializers.h
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionAnalyzer.h
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.cpp
    M clang-tools-extra/clang-tidy/utils/ExceptionSpecAnalyzer.h
    M clang-tools-extra/clang-tidy/utils/ExprSequence.cpp
    M clang-tools-extra/clang-tidy/utils/ExprSequence.h
    M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.cpp
    M clang-tools-extra/clang-tidy/utils/FileExtensionsUtils.h
    M clang-tools-extra/clang-tidy/utils/FixItHintUtils.cpp
    M clang-tools-extra/clang-tidy/utils/FormatStringConverter.cpp
    M clang-tools-extra/clang-tidy/utils/HeaderGuard.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeInserter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeInserter.h
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.cpp
    M clang-tools-extra/clang-tidy/utils/IncludeSorter.h
    M clang-tools-extra/clang-tidy/utils/LexerUtils.cpp
    M clang-tools-extra/clang-tidy/utils/LexerUtils.h
    M clang-tools-extra/clang-tidy/utils/Matchers.cpp
    M clang-tools-extra/clang-tidy/utils/Matchers.h
    M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.cpp
    M clang-tools-extra/clang-tidy/utils/NamespaceAliaser.h
    M clang-tools-extra/clang-tidy/utils/OptionsUtils.cpp
    M clang-tools-extra/clang-tidy/utils/OptionsUtils.h
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/utils/RenamerClangTidyCheck.h
    M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.cpp
    M clang-tools-extra/clang-tidy/utils/TransformerClangTidyCheck.h
    M clang-tools-extra/clang-tidy/utils/TypeTraits.cpp
    M clang-tools-extra/clang-tidy/utils/UseRangesCheck.cpp
    M clang-tools-extra/clang-tidy/utils/UsingInserter.cpp
    M clang-tools-extra/clang-tidy/utils/UsingInserter.h
    M clang-tools-extra/clang-tidy/zircon/CMakeLists.txt
    R clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.cpp
    R clang-tools-extra/clang-tidy/zircon/TemporaryObjectsCheck.h
    M clang-tools-extra/clang-tidy/zircon/ZirconTidyModule.cpp
    M clang-tools-extra/clangd/AST.cpp
    M clang-tools-extra/clangd/AST.h
    M clang-tools-extra/clangd/CMakeLists.txt
    M clang-tools-extra/clangd/ClangdLSPServer.cpp
    M clang-tools-extra/clangd/ClangdServer.cpp
    M clang-tools-extra/clangd/ClangdServer.h
    M clang-tools-extra/clangd/CodeComplete.cpp
    M clang-tools-extra/clangd/CodeComplete.h
    M clang-tools-extra/clangd/CompileCommands.cpp
    M clang-tools-extra/clangd/Compiler.cpp
    M clang-tools-extra/clangd/Config.h
    M clang-tools-extra/clangd/ConfigCompile.cpp
    M clang-tools-extra/clangd/ConfigFragment.h
    M clang-tools-extra/clangd/ConfigYAML.cpp
    M clang-tools-extra/clangd/Diagnostics.cpp
    M clang-tools-extra/clangd/DumpAST.cpp
    M clang-tools-extra/clangd/FileDistance.cpp
    M clang-tools-extra/clangd/FindTarget.cpp
    M clang-tools-extra/clangd/FuzzyMatch.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/IncludeFixer.cpp
    M clang-tools-extra/clangd/InlayHints.cpp
    M clang-tools-extra/clangd/ModulesBuilder.cpp
    M clang-tools-extra/clangd/ParsedAST.cpp
    M clang-tools-extra/clangd/ParsedAST.h
    M clang-tools-extra/clangd/Preamble.cpp
    M clang-tools-extra/clangd/Protocol.h
    M clang-tools-extra/clangd/ScanningProjectModules.cpp
    M clang-tools-extra/clangd/Selection.cpp
    M clang-tools-extra/clangd/SemanticSelection.cpp
    M clang-tools-extra/clangd/SemanticSelection.h
    M clang-tools-extra/clangd/SourceCode.cpp
    M clang-tools-extra/clangd/SourceCode.h
    M clang-tools-extra/clangd/SymbolDocumentation.cpp
    M clang-tools-extra/clangd/SymbolDocumentation.h
    M clang-tools-extra/clangd/SystemIncludeExtractor.cpp
    M clang-tools-extra/clangd/TUScheduler.cpp
    M clang-tools-extra/clangd/TidyProvider.cpp
    M clang-tools-extra/clangd/XRefs.cpp
    M clang-tools-extra/clangd/index/BackgroundIndexStorage.cpp
    M clang-tools-extra/clangd/index/CanonicalIncludes.cpp
    M clang-tools-extra/clangd/index/FileIndex.cpp
    M clang-tools-extra/clangd/index/Index.cpp
    M clang-tools-extra/clangd/index/Index.h
    M clang-tools-extra/clangd/index/IndexAction.cpp
    M clang-tools-extra/clangd/index/MemIndex.cpp
    M clang-tools-extra/clangd/index/MemIndex.h
    M clang-tools-extra/clangd/index/Merge.cpp
    M clang-tools-extra/clangd/index/Merge.h
    M clang-tools-extra/clangd/index/ProjectAware.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.cpp
    M clang-tools-extra/clangd/index/SymbolCollector.h
    M clang-tools-extra/clangd/index/SymbolLocation.cpp
    M clang-tools-extra/clangd/index/dex/Dex.cpp
    M clang-tools-extra/clangd/index/dex/Dex.h
    M clang-tools-extra/clangd/index/dex/dexp/Dexp.cpp
    M clang-tools-extra/clangd/index/remote/Client.cpp
    M clang-tools-extra/clangd/index/remote/Service.proto
    M clang-tools-extra/clangd/index/remote/server/Server.cpp
    M clang-tools-extra/clangd/refactor/tweaks/AddUsing.cpp
    M clang-tools-extra/clangd/refactor/tweaks/DefineOutline.cpp
    M clang-tools-extra/clangd/refactor/tweaks/OverridePureVirtuals.cpp
    M clang-tools-extra/clangd/refactor/tweaks/PopulateSwitch.cpp
    M clang-tools-extra/clangd/support/DirectiveTree.cpp
    M clang-tools-extra/clangd/support/FileCache.cpp
    M clang-tools-extra/clangd/support/Markup.cpp
    M clang-tools-extra/clangd/support/Markup.h
    M clang-tools-extra/clangd/support/Threading.cpp
    M clang-tools-extra/clangd/support/Trace.cpp
    M clang-tools-extra/clangd/test/CMakeLists.txt
    M clang-tools-extra/clangd/test/background-index.test
    M clang-tools-extra/clangd/test/include-cleaner-batch-fix.test
    M clang-tools-extra/clangd/test/index-tools.test
    M clang-tools-extra/clangd/test/lit.cfg.py
    M clang-tools-extra/clangd/test/lit.site.cfg.py.in
    M clang-tools-extra/clangd/test/system-include-extractor.test
    M clang-tools-extra/clangd/tool/Check.cpp
    M clang-tools-extra/clangd/tool/ClangdMain.cpp
    M clang-tools-extra/clangd/unittests/BackgroundIndexTests.cpp
    M clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
    M clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
    M clang-tools-extra/clangd/unittests/CodeCompleteTests.cpp
    M clang-tools-extra/clangd/unittests/CompileCommandsTests.cpp
    M clang-tools-extra/clangd/unittests/ConfigYAMLTests.cpp
    M clang-tools-extra/clangd/unittests/FileDistanceTests.cpp
    M clang-tools-extra/clangd/unittests/FindSymbolsTests.cpp
    M clang-tools-extra/clangd/unittests/FindTargetTests.cpp
    M clang-tools-extra/clangd/unittests/GlobalCompilationDatabaseTests.cpp
    M clang-tools-extra/clangd/unittests/HoverTests.cpp
    M clang-tools-extra/clangd/unittests/InlayHintTests.cpp
    M clang-tools-extra/clangd/unittests/QualityTests.cpp
    M clang-tools-extra/clangd/unittests/RenameTests.cpp
    M clang-tools-extra/clangd/unittests/ReplayPeambleTests.cpp
    M clang-tools-extra/clangd/unittests/SelectionTests.cpp
    M clang-tools-extra/clangd/unittests/SemanticSelectionTests.cpp
    M clang-tools-extra/clangd/unittests/SymbolCollectorTests.cpp
    M clang-tools-extra/clangd/unittests/SymbolDocumentationTests.cpp
    M clang-tools-extra/clangd/unittests/TUSchedulerTests.cpp
    M clang-tools-extra/clangd/unittests/TestTU.cpp
    M clang-tools-extra/clangd/unittests/URITests.cpp
    M clang-tools-extra/clangd/unittests/XRefsTests.cpp
    M clang-tools-extra/clangd/unittests/lit.cfg.py
    M clang-tools-extra/clangd/unittests/support/MarkupTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/DefineOutlineTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/OverridePureVirtualsTests.cpp
    M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.cpp
    M clang-tools-extra/clangd/unittests/tweaks/TweakTesting.h
    A clang-tools-extra/docs/Maintainers.rst
    M clang-tools-extra/docs/ReleaseNotes.rst
    M clang-tools-extra/docs/clang-tidy/Contributing.rst
    M clang-tools-extra/docs/clang-tidy/ExternalClang-TidyExamples.rst
    M clang-tools-extra/docs/clang-tidy/Integrations.rst
    M clang-tools-extra/docs/clang-tidy/QueryBasedCustomChecks.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/duration-addition.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/duration-division.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/faster-strsplit-delimiter.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/string-find-str-contains.rst
    A clang-tools-extra/docs/clang-tidy/checks/abseil/unchecked-statusor-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/abseil/upgrade-duration-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/cloexec-inotify-init1.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/cloexec-pipe.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/cloexec-pipe2.rst
    M clang-tools-extra/docs/clang-tidy/checks/android/comparison-in-temp-failure-retry.rst
    M clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/checks/boost/use-to-string.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/assignment-in-if-condition.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/bitwise-pointer-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/capturing-this-in-member-variable.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/casting-through-void.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/chained-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/compare-pointer-to-member-virtual-function.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/copy-constructor-mutates-argument.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/crtp-constructor-accessibility.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/dangling-handle.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/default-operator-new-on-overaligned-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/derived-method-shadowing-base-method.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/dynamic-static-initializers.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/easily-swappable-parameters.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/empty-catch.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-copy-constructor-throws.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/exception-escape.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/float-loop-counter.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/fold-init-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/forward-declaration-namespace.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/forwarding-reference-overload.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/inc-dec-in-conditions.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/incorrect-enable-shared-from-this.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/infinite-loop.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/invalid-enum-default-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/macro-parentheses.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/misplaced-operator-in-strlen-in-alloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/multiple-new-in-one-expression.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/narrowing-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/no-escape.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/non-zero-enum-to-bool-conversion.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/not-null-terminated-result.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/posix-return.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/random-generator-seed.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/raw-memory-call-on-non-trivial-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/redundant-branch-condition.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/return-const-ref-from-parameter.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/signal-handler.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/signed-char-misuse.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-container.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/sizeof-expression.rst
    A clang-tools-extra/docs/clang-tidy/checks/bugprone/std-namespace-modification.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/string-constructor.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/string-literal-with-embedded-nul.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-enum-usage.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-include.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-memory-comparison.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-realloc-usage.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-semicolon.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/suspicious-string-compare.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/swapped-arguments.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/switch-missing-default-case.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/tagged-union-member-count.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/throw-keyword-missing.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/throwing-static-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/too-small-loop-variable.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-optional-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unchecked-string-to-number-conversion.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unhandled-self-assignment.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unintended-char-ostream-output.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unsafe-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/unused-return-value.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/use-after-move.rst
    M clang-tools-extra/docs/clang-tidy/checks/bugprone/virtual-near-miss.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/con36-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/con54-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/ctr56-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl16-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl50-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/dcl59-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/env33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err09-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err34-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err52-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err60-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/err61-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/exp42-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/fio38-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/flp30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/flp37-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/mem57-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc30-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc32-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc50-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/msc51-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/oop54-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/oop57-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/oop58-cpp.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/pos44-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/cert/pos47-c.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.SetgidSetuidOrder.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/security.insecureAPI.decodeValueOfObjCType.rst
    M clang-tools-extra/docs/clang-tidy/checks/clang-analyzer/unix.StdCLibraryFunctions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-c-arrays.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-capturing-lambda-coroutines.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-const-or-ref-data-members.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-do-while.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-magic-numbers.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-non-const-global-variables.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/avoid-reference-coroutine-parameters.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/c-copy-assignment-signature.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/explicit-virtual-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/init-variables.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/interfaces-global-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/macro-to-enum.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/missing-std-forward.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/narrowing-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-malloc.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/no-suspend-with-lock.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/noexcept-move-operations.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/non-private-member-variables-in-classes.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/owning-memory.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/prefer-member-initializer.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-array-to-pointer-decay.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-avoid-unchecked-container-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-constant-array-index.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-bounds-pointer-arithmetic.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-const-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-cstyle-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-reinterpret-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-static-cast-downcast.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-union-access.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/pro-type-vararg.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/special-member-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-default-member-init.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/use-enum-class.rst
    M clang-tools-extra/docs/clang-tidy/checks/cppcoreguidelines/virtual-class-destructor.rst
    M clang-tools-extra/docs/clang-tidy/checks/fuchsia/header-anon-namespaces.rst
    M clang-tools-extra/docs/clang-tidy/checks/fuchsia/multiple-inheritance.rst
    M clang-tools-extra/docs/clang-tidy/checks/fuchsia/statically-constructed-objects.rst
    A clang-tools-extra/docs/clang-tidy/checks/fuchsia/temporary-objects.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/build-namespaces.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/explicit-constructor.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/objc-avoid-throwing-exception.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/objc-global-variable-declaration.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/readability-avoid-underscore-in-googletest-name.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/readability-braces-around-statements.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/readability-casting.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/readability-todo.rst
    M clang-tools-extra/docs/clang-tidy/checks/google/upgrade-googletest-case.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/braces-around-statements.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/explicit-conversions.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/function-size.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/ignored-remove-result.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/invalid-access-moved.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/move-const-arg.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/multiway-paths-covered.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/named-parameter.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/no-array-decay.rst
    M clang-tools-extra/docs/clang-tidy/checks/hicpp/uppercase-literal-suffix.rst
    M clang-tools-extra/docs/clang-tidy/checks/linuxkernel/must-check-errs.rst
    M clang-tools-extra/docs/clang-tidy/checks/list.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/prefer-static-over-anonymous-namespace.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/twine-local.rst
    M clang-tools-extra/docs/clang-tidy/checks/llvm/use-ranges.rst
    A clang-tools-extra/docs/clang-tidy/checks/misc/anonymous-namespace-in-header.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/const-correctness.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/coroutine-hostile-raii.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/header-include-cycle.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/include-cleaner.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/misleading-bidirectional.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/misleading-identifier.rst
    A clang-tools-extra/docs/clang-tidy/checks/misc/multiple-inheritance.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/no-recursion.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/non-copyable-objects.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/override-with-different-visibility.rst
    A clang-tools-extra/docs/clang-tidy/checks/misc/predictable-rand.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/throw-by-value-catch-by-reference.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/unused-parameters.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/unused-using-decls.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/use-anonymous-namespace.rst
    M clang-tools-extra/docs/clang-tidy/checks/misc/use-internal-linkage.rst
    A clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-c-style-cast.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-setjmp-longjmp.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/avoid-variadic-functions.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/concat-nested-namespaces.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/loop-convert.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/min-max-use-initializer-list.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-disallow-copy-and-assign-macro.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/replace-random-shuffle.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/type-traits.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/unary-static-assert.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-auto.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-constraints.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-designated-initializers.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-emplace.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-equals-delete.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-ranges.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-scoped-lock.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-starts-ends-with.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-format.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-std-print.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-trailing-return-type.rst
    M clang-tools-extra/docs/clang-tidy/checks/modernize/use-using.rst
    M clang-tools-extra/docs/clang-tidy/checks/mpi/buffer-deref.rst
    M clang-tools-extra/docs/clang-tidy/checks/mpi/type-mismatch.rst
    M clang-tools-extra/docs/clang-tidy/checks/objc/forbidden-subclassing.rst
    M clang-tools-extra/docs/clang-tidy/checks/objc/nsdate-formatter.rst
    M clang-tools-extra/docs/clang-tidy/checks/objc/property-declaration.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/no-int-to-ptr.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/noexcept-swap.rst
    M clang-tools-extra/docs/clang-tidy/checks/performance/unnecessary-copy-initialization.rst
    M clang-tools-extra/docs/clang-tidy/checks/portability/simd-intrinsics.rst
    M clang-tools-extra/docs/clang-tidy/checks/portability/std-allocator-const.rst
    M clang-tools-extra/docs/clang-tidy/checks/portability/template-virtual-member-function.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/ambiguous-smartptr-reset-call.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-contains.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-data-pointer.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/container-size-empty.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/convert-member-functions-to-static.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/delete-null-pointer.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/duplicate-include.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/else-after-return.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/function-cognitive-complexity.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-length.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/implicit-bool-conversion.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/inconsistent-ifelse-braces.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/magic-numbers.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/make-member-function-const.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/math-missing-parentheses.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/named-parameter.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/operators-representation.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-casting.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-control-flow.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-inline-specifier.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-parentheses.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/redundant-string-cstr.rst
    A clang-tools-extra/docs/clang-tidy/checks/readability/redundant-typename.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/reference-to-constructed-temporary.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/simplify-boolean-expr.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/string-compare.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/suspicious-call-argument.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/uppercase-literal-suffix.rst
    M clang-tools-extra/docs/clang-tidy/checks/readability/use-anyofallof.rst
    M clang-tools-extra/docs/clang-tidy/checks/zircon/temporary-objects.rst
    M clang-tools-extra/docs/clang-tidy/index.rst
    M clang-tools-extra/docs/index.rst
    M clang-tools-extra/include-cleaner/include/clang-include-cleaner/Types.h
    M clang-tools-extra/include-cleaner/lib/Analysis.cpp
    M clang-tools-extra/include-cleaner/lib/WalkAST.cpp
    M clang-tools-extra/include-cleaner/test/Unit/lit.cfg.py
    M clang-tools-extra/include-cleaner/test/lit.cfg.py
    M clang-tools-extra/include-cleaner/unittests/AnalysisTest.cpp
    M clang-tools-extra/modularize/CMakeLists.txt
    M clang-tools-extra/modularize/CoverageChecker.cpp
    M clang-tools-extra/modularize/Modularize.cpp
    M clang-tools-extra/modularize/ModularizeUtilities.cpp
    M clang-tools-extra/pp-trace/CMakeLists.txt
    M clang-tools-extra/pp-trace/PPTrace.cpp
    M clang-tools-extra/test/CMakeLists.txt
    M clang-tools-extra/test/Unit/lit.cfg.py
    A clang-tools-extra/test/clang-doc/CMakeLists.txt
    M clang-tools-extra/test/clang-doc/assets.cpp
    M clang-tools-extra/test/clang-doc/basic-project.mustache.test
    M clang-tools-extra/test/clang-doc/basic-project.test
    M clang-tools-extra/test/clang-doc/comments-in-macros.cpp
    M clang-tools-extra/test/clang-doc/conversion_function.cpp
    M clang-tools-extra/test/clang-doc/enum.cpp
    A clang-tools-extra/test/clang-doc/index.cpp
    M clang-tools-extra/test/clang-doc/json/class-requires.cpp
    M clang-tools-extra/test/clang-doc/json/class-specialization.cpp
    M clang-tools-extra/test/clang-doc/json/class-template.cpp
    M clang-tools-extra/test/clang-doc/json/class.cpp
    M clang-tools-extra/test/clang-doc/json/compound-constraints.cpp
    M clang-tools-extra/test/clang-doc/json/concept.cpp
    M clang-tools-extra/test/clang-doc/json/function-requires.cpp
    M clang-tools-extra/test/clang-doc/json/function-specifiers.cpp
    A clang-tools-extra/test/clang-doc/json/inheritance.cpp
    M clang-tools-extra/test/clang-doc/json/method-template.cpp
    A clang-tools-extra/test/clang-doc/json/multiple-namespaces.cpp
    M clang-tools-extra/test/clang-doc/json/namespace.cpp
    M clang-tools-extra/test/clang-doc/json/nested-namespace.cpp
    M clang-tools-extra/test/clang-doc/long-name.cpp
    M clang-tools-extra/test/clang-doc/mustache-index.cpp
    M clang-tools-extra/test/clang-doc/mustache-separate-namespace.cpp
    M clang-tools-extra/test/clang-doc/namespace.cpp
    M clang-tools-extra/test/clang-doc/templates.cpp
    R clang-tools-extra/test/clang-doc/test-path-abs.cpp
    A clang-tools-extra/test/clang-doc/typedef-alias.cpp
    A clang-tools-extra/test/clang-tidy/.clang-tidy
    M clang-tools-extra/test/clang-tidy/CTTestTidyModule.cpp
    M clang-tools-extra/test/clang-tidy/check_clang_tidy.py
    A clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/moc_foo.cpp
    M clang-tools-extra/test/clang-tidy/checkers/Inputs/Headers/system-header-simulation.h
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/absl/meta/type_traits.h
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/absl/status/status.h
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/absl/status/statusor.h
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/cstddef.h
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/initializer_list
    A clang-tools-extra/test/clang-tidy/checkers/abseil/Inputs/type_traits
    M clang-tools-extra/test/clang-tidy/checkers/abseil/cleanup-ctad.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-addition.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-conversion-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-float.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-factory-scale.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-subtraction.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/duration-unnecessary-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/faster-strsplit-delimiter.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/no-internal-dependencies.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/no-namespace.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/redundant-strcat-calls.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/str-cat-append.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/string-find-str-contains.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/time-subtraction.cpp
    A clang-tools-extra/test/clang-tidy/checkers/abseil/unchecked-statusor-access.cpp
    M clang-tools-extra/test/clang-tidy/checkers/abseil/upgrade-duration-conversions.cpp
    M clang-tools-extra/test/clang-tidy/checkers/altera/struct-pack-align.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-memfd-create.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-open.cpp
    M clang-tools-extra/test/clang-tidy/checkers/android/cloexec-socket.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/bde/types/bsl_optional.h
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/Inputs/unchecked-optional-access/std/types/optional.h
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/argument-comment.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison-ignore-macros.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/chained-comparison.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/copy-constructor-mutates-argument.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/default-operator-new-on-overaligned-type-cpp17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/default-operator-new-on-overaligned-type.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/dynamic-static-initializers-constinit.hpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/dynamic-static-initializers.hpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-copy-constructor-throws.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape-options.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/exception-escape.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/float-loop-counter.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/inaccurate-erase.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/incorrect-enable-shared-from-this.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/macro-parentheses.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/misplaced-operator-in-strlen-in-alloc.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/move-forwarding-reference.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-in-initialization-strlen.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-memcpy-safe-cxx.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-strlen.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-value-dependent-crash.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/not-null-terminated-result-wcslen.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/posix-return.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/random-generator-seed.c
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/random-generator-seed.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/raw-memory-call-on-non-trivial-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier-invert.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/reserved-identifier.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/std-namespace-modification.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/string-integer-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/stringview-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-include.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-semicolon.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/suspicious-string-compare.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/swapped-arguments.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/throw-keyword-missing.cpp
    A clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access-ignore-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unchecked-optional-access.cpp
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/unsafe-functions-custom.c
    M clang-tools-extra/test/clang-tidy/checkers/bugprone/use-after-move.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/dcl58-cpp.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/flp30-c.c
    R clang-tools-extra/test/clang-tidy/checkers/cert/limited-randomness.c
    R clang-tools-extra/test/clang-tidy/checkers/cert/limited-randomness.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/mem57-cpp-cpp17.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/mem57-cpp.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/msc32-c.c
    R clang-tools-extra/test/clang-tidy/checkers/cert/msc51-cpp.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/oop57-cpp.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/oop58-cpp.cpp
    R clang-tools-extra/test/clang-tidy/checkers/cert/throw-exception-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/avoid-non-const-global-variables.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/init-variables.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/macro-usage.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/prefer-member-initializer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index-c++03.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-bounds-constant-array-index.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init-use-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/pro-type-member-init.ignorearrays.cpp
    M clang-tools-extra/test/clang-tidy/checkers/cppcoreguidelines/virtual-class-destructor.cpp
    R clang-tools-extra/test/clang-tidy/checkers/fuchsia/multiple-inheritance.cpp
    A clang-tools-extra/test/clang-tidy/checkers/fuchsia/temporary-objects.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/build-explicit-make-pair.cpp
    R clang-tools-extra/test/clang-tidy/checkers/google/namespaces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/objc-avoid-nsobject-new.m
    R clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.c
    R clang-tools-extra/test/clang-tidy/checkers/google/readability-casting.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/readability-namespace-comments.cpp
    A clang-tools-extra/test/clang-tidy/checkers/google/readability-todo-hyphen.cpp
    A clang-tools-extra/test/clang-tidy/checkers/google/readability-todo-parentheses.cpp
    R clang-tools-extra/test/clang-tidy/checkers/google/readability-todo.cpp
    M clang-tools-extra/test/clang-tidy/checkers/google/upgrade-googletest-case.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-isa-or-dyn-cast-in-conditionals.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/prefer-register-over-unsigned.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/twine-local.cpp
    M clang-tools-extra/test/clang-tidy/checkers/llvm/use-new-mlir-op-builder.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/anonymous-namespace.h
    M clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/func.h
    M clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/func_h.inc
    A clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/type.h
    M clang-tools-extra/test/clang-tidy/checkers/misc/Inputs/use-internal-linkage/var.h
    A clang-tools-extra/test/clang-tidy/checkers/misc/anonymous-namespace-in-header.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-pointers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-pointer-as-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/const-correctness-values.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/coroutine-hostile-raii.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/definitions-in-headers.hpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner-wrong-config.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/include-cleaner.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/misplaced-const-cxx17.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/multiple-inheritance.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/predictable-rand.c
    A clang-tools-extra/test/clang-tidy/checkers/misc/predictable-rand.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/redundant-expression.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters-strict.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.c
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-parameters.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/unused-using-decls-cxx17.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-consteval.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-fix-mode-none.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-func.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-module.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-var.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage-wrong-config.cpp
    A clang-tools-extra/test/clang-tidy/checkers/misc/use-internal-linkage.c
    M clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-bind.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-style-cast.c
    A clang-tools-extra/test/clang-tidy/checkers/modernize/avoid-c-style-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/concat-nested-namespaces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx03.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/deprecated-headers-cxx11.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-basic.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-const.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-extra.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/loop-convert-reverse.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-shared.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/make-unique.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/min-max-use-initializer-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/raw-string-literal.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/redundant-void-arg.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-auto-ptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/replace-disallow-copy-and-assign-macro.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast-remove-stars.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-cast.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-for-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-iterator.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-auto-min-type-name-length.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-bool-literals.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints-first-greatergreater.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-constraints.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-default-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default-copy.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-equals-default.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison-qt.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-integer-sign-comparison.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-nullptr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-allow-override-and-final.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-cxx26.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-ms.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-no-destructors.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-macro.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override-with-no-macro-inscope.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges-pipe.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-ranges.cpp
    A clang-tools-extra/test/clang-tidy/checkers/modernize/use-scoped-lock-no-crash.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print-custom.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-std-print.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx14.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type-transform-lambdas.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-trailing-return-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/modernize/use-using.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/noexcept-move-constructor-fix.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-copy-initialization.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-delayed.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param-templates.cpp
    M clang-tools-extra/test/clang-tidy/checkers/performance/unnecessary-value-param.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/duplicate-include.h
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/pack_begin.h
    A clang-tools-extra/test/clang-tidy/checkers/readability/Inputs/duplicate-include/pack_end.h
    M clang-tools-extra/test/clang-tidy/checkers/readability/braces-around-statements.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/const-return-type.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-data-pointer.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/container-size-empty.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/convert-member-functions-to-static.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include-ignored-files.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/duplicate-include.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/function-cognitive-complexity.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-anon-record-fields.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-bugfix-name-conflicts.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-case-match.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-default-lower.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-default-none.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-default-override.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-c-language.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation-cfgfile.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-hungarian-notation.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-ignored-regexp.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-member-decl-usage.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion-c99.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/implicit-bool-conversion.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-declaration-parameter-name.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-attributes.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-consteval-if.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces-constexpr-if.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/inconsistent-ifelse-braces.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration-fixing.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/isolate-declaration.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/make-member-function-const.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/math-missing-parentheses.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-alternative.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/operators-representation-to-traditional.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto-cxx20.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/qualified-auto.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers-check-first-declaration.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-access-specifiers.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-casting.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-control-flow.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.c
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-declaration.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-member-init.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-format.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-function.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr-msvc.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/redundant-string-cstr.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename-cxx98.cpp
    A clang-tools-extra/test/clang-tidy/checkers/readability/redundant-typename.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-assignment.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-chained-conditional-return.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr-members.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/simplify-boolean-expr.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance-nesting-threshold.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/static-accessed-through-instance.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/static-definition-in-anonymous-namespace.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uniqueptr-delete-release.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/uppercase-literal-suffix-integer-custom-list.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/use-concise-preprocessor-directives.cpp
    M clang-tools-extra/test/clang-tidy/checkers/readability/use-std-min-max.cpp
    R clang-tools-extra/test/clang-tidy/checkers/zircon/temporary-objects.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/Inputs/param/parameters.txt
    A clang-tools-extra/test/clang-tidy/infrastructure/alphabetical-order.test
    M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check-not-enable.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/custom-query-check.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/default-header-filter.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-conflicted-fixes-of-alias-checkers.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/duplicate-fixes-of-alias-checkers.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/empty-database.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/file-filter.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/hide-progress-flag-scripts.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/invalid-command-line.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/invalid-database.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-LIFO.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-multiple-end-single.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-begin-single-end-multiple.cpp
    M clang-tools-extra/test/clang-tidy/infrastructure/nolintbeginend-mismatched-check-names.cpp
    A clang-tools-extra/test/clang-tidy/infrastructure/removed-args.cpp
    M clang-tools-extra/test/lit.cfg.py
    M clang-tools-extra/test/pp-trace/pp-trace-include.cpp
    M clang-tools-extra/test/pp-trace/pp-trace-macro.cpp
    M clang-tools-extra/unittests/clang-doc/BitcodeTest.cpp
    M clang-tools-extra/unittests/clang-doc/CMakeLists.txt
    M clang-tools-extra/unittests/clang-doc/ClangDocTest.cpp
    M clang-tools-extra/unittests/clang-doc/ClangDocTest.h
    M clang-tools-extra/unittests/clang-doc/HTMLGeneratorTest.cpp
    R clang-tools-extra/unittests/clang-doc/HTMLMustacheGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-doc/JSONGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-doc/MDGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-doc/MergeTest.cpp
    M clang-tools-extra/unittests/clang-doc/SerializeTest.cpp
    M clang-tools-extra/unittests/clang-doc/YAMLGeneratorTest.cpp
    M clang-tools-extra/unittests/clang-tidy/ClangTidyOptionsTest.cpp
    M clang-tools-extra/unittests/clang-tidy/LLVMModuleTest.cpp
    M clang/AreaTeamMembers.txt
    M clang/Maintainers.rst
    A clang/bindings/python/.git_archival.txt
    A clang/bindings/python/.gitignore
    M clang/bindings/python/README.txt
    M clang/bindings/python/clang/cindex.py
    M clang/bindings/python/examples/cindex/cindex-dump.py
    M clang/bindings/python/examples/cindex/cindex-includes.py
    A clang/bindings/python/pyproject.toml
    M clang/bindings/python/tests/CMakeLists.txt
    M clang/bindings/python/tests/cindex/test_access_specifiers.py
    M clang/bindings/python/tests/cindex/test_cdb.py
    M clang/bindings/python/tests/cindex/test_code_completion.py
    M clang/bindings/python/tests/cindex/test_comment.py
    M clang/bindings/python/tests/cindex/test_cursor.py
    M clang/bindings/python/tests/cindex/test_cursor_kind.py
    M clang/bindings/python/tests/cindex/test_cursor_language.py
    M clang/bindings/python/tests/cindex/test_diagnostics.py
    A clang/bindings/python/tests/cindex/test_environment_variable.py
    M clang/bindings/python/tests/cindex/test_exception_specification_kind.py
    M clang/bindings/python/tests/cindex/test_file.py
    M clang/bindings/python/tests/cindex/test_index.py
    M clang/bindings/python/tests/cindex/test_lib.py
    M clang/bindings/python/tests/cindex/test_linkage.py
    M clang/bindings/python/tests/cindex/test_location.py
    M clang/bindings/python/tests/cindex/test_source_range.py
    M clang/bindings/python/tests/cindex/test_tls_kind.py
    M clang/bindings/python/tests/cindex/test_token_kind.py
    M clang/bindings/python/tests/cindex/test_tokens.py
    M clang/bindings/python/tests/cindex/test_translation_unit.py
    M clang/bindings/python/tests/cindex/test_type.py
    M clang/cmake/caches/Fuchsia-stage2.cmake
    M clang/cmake/caches/Fuchsia.cmake
    M clang/cmake/caches/Release.cmake
    M clang/cmake/modules/CMakeLists.txt
    M clang/docs/AMDGPUSupport.rst
    M clang/docs/AddressSanitizer.rst
    A clang/docs/AllocToken.rst
    M clang/docs/AutomaticReferenceCounting.rst
    M clang/docs/Block-ABI-Apple.rst
    M clang/docs/BlockLanguageSpec.rst
    M clang/docs/BoundsSafety.rst
    M clang/docs/BoundsSafetyAdoptionGuide.rst
    M clang/docs/BoundsSafetyImplPlans.rst
    M clang/docs/CMakeLists.txt
    M clang/docs/CXXTypeAwareAllocators.rst
    M clang/docs/ClangFormat.rst
    M clang/docs/ClangFormatStyleOptions.rst
    A clang/docs/ClangIRCodeDuplication.rst
    M clang/docs/ClangLinkerWrapper.rst
    M clang/docs/ClangNVLinkWrapper.rst
    M clang/docs/ClangOffloadBundler.rst
    R clang/docs/ClangOffloadPackager.rst
    M clang/docs/ClangPlugins.rst
    M clang/docs/ClangStaticAnalyzer.rst
    M clang/docs/ClangTools.rst
    M clang/docs/ClangTransformerTutorial.rst
    M clang/docs/ConstantInterpreter.rst
    M clang/docs/ControlFlowIntegrity.rst
    M clang/docs/DataFlowSanitizer.rst
    M clang/docs/DataFlowSanitizerDesign.rst
    M clang/docs/DebuggingCoroutines.rst
    M clang/docs/HIPSupport.rst
    M clang/docs/HardwareAssistedAddressSanitizerDesign.rst
    M clang/docs/InternalsManual.rst
    M clang/docs/JSONCompilationDatabase.rst
    M clang/docs/LanguageExtensions.rst
    M clang/docs/LibASTImporter.rst
    M clang/docs/LibASTMatchers.rst
    M clang/docs/LibASTMatchersReference.html
    M clang/docs/LibASTMatchersTutorial.rst
    M clang/docs/LibClang.rst
    M clang/docs/LibFormat.rst
    M clang/docs/MatrixTypes.rst
    M clang/docs/MemorySanitizer.rst
    M clang/docs/MisExpect.rst
    M clang/docs/Modules.rst
    M clang/docs/OpenCLSupport.rst
    M clang/docs/OpenMPSupport.rst
    M clang/docs/PCHInternals.rst
    M clang/docs/PointerAuthentication.rst
    M clang/docs/RAVFrontendAction.rst
    M clang/docs/RealtimeSanitizer.rst
    M clang/docs/ReleaseNotes.rst
    M clang/docs/SafeBuffers.rst
    M clang/docs/SafeStack.rst
    M clang/docs/SanitizerCoverage.rst
    M clang/docs/StandardCPlusPlusModules.rst
    M clang/docs/ThreadSafetyAnalysis.rst
    M clang/docs/ThreadSanitizer.rst
    M clang/docs/TypeSanitizer.rst
    M clang/docs/UsersManual.rst
    M clang/docs/WarningSuppressionMappings.rst
    M clang/docs/analyzer/checkers.rst
    M clang/docs/analyzer/developer-docs/Statistics.rst
    M clang/docs/analyzer/user-docs.rst
    M clang/docs/analyzer/user-docs/CommandLineUsage.rst
    M clang/docs/analyzer/user-docs/Installation.rst
    M clang/docs/index.rst
    M clang/docs/tools/dump_ast_matchers.py
    M clang/examples/LLVMPrintFunctionNames/CMakeLists.txt
    M clang/examples/PrintFunctionNames/CMakeLists.txt
    M clang/include/clang/AST/APNumericStorage.h
    M clang/include/clang/AST/APValue.h
    M clang/include/clang/AST/ASTConsumer.h
    M clang/include/clang/AST/ASTContext.h
    M clang/include/clang/AST/ASTImporter.h
    M clang/include/clang/AST/ASTMutationListener.h
    M clang/include/clang/AST/ASTNodeTraverser.h
    M clang/include/clang/AST/AbstractBasicReader.h
    M clang/include/clang/AST/Attr.h
    M clang/include/clang/AST/CXXInheritance.h
    M clang/include/clang/AST/CanonicalType.h
    M clang/include/clang/AST/ComputeDependence.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/Expr.h
    M clang/include/clang/AST/ExprCXX.h
    M clang/include/clang/AST/ExprObjC.h
    M clang/include/clang/AST/HLSLResource.h
    M clang/include/clang/AST/IgnoreExpr.h
    A clang/include/clang/AST/InferAlloc.h
    M clang/include/clang/AST/JSONNodeDumper.h
    M clang/include/clang/AST/NestedNameSpecifierBase.h
    M clang/include/clang/AST/OpenACCClause.h
    M clang/include/clang/AST/OpenMPClause.h
    M clang/include/clang/AST/OperationKinds.def
    M clang/include/clang/AST/PrettyPrinter.h
    M clang/include/clang/AST/RecursiveASTVisitor.h
    M clang/include/clang/AST/Stmt.h
    M clang/include/clang/AST/StmtOpenACC.h
    M clang/include/clang/AST/Type.h
    M clang/include/clang/AST/TypeBase.h
    M clang/include/clang/AST/TypeLoc.h
    M clang/include/clang/AST/TypeProperties.td
    M clang/include/clang/AST/VTableBuilder.h
    M clang/include/clang/ASTMatchers/ASTMatchers.h
    M clang/include/clang/ASTMatchers/ASTMatchersInternal.h
    R clang/include/clang/ASTMatchers/GtestMatchers.h
    R clang/include/clang/Analysis/Analyses/LifetimeAnnotations.h
    R clang/include/clang/Analysis/Analyses/LifetimeSafety.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/Checker.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/Facts.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/FactsGenerator.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeAnnotations.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeSafety.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/LifetimeStats.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/LiveOrigins.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/LoanPropagation.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/Loans.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/Origins.h
    A clang/include/clang/Analysis/Analyses/LifetimeSafety/Utils.h
    M clang/include/clang/Analysis/Analyses/ThreadSafetyCommon.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsage.h
    M clang/include/clang/Analysis/Analyses/UnsafeBufferUsageGadgets.def
    M clang/include/clang/Analysis/AnalysisDeclContext.h
    M clang/include/clang/Analysis/CFG.h
    M clang/include/clang/Analysis/CFGStmtMap.h
    M clang/include/clang/Analysis/CallGraph.h
    M clang/include/clang/Analysis/FlowSensitive/ASTOps.h
    M clang/include/clang/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.h
    A clang/include/clang/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.h
    M clang/include/clang/Analysis/FlowSensitive/StorageLocation.h
    M clang/include/clang/Analysis/MacroExpansionContext.h
    A clang/include/clang/Analysis/Scalable/ASTEntityMapping.h
    A clang/include/clang/Analysis/Scalable/Model/BuildNamespace.h
    A clang/include/clang/Analysis/Scalable/Model/EntityId.h
    A clang/include/clang/Analysis/Scalable/Model/EntityIdTable.h
    A clang/include/clang/Analysis/Scalable/Model/EntityName.h
    A clang/include/clang/Analysis/Scalable/Model/SummaryName.h
    M clang/include/clang/Basic/ABI.h
    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/Builtins.h
    M clang/include/clang/Basic/Builtins.td
    M clang/include/clang/Basic/BuiltinsAArch64.def
    M clang/include/clang/Basic/BuiltinsAMDGPU.def
    M clang/include/clang/Basic/BuiltinsARM.def
    M clang/include/clang/Basic/BuiltinsBase.td
    M clang/include/clang/Basic/BuiltinsHexagon.td
    M clang/include/clang/Basic/BuiltinsLoongArchLASX.def
    M clang/include/clang/Basic/BuiltinsNVPTX.td
    M clang/include/clang/Basic/BuiltinsPPC.def
    M clang/include/clang/Basic/BuiltinsRISCVXAndes.td
    M clang/include/clang/Basic/BuiltinsSPIRVCommon.td
    M clang/include/clang/Basic/BuiltinsSPIRVVK.td
    M clang/include/clang/Basic/BuiltinsX86.td
    M clang/include/clang/Basic/BuiltinsX86_64.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/DarwinSDKInfo.h
    M clang/include/clang/Basic/DebugOptions.def
    M clang/include/clang/Basic/Diagnostic.h
    M clang/include/clang/Basic/DiagnosticASTKinds.td
    M clang/include/clang/Basic/DiagnosticDriverKinds.td
    M clang/include/clang/Basic/DiagnosticFrontendKinds.td
    M clang/include/clang/Basic/DiagnosticGroups.td
    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/DiagnosticSerializationKinds.td
    M clang/include/clang/Basic/DirectoryEntry.h
    M clang/include/clang/Basic/Features.def
    M clang/include/clang/Basic/FileEntry.h
    M clang/include/clang/Basic/FileManager.h
    M clang/include/clang/Basic/HLSLRuntime.h
    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/LangStandard.h
    M clang/include/clang/Basic/LangStandards.def
    M clang/include/clang/Basic/OffloadArch.h
    M clang/include/clang/Basic/OpenACCKinds.h
    M clang/include/clang/Basic/OpenCLExtensions.def
    M clang/include/clang/Basic/OpenMPKinds.def
    M clang/include/clang/Basic/OpenMPKinds.h
    M clang/include/clang/Basic/SanitizerSpecialCaseList.h
    M clang/include/clang/Basic/Sanitizers.def
    M clang/include/clang/Basic/Sarif.h
    M clang/include/clang/Basic/SourceLocation.h
    M clang/include/clang/Basic/SourceManager.h
    M clang/include/clang/Basic/Specifiers.h
    M clang/include/clang/Basic/StmtNodes.td
    M clang/include/clang/Basic/SyncScope.h
    M clang/include/clang/Basic/TargetBuiltins.h
    M clang/include/clang/Basic/TargetID.h
    M clang/include/clang/Basic/TargetInfo.h
    M clang/include/clang/Basic/TokenKinds.def
    M clang/include/clang/Basic/TokenKinds.h
    M clang/include/clang/Basic/arm_mve.td
    M clang/include/clang/Basic/arm_mve_defs.td
    M clang/include/clang/Basic/arm_neon.td
    M clang/include/clang/Basic/arm_sme.td
    M clang/include/clang/Basic/arm_sve.td
    M clang/include/clang/Basic/arm_sve_sme_incl.td
    M clang/include/clang/Basic/riscv_sifive_vector.td
    M clang/include/clang/Basic/riscv_vector.td
    M clang/include/clang/Basic/riscv_vector_common.td
    M clang/include/clang/CIR/CIRGenerator.h
    M clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrConstraints.td
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.h
    M clang/include/clang/CIR/Dialect/IR/CIRAttrs.td
    M clang/include/clang/CIR/Dialect/IR/CIRDataLayout.h
    M clang/include/clang/CIR/Dialect/IR/CIRDialect.td
    M clang/include/clang/CIR/Dialect/IR/CIROps.td
    M clang/include/clang/CIR/Dialect/IR/CIROpsEnums.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypeConstraints.td
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.h
    M clang/include/clang/CIR/Dialect/IR/CIRTypes.td
    M clang/include/clang/CIR/Dialect/Passes.h
    M clang/include/clang/CIR/Dialect/Passes.td
    M clang/include/clang/CIR/MissingFeatures.h
    M clang/include/clang/CMakeLists.txt
    M clang/include/clang/CodeGen/ModuleBuilder.h
    A clang/include/clang/DependencyScanning/DependencyScannerImpl.h
    A clang/include/clang/DependencyScanning/DependencyScanningFilesystem.h
    A clang/include/clang/DependencyScanning/DependencyScanningService.h
    A clang/include/clang/DependencyScanning/DependencyScanningUtils.h
    A clang/include/clang/DependencyScanning/DependencyScanningWorker.h
    A clang/include/clang/DependencyScanning/InProcessModuleCache.h
    A clang/include/clang/DependencyScanning/ModuleDepCollector.h
    R clang/include/clang/Driver/CMakeLists.txt
    R clang/include/clang/Driver/ClangOptionDocs.td
    M clang/include/clang/Driver/CommonArgs.h
    A clang/include/clang/Driver/CreateASTUnitFromArgs.h
    A clang/include/clang/Driver/CreateInvocationFromArgs.h
    M clang/include/clang/Driver/Distro.h
    M clang/include/clang/Driver/Driver.h
    R clang/include/clang/Driver/OptionUtils.h
    R clang/include/clang/Driver/Options.h
    R clang/include/clang/Driver/Options.td
    M clang/include/clang/Driver/RocmInstallationDetector.h
    M clang/include/clang/Driver/SanitizerArgs.h
    M clang/include/clang/ExtractAPI/API.h
    M clang/include/clang/Format/Format.h
    M clang/include/clang/Frontend/ASTUnit.h
    M clang/include/clang/Frontend/ChainedDiagnosticConsumer.h
    M clang/include/clang/Frontend/CompilerInstance.h
    M clang/include/clang/Frontend/CompilerInvocation.h
    M clang/include/clang/Frontend/FrontendActions.h
    M clang/include/clang/Frontend/FrontendOptions.h
    M clang/include/clang/Frontend/SARIFDiagnostic.h
    A clang/include/clang/Frontend/StandaloneDiagnostic.h
    M clang/include/clang/Frontend/TextDiagnostic.h
    M clang/include/clang/Frontend/Utils.h
    M clang/include/clang/Index/IndexingOptions.h
    A clang/include/clang/Interpreter/IncrementalExecutor.h
    M clang/include/clang/Interpreter/Interpreter.h
    M clang/include/clang/Lex/DependencyDirectivesScanner.h
    M clang/include/clang/Lex/HeaderSearch.h
    M clang/include/clang/Lex/PPCallbacks.h
    M clang/include/clang/Lex/PPEmbedParameters.h
    M clang/include/clang/Lex/Preprocessor.h
    M clang/include/clang/Lex/PreprocessorOptions.h
    M clang/include/clang/Lex/Token.h
    A clang/include/clang/Options/CMakeLists.txt
    A clang/include/clang/Options/ClangOptionDocs.td
    A clang/include/clang/Options/OptionUtils.h
    A clang/include/clang/Options/Options.h
    A clang/include/clang/Options/Options.td
    M clang/include/clang/Parse/Parser.h
    M clang/include/clang/Sema/AnalysisBasedWarnings.h
    M clang/include/clang/Sema/Attr.h
    M clang/include/clang/Sema/CMakeLists.txt
    M clang/include/clang/Sema/DeclSpec.h
    M clang/include/clang/Sema/Initialization.h
    M clang/include/clang/Sema/Overload.h
    M clang/include/clang/Sema/ParsedAttr.h
    M clang/include/clang/Sema/Sema.h
    M clang/include/clang/Sema/SemaARM.h
    M clang/include/clang/Sema/SemaBase.h
    M clang/include/clang/Sema/SemaCUDA.h
    M clang/include/clang/Sema/SemaHLSL.h
    M clang/include/clang/Sema/SemaOpenACC.h
    M clang/include/clang/Sema/SemaOpenMP.h
    M clang/include/clang/Sema/SemaRISCV.h
    M clang/include/clang/Sema/SemaX86.h
    M clang/include/clang/Sema/Template.h
    M clang/include/clang/Serialization/ASTBitCodes.h
    M clang/include/clang/Serialization/ASTReader.h
    M clang/include/clang/Serialization/ASTWriter.h
    M clang/include/clang/Serialization/ModuleCache.h
    M clang/include/clang/Serialization/ModuleFile.h
    M clang/include/clang/Serialization/ModuleManager.h
    M clang/include/clang/StaticAnalyzer/Checkers/Checkers.td
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/AnalysisManager.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/CallEvent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/DynamicExtent.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/EntryPointStats.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/FunctionSummary.h
    M clang/include/clang/StaticAnalyzer/Core/PathSensitive/SMTConv.h
    M clang/include/clang/Support/RISCVVIntrinsicUtils.h
    R clang/include/clang/Tooling/DependencyScanning/DependencyScanningFilesystem.h
    R clang/include/clang/Tooling/DependencyScanning/DependencyScanningService.h
    R clang/include/clang/Tooling/DependencyScanning/DependencyScanningTool.h
    R clang/include/clang/Tooling/DependencyScanning/DependencyScanningWorker.h
    R clang/include/clang/Tooling/DependencyScanning/InProcessModuleCache.h
    R clang/include/clang/Tooling/DependencyScanning/ModuleDepCollector.h
    A clang/include/clang/Tooling/DependencyScanningTool.h
    M clang/include/clang/Tooling/Inclusions/HeaderIncludes.h
    M clang/include/clang/Tooling/Transformer/RangeSelector.h
    M clang/include/module.modulemap
    M clang/lib/APINotes/APINotesYAMLCompiler.cpp
    M clang/lib/AST/ASTContext.cpp
    M clang/lib/AST/ASTDiagnostic.cpp
    M clang/lib/AST/ASTImporter.cpp
    M clang/lib/AST/ASTStructuralEquivalence.cpp
    M clang/lib/AST/ByteCode/BitcastBuffer.h
    M clang/lib/AST/ByteCode/ByteCodeEmitter.cpp
    M clang/lib/AST/ByteCode/ByteCodeEmitter.h
    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/Context.h
    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/Floating.h
    M clang/lib/AST/ByteCode/Function.h
    A clang/lib/AST/ByteCode/InitMap.cpp
    A clang/lib/AST/ByteCode/InitMap.h
    M clang/lib/AST/ByteCode/Integral.h
    M clang/lib/AST/ByteCode/IntegralAP.h
    M clang/lib/AST/ByteCode/Interp.cpp
    M clang/lib/AST/ByteCode/Interp.h
    M clang/lib/AST/ByteCode/InterpBlock.cpp
    M clang/lib/AST/ByteCode/InterpBlock.h
    M clang/lib/AST/ByteCode/InterpBuiltin.cpp
    M clang/lib/AST/ByteCode/InterpFrame.cpp
    M clang/lib/AST/ByteCode/InterpFrame.h
    A clang/lib/AST/ByteCode/InterpHelpers.h
    M clang/lib/AST/ByteCode/InterpState.h
    M clang/lib/AST/ByteCode/MemberPointer.cpp
    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/PrimType.h
    M clang/lib/AST/ByteCode/Program.cpp
    M clang/lib/AST/ByteCode/Program.h
    M clang/lib/AST/ByteCode/Record.h
    M clang/lib/AST/ByteCode/Source.h
    M clang/lib/AST/CMakeLists.txt
    M clang/lib/AST/CXXInheritance.cpp
    M clang/lib/AST/Comment.cpp
    M clang/lib/AST/CommentSema.cpp
    M clang/lib/AST/ComparisonCategories.cpp
    M clang/lib/AST/ComputeDependence.cpp
    M clang/lib/AST/Decl.cpp
    M clang/lib/AST/DeclBase.cpp
    M clang/lib/AST/DeclCXX.cpp
    M clang/lib/AST/DeclPrinter.cpp
    M clang/lib/AST/DeclTemplate.cpp
    M clang/lib/AST/DeclarationName.cpp
    M clang/lib/AST/Expr.cpp
    M clang/lib/AST/ExprCXX.cpp
    M clang/lib/AST/ExprClassification.cpp
    M clang/lib/AST/ExprConstShared.h
    M clang/lib/AST/ExprConstant.cpp
    M clang/lib/AST/ExprObjC.cpp
    A clang/lib/AST/InferAlloc.cpp
    M clang/lib/AST/InheritViz.cpp
    M clang/lib/AST/ItaniumMangle.cpp
    M clang/lib/AST/JSONNodeDumper.cpp
    M clang/lib/AST/MicrosoftMangle.cpp
    M clang/lib/AST/ODRHash.cpp
    M clang/lib/AST/OpenACCClause.cpp
    M clang/lib/AST/OpenMPClause.cpp
    M clang/lib/AST/ParentMapContext.cpp
    M clang/lib/AST/QualTypeNames.cpp
    M clang/lib/AST/RecordLayoutBuilder.cpp
    M clang/lib/AST/Stmt.cpp
    M clang/lib/AST/StmtOpenACC.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/TypeLoc.cpp
    M clang/lib/AST/TypePrinter.cpp
    M clang/lib/AST/VTableBuilder.cpp
    M clang/lib/ASTMatchers/ASTMatchersInternal.cpp
    M clang/lib/ASTMatchers/CMakeLists.txt
    M clang/lib/ASTMatchers/Dynamic/Registry.cpp
    R clang/lib/ASTMatchers/GtestMatchers.cpp
    M clang/lib/Analysis/AnalysisDeclContext.cpp
    M clang/lib/Analysis/BodyFarm.cpp
    M clang/lib/Analysis/CFG.cpp
    M clang/lib/Analysis/CFGStmtMap.cpp
    M clang/lib/Analysis/CMakeLists.txt
    M clang/lib/Analysis/Consumed.cpp
    M clang/lib/Analysis/ExprMutationAnalyzer.cpp
    M clang/lib/Analysis/FlowSensitive/ASTOps.cpp
    M clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
    M clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
    M clang/lib/Analysis/FlowSensitive/Models/CMakeLists.txt
    M clang/lib/Analysis/FlowSensitive/Models/UncheckedOptionalAccessModel.cpp
    A clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
    M clang/lib/Analysis/FlowSensitive/SmartPointerAccessorCaching.cpp
    M clang/lib/Analysis/FlowSensitive/Transfer.cpp
    R clang/lib/Analysis/LifetimeAnnotations.cpp
    R clang/lib/Analysis/LifetimeSafety.cpp
    A clang/lib/Analysis/LifetimeSafety/CMakeLists.txt
    A clang/lib/Analysis/LifetimeSafety/Checker.cpp
    A clang/lib/Analysis/LifetimeSafety/Dataflow.h
    A clang/lib/Analysis/LifetimeSafety/Facts.cpp
    A clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
    A clang/lib/Analysis/LifetimeSafety/LifetimeAnnotations.cpp
    A clang/lib/Analysis/LifetimeSafety/LifetimeSafety.cpp
    A clang/lib/Analysis/LifetimeSafety/LifetimeStats.cpp
    A clang/lib/Analysis/LifetimeSafety/LiveOrigins.cpp
    A clang/lib/Analysis/LifetimeSafety/LoanPropagation.cpp
    A clang/lib/Analysis/LifetimeSafety/Loans.cpp
    A clang/lib/Analysis/LifetimeSafety/Origins.cpp
    M clang/lib/Analysis/MacroExpansionContext.cpp
    M clang/lib/Analysis/RetainSummaryManager.cpp
    A clang/lib/Analysis/Scalable/ASTEntityMapping.cpp
    A clang/lib/Analysis/Scalable/CMakeLists.txt
    A clang/lib/Analysis/Scalable/Model/BuildNamespace.cpp
    A clang/lib/Analysis/Scalable/Model/EntityIdTable.cpp
    A clang/lib/Analysis/Scalable/Model/EntityName.cpp
    M clang/lib/Analysis/ThreadSafety.cpp
    M clang/lib/Analysis/ThreadSafetyCommon.cpp
    M clang/lib/Analysis/UninitializedValues.cpp
    M clang/lib/Analysis/UnsafeBufferUsage.cpp
    M clang/lib/Basic/BuiltinTargetFeatures.h
    M clang/lib/Basic/Builtins.cpp
    M clang/lib/Basic/Cuda.cpp
    M clang/lib/Basic/DarwinSDKInfo.cpp
    M clang/lib/Basic/Diagnostic.cpp
    M clang/lib/Basic/FileManager.cpp
    M clang/lib/Basic/IdentifierTable.cpp
    M clang/lib/Basic/LangOptions.cpp
    M clang/lib/Basic/LangStandards.cpp
    M clang/lib/Basic/OffloadArch.cpp
    M clang/lib/Basic/OpenMPKinds.cpp
    M clang/lib/Basic/ProfileList.cpp
    M clang/lib/Basic/SanitizerSpecialCaseList.cpp
    M clang/lib/Basic/Sarif.cpp
    M clang/lib/Basic/SourceManager.cpp
    M clang/lib/Basic/TargetID.cpp
    M clang/lib/Basic/TargetInfo.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/AVR.cpp
    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.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/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/PPC.h
    M clang/lib/Basic/Targets/RISCV.cpp
    M clang/lib/Basic/Targets/RISCV.h
    M clang/lib/Basic/Targets/SPIR.h
    M clang/lib/Basic/Targets/Sparc.cpp
    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.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.h
    M clang/lib/Basic/Targets/Xtensa.h
    M clang/lib/CIR/CodeGen/Address.h
    M clang/lib/CIR/CodeGen/CIRGenAsm.cpp
    M clang/lib/CIR/CodeGen/CIRGenAtomic.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenBuilder.h
    M clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
    A clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
    A clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenCXXABI.h
    M clang/lib/CIR/CodeGen/CIRGenCall.cpp
    M clang/lib/CIR/CodeGen/CIRGenClass.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.cpp
    M clang/lib/CIR/CodeGen/CIRGenCleanup.h
    M clang/lib/CIR/CodeGen/CIRGenCoroutine.cpp
    M clang/lib/CIR/CodeGen/CIRGenDecl.cpp
    M clang/lib/CIR/CodeGen/CIRGenDeclOpenACC.cpp
    A clang/lib/CIR/CodeGen/CIRGenDeclOpenMP.cpp
    M clang/lib/CIR/CodeGen/CIRGenException.cpp
    M clang/lib/CIR/CodeGen/CIRGenExpr.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprAggregate.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprCXX.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprComplex.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
    M clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.cpp
    M clang/lib/CIR/CodeGen/CIRGenFunction.h
    M clang/lib/CIR/CodeGen/CIRGenItaniumCXXABI.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.cpp
    M clang/lib/CIR/CodeGen/CIRGenModule.h
    M clang/lib/CIR/CodeGen/CIRGenOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCClause.cpp
    A clang/lib/CIR/CodeGen/CIRGenOpenACCHelpers.h
    M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.cpp
    M clang/lib/CIR/CodeGen/CIRGenOpenACCRecipe.h
    A clang/lib/CIR/CodeGen/CIRGenOpenMPClause.cpp
    A clang/lib/CIR/CodeGen/CIRGenPointerAuth.cpp
    M clang/lib/CIR/CodeGen/CIRGenRecordLayout.h
    M clang/lib/CIR/CodeGen/CIRGenRecordLayoutBuilder.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmt.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACC.cpp
    M clang/lib/CIR/CodeGen/CIRGenStmtOpenACCLoop.cpp
    A clang/lib/CIR/CodeGen/CIRGenStmtOpenMP.cpp
    M clang/lib/CIR/CodeGen/CIRGenTypeCache.h
    M clang/lib/CIR/CodeGen/CIRGenTypes.cpp
    M clang/lib/CIR/CodeGen/CIRGenVTables.cpp
    M clang/lib/CIR/CodeGen/CIRGenValue.h
    M clang/lib/CIR/CodeGen/CIRGenerator.cpp
    M clang/lib/CIR/CodeGen/CMakeLists.txt
    M clang/lib/CIR/CodeGen/EHScopeStack.h
    M clang/lib/CIR/CodeGen/TargetInfo.cpp
    M clang/lib/CIR/CodeGen/TargetInfo.h
    M clang/lib/CIR/Dialect/IR/CIRAttrs.cpp
    M clang/lib/CIR/Dialect/IR/CIRDialect.cpp
    M clang/lib/CIR/Dialect/IR/CIRMemorySlot.cpp
    M clang/lib/CIR/Dialect/IR/CIRTypes.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRCanonicalize.cpp
    M clang/lib/CIR/Dialect/Transforms/CIRSimplify.cpp
    M clang/lib/CIR/Dialect/Transforms/CMakeLists.txt
    A clang/lib/CIR/Dialect/Transforms/CXXABILowering.cpp
    M clang/lib/CIR/Dialect/Transforms/FlattenCFG.cpp
    M clang/lib/CIR/Dialect/Transforms/GotoSolver.cpp
    M clang/lib/CIR/Dialect/Transforms/HoistAllocas.cpp
    M clang/lib/CIR/Dialect/Transforms/LoweringPrepare.cpp
    A clang/lib/CIR/Dialect/Transforms/LoweringPrepareCXXABI.h
    A clang/lib/CIR/Dialect/Transforms/LoweringPrepareItaniumCXXABI.cpp
    M clang/lib/CIR/Dialect/Transforms/PassDetail.h
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRCXXABI.h
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/CMakeLists.txt
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerItaniumCXXABI.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.cpp
    A clang/lib/CIR/Dialect/Transforms/TargetLowering/LowerModule.h
    M clang/lib/CIR/FrontendAction/CIRGenAction.cpp
    M clang/lib/CIR/Interfaces/CIRLoopOpInterface.cpp
    M clang/lib/CIR/Lowering/CIRPasses.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/CMakeLists.txt
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
    M clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.h
    M clang/lib/CIR/Lowering/LoweringHelpers.cpp
    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/BackendUtil.cpp
    M clang/lib/CodeGen/CGAtomic.cpp
    M clang/lib/CodeGen/CGBlocks.cpp
    M clang/lib/CodeGen/CGBuilder.h
    M clang/lib/CodeGen/CGBuiltin.cpp
    M clang/lib/CodeGen/CGCUDANV.cpp
    M clang/lib/CodeGen/CGCUDARuntime.cpp
    M clang/lib/CodeGen/CGCUDARuntime.h
    M clang/lib/CodeGen/CGCXX.cpp
    M clang/lib/CodeGen/CGCXXABI.cpp
    M clang/lib/CodeGen/CGCXXABI.h
    M clang/lib/CodeGen/CGCall.cpp
    M clang/lib/CodeGen/CGCall.h
    M clang/lib/CodeGen/CGClass.cpp
    M clang/lib/CodeGen/CGCoroutine.cpp
    M clang/lib/CodeGen/CGDebugInfo.cpp
    M clang/lib/CodeGen/CGDebugInfo.h
    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/CGGPUBuiltin.cpp
    M clang/lib/CodeGen/CGHLSLBuiltins.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.cpp
    M clang/lib/CodeGen/CGHLSLRuntime.h
    M clang/lib/CodeGen/CGNonTrivialStruct.cpp
    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/CGOpenMPRuntime.cpp
    M clang/lib/CodeGen/CGOpenMPRuntime.h
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.cpp
    M clang/lib/CodeGen/CGOpenMPRuntimeGPU.h
    M clang/lib/CodeGen/CGPointerAuth.cpp
    M clang/lib/CodeGen/CGStmt.cpp
    M clang/lib/CodeGen/CGStmtOpenMP.cpp
    M clang/lib/CodeGen/CGVTables.cpp
    M clang/lib/CodeGen/CGVTables.h
    M clang/lib/CodeGen/CGValue.h
    M clang/lib/CodeGen/CMakeLists.txt
    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/CodeGenPGO.cpp
    M clang/lib/CodeGen/CodeGenPGO.h
    M clang/lib/CodeGen/CodeGenTBAA.cpp
    M clang/lib/CodeGen/CodeGenTypeCache.h
    M clang/lib/CodeGen/CodeGenTypes.cpp
    M clang/lib/CodeGen/CoverageMappingGen.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.cpp
    M clang/lib/CodeGen/HLSLBufferLayoutBuilder.h
    M clang/lib/CodeGen/ItaniumCXXABI.cpp
    M clang/lib/CodeGen/MCDCState.h
    M clang/lib/CodeGen/MicrosoftCXXABI.cpp
    M clang/lib/CodeGen/ModuleBuilder.cpp
    M clang/lib/CodeGen/PatternInit.cpp
    M clang/lib/CodeGen/SanitizerHandler.h
    M clang/lib/CodeGen/SwiftCallingConv.cpp
    M clang/lib/CodeGen/TargetBuiltins/AMDGPU.cpp
    M clang/lib/CodeGen/TargetBuiltins/ARM.cpp
    M clang/lib/CodeGen/TargetBuiltins/NVPTX.cpp
    M clang/lib/CodeGen/TargetBuiltins/PPC.cpp
    M clang/lib/CodeGen/TargetBuiltins/RISCV.cpp
    M clang/lib/CodeGen/TargetBuiltins/SPIR.cpp
    M clang/lib/CodeGen/TargetBuiltins/X86.cpp
    M clang/lib/CodeGen/TargetInfo.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/DirectX.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/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/X86.cpp
    M clang/lib/CodeGen/Targets/XCore.cpp
    M clang/lib/CrossTU/CMakeLists.txt
    M clang/lib/CrossTU/CrossTranslationUnit.cpp
    A clang/lib/DependencyScanning/CMakeLists.txt
    A clang/lib/DependencyScanning/DependencyScannerImpl.cpp
    A clang/lib/DependencyScanning/DependencyScanningFilesystem.cpp
    A clang/lib/DependencyScanning/DependencyScanningService.cpp
    A clang/lib/DependencyScanning/DependencyScanningUtils.cpp
    A clang/lib/DependencyScanning/DependencyScanningWorker.cpp
    A clang/lib/DependencyScanning/InProcessModuleCache.cpp
    A clang/lib/DependencyScanning/ModuleDepCollector.cpp
    M clang/lib/DirectoryWatcher/linux/DirectoryWatcher-linux.cpp
    M clang/lib/Driver/Action.cpp
    M clang/lib/Driver/CMakeLists.txt
    M clang/lib/Driver/Compilation.cpp
    A clang/lib/Driver/CreateASTUnitFromArgs.cpp
    A clang/lib/Driver/CreateInvocationFromArgs.cpp
    M clang/lib/Driver/Distro.cpp
    M clang/lib/Driver/Driver.cpp
    R clang/lib/Driver/DriverOptions.cpp
    M clang/lib/Driver/Job.cpp
    R clang/lib/Driver/OptionUtils.cpp
    M clang/lib/Driver/SanitizerArgs.cpp
    M clang/lib/Driver/ToolChain.cpp
    M clang/lib/Driver/ToolChains/AIX.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/AVR.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.cpp
    M clang/lib/Driver/ToolChains/Arch/AArch64.h
    M clang/lib/Driver/ToolChains/Arch/ARM.cpp
    M clang/lib/Driver/ToolChains/Arch/CSKY.cpp
    M clang/lib/Driver/ToolChains/Arch/LoongArch.cpp
    M clang/lib/Driver/ToolChains/Arch/M68k.cpp
    M clang/lib/Driver/ToolChains/Arch/Mips.cpp
    M clang/lib/Driver/ToolChains/Arch/PPC.cpp
    M clang/lib/Driver/ToolChains/Arch/RISCV.cpp
    M clang/lib/Driver/ToolChains/Arch/Sparc.cpp
    M clang/lib/Driver/ToolChains/Arch/SystemZ.cpp
    M clang/lib/Driver/ToolChains/Arch/VE.cpp
    M clang/lib/Driver/ToolChains/Arch/X86.cpp
    M clang/lib/Driver/ToolChains/BareMetal.cpp
    M clang/lib/Driver/ToolChains/CSKYToolChain.cpp
    M clang/lib/Driver/ToolChains/Clang.cpp
    M clang/lib/Driver/ToolChains/Clang.h
    M clang/lib/Driver/ToolChains/CommonArgs.cpp
    M clang/lib/Driver/ToolChains/CrossWindows.cpp
    M clang/lib/Driver/ToolChains/Cuda.cpp
    M clang/lib/Driver/ToolChains/Cygwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.cpp
    M clang/lib/Driver/ToolChains/Darwin.h
    M clang/lib/Driver/ToolChains/DragonFly.cpp
    M clang/lib/Driver/ToolChains/Flang.cpp
    M clang/lib/Driver/ToolChains/FreeBSD.cpp
    M clang/lib/Driver/ToolChains/Fuchsia.cpp
    M clang/lib/Driver/ToolChains/Gnu.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.cpp
    M clang/lib/Driver/ToolChains/HIPAMD.h
    M clang/lib/Driver/ToolChains/HIPSPV.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.cpp
    M clang/lib/Driver/ToolChains/HIPUtility.h
    M clang/lib/Driver/ToolChains/HLSL.cpp
    M clang/lib/Driver/ToolChains/HLSL.h
    M clang/lib/Driver/ToolChains/Hexagon.cpp
    M clang/lib/Driver/ToolChains/Hurd.cpp
    A clang/lib/Driver/ToolChains/LFILinux.cpp
    A clang/lib/Driver/ToolChains/LFILinux.h
    M clang/lib/Driver/ToolChains/Linux.cpp
    M clang/lib/Driver/ToolChains/Linux.h
    M clang/lib/Driver/ToolChains/MSP430.cpp
    M clang/lib/Driver/ToolChains/MSVC.cpp
    M clang/lib/Driver/ToolChains/Managarm.cpp
    M clang/lib/Driver/ToolChains/MinGW.cpp
    M clang/lib/Driver/ToolChains/MipsLinux.cpp
    M clang/lib/Driver/ToolChains/NetBSD.cpp
    M clang/lib/Driver/ToolChains/OHOS.cpp
    M clang/lib/Driver/ToolChains/OpenBSD.cpp
    M clang/lib/Driver/ToolChains/PPCFreeBSD.cpp
    M clang/lib/Driver/ToolChains/PPCLinux.cpp
    M clang/lib/Driver/ToolChains/PS4CPU.cpp
    M clang/lib/Driver/ToolChains/SPIRV.cpp
    M clang/lib/Driver/ToolChains/SPIRV.h
    M clang/lib/Driver/ToolChains/SYCL.cpp
    M clang/lib/Driver/ToolChains/Solaris.cpp
    M clang/lib/Driver/ToolChains/UEFI.cpp
    M clang/lib/Driver/ToolChains/VEToolchain.cpp
    M clang/lib/Driver/ToolChains/WebAssembly.cpp
    M clang/lib/Driver/ToolChains/XCore.cpp
    M clang/lib/Driver/ToolChains/ZOS.cpp
    M clang/lib/Driver/XRayArgs.cpp
    M clang/lib/Edit/RewriteObjCFoundationAPI.cpp
    M clang/lib/ExtractAPI/DeclarationFragments.cpp
    M clang/lib/ExtractAPI/TypedefUnderlyingTypeResolver.cpp
    M clang/lib/Format/BreakableToken.cpp
    M clang/lib/Format/ContinuationIndenter.cpp
    M clang/lib/Format/ContinuationIndenter.h
    M clang/lib/Format/DefinitionBlockSeparator.cpp
    M clang/lib/Format/Format.cpp
    M clang/lib/Format/FormatToken.cpp
    M clang/lib/Format/FormatToken.h
    M clang/lib/Format/FormatTokenLexer.cpp
    M clang/lib/Format/IntegerLiteralSeparatorFixer.cpp
    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/Format/UnwrappedLineParser.h
    M clang/lib/Format/WhitespaceManager.cpp
    M clang/lib/Format/WhitespaceManager.h
    M clang/lib/Frontend/ASTUnit.cpp
    M clang/lib/Frontend/CMakeLists.txt
    M clang/lib/Frontend/ChainedIncludesSource.cpp
    M clang/lib/Frontend/CompilerInstance.cpp
    M clang/lib/Frontend/CompilerInvocation.cpp
    R clang/lib/Frontend/CreateInvocationFromCommandLine.cpp
    M clang/lib/Frontend/DependencyFile.cpp
    M clang/lib/Frontend/DependencyGraph.cpp
    M clang/lib/Frontend/FrontendAction.cpp
    M clang/lib/Frontend/FrontendActions.cpp
    M clang/lib/Frontend/FrontendOptions.cpp
    M clang/lib/Frontend/HeaderIncludeGen.cpp
    M clang/lib/Frontend/InitPreprocessor.cpp
    M clang/lib/Frontend/ModuleDependencyCollector.cpp
    M clang/lib/Frontend/PrecompiledPreamble.cpp
    M clang/lib/Frontend/Rewrite/FixItRewriter.cpp
    M clang/lib/Frontend/Rewrite/FrontendActions.cpp
    M clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
    M clang/lib/Frontend/SARIFDiagnostic.cpp
    M clang/lib/Frontend/SerializedDiagnosticPrinter.cpp
    A clang/lib/Frontend/StandaloneDiagnostic.cpp
    M clang/lib/Frontend/TestModuleFileExtension.cpp
    M clang/lib/Frontend/TextDiagnostic.cpp
    M clang/lib/Frontend/VerifyDiagnosticConsumer.cpp
    M clang/lib/FrontendTool/CMakeLists.txt
    M clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp
    M clang/lib/Headers/CMakeLists.txt
    M clang/lib/Headers/__clang_cuda_complex_builtins.h
    M clang/lib/Headers/__clang_cuda_device_functions.h
    M clang/lib/Headers/__clang_cuda_runtime_wrapper.h
    M clang/lib/Headers/__clang_hip_libdevice_declares.h
    M clang/lib/Headers/__clang_hip_math.h
    M clang/lib/Headers/__clang_hip_runtime_wrapper.h
    A clang/lib/Headers/__float_float.h
    A clang/lib/Headers/__float_header_macro.h
    A clang/lib/Headers/__float_infinity_nan.h
    A clang/lib/Headers/amo.h
    M clang/lib/Headers/amxavx512intrin.h
    R clang/lib/Headers/amxbf16transposeintrin.h
    R clang/lib/Headers/amxcomplextransposeintrin.h
    R clang/lib/Headers/amxfp16transposeintrin.h
    M clang/lib/Headers/amxintrin.h
    R clang/lib/Headers/amxmovrstransposeintrin.h
    R clang/lib/Headers/amxtf32transposeintrin.h
    R clang/lib/Headers/amxtransposeintrin.h
    M clang/lib/Headers/arm_acle.h
    M clang/lib/Headers/avx10_2_512bf16intrin.h
    M clang/lib/Headers/avx10_2_512niintrin.h
    M clang/lib/Headers/avx10_2bf16intrin.h
    M clang/lib/Headers/avx2intrin.h
    M clang/lib/Headers/avx512bf16intrin.h
    M clang/lib/Headers/avx512bitalgintrin.h
    M clang/lib/Headers/avx512bwintrin.h
    M clang/lib/Headers/avx512cdintrin.h
    M clang/lib/Headers/avx512dqintrin.h
    M clang/lib/Headers/avx512fintrin.h
    M clang/lib/Headers/avx512fp16intrin.h
    M clang/lib/Headers/avx512ifmaintrin.h
    M clang/lib/Headers/avx512ifmavlintrin.h
    M clang/lib/Headers/avx512vbmiintrin.h
    M clang/lib/Headers/avx512vbmivlintrin.h
    M clang/lib/Headers/avx512vlbf16intrin.h
    M clang/lib/Headers/avx512vlbitalgintrin.h
    M clang/lib/Headers/avx512vlbwintrin.h
    M clang/lib/Headers/avx512vlcdintrin.h
    M clang/lib/Headers/avx512vldqintrin.h
    M clang/lib/Headers/avx512vlfp16intrin.h
    M clang/lib/Headers/avx512vlintrin.h
    M clang/lib/Headers/avx512vlvnniintrin.h
    M clang/lib/Headers/avx512vnniintrin.h
    M clang/lib/Headers/avxifmaintrin.h
    M clang/lib/Headers/avxintrin.h
    M clang/lib/Headers/avxvnniint16intrin.h
    M clang/lib/Headers/avxvnniintrin.h
    M clang/lib/Headers/cpuid.h
    M clang/lib/Headers/emmintrin.h
    M clang/lib/Headers/float.h
    M clang/lib/Headers/fma4intrin.h
    M clang/lib/Headers/fmaintrin.h
    M clang/lib/Headers/gfniintrin.h
    M clang/lib/Headers/gpuintrin.h
    M clang/lib/Headers/hlsl/hlsl_alias_intrinsics.h
    M clang/lib/Headers/hlsl/hlsl_basic_types.h
    M clang/lib/Headers/hlsl/hlsl_compat_overloads.h
    M clang/lib/Headers/hlsl/hlsl_intrinsic_helpers.h
    M clang/lib/Headers/hlsl/hlsl_intrinsics.h
    M clang/lib/Headers/hvx_hexagon_protos.h
    M clang/lib/Headers/immintrin.h
    M clang/lib/Headers/lasxintrin.h
    M clang/lib/Headers/llvm_libc_wrappers/assert.h
    M clang/lib/Headers/llvm_libc_wrappers/ctype.h
    M clang/lib/Headers/llvm_libc_wrappers/inttypes.h
    R clang/lib/Headers/llvm_libc_wrappers/llvm-libc-decls/README.txt
    M clang/lib/Headers/llvm_libc_wrappers/stdio.h
    M clang/lib/Headers/llvm_libc_wrappers/stdlib.h
    M clang/lib/Headers/llvm_libc_wrappers/string.h
    M clang/lib/Headers/llvm_libc_wrappers/time.h
    M clang/lib/Headers/mmintrin.h
    M clang/lib/Headers/module.modulemap
    M clang/lib/Headers/opencl-c-base.h
    M clang/lib/Headers/opencl-c.h
    M clang/lib/Headers/pmmintrin.h
    M clang/lib/Headers/ptrauth.h
    M clang/lib/Headers/riscv_nds.h
    M clang/lib/Headers/sifive_vector.h
    M clang/lib/Headers/smmintrin.h
    A clang/lib/Headers/spirvintrin.h
    A clang/lib/Headers/stddefer.h
    M clang/lib/Headers/tmmintrin.h
    M clang/lib/Headers/xmmintrin.h
    M clang/lib/Index/CommentToXML.cpp
    M clang/lib/Index/IndexTypeSourceInfo.cpp
    M clang/lib/Index/IndexingAction.cpp
    M clang/lib/Index/USRGeneration.cpp
    M clang/lib/InstallAPI/HeaderFile.cpp
    M clang/lib/InstallAPI/Visitor.cpp
    M clang/lib/Interpreter/CMakeLists.txt
    M clang/lib/Interpreter/IncrementalAction.cpp
    M clang/lib/Interpreter/IncrementalExecutor.cpp
    R clang/lib/Interpreter/IncrementalExecutor.h
    M clang/lib/Interpreter/Interpreter.cpp
    M clang/lib/Interpreter/InterpreterUtils.h
    M clang/lib/Interpreter/InterpreterValuePrinter.cpp
    A clang/lib/Interpreter/OrcIncrementalExecutor.cpp
    A clang/lib/Interpreter/OrcIncrementalExecutor.h
    M clang/lib/Interpreter/Wasm.cpp
    M clang/lib/Interpreter/Wasm.h
    M clang/lib/Lex/DependencyDirectivesScanner.cpp
    M clang/lib/Lex/HeaderSearch.cpp
    M clang/lib/Lex/InitHeaderSearch.cpp
    M clang/lib/Lex/Lexer.cpp
    M clang/lib/Lex/LiteralSupport.cpp
    M clang/lib/Lex/ModuleMap.cpp
    M clang/lib/Lex/PPDirectives.cpp
    M clang/lib/Lex/PPExpressions.cpp
    M clang/lib/Lex/PPLexerChange.cpp
    M clang/lib/Lex/PPMacroExpansion.cpp
    M clang/lib/Lex/Preprocessor.cpp
    A clang/lib/Options/CMakeLists.txt
    A clang/lib/Options/DriverOptions.cpp
    A clang/lib/Options/OptionUtils.cpp
    M clang/lib/Parse/ParseCXXInlineMethods.cpp
    M clang/lib/Parse/ParseDecl.cpp
    M clang/lib/Parse/ParseDeclCXX.cpp
    M clang/lib/Parse/ParseExprCXX.cpp
    M clang/lib/Parse/ParseHLSL.cpp
    M clang/lib/Parse/ParseHLSLRootSignature.cpp
    M clang/lib/Parse/ParseInit.cpp
    M clang/lib/Parse/ParseObjc.cpp
    M clang/lib/Parse/ParseOpenMP.cpp
    M clang/lib/Parse/ParsePragma.cpp
    M clang/lib/Parse/ParseStmt.cpp
    M clang/lib/Parse/ParseTemplate.cpp
    M clang/lib/Parse/ParseTentative.cpp
    M clang/lib/Parse/Parser.cpp
    M clang/lib/Rewrite/Rewriter.cpp
    M clang/lib/Sema/AnalysisBasedWarnings.cpp
    M clang/lib/Sema/CMakeLists.txt
    M clang/lib/Sema/CheckExprLifetime.cpp
    M clang/lib/Sema/CheckExprLifetime.h
    M clang/lib/Sema/CodeCompleteConsumer.cpp
    M clang/lib/Sema/DeclSpec.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
    M clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.h
    M clang/lib/Sema/HLSLExternalSemaSource.cpp
    M clang/lib/Sema/HeuristicResolver.cpp
    M clang/lib/Sema/JumpDiagnostics.cpp
    M clang/lib/Sema/ParsedAttr.cpp
    M clang/lib/Sema/Sema.cpp
    M clang/lib/Sema/SemaAMDGPU.cpp
    M clang/lib/Sema/SemaAPINotes.cpp
    M clang/lib/Sema/SemaARM.cpp
    M clang/lib/Sema/SemaAttr.cpp
    M clang/lib/Sema/SemaAvailability.cpp
    M clang/lib/Sema/SemaBPF.cpp
    M clang/lib/Sema/SemaBase.cpp
    M clang/lib/Sema/SemaBoundsSafety.cpp
    M clang/lib/Sema/SemaCUDA.cpp
    M clang/lib/Sema/SemaCXXScopeSpec.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/SemaCoroutine.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/SemaExprObjC.cpp
    M clang/lib/Sema/SemaFunctionEffects.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/SemaModule.cpp
    M clang/lib/Sema/SemaObjC.cpp
    M clang/lib/Sema/SemaObjCProperty.cpp
    M clang/lib/Sema/SemaOpenACC.cpp
    M clang/lib/Sema/SemaOpenACCClause.cpp
    M clang/lib/Sema/SemaOpenMP.cpp
    M clang/lib/Sema/SemaOverload.cpp
    M clang/lib/Sema/SemaPPC.cpp
    M clang/lib/Sema/SemaRISCV.cpp
    M clang/lib/Sema/SemaSPIRV.cpp
    M clang/lib/Sema/SemaSYCL.cpp
    M clang/lib/Sema/SemaStmt.cpp
    M clang/lib/Sema/SemaStmtAsm.cpp
    M clang/lib/Sema/SemaStmtAttr.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/SemaTypeTraits.cpp
    M clang/lib/Sema/SemaX86.cpp
    M clang/lib/Sema/TreeTransform.h
    M clang/lib/Sema/TypeLocBuilder.h
    M clang/lib/Serialization/ASTCommon.h
    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/Serialization/GlobalModuleIndex.cpp
    M clang/lib/Serialization/ModuleCache.cpp
    M clang/lib/Serialization/ModuleFile.cpp
    M clang/lib/Serialization/ModuleManager.cpp
    M clang/lib/Serialization/TemplateArgumentHasher.cpp
    M clang/lib/StaticAnalyzer/Checkers/AnalysisOrderChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BlockInCriticalSectionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/BuiltinFunctionChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CStringChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CallAndMessageChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckObjCDealloc.cpp
    M clang/lib/StaticAnalyzer/Checkers/CheckSecuritySyntaxOnly.cpp
    M clang/lib/StaticAnalyzer/Checkers/DereferenceChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MacOSXAPIChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/MoveChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/NonNullParamChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/ObjCSuperDeallocChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StackAddrEscapeChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/StdVariantChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/TaggedUnionModeling.h
    M clang/lib/StaticAnalyzer/Checkers/VAListChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ASTUtils.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/ForwardDeclChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.h
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefCallArgsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLambdaCapturesChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefLocalVarsChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RawPtrRefMemberChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RefCntblBaseVirtualDtorChecker.cpp
    M clang/lib/StaticAnalyzer/Checkers/WebKit/RetainPtrCtorAdoptChecker.cpp
    M clang/lib/StaticAnalyzer/Core/BasicValueFactory.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/CallEvent.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerHelpers.cpp
    M clang/lib/StaticAnalyzer/Core/CheckerManager.cpp
    M clang/lib/StaticAnalyzer/Core/ConstraintManager.cpp
    M clang/lib/StaticAnalyzer/Core/DynamicExtent.cpp
    M clang/lib/StaticAnalyzer/Core/EntryPointStats.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/ExprEngineCXX.cpp
    M clang/lib/StaticAnalyzer/Core/ExprEngineCallAndReturn.cpp
    M clang/lib/StaticAnalyzer/Core/HTMLDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/LoopUnrolling.cpp
    M clang/lib/StaticAnalyzer/Core/PlistDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/RangeConstraintManager.cpp
    M clang/lib/StaticAnalyzer/Core/RegionStore.cpp
    M clang/lib/StaticAnalyzer/Core/SarifDiagnostics.cpp
    M clang/lib/StaticAnalyzer/Core/SimpleSValBuilder.cpp
    M clang/lib/StaticAnalyzer/Frontend/AnalysisConsumer.cpp
    M clang/lib/StaticAnalyzer/Frontend/CheckerRegistry.cpp
    M clang/lib/StaticAnalyzer/Frontend/ModelInjector.cpp
    M clang/lib/Support/RISCVVIntrinsicUtils.cpp
    M clang/lib/Testing/CommandLineArgs.cpp
    M clang/lib/Testing/TestAST.cpp
    M clang/lib/Tooling/CMakeLists.txt
    M clang/lib/Tooling/CompilationDatabase.cpp
    R clang/lib/Tooling/DependencyScanning/CMakeLists.txt
    R clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.cpp
    R clang/lib/Tooling/DependencyScanning/DependencyScannerImpl.h
    R clang/lib/Tooling/DependencyScanning/DependencyScanningFilesystem.cpp
    R clang/lib/Tooling/DependencyScanning/DependencyScanningService.cpp
    R clang/lib/Tooling/DependencyScanning/DependencyScanningTool.cpp
    R clang/lib/Tooling/DependencyScanning/DependencyScanningWorker.cpp
    R clang/lib/Tooling/DependencyScanning/InProcessModuleCache.cpp
    R clang/lib/Tooling/DependencyScanning/ModuleDepCollector.cpp
    A clang/lib/Tooling/DependencyScanningTool.cpp
    M clang/lib/Tooling/Execution.cpp
    M clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
    M clang/lib/Tooling/Inclusions/Stdlib/StdSpecialSymbolMap.inc
    M clang/lib/Tooling/InterpolatingCompilationDatabase.cpp
    M clang/lib/Tooling/Syntax/BuildTree.cpp
    M clang/lib/Tooling/Syntax/TokenBufferTokenManager.cpp
    M clang/lib/Tooling/Tooling.cpp
    M clang/lib/Tooling/Transformer/Parsing.cpp
    M clang/lib/Tooling/Transformer/RangeSelector.cpp
    M clang/lib/Tooling/Transformer/SourceCode.cpp
    M clang/test/APINotes/Inputs/Headers/Templates.apinotes
    M clang/test/APINotes/Inputs/Headers/Templates.h
    M clang/test/APINotes/templates.cpp
    M clang/test/AST/ByteCode/arrays.cpp
    M clang/test/AST/ByteCode/bitfields.cpp
    M clang/test/AST/ByteCode/builtin-constant-p.cpp
    M clang/test/AST/ByteCode/builtin-functions.cpp
    M clang/test/AST/ByteCode/builtin-object-size.cpp
    M clang/test/AST/ByteCode/builtins.c
    M clang/test/AST/ByteCode/builtins.cpp
    M clang/test/AST/ByteCode/c.c
    A clang/test/AST/ByteCode/char-buffer-arithmetic.c
    A clang/test/AST/ByteCode/codegen-cxx20.cpp
    M clang/test/AST/ByteCode/codegen.cpp
    M clang/test/AST/ByteCode/complex.cpp
    M clang/test/AST/ByteCode/const-eval.c
    M clang/test/AST/ByteCode/cxx03.cpp
    M clang/test/AST/ByteCode/cxx11.cpp
    A clang/test/AST/ByteCode/cxx14.cpp
    M clang/test/AST/ByteCode/cxx20.cpp
    M clang/test/AST/ByteCode/cxx23.cpp
    M clang/test/AST/ByteCode/cxx26.cpp
    M clang/test/AST/ByteCode/extern.cpp
    M clang/test/AST/ByteCode/intap.cpp
    M clang/test/AST/ByteCode/invalid.cpp
    M clang/test/AST/ByteCode/libcxx/deref-to-array.cpp
    M clang/test/AST/ByteCode/literals.cpp
    M clang/test/AST/ByteCode/new-delete.cpp
    M clang/test/AST/ByteCode/placement-new.cpp
    M clang/test/AST/ByteCode/records.cpp
    M clang/test/AST/ByteCode/switch.cpp
    M clang/test/AST/ByteCode/typeid.cpp
    M clang/test/AST/ByteCode/unions.cpp
    M clang/test/AST/HLSL/ByteAddressBuffers-AST.hlsl
    M clang/test/AST/HLSL/StructuredBuffers-AST.hlsl
    M clang/test/AST/HLSL/TypedBuffers-AST.hlsl
    M clang/test/AST/HLSL/cbuffer.hlsl
    A clang/test/AST/HLSL/matrix-constructors.hlsl
    A clang/test/AST/HLSL/matrix-general-initializer.hlsl
    A clang/test/AST/HLSL/matrix-single-subscript-getter.hlsl
    A clang/test/AST/HLSL/matrix-single-subscript-setter.hlsl
    A clang/test/AST/HLSL/matrix-single-subscript-swizzle.hlsl
    M clang/test/AST/HLSL/packoffset.hlsl
    A clang/test/AST/HLSL/pch_with_matrix_single_subscript.hlsl
    M clang/test/AST/HLSL/private.hlsl
    M clang/test/AST/HLSL/resource_binding_attr.hlsl
    A clang/test/AST/HLSL/semantic-input-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-input-struct.hlsl
    A clang/test/AST/HLSL/semantic-input.hlsl
    A clang/test/AST/HLSL/semantic-output-struct-shadow.hlsl
    A clang/test/AST/HLSL/semantic-output-struct.hlsl
    A clang/test/AST/HLSL/semantic-output.hlsl
    A clang/test/AST/HLSL/vk.pushconstant.hlsl
    M clang/test/AST/HLSL/vk.spec-constant.usage.hlsl
    M clang/test/AST/HLSL/vk_binding_attr.hlsl
    A clang/test/AST/ast-dump-APValue-addrlabeldiff.c
    M clang/test/AST/ast-dump-arm-attr.c
    M clang/test/AST/ast-dump-decl-json.c
    A clang/test/AST/ast-dump-defer-ts.c
    M clang/test/AST/ast-dump-expr-json.cpp
    A clang/test/AST/ast-dump-lambda-json.cpp
    M clang/test/AST/ast-dump-record-definition-data-json.cpp
    M clang/test/AST/ast-dump-records-json.cpp
    M clang/test/AST/ast-dump-records.c
    M clang/test/AST/ast-dump-records.cpp
    M clang/test/AST/ast-dump-recovery.cpp
    M clang/test/AST/ast-dump-stmt.c
    M clang/test/AST/ast-dump-templates.cpp
    A clang/test/AST/ast-print-defer-ts.c
    M clang/test/AST/ast-print-record-decl.c
    M clang/test/AST/attr-target-version.c
    M clang/test/ASTMerge/struct/test.c
    M clang/test/Analysis/ArrayBound/verbose-tests.c
    M clang/test/Analysis/Checkers/WebKit/call-args-checked.cpp
    M clang/test/Analysis/Checkers/WebKit/forward-decl-checker.mm
    M clang/test/Analysis/Checkers/WebKit/local-vars-checked-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/local-vars-counted-const-member.cpp
    M clang/test/Analysis/Checkers/WebKit/mock-system-header.h
    M clang/test/Analysis/Checkers/WebKit/mock-types.h
    M clang/test/Analysis/Checkers/WebKit/objc-mock-types.h
    M clang/test/Analysis/Checkers/WebKit/retain-ptr-ctor-adopt-use.mm
    A clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures-co_await-assertion-failure.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-lambda-captures.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-local-vars.cpp
    M clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
    M clang/test/Analysis/Checkers/WebKit/unretained-call-args.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-weak-arc.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-lambda-captures-weak.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-local-vars-weak-arc.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-local-vars-weak.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-local-vars.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-members-weak-arc.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-members-weak.mm
    M clang/test/Analysis/Checkers/WebKit/unretained-members.mm
    A clang/test/Analysis/Checkers/WebKit/unretained-obj-arg.mm
    M clang/test/Analysis/Inputs/expected-plists/lambda-notes.cpp.plist
    A clang/test/Analysis/Inputs/system-header-simulator-for-protobuf.h
    M clang/test/Analysis/LifetimeSafety/CMakeLists.txt
    M clang/test/Analysis/LifetimeSafety/benchmark.py
    M clang/test/Analysis/NewDelete-checker-test.cpp
    M clang/test/Analysis/NewDeleteLeaks.cpp
    M clang/test/Analysis/analyzeOneFunction.cpp
    M clang/test/Analysis/analyzer-config.c
    M clang/test/Analysis/analyzer-enabled-checkers.c
    M clang/test/Analysis/analyzer-note-analysis-entry-points.cpp
    M clang/test/Analysis/analyzer-stats/entry-point-stats.cpp
    M clang/test/Analysis/block-in-critical-section.cpp
    M clang/test/Analysis/bug_hash_test.cpp
    M clang/test/Analysis/builtin_overflow.c
    A clang/test/Analysis/call-and-message-argpointeeinitializedness.c
    A clang/test/Analysis/call-and-message-argpointeeinitializedness.cpp
    M clang/test/Analysis/call-and-message.c
    M clang/test/Analysis/cfg.cpp
    M clang/test/Analysis/csv2json.py
    M clang/test/Analysis/ctor-trivial-copy.cpp
    M clang/test/Analysis/cxx-uninitialized-object-inheritance.cpp
    M clang/test/Analysis/cxx-uninitialized-object.cpp
    M clang/test/Analysis/debug-CallGraph.cpp
    M clang/test/Analysis/explain-svals.cpp
    M clang/test/Analysis/inlining/Inputs/expected-plists/path-notes.cpp.plist
    M clang/test/Analysis/iterator-modeling.cpp
    M clang/test/Analysis/lifetime-cfg-output.cpp
    A clang/test/Analysis/loc-folding.cpp
    M clang/test/Analysis/loop-unrolling.cpp
    A clang/test/Analysis/null-pointer-arithm.c
    M clang/test/Analysis/plist-macros-with-expansion-ctu.c
    M clang/test/Analysis/plist-macros-with-expansion.c
    M clang/test/Analysis/plist-macros-with-expansion.cpp
    M clang/test/Analysis/scopes-cfg-output.cpp
    M clang/test/Analysis/stack-capture-leak-no-arc.mm
    M clang/test/Analysis/stackaddrleak.c
    M clang/test/Analysis/std-c-library-functions-arg-enabled-checkers.c
    A clang/test/Analysis/std-c-library-functions-eof-2-rad.c
    M clang/test/Analysis/std-variant-checker.cpp
    M clang/test/Analysis/stl-algorithm-modeling-aggressive-std-find-modeling.cpp
    M clang/test/Analysis/stl-algorithm-modeling.cpp
    M clang/test/Analysis/store-dump-orders.cpp
    M clang/test/Analysis/string.c
    M clang/test/Analysis/suppression-attr.cpp
    M clang/test/Analysis/taint-generic.cpp
    M clang/test/Analysis/template-param-objects.cpp
    M clang/test/Analysis/uninit-ps-rdar6145427.m
    A clang/test/Analysis/use-after-move-invalidation.cpp
    M clang/test/Analysis/z3-crosscheck-max-attempts.cpp
    M clang/test/Analysis/z3-unarysymexpr.c
    M clang/test/Analysis/z3/D83660.c
    M clang/test/Analysis/zero-size-non-pod-array.cpp
    M clang/test/C/C11/n1285_1.c
    M clang/test/C/C23/n3006.c
    M clang/test/C/C23/n3029.c
    M clang/test/C/C23/n3037.c
    A clang/test/C/C2y/n3348.c
    M clang/test/C/C2y/n3364.c
    A clang/test/C/C2y/n3457.c
    A clang/test/C/C2y/n3457_1.c
    A clang/test/C/C2y/n3457_2.c
    A clang/test/C/C2y/n3525.c
    A clang/test/C/C2y/n3532.c
    A clang/test/C/C2y/n3622.c
    A clang/test/C/C2y/n3623.c
    M clang/test/CIR/CodeGen/aapcs-volatile-bitfields.c
    A clang/test/CIR/CodeGen/address-space-conversion.cpp
    M clang/test/CIR/CodeGen/address-space.c
    A clang/test/CIR/CodeGen/agg-expr-lvalue.c
    M clang/test/CIR/CodeGen/array-ctor.cpp
    M clang/test/CIR/CodeGen/array.cpp
    A clang/test/CIR/CodeGen/asm-label-inline-builtins.c
    M clang/test/CIR/CodeGen/assign-operator.cpp
    A clang/test/CIR/CodeGen/atomic-scoped.c
    A clang/test/CIR/CodeGen/atomic-thread-fence.c
    M clang/test/CIR/CodeGen/atomic.c
    A clang/test/CIR/CodeGen/base-to-derived.cpp
    M clang/test/CIR/CodeGen/basic.c
    M clang/test/CIR/CodeGen/basic.cpp
    M clang/test/CIR/CodeGen/binassign.c
    M clang/test/CIR/CodeGen/bitfield-union.c
    M clang/test/CIR/CodeGen/bitfields.c
    M clang/test/CIR/CodeGen/bitfields.cpp
    M clang/test/CIR/CodeGen/bitfields_be.c
    R clang/test/CIR/CodeGen/builtins-floating-point.c
    A clang/test/CIR/CodeGen/call-via-class-member-funcptr.cpp
    M clang/test/CIR/CodeGen/call.c
    M clang/test/CIR/CodeGen/call.cpp
    M clang/test/CIR/CodeGen/cast.cpp
    A clang/test/CIR/CodeGen/choose-expr.cpp
    M clang/test/CIR/CodeGen/cmp.cpp
    M clang/test/CIR/CodeGen/comma.c
    M clang/test/CIR/CodeGen/complex-compound-assignment.cpp
    M clang/test/CIR/CodeGen/complex.cpp
    M clang/test/CIR/CodeGen/compound_literal.cpp
    A clang/test/CIR/CodeGen/concept-specialization.cpp
    A clang/test/CIR/CodeGen/constant-expr.cpp
    M clang/test/CIR/CodeGen/constant-inits.cpp
    A clang/test/CIR/CodeGen/copy-constructor.cpp
    M clang/test/CIR/CodeGen/coro-task.cpp
    A clang/test/CIR/CodeGen/count-of.c
    A clang/test/CIR/CodeGen/ctor-null-init.cpp
    M clang/test/CIR/CodeGen/ctor.cpp
    M clang/test/CIR/CodeGen/cxx-conversion-operators.cpp
    M clang/test/CIR/CodeGen/cxx-default-init.cpp
    A clang/test/CIR/CodeGen/cxx-rewritten-binary-operator.cpp
    A clang/test/CIR/CodeGen/cxx-special-member-attr.cpp
    A clang/test/CIR/CodeGen/cxx-traits.cpp
    A clang/test/CIR/CodeGen/defaultarg.cpp
    R libc/test/src/sys/resource/testdata/CMakeLists.txt

  Log Message:
  -----------
  [𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]


Compare: https://github.com/llvm/llvm-project/compare/dbd32c90f9ad...4b5bca3ff9c0

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