LLVM/project 8e3d56bclang/lib/CodeGen CGOpenMPRuntime.cpp, clang/test/OpenMP target_map_nested_ptr_member_mapper_codegen.cpp

[OpenMP] Propagate PRESENT to pointee entries in mapper codegen

Extend map-type-modifier propagation in emitUserDefinedMapper to the PRESENT
modifier, but only for entries that have an attach ptr (the pointee data, whose
storage differs from the struct's own). A present modifier on the outer clause
must require that pointee to be present on the device.

This is gated on a new PropagatePresentToPointee argument, which Clang sets from
CGM.getLangOpts().OpenMP >= 60. Before 6.0 the present modifier is treated as
not applying to the pointee: the spec committee confirmed the divergence
between the present motion modifier (to/from) and the present map-type modifier
(map) was unintentional, to be fixed as an OpenMP 6.0 erratum. Only propagation
is gated; present written directly in a mapper's own clause applies at all
versions.

A TODO notes PRESENT should also propagate to the struct's own members, which
is blocked while pointer members use PTR_AND_OBJ.

Update the present-check tests to their final 6.0-gated behavior.

    [2 lines not shown]
DeltaFile
+36-11llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+10-17offload/test/mapping/mapper_target_update_present_ptee.c
+14-13offload/test/mapping/mapper_map_mbr_then_present_mbr_ptee.c
+13-4llvm/include/llvm/Frontend/OpenMP/OMPIRBuilder.h
+6-9clang/test/OpenMP/target_map_nested_ptr_member_mapper_codegen.cpp
+12-3clang/lib/CodeGen/CGOpenMPRuntime.cpp
+91-576 files

LLVM/project 8533f3dclang/lib/CodeGen CGOpenMPRuntime.cpp, clang/test/OpenMP target_map_nested_ptr_member_mapper_codegen.cpp declare_mapper_codegen.cpp

[OpenMP][Clang] Enable ATTACH-style maps for mappers.

Track per-entry attach-ptr info (HasAttachPtr) through mapper codegen so that
emitUserDefinedMapper does not add a new outer MEMBER_OF to pointee/combined
entries (which occupy different storage than the struct) or to ATTACH entries.
Clang and the MLIR translator populate the per-entry array in parallel with the
other MapInfosTy arrays.

Address review:
  - Rename MapSkipMemberOfArrayTy to MapHasAttachPtrArrayTy to match the
    HasAttachPtr field it backs.
  - Restructure the emitUserDefinedMapper comment into a bulleted (*)/(**)/(***)
    list keyed to the example entries.
  - Reword the Clang comments: HasAttachPtr marks pointee entries that have a
    base attach-ptr; a combined entry has a base attach-ptr if its constituents
    do; cross-reference emitUserDefinedMapper for the MEMBER_OF rationale.
  - Update the moved present-check tests to their now-correct behavior (the
    attach-style maps make the inbounds present checks pass and remove the
    "explicit extension" errors).

    [2 lines not shown]
DeltaFile
+196-160clang/test/OpenMP/target_map_nested_ptr_member_mapper_codegen.cpp
+68-60clang/test/OpenMP/declare_mapper_codegen.cpp
+56-15llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+65-5clang/lib/CodeGen/CGOpenMPRuntime.cpp
+18-24offload/test/mapping/mapper_enter_data_always_present_ptee.c
+14-26offload/test/mapping/mapper_map_mbr_ptee_then_present_mbr_ptee.c
+417-2909 files not shown
+487-35915 files

LLVM/project adb9b24clang/test/OpenMP target_map_nested_ptr_member_mapper_codegen.cpp target_map_array_of_structs_with_nested_mapper_codegen.cpp, llvm/lib/Frontend/OpenMP OMPIRBuilder.cpp

[OpenMP] Propagate ALWAYS/DELETE/CLOSE map-type modifiers to mapper entries

When a map clause uses a user-defined mapper, the map-type-modifying bits
(ALWAYS, DELETE, CLOSE) on the outer clause must apply to each map the mapper
inserts (OpenMP 6.0:281:34). Propagate them in emitUserDefinedMapper by OR-ing
the imported modifier bits into each pushed component, except ATTACH entries
(ATTACH|ALWAYS is reserved for attach(always) and the other bits are
meaningless for ATTACH).

PRESENT is intentionally not propagated here yet (a TODO notes it is handled in
a follow-on, since it requires distinguishing pointee entries from the struct's
own storage).

Update offload mapper_map_always_from.c to its now-correct behavior: ALWAYS
forces a member copy-back that the ref count would otherwise suppress, so s.y
reads back as 111 (it was 0 before this change).

Co-Authored-By: Claude Opus 4.8 <noreply at anthropic.com>
DeltaFile
+152-136clang/test/OpenMP/target_map_nested_ptr_member_mapper_codegen.cpp
+87-77clang/test/OpenMP/target_map_array_of_structs_with_nested_mapper_codegen.cpp
+87-77clang/test/OpenMP/target_map_array_section_of_structs_with_nested_mapper_codegen.cpp
+38-2llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+27-9clang/test/OpenMP/declare_mapper_codegen.cpp
+8-15offload/test/mapping/mapper_map_always_from.c
+399-3164 files not shown
+420-33710 files

LLVM/project 41fd59fllvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll bf16.ll

Change asm syntax

Created using spr 1.3.6-beta.1
DeltaFile
+6,560-6,119llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,715-4,955llvm/test/CodeGen/AMDGPU/bf16.ll
+2,967-2,753llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
+1,072-1,937llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
+19,318-19,4321,435 files not shown
+87,284-63,4931,441 files

LLVM/project 1460ee0llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll bf16.ll

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.6-beta.1

[skip ci]
DeltaFile
+6,560-6,119llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,715-4,955llvm/test/CodeGen/AMDGPU/bf16.ll
+2,967-2,753llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
+1,072-1,937llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
+19,318-19,4321,434 files not shown
+87,152-63,3611,440 files

LLVM/project a6633d1llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll bf16.ll

Change asm syntax

Created using spr 1.3.6-beta.1
DeltaFile
+6,560-6,119llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,715-4,955llvm/test/CodeGen/AMDGPU/bf16.ll
+2,967-2,753llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/maximumnum.bf16.ll
+2,002-1,834llvm/test/CodeGen/AMDGPU/minimumnum.bf16.ll
+1,072-1,937llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
+19,318-19,4321,434 files not shown
+87,152-63,3611,440 files

FreeBSD/ports ccb262dmail/dbmail distinfo Makefile

mail/dbmail: update to 3.5.6 release (+)

Release notes:  https://github.com/dbmail/dbmail/releases/tag/v3.5.6
DeltaFile
+3-3mail/dbmail/distinfo
+1-2mail/dbmail/Makefile
+4-52 files

LLVM/project f901499bolt/include/bolt/Rewrite RewriteInstance.h, bolt/lib/Rewrite RewriteInstance.cpp

[BOLT] Split unmarked tail code after CFI-bounded functions into separate functions (#176173)

Detect trailing unmarked code after CFI-bounded predecessors
(__BOLT_FDE_FUNC* or symbols whose FDE address range equals their size)
and promote it into separate BinaryFunction objects named
__BOLT_UNMARKED_TAILat<addr>.

A predecessor is only considered when:
  - the target is AArch64
  - it is not a pseudo or fragment function
  - it has slack beyond its recorded size (MaxSize > Size)
  - it is CFI-bounded
  - no function is already registered at the tail start address
  
The trailing region is measured conservatively and we bail out (leaving
the slack attached to the predecessor) when:
- the tail range is not fully contained in the predecessor's origin
section
- a data marker ($d) or a constant island overlaps the region

    [8 lines not shown]
DeltaFile
+165-0bolt/lib/Rewrite/RewriteInstance.cpp
+111-0bolt/test/AArch64/entry-point-at-function-end.s
+6-0bolt/include/bolt/Rewrite/RewriteInstance.h
+282-03 files

LLVM/project 636995aoffload/test/mapping declare_mapper_target.cpp declare_mapper_target_data.cpp

[OpenMP][test] Mark failing declare_mapper tests UNSUPPORTED on intelgpu

These five declare_mapper mapping tests currently fail on Intel GPUs
(spirv64-intel): four produce a wrong result at runtime and
declare_mapper_nested_mappers.cpp hits a module-build failure. Mark them
UNSUPPORTED: intelgpu for now so the suite is green on Intel GPUs;
investigating and fixing the underlying issues is tracked as a separate
effort. The tests still run and pass on the host and other targets.

Co-Authored-By: Claude Opus 4.8 <noreply at anthropic.com>
DeltaFile
+2-0offload/test/mapping/declare_mapper_target.cpp
+2-0offload/test/mapping/declare_mapper_target_data.cpp
+2-0offload/test/mapping/declare_mapper_nested_mappers.cpp
+2-0offload/test/mapping/declare_mapper_target_update.cpp
+2-0offload/test/mapping/declare_mapper_target_data_enter_exit.cpp
+10-05 files

FreeBSD/ports d81c9cbeditors/libreoffice-cs distinfo, editors/libreoffice-da distinfo

editors/libreoffice: update to 26.2.5 release (+)

Release of LibreOffice 26.2.5, the fifth maintenance update to the
LibreOffice 26.2 branch, is available for FreeBSD users.

This update delivers targeted bug fixes and stability improvements
contributed by a global community of developers and QA engineers.

Release notes:  https://wiki.documentfoundation.org/ReleaseNotes/26.2
Changelog:      https://wiki.documentfoundation.org/Releases/26.2.5/RC1 \
                https://wiki.documentfoundation.org/Releases/26.2.5/RC2
DeltaFile
+20-20editors/libreoffice/files/patch-configure
+5-5editors/libreoffice-tg/distinfo
+5-5editors/libreoffice-cs/distinfo
+5-5editors/libreoffice-ta/distinfo
+5-5editors/libreoffice-da/distinfo
+5-5editors/libreoffice-dsb/distinfo
+45-45116 files not shown
+515-515122 files

LLVM/project a2d12d5llvm/test/CodeGen/AMDGPU llvm.amdgcn.smfmac.gfx950.ll llvm.amdgcn.mfma.gfx950.ll

[LLC][AMDGPU] start using new pass manager for backend codegen
DeltaFile
+310-310llvm/test/CodeGen/AMDGPU/llvm.amdgcn.smfmac.gfx950.ll
+306-306llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.gfx950.ll
+230-230llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.16x16x128.f8f6f4.ll
+230-226llvm/test/CodeGen/AMDGPU/llvm.amdgcn.mfma.scale.f32.32x32x64.f8f6f4.ll
+0-388llvm/test/CodeGen/AMDGPU/call-constexpr.ll
+243-0llvm/test/CodeGen/AMDGPU/call-constexpr-gisel.ll
+1,319-1,460112 files not shown
+2,222-2,112118 files

LLVM/project 4bb7fa8llvm/include/llvm/IR RuntimeLibcalls.td, llvm/lib/Target/ARM ARMSubtarget.cpp

ARM: Mark more generic libgcc functions as available

Generic libgcc/compiler-rt functions coexist with aeabi variants
(e.g., __divsi3  and __aeabi_idiv) according to my reading of the
build. At least in compiler-rt, they are aliases (such that I'm not sure
what the point of ever emitting the __aeabi name is).

They were previously removed from the available set on AEABI+AAPCS targets
to force selection of the preferred __aeabi_* variants, back when
only one implementation per libcall could be recorded.

Now that multiple implementations can be available per libcall, stop hiding
the generics and select the __aeabi_* variant explicitly as the preferred
implemntation. This reduces the number of special cases to consider for
future libcalls info improvements.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+64-0llvm/lib/Target/ARM/ARMSubtarget.cpp
+1-6llvm/include/llvm/IR/RuntimeLibcalls.td
+65-62 files

LLVM/project 3fbaf8ellvm/include/llvm/IR RuntimeLibcalls.td, llvm/lib/Target/Hexagon HexagonSubtarget.cpp HexagonSubtarget.h

Hexagon: Stop excluding some generic compiler-rt functions from libcalls

RuntimeLibcalls should indicate any function that exists and is callable.
Historically the list of library functions was conflated with the library
functions which should be used, so the library definition was complicated
by excluding the overridden cases. My reading of the compiler-rt sources is
that the generically named functions are built alongside the __hexagon
prefixed variants. e.g., __divsi3 and __hexagon_divsi3 both exist.

It will simplify future libcall work the fewer special case target exclusions
there are, so allow the functions to be defined and apply the selection
preference for the __hexagon prefixed versions in LibcallLoweringInfo.

I do question why compiler-rt is built this way; why doesn't the hexagon
just replace the standard entrypoint names with the target implementations?

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+29-0llvm/lib/Target/Hexagon/HexagonSubtarget.cpp
+5-4llvm/include/llvm/IR/RuntimeLibcalls.td
+3-0llvm/lib/Target/Hexagon/HexagonSubtarget.h
+37-43 files

LLVM/project f66fbbellvm/include/llvm/IR RuntimeLibcalls.td, llvm/lib/Target/MSP430 MSP430Subtarget.cpp

Revert "MSP430: Mark more generic libgcc functions as available (#210962)"

This reverts commit a7543e65d6b24ff4ea2d8bee1cc676980f4bf76c.
DeltaFile
+0-67llvm/lib/Target/MSP430/MSP430Subtarget.cpp
+11-4llvm/include/llvm/IR/RuntimeLibcalls.td
+11-712 files

FreeBSD/ports cc7442etextproc/libmwaw03 distinfo Makefile

textproc/libmwaw03: udate to 0.3.23 release (+)

Changes:
* correct integer overflow and unbounded recursion issues, etc.
DeltaFile
+3-3textproc/libmwaw03/distinfo
+1-1textproc/libmwaw03/Makefile
+4-42 files

FreeBSD/ports fc2a97ax11-fonts/crosextrafonts-caladea-ttf Makefile

x11-fonts/crosextrafonts-caladea-ttf: fix trailing slash in download URL
DeltaFile
+1-1x11-fonts/crosextrafonts-caladea-ttf/Makefile
+1-11 files

FreeBSD/ports 0652de2x11-fonts/croscorefonts-fonts-ttf Makefile

x11-fonts/croscorefonts-fonts-ttf: fix trailing slash in download URL
DeltaFile
+1-1x11-fonts/croscorefonts-fonts-ttf/Makefile
+1-11 files

FreeBSD/ports de6fd27x11-fonts/crosextrafonts-carlito-ttf Makefile

x11-fonts/crosextrafonts-carlito-ttf: fix trailing slash in download URL
DeltaFile
+1-1x11-fonts/crosextrafonts-carlito-ttf/Makefile
+1-11 files

FreeBSD/ports a134ba3graphics/gegl Makefile distinfo

graphics/gegl: update to 0.4.70 release (+)

Changelog:      https://gitlab.gnome.org/GNOME/gegl/-/blob/GEGL_0_4_70/docs/NEWS.adoc?ref_type=tags#user-content-gegl-0-4-70-2025-03-24
DeltaFile
+3-4graphics/gegl/Makefile
+3-3graphics/gegl/distinfo
+1-0graphics/gegl/pkg-plist
+7-73 files

FreeBSD/ports 81b020bgraphics/gimp3-app Makefile distinfo, graphics/gimp3-app/files patch-meson.build patch-libgimp_gimp.c

graphics/gimp3-app: update to 3.2.4 release (+)

Release notes:  https://www.gimp.org/news/2026/03/28/gimp-3-2-2-released/ \
                https://www.gimp.org/news/2026/04/19/gimp-3-2-4-released/
DeltaFile
+12-4graphics/gimp3-app/files/patch-meson.build
+3-3graphics/gimp3-app/Makefile
+3-3graphics/gimp3-app/distinfo
+2-2graphics/gimp3-app/files/patch-libgimp_gimp.c
+2-2graphics/gimp3-app/files/patch-meson__options.txt
+1-0graphics/gimp3-app/pkg-plist
+23-146 files

FreeBSD/ports 512500ex11/babl Makefile distinfo

x11/babl: update to 0.1.126 release (+)

Changelog:      https://gitlab.gnome.org/GNOME/babl/-/blob/BABL_0_1_126/NEWS?ref_type=tags#L7-8
DeltaFile
+3-3x11/babl/Makefile
+3-3x11/babl/distinfo
+6-62 files

LLVM/project b8de729llvm/test/CodeGen/AArch64/GlobalISel irtranslator-samesign.ll irtranslater-samesign.ll

[AArch64][GlobalISel] Rename irtranslater -> irtranslator test. NFC (#212205)
DeltaFile
+69-0llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-samesign.ll
+0-69llvm/test/CodeGen/AArch64/GlobalISel/irtranslater-samesign.ll
+69-692 files

FreeBSD/ports 7f7e0bddevel/sbt distinfo Makefile

devel/sbt: update to 2.0.4 release.
DeltaFile
+3-3devel/sbt/distinfo
+1-1devel/sbt/Makefile
+4-42 files

LLVM/project 77959d5clang/lib/Driver/ToolChains CommonArgs.cpp, clang/test/Driver amdgpu-mcpu.cl hip-sanitize-options.hip

clang/AMDGPU: Stop passing redundant -target-cpu to cc1

Now that the exact target is encoded in the triple's subarch field,
-target-cpu is redundant. This avoids polluting the resultant IR with
unwanted "target-cpu" attributes. The net result is the desired codegen
when compiling libraries for a major subarch and linking it into a
program compiled for a specific arch. e.g., compiling for "gfx9-generic"
would pollute the IR with "target-cpu"="gfx9-generic", so codegen
would ultimately be performed for the generic target even after
linking into the concrete gfx9 cpu. The specialization will now be
achieved by merging the triples without the linker or optimization
passes needing to fixup function attributes.
DeltaFile
+62-62clang/test/Driver/amdgpu-mcpu.cl
+26-26clang/test/Driver/hip-sanitize-options.hip
+20-10clang/lib/Driver/ToolChains/CommonArgs.cpp
+12-16clang/test/Driver/hip-rdc-device-only.hip
+10-10clang/test/Driver/amdgpu-xnack-sramecc-flags.c
+5-7clang/test/Driver/hip-cuid.hip
+135-13126 files not shown
+190-21132 files

LLVM/project 73ddccellvm/include/llvm/TargetParser AMDGPUTargetParser.h AMDGPUTargetParser.def, llvm/lib/Target/AMDGPU AMDGPUAttributor.cpp

AMDGPU: Start using subarch in attributor instead of subtarget

Avoid querying the subtarget for functions when the relevant
properties are known from the triple. The various subtarget
group size functions should also be decoupled from the subtarget,
but those are trickier to untangle.

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+26-18llvm/lib/Target/AMDGPU/AMDGPUAttributor.cpp
+15-1llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+8-8llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
+10-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+59-274 files

LLVM/project a6bd723clang/lib/Basic OffloadArch.cpp, clang/lib/Driver Driver.cpp

clang: Start using new amdgpu subarch triples

Fixup invocations using --target=amdgcn + -mcpu to introduce
the subarch in the triple.

For offload toolchains, a single toolchain is constructed for the
top level amdgpu architecture, and the effective triple is used for
target specific tool invocations.

The specifics of the resource directory layout are tbd. This does
try to find resources in the subarch named directory. The paths
are searched at toolchain creation time, so that does not work
when there are multiple subarches.

Fixes #154925
DeltaFile
+234-2clang/lib/Basic/OffloadArch.cpp
+59-59clang/test/Driver/offload-arch-translation-amdgpu.cu
+43-43clang/test/Driver/hip-phases.hip
+33-33clang/test/Driver/hip-binding.hip
+48-14clang/lib/Driver/ToolChains/CommonArgs.cpp
+43-12clang/lib/Driver/Driver.cpp
+460-163103 files not shown
+1,206-500109 files

LLVM/project a7543e6llvm/include/llvm/IR RuntimeLibcalls.td, llvm/lib/Target/MSP430 MSP430Subtarget.cpp

MSP430: Mark more generic libgcc functions as available (#210962)

The generic soft-float, conversion, comparison and integer helper
routines (__addsf3, __divli's __divsi3, __ashlsi3, ...) exist in the MSP430
libgcc port alongside the preferred __mspabi_* variants. They were previously
removed to force selection of the __mspabi_* names, back when only one
implementation per libcall could be recorded.

Stop hiding them: only __lshrsi3 stays excluded, since the MSP430 libgcc
port provides the 32-bit logical right shift solely under __mspabi_srll and
never defines a generic __lshrsi3.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+67-0llvm/lib/Target/MSP430/MSP430Subtarget.cpp
+4-11llvm/include/llvm/IR/RuntimeLibcalls.td
+71-112 files

LLVM/project 3ea8f78llvm/test/TableGen RuntimeLibcallEmitter-multiple-impls.td RuntimeLibcallEmitter-conflict-warning.td, llvm/utils/TableGen/Basic RuntimeLibcallsEmitter.cpp

RuntimeLibcalls: Emit all available impls for a libcall, not just one

The intent is RuntimeLibcalls should represent all functions that are
callable from the module, which may have contextually selectable alternatives.
Previously we had this warning since there was no mechanism to select which
one you want, and as a workaround the library call sets avoided adding the
variants which should nto be selected.

Now targets can use initLibcallLoweringInfo, so remove the warning to unblock
more libcall cleanups. Eventually initLibcallLoweringInfo should also be tablegen
driven.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+100-0llvm/test/TableGen/RuntimeLibcallEmitter-multiple-impls.td
+0-97llvm/test/TableGen/RuntimeLibcallEmitter-conflict-warning.td
+3-25llvm/utils/TableGen/Basic/RuntimeLibcallsEmitter.cpp
+103-1223 files

FreeBSD/doc c0035dawebsite/data/en/news news.toml

News: Announce 2026Q2 Status Report
DeltaFile
+5-0website/data/en/news/news.toml
+5-01 files

FreeBSD/ports 15135a2security/libp11 pkg-plist distinfo

security/libp11: update to 0.4.19 release.
DeltaFile
+6-1security/libp11/pkg-plist
+3-3security/libp11/distinfo
+1-1security/libp11/Makefile
+10-53 files