LLVM/project 2897ee1llvm/docs AMDGPUMemoryModel.md

[AMDGPU][Docs] Memory Model: Refactor location-order to cover reads (#213044)

This shouldn't change anything semantically, only make the spec
(a) closer to the Vulkan spec, which includes reads in their location-ordered
    relation: https://docs.vulkan.org/spec/latest/appendices/memorymodel.html#memory-model-location-ordered
(b) more uniform: this way, the may-see constraints are the same as the vanilla
    LLVM constraints, only with all occurrences of "happens-before" replaced by
    "location-ordered before".
DeltaFile
+7-3llvm/docs/AMDGPUMemoryModel.md
+7-31 files

LLVM/project 1f1fcdcllvm/docs LangRef.md LangRef.rst, llvm/lib/Support UnicodeNameToCodepointGenerated.cpp

repase now that #206434 is merged

Created using spr 1.3.7
DeltaFile
+45,574-45,285llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+24,053-23,916llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
+0-33,109llvm/docs/LangRef.rst
+15,740-14,892llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+30,482-0llvm/docs/LangRef.md
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+139,753-117,21423,221 files not shown
+1,384,297-824,41723,227 files

LLVM/project fb51709llvm/docs LangRef.md LangRef.rst, llvm/lib/Support UnicodeNameToCodepointGenerated.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+45,574-45,285llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+24,053-23,916llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
+0-33,109llvm/docs/LangRef.rst
+15,740-14,892llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+30,482-0llvm/docs/LangRef.md
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+139,753-117,21423,221 files not shown
+1,384,297-824,41723,227 files

FreeBSD/ports 4a787cdcad/OrcaSlicer/files patch-src_libslic3r_GCode.hpp

cad/OrcaSlicer: Fix 32-bit build

LayerResult's second field is typed size_t, so std::numeric_limits::max
should also use size_t and not something related to coordinates for the
layer_id.

Reported by:    pkg-fallout
Approved by:    arrowd (co-mentor)

(cherry picked from commit b403418f4721af9ec4b2158539536e19ee564150)
DeltaFile
+11-0cad/OrcaSlicer/files/patch-src_libslic3r_GCode.hpp
+11-01 files

LLVM/project 1e1225eclang/docs ReleaseNotes.md, clang/include/clang/Sema Sema.h

[Sema][Serialization] Emit unused local typedefs in a deterministic order (#209639)

Sema::UnusedLocalTypedefNameCandidates is populated while iterating a Scope's
DeclsInScope, which is a SmallPtrSet whose iteration order depends on pointer
values and is therefore not stable across runs. The candidates are serialized
into the AST file -- both to assign declaration IDs and to write the
UNUSED_LOCAL_TYPEDEF_NAME_CANDIDATES record -- and are also used to emit the
deferred -Wunused-local-typedef warnings, so neither the emitted PCH/AST file
nor the diagnostics were reproducible. With deterministic compilation caching
this surfaces as a "cache poisoned" error, because two builds of the same PCH
produce different bytes.

Sort the candidates by source location at the point they are consumed, via
Sema::getSortedUnusedLocalTypedefNameCandidates(), so that both the diagnostics
and the serialized declarations are deterministic.
DeltaFile
+212-0clang/test/SemaCXX/warn-unused-local-typedef-deterministic-order.cpp
+115-0clang/test/PCH/unused-local-typedef-determinism.cpp
+16-1clang/lib/Sema/Sema.cpp
+10-4clang/lib/Serialization/ASTWriter.cpp
+6-1clang/include/clang/Sema/Sema.h
+3-0clang/docs/ReleaseNotes.md
+362-66 files not shown
+368-1212 files

LLVM/project 5eb4272flang/lib/Optimizer/CodeGen CodeGen.cpp, flang/test/Fir convert-to-llvm-invalid.fir convert-to-llvm.fir

[flang][CodeGen] Replace fir.select* FIR-to-LLVM patterns with stubs that emit conversion errors (#212978)

`fir.select`, `fir.select_case`, `fir.select_rank`, and
`fir.select_type` are lowered to cf.* earlier in the pipeline
(`--fir-select-ops-conversion` and `--fir-polymorphic-op`). Their
FIR-to-LLVM conversion patterns are dead in a correct pipeline. Replace
them with a single templated stub
`SelectShouldHaveBeenConvertedStub<OP>` that emits `"'fir.<op>' op
should have already been converted"` and fails legalization, so running
`--fir-to-llvm-ir` standalone on stale IR reports a clear diagnostic
instead of "unable to legalize".

`Fir/convert-to-llvm.fir`'s six select* test blocks are removed (the
lowering no longer runs; CF-level coverage lives in
`Fir/SelectOpsConversion/`). `Fir/convert-to-llvm-invalid.fir` gains a
stub-error test per op. `Fir/Todo/select_case_with_character.fir` is
retargeted to check the equivalent diagnostic now emitted by
`--fir-select-ops-conversion`.


    [6 lines not shown]
DeltaFile
+0-311flang/test/Fir/convert-to-llvm.fir
+19-266flang/lib/Optimizer/CodeGen/CodeGen.cpp
+41-4flang/test/Fir/convert-to-llvm-invalid.fir
+1-1flang/test/Fir/Todo/select_case_with_character.fir
+61-5824 files

FreeNAS/freenas 130ec07src/middlewared/middlewared/plugins replication.py zettarepl.py, tests/api2 test_replication.py

Allow running disabled replication tasks

(cherry picked from commit 4ab455e78b755250d05c5a7547acad9f76b98c1a)
DeltaFile
+8-4tests/api2/test_replication.py
+4-4src/middlewared/middlewared/plugins/zettarepl.py
+0-3src/middlewared/middlewared/plugins/replication.py
+12-113 files

LLVM/project bcf2031compiler-rt/test/cfi target_uninstrumented.cpp simple-fail.cpp, compiler-rt/test/cfi/cross-dso target_out_of_bounds.cpp

[ubsan] Test CFI summaries globally (#206434)

Always enable report_error_type=1 and print_summary=1 for CFI tests, and
update existing tests to check for cfi-bad-type. This allows us to
verify summary output comprehensively across the test suite.

This is a prerequisite for the change to the UBSan summary for CFI in
https://github.com/llvm/llvm-project/pull/203341.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+6-2compiler-rt/test/cfi/lit.cfg.py
+6-0compiler-rt/test/cfi/cross-dso/target_out_of_bounds.cpp
+5-0compiler-rt/test/cfi/mfcall.cpp
+3-0compiler-rt/test/cfi/cross-dso/icall/diag.cpp
+2-0compiler-rt/test/cfi/target_uninstrumented.cpp
+2-0compiler-rt/test/cfi/simple-fail.cpp
+24-212 files not shown
+41-218 files

LLVM/project f9fcc19clang/test/CodeGenOpenCL builtins-amdgcn-gfx13.cl, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add missing mqsad-pk-insts to gfx13 frontend feature map

fillAMDGCNFeatureMap omitted mqsad-pk-insts for gfx1310/gfx13-generic, so
clang wrongly rejected __builtin_amdgcn_mqsad_pk_u16_u8 on those targets
even though the backend enables the feature. Add it to the gfx13 case.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+23-0clang/test/CodeGenOpenCL/builtins-amdgcn-gfx13.cl
+14-7llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mqsad.pk.u16.u8.ll
+1-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+38-73 files

FreeBSD/ports 9e32648textproc/diff-so-fancy Makefile distinfo

textproc/diff-so-fancy: Update 1.4.10 => 1.4.12

Approved by:            db@, yuri@ (Mentors, implicit)
DeltaFile
+3-3textproc/diff-so-fancy/distinfo
+1-1textproc/diff-so-fancy/Makefile
+4-42 files

FreeBSD/ports fd3868fnet-mgmt/netbox Makefile

net-mgmt/netbox: Fix build after 3496c09fda1b

* Switch to the recently created py-social-auth-core4 port, because
  NetBox is not compatible with newer versions of py-social-auth-core
  due to several breaking changes.

* Bump PORTREVISION due dependency change.

PR:             297152
DeltaFile
+2-1net-mgmt/netbox/Makefile
+2-11 files

FreeBSD/ports b91684dwww/py-dj60-social-auth-app-django Makefile

www/py-dj60-social-auth-app-django: Fix build after 3496c09fda1b

* Although there are already newer releases that are compatible with
  py-social-auth-core >= 5, they also introduce quite a few breaking
  changes along with py-social-auth-core 4.9.0+, so updating the port
  is not an option at this time.

  Therefore, switch to the recently created py-social-auth-core4 port
  for now to fix the fallout and avoid regressions.

* Bump PORTREVISION due dependency change.

PR:             297152
Reported by:    Einar Bjarni Halldórsson, pkg-fallout
DeltaFile
+2-1www/py-dj60-social-auth-app-django/Makefile
+2-11 files

FreeBSD/ports 5636018www/py-social-auth-app-django Makefile

www/py-social-auth-app-django: Fix build after 3496c09fda1b

* Although there are already newer releases that are compatible with
  py-social-auth-core >= 5, they also introduce quite a few breaking
  changes along with py-social-auth-core 4.9.0+, so updating the port
  is not an option at this time.

  Therefore, switch to the recently created py-social-auth-core4 port
  for now to fix the fallout and avoid regressions.

* Bump PORTREVISION due dependency change.

PR:             297152
Reported by:    pkg-fallout
DeltaFile
+2-1www/py-social-auth-app-django/Makefile
+2-11 files

FreeBSD/ports f30b305security Makefile, security/py-social-auth-core Makefile

security/py-social-auth-core4: New port

This is the core component of the python-social-auth ecosystem, it
implements the common interface to define new authentication backends
to third parties services, implement integrations with web frameworks
and storage solutions.

PR:             297152
DeltaFile
+49-0security/py-social-auth-core4/Makefile
+34-0security/py-social-auth-core4/files/patch-pyproject.toml
+17-0security/py-social-auth-core4/distinfo
+3-0security/py-social-auth-core4/pkg-descr
+2-0security/py-social-auth-core/Makefile
+1-0security/Makefile
+106-06 files

FreeBSD/ports fbad4bdcad/openroad Makefile

cad/openroad: Broken on i386

Reported by:    fallout

(cherry picked from commit 6ff6e08ae55363c0c6639f1751fb5aace5d32fe2)
DeltaFile
+1-0cad/openroad/Makefile
+1-01 files

FreeBSD/ports 6ff6e08cad/openroad Makefile

cad/openroad: Broken on i386

Reported by:    fallout
DeltaFile
+1-0cad/openroad/Makefile
+1-01 files

LLVM/project e1823e8llvm/lib/Target/X86 X86ISelLowering.cpp, llvm/test/CodeGen/X86 fptosi-sat-scalar-f16.ll fptosi-sat-scalar.ll

[X86] Fix miscompile of fptosi.sat.iN.f16 for NaN under avx512fp16 (#210556)

`X86TargetLowering::LowerFP_TO_INT_SAT` incorrectly lowered
`llvm.fptosi.sat.iN.f16` for N = 13, 14, 15, 16 under `avx512fp16`
codegen: NaN inputs produced the destination type's minimum value
instead of the 0 that the intrinsic's documented semantics require.
Vector forms that scalarize through this lowering are affected under
the same condition, applied per element. See the third commit message
for the full root-cause analysis and fix rationale.

---

Assisted-by: Claude (Anthropic)
Assisted-by: Codex (OpenAI)

The investigation, root-cause analysis, fix, and tests in this PR were
developed with substantial AI assistance (Claude), including four
independent AI-assisted review rounds (Codex). I reviewed and take
responsibility for all code, analysis, and claims in this PR, and can
answer questions about the reasoning above.
DeltaFile
+112-1,272llvm/test/CodeGen/X86/fptosi-sat-scalar.ll
+1,298-0llvm/test/CodeGen/X86/fptosi-sat-scalar-f16.ll
+8-4llvm/lib/Target/X86/X86ISelLowering.cpp
+1,418-1,2763 files

FreeBSD/ports e0eb4cedevel/ruff Makefile

devel/ruff: Broken on i386

Reported by:    fallout

(cherry picked from commit 8e6bea6488ba3c162cedf46ea20a46d8fba23bc8)
DeltaFile
+2-0devel/ruff/Makefile
+2-01 files

FreeBSD/ports 8e6bea6devel/ruff Makefile

devel/ruff: Broken on i386

Reported by:    fallout
DeltaFile
+2-0devel/ruff/Makefile
+2-01 files

FreeBSD/ports 813ca90science/py-trx-python distinfo Makefile, science/py-trx-python/files patch-pyproject.toml

science/py-trx-python: update 0.3 → 0.4.0
DeltaFile
+14-14science/py-trx-python/Makefile
+13-0science/py-trx-python/files/patch-pyproject.toml
+3-3science/py-trx-python/distinfo
+30-173 files

FreeBSD/ports 36b09aadevel/py-ruff Makefile distinfo, devel/ruff Makefile Makefile.crates

devel/{,py-}ruff: update 0.16.0 → 0.16.1
DeltaFile
+59-65devel/ruff/distinfo
+59-65devel/py-ruff/distinfo
+29-32devel/py-ruff/Makefile
+28-31devel/ruff/Makefile.crates
+1-1devel/ruff/Makefile
+176-1945 files

FreeBSD/ports 1149b77net/rubygem-devfile Makefile distinfo

net/rubygem-devfile: Update to 0.5.1

Changes:        https://gitlab.com/gitlab-org/ruby/gems/devfile-gem/-/commits/main
(cherry picked from commit 008f57dae955622d8f19a7b485f6c6e6a06c54db)
DeltaFile
+3-3net/rubygem-devfile/distinfo
+1-1net/rubygem-devfile/Makefile
+4-42 files

LLVM/project 38acb5bllvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPlanRecipes.cpp, llvm/test/Transforms/LoopVectorize hoist-predicated-loads-with-predicated-stores.ll

[VPlan] Set correct VPIRFlags for FP selects when sinking stores. (#212973)

Selects of floats carry fast-math flags. Update getDefaultFlags to take
the result type and use it to handle selects. I am planning on extending
this to other similar opcodes, including PHIs.

Then update sinkPredicatedStores to pass through the correct default
flags.

This fixes a crash in cse when intersecting common metadata.

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

PR: https://github.com/llvm/llvm-project/pull/212973
(cherry picked from commit 40e33eb35417f565e2ed8a6c0dba63cbd618a926)
DeltaFile
+85-0llvm/test/Transforms/LoopVectorize/hoist-predicated-loads-with-predicated-stores.ll
+4-4llvm/lib/Transforms/Vectorize/VPlan.h
+6-1llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+4-2llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+99-74 files

LLVM/project c8bb66dcompiler-rt/lib/sanitizer_common sanitizer_linux.cpp, compiler-rt/lib/tsan/go buildgo.sh

[tsan] Fix buildgo.sh on FreeBSD/NetBSD (#213047)

This patch fixes the remaining compile errors when running `ninja
check-all` on FreeBSD and NetBSD:

- `sanitizer_linux.cpp` doesn't compile on NetBSD, so this patch adds a
cast:
  ```
sanitizer_common/sanitizer_linux.cpp:2492:10: error: format specifies
type 'unsigned long long' but the argument has type '__greg_t' (aka
'unsigned long') [-Werror,-Wformat]
   ```

- `tsan_interface_atomic.cpp` doesn't compile on both FreeBSD and
NetBSD, so this patch disables the warning:
  ```
tsan_interface_atomic.cpp:353:12: error: unused function template
'NoTsanAtomic' [-Werror,-Wunused-template]
tsan_interface_atomic.cpp:358:12: error: unused function template

    [25 lines not shown]
DeltaFile
+12-0compiler-rt/lib/tsan/rtl/tsan_platform_linux.cpp
+2-2compiler-rt/lib/tsan/go/buildgo.sh
+1-1compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
+15-33 files

LLVM/project cbd6540llvm/lib/Transforms/Vectorize VPlanTransforms.cpp, llvm/test/Transforms/LoopVectorize find-last.ll

[VPlan] Fix optimizeFindIVReductions not negating condition of blend (#213050)

Fixes #212993

#194729 made the m_Select a m_SelectLike, so FindLastSelect could now be
a blend. However we were checking the first operand to see if the Cond
needed inverted. A select has `select %cond, %true, %false`, a blend is
`blend %false, %cond, %true`, so we were failing to negate the
condition.

(cherry picked from commit 4f705acc388ab2c627fb263d89d1d60468f8a97b)
DeltaFile
+69-0llvm/test/Transforms/LoopVectorize/find-last.ll
+2-1llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+71-12 files

LLVM/project b7d8db9llvm/lib/LTO LTOModule.cpp, llvm/test/LTO/X86 ifunc.ll

[LTO] Handle GlobalIFunc in LTOModule::parseSymbols (#212515)

Avoids the assert immediately below.

Fixes #45694

rdar://182744700
(cherry picked from commit a463071dc427777a2a2bfc155c6680d7ff220994)
DeltaFile
+18-0llvm/test/LTO/X86/ifunc.ll
+1-1llvm/lib/LTO/LTOModule.cpp
+19-12 files

LLVM/project 1b1145fllvm/lib/Target/RISCV RISCVVectorPeephole.cpp, llvm/test/CodeGen/RISCV/rvv vlmax-peephole.mir

[RISCV] Fix crash in convertToVLMAX when AVL is an ADDI of a frame index (#212923)

`getConstant()` recognizes an AVL that is an immediate by checking
the opcode is `ADDI`, then reading the second operand and checking
if it is `X0`. However the second operand may be a frame index and
`getReg()` asserts with "This is not a register operand!".

We should guard the register access with `isReg()` before comparing
against `X0`.

Fixes #212797.

(cherry picked from commit ef7f2f611993a4bc59e181d2bf8fc6269d7e1c7d)
DeltaFile
+25-0llvm/test/CodeGen/RISCV/rvv/vlmax-peephole.mir
+1-1llvm/lib/Target/RISCV/RISCVVectorPeephole.cpp
+26-12 files

LLVM/project 989e9efllvm/lib/Target/Mips/AsmParser MipsAsmParser.cpp, llvm/test/MC/Mips macro-ddivu-bad.s macro-divu-bad.s

[Mips] Fix Clang crashes when assembling MIPS div/rem with register-name symbol as divisor (#200354)

Add check before getimm().

Fix #185363.

(cherry picked from commit 2b45696fcafc0c92ea0ad73483b1e175c97c834a)
DeltaFile
+7-4llvm/test/MC/Mips/macro-ddiv-bad.s
+5-2llvm/test/MC/Mips/macro-divu-bad.s
+5-2llvm/test/MC/Mips/macro-div-bad.s
+4-1llvm/test/MC/Mips/macro-ddivu-bad.s
+2-0llvm/lib/Target/Mips/AsmParser/MipsAsmParser.cpp
+23-95 files

LLVM/project aaa931ellvm/lib/Target/ARM ARMAsmPrinter.cpp, llvm/test/CodeGen/ARM elf-preemption.ll

[ARM] Exclude TLS symbols from the .reloc/R_ARM_REL32 path (#212549)

The .reloc branch in emitMachineConstantPoolValue fired for any
isWeakForLinker() + isDSOLocal() symbol, including TLS (thread_local)
weak symbols. R_ARM_REL32 is wrong for TLS: TLS symbols need
TLS-specific relocations (R_ARM_TLS_GD32 etc.). Using R_ARM_REL32 for a
TLS symbol produces a wrong address at runtime.

This broke the 2-stage ARM 32-bit buildbots: stage 1 (with the .reloc
branch) miscompiled stage 2's BPF codegen (BTFDebug.cpp references
llvm::sys::sandbox::Enabled, an inline thread_local weak variable),
causing a SIGSEGV in the BPF Assembly Printer.

Add a regression test (tls_weak_var in elf-preemption.ll) verifying that
TLS weak symbols get TLSGD/TPOFF, not R_ARM_REL32.

Fix #212545

(cherry picked from commit f4382bedc245a22ea7c354d08eb13543166a5f0d)
DeltaFile
+35-0llvm/test/CodeGen/ARM/elf-preemption.ll
+5-4llvm/lib/Target/ARM/ARMAsmPrinter.cpp
+40-42 files

LLVM/project 834c3bclibcxx/test/selftest if-else.sh.cpp, libcxx/utils/libcxx/test format.py

[libc++][utils] Fix LIT `%if` substitution support (#209358)

Update the applySubstitutions call in `libcxx/utils/libcxx/test/format.py` to match the
change to `llvm/utils/lit/lit/TestRunner.py` done in 1041a9642ba0.

(cherry picked from commit a8617034c4a7cc733676a31b736d3118fec34259)
DeltaFile
+11-0libcxx/test/selftest/if-else.sh.cpp
+5-1libcxx/utils/libcxx/test/format.py
+16-12 files