LLVM/project 1231c48llvm/include/llvm/IR IntrinsicsAMDGPU.td, llvm/test/CodeGen/AMDGPU llvm.amdgcn.wmma.target-features.ll

[NFC][AMDGPU] Use target features to guard WMMA intrinsics
DeltaFile
+57-0llvm/test/CodeGen/AMDGPU/llvm.amdgcn.wmma.target-features.ll
+32-20llvm/include/llvm/IR/IntrinsicsAMDGPU.td
+89-202 files

LLVM/project 1e762dcclang/lib/CodeGen CodeGenModule.cpp, clang/test/CodeGen/AArch64 abi-classify-return-types.c abi-classify-arg-types.c

[LLVMABI][AARCH64] Enable ABI library for all AArch64 targets (#217119)

This change updates the checks for enabling the LLVM ABI library on
AArch64 so that it is now enabled for Windows, aarch64_32, and
aarch64_be.

When I set the initial restrictions, I wasn't aware that these other
variants would be handled by the same ABI classification object with
only minor adjustments needed.

Assisted-by: Cursor / Grok 4.5 (test generation)
DeltaFile
+31-0llvm/unittests/ABI/AArch64TargetInfoTest.cpp
+14-5clang/test/CodeGen/AArch64/abi-classify-return-types.c
+14-5clang/test/CodeGen/AArch64/abi-classify-arg-types.c
+6-2clang/lib/CodeGen/CodeGenModule.cpp
+0-2llvm/lib/ABI/Targets/AArch64.cpp
+65-145 files

LLVM/project 5d96312llvm/test/CodeGen/AMDGPU v_ashr_pk.ll

[AMDGPU] Fix misleading GFX1300 prefix (#217662)

gfx1300 is not a valid AMDGPU subtarget.
DeltaFile
+54-54llvm/test/CodeGen/AMDGPU/v_ashr_pk.ll
+54-541 files

LLVM/project ce07ff9clang/lib/Sema SemaHLSL.cpp HLSLBuiltinTypeDeclBuilder.cpp, clang/test/AST/HLSL MultiSampledTextures-AST.hlsl

[HLSL] Add Texture2DMS (#211972)

Fixes https://github.com/llvm/llvm-project/issues/194933 and
https://github.com/llvm/llvm-project/issues/194955

This PR implements codegen for the IsMultiSampled resource attribute as
well as the new `Texture2DMS` type.
The codegen for the IsMultiSampled resource type implements the
`__builtin_hlsl_resource_load_ms` builtin.
The Texture2DMS type uses `__builtin_hlsl_resource_load_ms` instead of
`__builtin_hlsl_resource_load_level` for the `.Load()` method.

Unlike other HLSL resources, `Texture2DMS` takes an additional,
optional, `sample_count` template parameter.
The sample count is a non-type template parameter, so the resource
handle type `HLSLAttributedResourceType` now takes part in template
instantiation and lowers to the `dx.MSTexture` sample-count operand. A
sample count of 0 means the count comes from the bound resource at
runtime.

    [15 lines not shown]
DeltaFile
+99-11clang/lib/Sema/HLSLBuiltinTypeDeclBuilder.cpp
+97-0clang/test/AST/HLSL/MultiSampledTextures-AST.hlsl
+74-0clang/test/SemaHLSL/Resources/SampleCount-template-arg-errors.hlsl
+64-0clang/test/CodeGenHLSL/resources/MultiSampledTextures-Load.hlsl
+55-3clang/lib/Sema/SemaHLSL.cpp
+55-0clang/test/SemaHLSL/Resources/MultiSampledTextures-Sema.hlsl
+444-1423 files not shown
+746-8629 files

LLVM/project e0d0886llvm/test/Transforms/SLPVectorizer/AArch64 reduction-extract-fusion-cost.ll

[SLP][NFC]Add a test with non-profitable vectorization, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/217679
DeltaFile
+66-0llvm/test/Transforms/SLPVectorizer/AArch64/reduction-extract-fusion-cost.ll
+66-01 files

Dreckly/dreckly 81badbelang/python312 dist.mk distinfo

python312: Update to 3.12.14
DeltaFile
+4-4lang/python312/distinfo
+2-2lang/python312/dist.mk
+6-62 files

LLVM/project cd1b0d9flang/lib/Optimizer/CodeGen CodeGen.cpp, flang/lib/Optimizer/Dialect/Support FIRContext.cpp

[flang][cuda] Route dynamic autos through malloc_unified/free_unified (#212965)

Example:
```fortran
subroutine work(n)
  integer :: n
  real :: a(n)
  call compute(a)
end subroutine
```

In this code, `a` is an automatic array placed on the stack. Under
`-gpu=mem:unified|managed` it must come from the unified/managed
allocator
entry points instead. Renaming every host malloc/free in the module
would be
unsafe: `fir.freemem` also releases buffers the Fortran runtime
allocated with
libc malloc (transformational intrinsic results, polymorphic

    [11 lines not shown]
DeltaFile
+120-0flang/test/Fir/CUDA/cuda-heap-alloc-unified.fir
+62-30flang/lib/Optimizer/CodeGen/CodeGen.cpp
+86-0flang/lib/Optimizer/Transforms/MemoryUtils.cpp
+54-0flang/test/Lower/CUDA/cuda-gpu-unified-automatic-array.f90
+44-0flang/test/Fir/CUDA/cuda-heap-alloc-managed.fir
+41-0flang/lib/Optimizer/Dialect/Support/FIRContext.cpp
+407-3016 files not shown
+539-5422 files

Dreckly/dreckly da3e9fflang/python311 dist.mk distinfo

python311: Update to 3.11.16
DeltaFile
+4-4lang/python311/distinfo
+2-2lang/python311/dist.mk
+6-62 files

LLVM/project 242647ellvm/lib/Target/AMDGPU/Disassembler AMDGPUDisassembler.h AMDGPUDisassembler.cpp, llvm/test/tools/llvm-objdump/ELF/AMDGPU kd-gfx12.s kd-gfx11.s

AMDGPU: Only disassemble .amdhsa_reserve_xnack_mask on xnack targets (#212789)

The disassembler unconditionally printed .amdhsa_reserve_xnack_mask when
emitting a kernel descriptor. Targets that do not support xnack have no
xnack mask to reserve, and the assembler streamer already only emits the
directive when the subtarget supports xnack. Match that behavior in the
disassembler so the round-trip is consistent and gfx11/gfx12 descriptors
no longer carry a spurious directive.

As a guard against a malformed binary, if the object's ELF e_flags
erroneously select xnack "on" for a target that does not support xnack,
still print the directive so the invalid state remains visible in the
disassembly rather than being silently dropped.

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+55-0llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-xnack-unsupported-eflags.yaml
+10-4llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.cpp
+0-4llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx11.s
+3-0llvm/lib/Target/AMDGPU/Disassembler/AMDGPUDisassembler.h
+0-2llvm/test/tools/llvm-objdump/ELF/AMDGPU/kd-gfx12.s
+68-105 files

LLVM/project 7e7cba2clang/lib/AST/ByteCode Context.h

[clang][bytecode][NFC] Don't check enum completeness in canClassify() (#217647)

This is not important here, only later in classify().
DeltaFile
+2-2clang/lib/AST/ByteCode/Context.h
+2-21 files

Dreckly/dreckly f4477a5lang/python310 dist.mk distinfo

python310: Update to 3.10.21
DeltaFile
+4-4lang/python310/distinfo
+2-2lang/python310/dist.mk
+6-62 files

FreeNAS/freenas ad01b78src/middlewared/middlewared/pytest/unit/plugins/apps test_update_app_upgrade_alert.py test_list_apps_upgrade_detection.py, src/middlewared/middlewared/pytest/unit/plugins/catalog test_get_trains.py test_sync_empty_catalog.py

Stop treating an empty catalog as a valid catalog

## Problem
`get_trains()` returns an empty mapping when `catalog.json` is missing or unparseable, nothing prevents that from being cached for 25 hours, and the cache-hit test only asked whether the entry was `not None` — so an empty dict was served back as a legitimate hit. Every reader then reads "no catalog data" as "nothing to update": apps report `upgrade_available=false` with a null `latest_version`, `upgrade_summary` refuses to upgrade any app, Discover shows nothing, and the sync job reports SUCCESS while deleting `CatalogSyncFailed`, `CatalogNotHealthy` and `AppUpdate` — a false all-clear that nothing re-derives. The cache lives on tmpfs, so a poisoned entry survives a middlewared restart and only clears on reboot. The missing-`catalog.json` case logged nothing at all.

The cache key encoded only the catalog label, while the catalog location flips between the apps dataset and a tmpfs path depending on whether that dataset is mounted. `catalog.sync` and `catalog.apps` resolve the location independently, so a mount-state change between them lets a read be served data that was written for the other location.

## Solution
- **Never cache a non-answer.** `catalog.apps` only writes the cache when it actually parsed trains, and an empty entry it finds on the way in is popped so an already-affected system recovers without a reboot.
- **Fail the sync loudly.** Reading no trains at all now raises inside `sync()`, so the existing handler raises `CatalogSyncFailedAlert` and the job fails instead of publishing "no apps" as a healthy catalog. `catalog.synced` stays false, which finally makes it mean what it says.
- **Only clear the health alert on evidence.** `CatalogNotHealthy` was deleted before the trains were read, so a broken catalog dismissed the alert describing its own breakage. The delete now happens beside the create, after a successful read of every train.
- **Don't delete the update alert on no evidence.** `update_app_upgrade_alert` abstains when no catalog data is available, rather than reading "every app reports no upgrade" as proof that nothing needs updating. `upgrade_summary` says the catalog data is unavailable instead of claiming no upgrade exists.
- **Key the cache by location** so data written against one location is never served for the other.
- **Bound the git operations.** The clone/pull/reset/checkout/status calls had no timeout, so a wedged `git` held the repository lock and blocked every later sync.

Also removes the unused `image_updates_available` parameter from `upgrade_available_for_app()`. It was never passed by either call site, and the equivalent override in `list_apps()` is the one that actually runs. The two are not interchangeable: an ix-app is a catalog app, so the version comparison inside the helper answers first and would hide a pending image update. The new tests pin that behaviour so the parameter is not "fixed" by wiring it up.
DeltaFile
+164-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_list_apps_upgrade_detection.py
+107-0src/middlewared/middlewared/pytest/unit/plugins/catalog/test_apps_cache.py
+86-0src/middlewared/middlewared/pytest/unit/plugins/catalog/test_catalog_not_healthy_alert.py
+78-0src/middlewared/middlewared/pytest/unit/plugins/catalog/test_sync_empty_catalog.py
+71-0src/middlewared/middlewared/pytest/unit/plugins/apps/test_update_app_upgrade_alert.py
+58-0src/middlewared/middlewared/pytest/unit/plugins/catalog/test_get_trains.py
+564-09 files not shown
+748-3815 files

pkgng/pkgng 5e8fa10compat reallocf.c humanize_number.h, libpkg pkg_add.c

compat: rely only on libbsd for compat code
DeltaFile
+0-185compat/humanize_number.c
+0-108compat/funopen.c
+0-71compat/strtonum.c
+0-61compat/humanize_number.h
+0-52compat/reallocf.c
+0-39libpkg/pkg_add.c
+0-5166 files not shown
+4-58912 files

LLVM/project de20436lldb/source/Core DynamicLoader.cpp

[lldb] Consume the located result by rvalue reference (NFC) (#217667)

FinishSearch consumes the Expected it is handed, either taking the error
out of it or moving what the search found into the binary spec, and its
caller already hands over ownership with an explicit move. Taking it by
value move constructs 1.5 kB for nothing, where the signature can say
the same thing and copy nothing.

Reported by Coverity (CID 1685297).

Assisted-by: Claude
DeltaFile
+1-1lldb/source/Core/DynamicLoader.cpp
+1-11 files

LLVM/project 20da733clang/lib/Driver/ToolChains HIPUtility.cpp, clang/test/Driver hip-toolchain-no-rdc.hip hip-target-id.hip

clang: Emit legacy amdgcn triple in HIP fatbin bundle entries (#217640)

Unfortunate the HIP runtime is hardcoding the amdgcn-amd-amdhsa-- 
prefix in the bundle ID checks, so force these to the legacy name
regardless of the active triple. Hopefully clr will stop hardcoding these so 
we  can drop this at some point.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+8-6clang/lib/Driver/ToolChains/HIPUtility.cpp
+12-0clang/tools/clang-linker-wrapper/ClangLinkerWrapper.cpp
+3-3clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper-hip-no-rdc.c
+3-3clang/test/Driver/hip-toolchain-no-rdc.hip
+3-3clang/test/Driver/hip-target-id.hip
+2-2clang/test/OffloadTools/clang-linker-wrapper/linker-wrapper.c
+31-176 files not shown
+37-2312 files

LLVM/project 674c6f4libc/src/__support/FPUtil/generic add_sub.h

[libc] Fix add_sub for Emulated Types (#217344)

Co-authored-by: OverMighty <its.overmighty at gmail.com>
DeltaFile
+4-1libc/src/__support/FPUtil/generic/add_sub.h
+4-11 files

LLVM/project 51e138fclang-tools-extra/docs/clang-tidy/checks/altera single-work-item-barrier.md struct-pack-align.md, clang-tools-extra/docs/clang-tidy/checks/boost use-ranges.md

[clang-tidy][docs] Rewrite check docs in six modules to Markdown
DeltaFile
+187-188clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.md
+154-155clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.md
+71-73clang-tools-extra/docs/clang-tidy/checks/altera/unroll-loops.md
+38-39clang-tools-extra/docs/clang-tidy/checks/altera/struct-pack-align.md
+34-36clang-tools-extra/docs/clang-tidy/checks/altera/single-work-item-barrier.md
+31-33clang-tools-extra/docs/clang-tidy/checks/concurrency/mt-unsafe.md
+515-5244 files not shown
+620-63310 files

LLVM/project 7264cf5clang-tools-extra/docs/clang-tidy/checks/altera unroll-loops.rst unroll-loops.md, clang-tools-extra/docs/clang-tidy/checks/boost use-ranges.rst use-ranges.md

[clang-tidy][docs] Rename check docs in six modules to Markdown
DeltaFile
+0-202clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.rst
+202-0clang-tools-extra/docs/clang-tidy/checks/cert/err33-c.md
+0-187clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.rst
+187-0clang-tools-extra/docs/clang-tidy/checks/boost/use-ranges.md
+0-105clang-tools-extra/docs/clang-tidy/checks/altera/unroll-loops.rst
+105-0clang-tools-extra/docs/clang-tidy/checks/altera/unroll-loops.md
+494-49414 files not shown
+838-83820 files

LLVM/project 0d1770fclang/include/clang/Analysis/FlowSensitive DataflowEnvironment.h, clang/lib/Analysis/FlowSensitive Transfer.cpp DataflowEnvironment.cpp

[clang][dataflow] Handle when `this` refers to a different location (#146900)

When `this` is under a CXXDefaultInitExpr it could refer to the location
of an InitListExpr object instead of the `this` of a member function.
E.g.:
```
struct S {
  int x;
  int y = this->x;
};
struct R {
  int foo() {
    // `this` for `a` refers to an R, but `this`
    // for `x` refers to an S.
    return S{this->a}.y;
  }
  int a;
};
```

    [2 lines not shown]
DeltaFile
+222-0clang/unittests/Analysis/FlowSensitive/DataflowEnvironmentTest.cpp
+134-0clang/lib/Analysis/FlowSensitive/DataflowEnvironment.cpp
+41-0clang/include/clang/Analysis/FlowSensitive/DataflowEnvironment.h
+21-0clang/unittests/Analysis/FlowSensitive/UncheckedOptionalAccessModelTest.cpp
+1-1clang/lib/Analysis/FlowSensitive/Transfer.cpp
+419-15 files

LLVM/project 43f21cbclang/lib/CodeGen CodeGenModule.cpp, clang/test/CodeGen ubsan-function.cpp ubsan-function-sugared.cpp

clang: Emit "target-abi" module flag for ARM

Previously only RISCV emitted the "target-abi" module flag.
We probably should just generally emit this for non-empty ABI names
but that's a broader behavior change. I'm also confused because the
clang side defines a non-empty value for many targets with no apparent
use in llvm.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+19-0clang/test/CodeGen/arm-target-abi-module-flag.c
+11-3clang/lib/CodeGen/CodeGenModule.cpp
+1-1clang/test/CodeGen/ubsan-function.cpp
+1-1clang/test/CodeGen/ubsan-function-sugared.cpp
+32-54 files

LLVM/project 6ced989llvm/include/llvm/CodeGen/GlobalISel IRTranslator.h, llvm/lib/CodeGen/GlobalISel IRTranslator.cpp

[GISel] Hold IRTranslatorImpl rather than recreating (#217440)

`IRTranslatorImpl` holds some state/data structures that are expensive
to fully recreate for each MF, so put it into a unique_ptr so we can use
a common implementation. Forward declare `IRTranslatorImpl` and define
constructors/operators in the source file so we can avoid needing to put
the definition of `IRTranslatorImpl` inside of `IRTranslator.h`. This
seems to resolve the performance regression observed in #216915.


https://llvm-compile-time-tracker.com/compare.php?from=9932f190f42e1a12c3cafea23938241abf6337ca&to=394a782c063f55377188044296c5911db45c9a38&stat=instructions:u

LLM assisted.
DeltaFile
+14-7llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+9-2llvm/include/llvm/CodeGen/GlobalISel/IRTranslator.h
+23-92 files

LLVM/project db34fbeclang/lib/AST ASTDiagnostic.cpp, clang/test/SemaCXX cxx2a-nttp-printing.cpp

clang: Use the context printing policy in TemplateDiff (#217651)

TemplateDiff made a new PrintingPolicy instead of using ASTContext's.
Sema::getPrintingPolicy() tweaks ASTContext's, and sema template diffing
didn't pick up those changes.

Sema::getPrintingPolicy() does two things:

1. Something for bool vs _Bool for C (where template diffing doesn't
apply)

2. Set EntireContentsOfLargeArray to false

Before this patch, the latter had no effect in diff mode, meaning we the
same type printed differently in a diagnostic depending on if used
template diffing. Now they're consistent.

(This made no difference before https://reviews.llvm.org/D115031, which
probably just forgot to update this call site.)
DeltaFile
+6-12clang/lib/AST/ASTDiagnostic.cpp
+2-2clang/test/SemaCXX/cxx2a-nttp-printing.cpp
+8-142 files

LLVM/project 8b3b867llvm/lib/Target/PISA PISAAsmPrinter.cpp

Formatting fix
DeltaFile
+2-1llvm/lib/Target/PISA/PISAAsmPrinter.cpp
+2-11 files

LLVM/project 489da48llvm/lib/Target/PISA CMakeLists.txt PISAAsmPrinter.cpp, llvm/test/CodeGen/PISA unreachable.ll return.ll

Add PISA AsmPrinter

Add PISAAsmPrinter to complete the codegen pipeline with end-to-end code
emission.
DeltaFile
+933-0llvm/lib/Target/PISA/PISAAsmPrinter.cpp
+352-0llvm/test/CodeGen/PISA/store.ll
+350-0llvm/test/CodeGen/PISA/load.ll
+37-0llvm/test/CodeGen/PISA/return.ll
+14-0llvm/test/CodeGen/PISA/unreachable.ll
+1-0llvm/lib/Target/PISA/CMakeLists.txt
+1,687-06 files

LLVM/project 3d8e08fclang/test/CodeGenCXX static-init-3.cpp

[clang][test] Fix misspelled FileCheck prefix in static-init-3.cpp (#217628)

`clang/test/CodeGenCXX/static-init-3.cpp` uses `FileCheck %s` (prefix
`CHECK`) but the second instance line was `// CHECJ:`. That prefix is
undefined, so the check never ran.

Fixes one of the misspelled prefixes listed in #94108.

Assisted-by: Grok (xAI)
DeltaFile
+1-1clang/test/CodeGenCXX/static-init-3.cpp
+1-11 files

LLVM/project 60faf06flang/lib/Optimizer/Transforms FIRToSCF.cpp, flang/test/Fir/FirToSCF do-extra.fir normalize.fir

Revert "[flang][FIRToSCF] Recompute a typed induction variable in closed form (#217051)" (#217654)

This reverts commit de79344abe04cab8fe538cdd0f975f78d941cd24.

This caused regressions in some internal tests, so reverting for now.
DeltaFile
+19-85flang/test/Fir/FirToSCF/do-loop.fir
+19-20flang/lib/Optimizer/Transforms/FIRToSCF.cpp
+4-4flang/test/Fir/FirToSCF/normalize.fir
+3-3flang/test/Fir/FirToSCF/do-extra.fir
+45-1124 files

LLVM/project daf063fclang/lib/AST/ByteCode PrimType.h Compiler.cpp, clang/test/SemaCXX microsoft-constexpr2.cpp microsoft-constexpr.cpp

[clang] Add support for relaxed constexpr evaluation to interpreter (#217311)

Co-authored-by: Timm Baeder <tbaeder at redhat.com>
DeltaFile
+16-3clang/lib/AST/ByteCode/Interp.cpp
+4-1clang/lib/AST/ByteCode/State.cpp
+3-1clang/lib/AST/ByteCode/Compiler.cpp
+2-0clang/lib/AST/ByteCode/PrimType.h
+1-0clang/test/SemaCXX/microsoft-constexpr2.cpp
+1-0clang/test/SemaCXX/microsoft-constexpr.cpp
+27-52 files not shown
+29-58 files

LLVM/project 57ccca6libsycl/src/detail program_manager.cpp

[libsycl][NFC] Fix no previous prototype for getDeviceKernelInfo warning (#217417)
DeltaFile
+1-0libsycl/src/detail/program_manager.cpp
+1-01 files

LLVM/project 32e8d58libsycl/docs index.md, libsycl/src/detail queue_impl.cpp

[libsycl] Enable host-to-host memcpy (#217366)

The functionality is now supported by liboffload.
DeltaFile
+5-14libsycl/src/detail/queue_impl.cpp
+3-8libsycl/unittests/queue/memcpy.cpp
+1-7libsycl/test/usm/memcpy.cpp
+0-2libsycl/docs/index.md
+9-314 files

LLVM/project e47b6d1libsycl/src/detail program_manager.cpp

[libsycl] Fix debug build error caused by RTTI option mismatch (#210997)

Fixes an undefined reference to typeinfo for `llvm::ErrorInfoBase`
during a debug build of libsycl.
DeltaFile
+2-2libsycl/src/detail/program_manager.cpp
+2-21 files