LLVM/project 245186ellvm/include/llvm/Target/GlobalISel Combine.td, llvm/test/CodeGen/AArch64/GlobalISel combine-or-and-xor.ll combine-or-and-xor.mir

[GlobalISel] Add `or_and_xor_to_or` pattern from SelectionDAG (#201108)

This PR adds the `fold (or (and X, (xor Y, -1)), Y) -> (or X, Y)`
pattern from SelectionDAG to GlobalISel.

---------

Co-authored-by: Matt Arsenault <arsenm2 at gmail.com>
DeltaFile
+213-0llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.ll
+206-0llvm/test/CodeGen/AArch64/GlobalISel/combine-or-and-xor.mir
+40-1llvm/include/llvm/Target/GlobalISel/Combine.td
+459-13 files

LLVM/project d757502llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll, llvm/test/CodeGen/AMDGPU/NextUseAnalysis spill-vreg-many-lanes.mir acyclic-770bb.mir

rebase

Created using spr 1.3.7
DeltaFile
+157,802-172,153llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+275,101-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/spill-vreg-many-lanes.mir
+144,679-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/acyclic-770bb.mir
+49,173-49,137llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+42,349-42,348llvm/test/MC/AMDGPU/gfx8_asm_vop3.s
+41,419-41,418llvm/test/MC/AMDGPU/gfx7_asm_vop3.s
+710,523-305,05650,716 files not shown
+7,631,039-3,752,51550,722 files

LLVM/project 0d62bf3llvm/lib/Support SpecialCaseList.cpp

[NFC][SpecialCaseList] Introduce Matcher::matchInternal helper (#203097)

Extract the core matching logic (std::visit on the variant) from
Matcher::match
into a private Matcher::matchInternal helper method. This is a
preparation step
for implementing warning logic that will need to call the matching logic
multiple times.

Also make Matcher's M and Options member variables private as part of
this
refactoring.

Assisted-by: Gemini
DeltaFile
+8-3llvm/lib/Support/SpecialCaseList.cpp
+8-31 files

LLVM/project 90d08e4llvm/lib/Target/AArch64 AArch64LFI.td, llvm/lib/Target/AArch64/MCTargetDesc AArch64MCLFIRewriter.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+992-904llvm/test/CodeGen/AMDGPU/bf16.ll
+742-742llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
+996-0llvm/test/CodeGen/X86/atomic-load-store.ll
+650-0llvm/test/MC/AArch64/LFI/simd.s
+542-1llvm/lib/Target/AArch64/MCTargetDesc/AArch64MCLFIRewriter.cpp
+469-0llvm/lib/Target/AArch64/AArch64LFI.td
+4,391-1,647165 files not shown
+12,269-3,538171 files

LLVM/project 27139b7llvm/lib/Support SpecialCaseList.cpp

[NFC][SpecialCaseList] Introduce QueryOptions struct (#203098)

Refactor the RemoveDotSlash boolean parameter into a QueryOptions
struct.
This struct will hold all matching options and simplifies the Matcher
constructor signature. This is a preparation step for adding more
options
in subsequent patches.

Assisted-by: Gemini
DeltaFile
+19-12llvm/lib/Support/SpecialCaseList.cpp
+19-121 files

LLVM/project 6b281d1flang/test/Transforms/OpenACC acc-implicit-declare-type-descriptor-type_desc.F90 acc-implicit-declare-type-descriptor-alloca.F90

[flang][acc] Add tests for implicit `acc declare` of type descriptors (#203100)

Adds 4 tests to cover different cases which requires implicit `acc
declare` for type descriptors.
DeltaFile
+29-0flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-type_desc.F90
+27-0flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-alloca.F90
+26-0flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-embox.F90
+21-0flang/test/Transforms/OpenACC/acc-implicit-declare-type-descriptor-rebox.F90
+103-04 files

LLVM/project 7571b8bclang/lib/CIR/Dialect/Transforms/TargetLowering CIRABIRewriteContext.cpp

[CIR] NFC: Address byval review feedback in CallConvLowering

Second-pass review cleanup on the byval/byref argument lowering in
CIRABIRewriteContext, no functional change.

updateArgAttrs now builds its attributes through an mlir::Builder, so the
arg-attr construction reads as getNamedAttr / getI64IntegerAttr /
getUnitAttr instead of spelling out StringAttr::get and the IntegerType
plumbing by hand; the Extend branch loses its empty-vs-nonempty special
case since the append path handles both.  The llvm.byval / llvm.byref
comment now says why the pointee type is carried explicitly: it is a
typed attribute and the type cannot be recovered from the opaque LLVM
pointer after lowering.

insertArgCoercion gains an early continue for the classifications that
need no entry-block fixup (Extend, Ignore, and Direct without coercion),
so the remaining if/else covers exactly the two cases that do work
(Direct-with-coercion and Indirect) with no silent do-nothing branch.


    [3 lines not shown]
DeltaFile
+37-36clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
+37-361 files

LLVM/project 4221ca9mlir/test/Integration/Dialect/XeGPU/LANE xegpu_dpas_mx_prepacked_bf8.mlir xegpu_dpas_mx_prepacked_e2m1.mlir

[MLIR][XeGPU] Use updated dpas_mx op print format. (#202700)

Old assembly format causes parse error.
DeltaFile
+1-1mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_bf8.mlir
+1-1mlir/test/Integration/Dialect/XeGPU/LANE/xegpu_dpas_mx_prepacked_e2m1.mlir
+2-22 files

LLVM/project 4a21c2allvm/lib/Target/DirectX DXContainerGlobals.cpp

[DirectX] Fix -Wunused-variable warning (#203107)
DeltaFile
+0-3llvm/lib/Target/DirectX/DXContainerGlobals.cpp
+0-31 files

LLVM/project 0e8fe79llvm/lib/Support GlobPattern.cpp

[NFC][Support] Define Prefix/SuffixMetacharacters constants (#202850)

Extract literal metacharacter strings used in GlobPattern into static
constexpr arrays to improve consistency and maintainability.

Assisted-by: Gemini
DeltaFile
+6-3llvm/lib/Support/GlobPattern.cpp
+6-31 files

LLVM/project a848df2llvm/include module.modulemap

[IR] Add BundleAttributes.def to modulemap as textual header (#203106)

Fixes stage 2 builds broken by 88bd366041fd539d2e8d75f2b2ae081940922f8e
DeltaFile
+1-0llvm/include/module.modulemap
+1-01 files

LLVM/project 1f668fallvm/docs LangRef.md

AI-generated review
DeltaFile
+45-72llvm/docs/LangRef.md
+45-721 files

FreeBSD/src 432ac5csys/netpfil/pf pf.c

pf: free match rules after exiting critical section

This fixes a panic reported on armv7:

sys/netpfil/pf/counters:match_block  ->  panic: free: called with spinlock or critical section held
[...]
vpanic() at vpanic
         pc = 0xc0321b5c  lr = 0xc02f7b5c (free+0x140)
         sp = 0xc8c858bc  fp = 0xc8c858e0
         r4 = 0xe2fad648  r5 = 0xe402ce78
         r6 = 0xc8c859e8  r7 = 0x0000001c
         r8 = 0xc8c858b4  r9 = 0xc0321b5c
        r10 = 0xc8c858bc
free() at free+0x140
         pc = 0xc02f7b5c  lr = 0xe2f4f920 ($a+0x5f8)
         sp = 0xc8c858e8  fp = 0xc8c85930
         r4 = 0xe402ce68  r5 = 0xc8c8599c
         r6 = 0xffffffff r10 = 0x0000001c
[...]

    [8 lines not shown]
DeltaFile
+4-4sys/netpfil/pf/pf.c
+4-41 files

LLVM/project 59eb0d2libc/shared/math isnanf128.h, libc/src/__support/math isnanf128.h

[libc][math] Add isnanf128 (#199206)

## Summary

- Add a fputil-based isnanf128 implementation and wire it into libc math
entrypoints, public math header generation, and shared math wrappers.

- Add smoke test coverage for float128 NaN classification and shared
math runtime/constexpr coverage.

Part of #195400

---------

Signed-off-by: Vedant Neve <vedantneve13 at gmail.com>
DeltaFile
+31-0libc/src/__support/math/isnanf128.h
+29-0libc/shared/math/isnanf128.h
+21-0libc/src/math/isnanf128.h
+17-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+16-0libc/src/math/generic/isnanf128.cpp
+13-0libc/test/src/math/smoke/isnanf128_test.cpp
+127-017 files not shown
+184-023 files

LLVM/project 5aab006llvm/test/CodeGen/AMDGPU mdt-preserving-crash.ll, llvm/test/CodeGen/PowerPC p10-spill-crun.ll subreg-postra.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+76-80llvm/test/CodeGen/PowerPC/p10-spill-crun.ll
+95-37llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
+52-57llvm/test/CodeGen/X86/2008-04-17-CoalescerBug.ll
+44-48llvm/test/CodeGen/PowerPC/subreg-postra.ll
+30-2llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
+13-17llvm/test/CodeGen/AMDGPU/mdt-preserving-crash.ll
+310-2414 files not shown
+342-25510 files

LLVM/project 4a9bf9bllvm/test/CodeGen/X86 2011-09-14-valcoalesce.ll 2009-11-17-UpdateTerminator.ll

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+101-37llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
+36-2llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
+137-392 files

LLVM/project 93ae6d9llvm/test/CodeGen/X86 2011-09-14-valcoalesce.ll 2009-11-17-UpdateTerminator.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+101-37llvm/test/CodeGen/X86/2011-09-14-valcoalesce.ll
+36-2llvm/test/CodeGen/X86/2009-11-17-UpdateTerminator.ll
+137-392 files

FreeBSD/ports 93e0dfagraphics/shotwell distinfo Makefile

graphics/shotwell: update to 0.32.17

Release Notes:
  https://download.gnome.org/sources/shotwell/0.32/shotwell-0.32.17.news
DeltaFile
+3-3graphics/shotwell/distinfo
+1-1graphics/shotwell/Makefile
+4-42 files

FreeBSD/ports 033b0f4devel/rust-cbindgen distinfo Makefile

devel/rust-cbindgen: update to 0.29.4

Release Notes:
  https://github.com/mozilla/cbindgen/releases/tag/v0.29.4
DeltaFile
+3-3devel/rust-cbindgen/distinfo
+1-2devel/rust-cbindgen/Makefile
+4-52 files

NetBSD/src Omls3h5sys/lib/libkern/arch/sh3 sdivsi3_i4i.S udivsi3_i4i.S

   s/IMPOTANT/IMPORTANT/ in comments.
VersionDeltaFile
1.3+3-3sys/lib/libkern/arch/sh3/sdivsi3_i4i.S
1.3+3-3sys/lib/libkern/arch/sh3/udivsi3_i4i.S
1.13+3-3sys/lib/libkern/arch/sh3/sdivsi3.S
1.12+3-3sys/lib/libkern/arch/sh3/udivsi3.S
+12-124 files

FreeBSD/ports e65b911audio/spotify-player distinfo Makefile.crates

audio/spotify-player: Update 0.21.0 -> 0.23.0

Changelog: https://github.com/aome510/spotify-player/releases/tag/v0.23.0
DeltaFile
+825-643audio/spotify-player/distinfo
+411-320audio/spotify-player/Makefile.crates
+1-2audio/spotify-player/Makefile
+1,237-9653 files

LLVM/project a06dd7aclang/lib/CIR/Dialect/Transforms/TargetLowering CIRABIRewriteContext.cpp

[CIR] NFC: Extract rewriteIndirectReturnCall helper

The sret call-site rewrite was a large block inside rewriteCallSite.
Move it into a dedicated rewriteIndirectReturnCall helper in the
anonymous namespace, leaving rewriteCallSite to dispatch to it when the
return is indirect.

Pure code motion: the Indirect-and-has-result guard stays at the call
site (the moved block dereferences the call result, so the guard cannot
fold into the helper), and the helper derives its MLIR context from the
call.  No behavior change.
DeltaFile
+93-80clang/lib/CIR/Dialect/Transforms/TargetLowering/CIRABIRewriteContext.cpp
+93-801 files

NetBSD/src NYJtQlZsys/arch/arm/arm32 pmap.c, sys/dev/marvell mvxpsec.c

   s/inconsitent/inconsistent/ in comments and panic message.
VersionDeltaFile
1.450+3-3sys/arch/arm/arm32/pmap.c
1.22+2-2sys/dev/marvell/mvxpsec.c
1.84+2-2usr.sbin/rtadvd/rtadvd.c
+7-73 files

LLVM/project e159feaclang/test/CodeGen/RISCV rvp-intrinsics.c, llvm/test/CodeGen/X86 vector-interleaved-store-i16-stride-7.ll vector-interleaved-load-i8-stride-8.ll

rebase

Created using spr 1.3.7
DeltaFile
+8,699-3,233llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
+0-6,200llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,380-0llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16-fake16.txt
+1,962-1,920llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
+3,349-0clang/test/CodeGen/RISCV/rvp-intrinsics.c
+1,166-1,460llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
+19,556-12,8131,272 files not shown
+64,585-31,6661,278 files

LLVM/project e49bd05clang/test/CodeGen/RISCV rvp-intrinsics.c, llvm/test/CodeGen/X86 vector-interleaved-store-i16-stride-7.ll vector-interleaved-load-i8-stride-8.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+8,699-3,233llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
+0-6,200llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,380-0llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16-fake16.txt
+1,962-1,920llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
+3,349-0clang/test/CodeGen/RISCV/rvp-intrinsics.c
+1,166-1,460llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
+19,556-12,8131,272 files not shown
+64,585-31,6661,278 files

LLVM/project 5aea8eeclang/test/CodeGen/RISCV rvp-intrinsics.c, llvm/test/CodeGen/X86 vector-interleaved-store-i16-stride-7.ll vector-interleaved-load-i8-stride-8.ll

rebase

Created using spr 1.3.7
DeltaFile
+8,699-3,233llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
+0-6,200llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,380-0llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16-fake16.txt
+1,962-1,920llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
+3,349-0clang/test/CodeGen/RISCV/rvp-intrinsics.c
+1,166-1,460llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
+19,556-12,8131,272 files not shown
+64,585-31,6661,278 files

LLVM/project ba72638clang/test/CodeGen/RISCV rvp-intrinsics.c, llvm/test/CodeGen/X86 vector-interleaved-store-i16-stride-7.ll vector-interleaved-load-i8-stride-8.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+8,699-3,233llvm/test/MC/AMDGPU/gfx11_asm_vop3_dpp16.s
+0-6,200llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,380-0llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16-fake16.txt
+1,962-1,920llvm/test/CodeGen/X86/vector-interleaved-store-i16-stride-7.ll
+3,349-0clang/test/CodeGen/RISCV/rvp-intrinsics.c
+1,166-1,460llvm/test/CodeGen/X86/vector-interleaved-load-i8-stride-8.ll
+19,556-12,8131,272 files not shown
+64,585-31,6661,278 files

LLVM/project 90a1eebclang/include/clang/CIR LoweringHelpers.h, clang/lib/CIR/Lowering LoweringHelpers.cpp

[CIR] Lower pointer const_array globals without insertvalue chains (#198427)

`cir.global` initializers that are `const_array` of `global_view` (no
indices) or null pointers were lowered through an initializer region
full of `llvm.insertvalue` ops even though the elements are all
attribute-representable.  That forced the O(N²) MLIR-to-LLVM IR path
on large tables (SPEC CPU 2026 `gcc/insn-automata.cc`).

When `lowerConstArrayAttr` can build the whole initializer, emit the
global with one aggregate attribute instead.  String literals with
`trailing_zeros` are padded into `DenseElementsAttr` so C string tables
take the same bulk path.  Indexed `global_view`, `#cir.zero` arrays, and
other non-bulk cases still use the insertvalue path.

MLIR prerequisite
[#198424](https://github.com/llvm/llvm-project/pull/198424) is merged on
`main`; this branch is rebased and CIR-only.

---------

Co-authored-by: Claude Sonnet 4.6 <noreply at anthropic.com>
DeltaFile
+141-10clang/lib/CIR/Lowering/LoweringHelpers.cpp
+40-22clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVM.cpp
+55-0clang/test/CIR/Lowering/const-array-bulk-lowering-fallbacks.cir
+38-0clang/test/CIR/CodeGen/global-pointer-array-fast-lowering.cpp
+18-0clang/test/CIR/Lowering/const-array-of-pointers.cir
+2-1clang/include/clang/CIR/LoweringHelpers.h
+294-331 files not shown
+294-347 files

NetBSD/src g8nN1sKsys/arch/evbsh3/evbsh3 machdep.c, sys/arch/landisk/landisk machdep.c

   fix typos in comments, mainly s/initilize/initialize/.
VersionDeltaFile
1.56+3-3sys/dev/pci/pciconf.c
1.61+3-3sys/arch/mmeye/mmeye/machdep.c
1.26+3-3sys/arch/landisk/landisk/machdep.c
1.5+3-3sys/dev/smbios.c
1.79+3-3sys/arch/evbsh3/evbsh3/machdep.c
1.158+3-3sys/arch/sgimips/sgimips/machdep.c
+18-183 files not shown
+26-269 files

NetBSD/pkgsrc-wip 4a72f0f. Makefile, py-extra-platforms PLIST Makefile

py-extra-platforms: remove, imported to pkgsrc
DeltaFile
+0-62py-extra-platforms/PLIST
+0-22py-extra-platforms/Makefile
+3-3Makefile
+0-5py-extra-platforms/DESCR
+0-5py-extra-platforms/distinfo
+3-975 files