LLVM/project 5eca8b6compiler-rt/lib/profile CMakeLists.txt

[PGO][HIP] Fix profile-only Windows link by gating ROCm interceptor macro (#200859)

PR #200111 stops compiling InstrProfilingPlatformROCm.cpp (which defines
the
HIP GPU helper __llvm_profile_hip_collect_device_data) in profile-only
builds.
But the compile define -DCOMPILER_RT_BUILD_PROFILE_ROCM=1 was still
added
whenever the COMPILER_RT_BUILD_PROFILE_ROCM option was on (the default),
so
InstrProfilingFile.c still referenced the helper from
__llvm_profile_write_file
even though it was never built.

On ELF the declaration is weak, so the undefined symbol folds to null
and the
address-guarded call is skipped. COFF/Windows has no such fallback:

  error LNK2019: unresolved external symbol

    [10 lines not shown]
DeltaFile
+11-6compiler-rt/lib/profile/CMakeLists.txt
+11-61 files

FreeBSD/ports 76f04c9multimedia/audacious-plugins Makefile distinfo

multimedia/audacious-plugins: Update to 4.6
DeltaFile
+6-4multimedia/audacious-plugins/Makefile
+3-3multimedia/audacious-plugins/distinfo
+3-0multimedia/audacious-plugins/pkg-plist
+12-73 files

FreeBSD/ports 72dd360multimedia/audacious Makefile pkg-plist

multimedia/audacious: Update to 4.6

Also removed actually now unused EXECINFO option.
DeltaFile
+3-11multimedia/audacious/Makefile
+5-6multimedia/audacious/pkg-plist
+3-3multimedia/audacious/distinfo
+11-203 files

LLVM/project 09f30eflldb/test/API/tools/lldb-dap/attach-commands TestDAP_attachCommands.py, lldb/test/API/tools/lldb-dap/launch TestDAP_launch_extra_launch_commands.py

[lldb-dap] Use SetTarget for launch and attach commands (#200133)

Without this patch event listener registration was skipped, as a result
`Modules` view in UI was not displayed in case of launching target via
`launchCommands` or `attachCommands`.
DeltaFile
+8-1lldb/test/API/tools/lldb-dap/launch/TestDAP_launch_extra_launch_commands.py
+4-0lldb/test/API/tools/lldb-dap/attach-commands/TestDAP_attachCommands.py
+1-1lldb/tools/lldb-dap/Handler/RequestHandler.cpp
+1-1lldb/tools/lldb-dap/Handler/AttachRequestHandler.cpp
+14-34 files

LLVM/project 0068e3cllvm/lib/Target/DirectX DXILOpLowering.cpp DXIL.td, llvm/test/CodeGen/DirectX SampleBias.ll

[DirectX] Implement lowering of llvm.dx.resource.samplebias to the SampleBias DXIL Op (#199745)

Fixes #192548

This PR implements the lowering of the `llvm.dx.resource.samplebias`
intrinsic to the `SampleBias` DXIL Op.

Although I reckon that other `lowerSample*` functions in
`DXILOpLowering.cpp` will have shared logic, this is the first one to be
implemented. Consolidating common logic between future `lowerSample*`
functions can be left to a later PR implementing the second or other
`lowerSample*` function.

Assisted-by: Claude Opus 4.6
DeltaFile
+287-0llvm/test/CodeGen/DirectX/SampleBias.ll
+61-2llvm/lib/Target/DirectX/DXILOpLowering.cpp
+17-0llvm/lib/Target/DirectX/DXIL.td
+365-23 files

LLVM/project b480b45llvm/lib/IR Verifier.cpp, llvm/test/Verifier/AMDGPU intrinsic-load-to-lds.ll

[AMDGPU] Verify data size of load-to-LDS intrinsics (#200587)

An out-of-range size immarg (e.g. 0) produced an illegal i0 memory type
during SelectionDAG building and crashed the backend instead of being
rejected up front
DeltaFile
+45-0llvm/test/Verifier/AMDGPU/intrinsic-load-to-lds.ll
+20-0llvm/lib/IR/Verifier.cpp
+65-02 files

LLVM/project e406597llvm/lib/Transforms/Scalar SROA.cpp, llvm/test/CodeGen/NVPTX lower-byval-args.ll

[SROA] Canonicalize homogeneous structs to fixed vectors (opt-in, after memcpyopt) (#165159)

SROA sometimes keeps temporary allocas around for homogeneous structs
like
`{ i32, i32, i32, i32 }` because the partition has only memcpy/memset
traffic
and no scalar typed users to drive vector promotion. On targets like
AMDGPU
these allocas turn into scratch memory and hurt performance. This PR
adds a
helper `tryCanonicalizeStructToVector` that converts such a partition to
a
fixed vector type when every non-debug, non-lifetime user is a memory
intrinsic, so the alloca can promote through normal vector load/store
paths.
The element-shape rule accepts any homogeneous element count, any
integer
width, any FP type, and integral pointer types, as long as the struct is
tightly packed.

    [26 lines not shown]
DeltaFile
+389-0llvm/test/Transforms/SROA/struct-to-vector.ll
+144-27llvm/lib/Transforms/Scalar/SROA.cpp
+26-51llvm/test/CodeGen/NVPTX/lower-byval-args.ll
+69-0llvm/test/Transforms/SROA/struct-to-vector-subpartition.ll
+51-0llvm/test/Transforms/SROA/struct-to-vector-fp-store-only-tail.ll
+51-0llvm/test/Transforms/PhaseOrdering/struct-to-vector-before-memcpyopt.ll
+730-785 files not shown
+799-9611 files

LLVM/project 92b01a1.github/workflows libc-fullbuild-tests.yml

[libc] Add GPU build-only to fullbuild precommit CIs. (#200593)

- Add build-only CI for AMDGPU.
- Also pass correct flags to other targets.
DeltaFile
+27-7.github/workflows/libc-fullbuild-tests.yml
+27-71 files

FreeBSD/src 606d3cbsys/amd64/amd64 machdep.c

amd64: do not switch back and restore UEFI IDT in wrmsr_early_safe_end()

The memory where the pre-OS IDT was located might be already consumed by
kernel.

Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differential revision:  https://reviews.freebsd.org/D57321
DeltaFile
+0-8sys/amd64/amd64/machdep.c
+0-81 files

FreeBSD/src 16f21c5sys/x86/x86 ucode.c

amd64: there is no reason to copy ucode around in ucode_load_bsp()

PR:     294630
Reviewed by:    markj
Sponsored by:   The FreeBSD Foundation
MFC after:      1 week
Differrential revision: https://reviews.freebsd.org/D57368
DeltaFile
+9-11sys/x86/x86/ucode.c
+9-111 files

LLVM/project 8b901cclldb/tools/lldb-dap InstructionBreakpoint.cpp InstructionBreakpoint.h

[lldb-dap] Cleanup InstructionBreakpoint (#200228)

Added mutex like in other breakpoints
([PR](https://github.com/llvm/llvm-project/pull/134030)). Also removed
unused `m_offset` field.
DeltaFile
+5-3lldb/tools/lldb-dap/InstructionBreakpoint.cpp
+0-1lldb/tools/lldb-dap/InstructionBreakpoint.h
+5-42 files

FreeBSD/src 72e34b3sys/kern kern_resource.c

get/setpriority: Add capability mode checks

Reviewed by: oshogbo
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D57345
DeltaFile
+16-0sys/kern/kern_resource.c
+16-01 files

LLVM/project 845c37allvm/test/CodeGen/AMDGPU/GlobalISel llvm.amdgcn.image.atomic.dim.mir combine-fma-add-mul-post-legalize.mir

AMDGPU/GlobalISel: Remove redundant -global-isel from -run-pass MIR tests (NFC)
DeltaFile
+5-5llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.image.atomic.dim.mir
+4-4llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-post-legalize.mir
+4-4llvm/test/CodeGen/AMDGPU/GlobalISel/combine-fma-add-mul-pre-legalize.mir
+3-3llvm/test/CodeGen/AMDGPU/GlobalISel/regbankselect-widen-scalar-loads.mir
+2-2llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w32.mir
+2-2llvm/test/CodeGen/AMDGPU/GlobalISel/inst-select-amdgcn.fcmp.constants.w64.mir
+20-2023 files not shown
+47-4729 files

LLVM/project 9e0d8a6lldb/include/lldb/Symbol Type.h, lldb/source/Symbol Type.cpp

[LLDB] Detect cycles during Type resolution (#200304)

I got LLDB crash reports from the Swift plugin where (presumably
malformed) debug info sends lldb_private::Type into an infite recursion.
Most likely this is a bug in the DWARF parser, however, even malformed
inputs shouldn't crash LLDB so this patch adds cycle detection.

rdar://177856769

Assisted-by: claude
DeltaFile
+84-0lldb/unittests/Symbol/TestType.cpp
+9-0lldb/source/Symbol/Type.cpp
+1-0lldb/include/lldb/Symbol/Type.h
+94-03 files

LLVM/project 81342f4mlir/lib/Transforms Mem2Reg.cpp

replace  by  in commentt
DeltaFile
+2-1mlir/lib/Transforms/Mem2Reg.cpp
+2-11 files

LLVM/project 5ae66a3libc/src/__support tlsf_freestore.h tlsf_index_computation_proof.py, libc/test/src/__support tlsf_freestore_test.cpp

add optimizations for hot paths
DeltaFile
+83-39libc/src/__support/tlsf_freestore.h
+97-0libc/src/__support/tlsf_index_computation_proof.py
+9-9libc/test/src/__support/tlsf_freestore_test.cpp
+189-483 files

LLVM/project 83538c5clang/lib/CIR/CodeGen CIRGenExprScalar.cpp, clang/test/CIR/CodeGenOpenCL as_type.cl

[CIR] Implement __builtin_astype for vec4 to vec3 (#199374)

Implement __builtin_astype for vec4 to vec3

Issue #192311
DeltaFile
+20-12clang/test/CIR/CodeGenOpenCL/as_type.cl
+15-5clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
+35-172 files

LLVM/project 67ba995llvm/test/CodeGen/AMDGPU llvm.exp10.f64.ll llvm.exp.f64.ll

AMDGPU/GlobalISel: Switch some tests to -new-reg-bank-select
DeltaFile
+887-803llvm/test/CodeGen/AMDGPU/llvm.exp10.f64.ll
+855-771llvm/test/CodeGen/AMDGPU/llvm.exp.f64.ll
+677-645llvm/test/CodeGen/AMDGPU/llvm.exp2.f64.ll
+654-306llvm/test/CodeGen/AMDGPU/fptosi-sat-vector.ll
+503-255llvm/test/CodeGen/AMDGPU/fptoui-sat-vector.ll
+435-309llvm/test/CodeGen/AMDGPU/rsq.f64.ll
+4,011-3,08926 files not shown
+5,656-4,16332 files

LLVM/project b76f082mlir/lib/Transforms Mem2Reg.cpp, mlir/test/Dialect/LLVMIR mem2reg-dbginfo.mlir

trim comments
DeltaFile
+7-19mlir/lib/Transforms/Mem2Reg.cpp
+1-8mlir/test/Dialect/LLVMIR/mem2reg-dbginfo.mlir
+8-272 files

LLVM/project 1f1ae8fclang/tools/clang-sycl-linker ClangSYCLLinker.cpp

[NFC][clang-sycl-linker] Apply LLVM coding standards to ClangSYCLLinker.cpp (#200543)

Bring the file in line with llvm/docs/CodingStandards.rst without
changing
behavior:

- Restore the canonical //===---===// file-header banner.
- Move free functions out of the anonymous namespace and mark them
  `static`; keep only types (LinkerOptTable, LinkResult, SplitModule,
  IRSplitMode, EntryPointCategorizer) inside anonymous namespaces.
- Rename a local `OutputFile` in createTempFile to `Path` to stop it
  shadowing the file-scope `OutputFile`.
- Rename the inner `Err` in runCodeGen to `MatErr` to stop it shadowing
  the surrounding `SMDiagnostic Err`.
- Normalize parameter-name comments to the `/*Name=*/value` form.
- Strip quotes from Doxygen `\param 'Name'` directives.

Co-Authored-By: Claude
DeltaFile
+48-39clang/tools/clang-sycl-linker/ClangSYCLLinker.cpp
+48-391 files

LLVM/project 17a57ebclang/include/clang/AST ExprCXX.h, clang/include/clang/Sema Sema.h

[clang] fix transformation of SubstNonTypeTemplateParmExpr nodes from typealiases and concepts

This makes sure SubstNonTypeTemplateParmExpr produced from non-specialization
decls (Type alias templates and concepts) are correctly transformed.

This makes the SubstNonTypeTemplateParmExpr store the parameter type directly,
and uses that instead of relying on the AssociatedDecl.

Fixes #191738
Fixes #196375
DeltaFile
+16-36clang/lib/Sema/SemaTemplate.cpp
+18-31clang/lib/Sema/TreeTransform.h
+13-13clang/include/clang/AST/ExprCXX.h
+14-10clang/lib/Sema/SemaTemplateInstantiate.cpp
+9-10clang/include/clang/Sema/Sema.h
+0-12clang/lib/AST/ExprCXX.cpp
+70-11214 files not shown
+126-13720 files

LLVM/project d1e6085llvm/lib/Transforms/Scalar LoopInterchange.cpp

address reviews
DeltaFile
+2-4llvm/lib/Transforms/Scalar/LoopInterchange.cpp
+2-41 files

LLVM/project 5cbd57dclang/include/clang/AST ExprCXX.h, clang/include/clang/Sema Sema.h

[clang] fix transformation of SubstNonTypeTemplateParmExpr nodes from typealiases and concepts

This makes sure SubstNonTypeTemplateParmExpr produced from non-specialization
decls (Type alias templates and concepts) are correctly transformed.

This makes the SubstNonTypeTemplateParmExpr store the parameter type directly,
and uses that instead of relying on the AssociatedDecl.

Fixes #191738
Fixes #196375
DeltaFile
+17-36clang/lib/Sema/SemaTemplate.cpp
+18-31clang/lib/Sema/TreeTransform.h
+13-13clang/include/clang/AST/ExprCXX.h
+14-10clang/lib/Sema/SemaTemplateInstantiate.cpp
+9-10clang/include/clang/Sema/Sema.h
+0-12clang/lib/AST/ExprCXX.cpp
+71-11214 files not shown
+127-13720 files

LLVM/project 234e46aflang/include/flang/Semantics semantics.h, flang/lib/Semantics semantics.cpp resolve-names.cpp

[cuda][flang] Diagnose missing CUDA intrinsic modules in Flang semantics (#200509)

- Replace CUDA intrinsic module `CHECK`s with actionable diagnostics
when `cudadevice` or `__cuda_builtins` cannot be read.
- Avoid dereferencing missing CUDA module scopes during implicit CUDA
symbol import.
- Add a semantics test covering the missing CUDA intrinsic module
diagnostic.
DeltaFile
+20-9flang/lib/Semantics/semantics.cpp
+14-11flang/lib/Semantics/resolve-names.cpp
+10-0flang/test/Semantics/cuf-missing-intrinsic-modules.cuf
+4-2flang/include/flang/Semantics/semantics.h
+48-224 files

LLVM/project 45660cblldb/source/Host/windows ConnectionGenericFileWindows.cpp

[lldb][Windows] Use captured error in ConnectionGenericFile::Read (#200803)

Use the captured value on both branches so the reported error matches
the one that was tested against.
DeltaFile
+1-1lldb/source/Host/windows/ConnectionGenericFileWindows.cpp
+1-11 files

LLVM/project 96f5b17libc/hdr/types struct_udphdr.h CMakeLists.txt, libc/include/llvm-libc-types struct_udphdr.h

[libc] Add netinet/udp.h containing struct udphdr (#200839)

This patch adds a generated <netinet/udp.h> containing the `udphdr`
structure definition.

There are two styles ("linux" and "BSD") of udphdr field names (and both
of them can be found in the wild), so I follow the glibc and bionic
approach of using an anonymous union. (musl uses a #define on the field
names, which doesn't seem that great).

I've added the target to `include/CMakeLists.txt` and registered it
under target lists in `headers.txt` for the supported Linux platforms
(x86_64, aarch64, and riscv).

To verify layout and alignment correctness, I've added a layout and
field compatibility unit test under `test/src/netinet/udp_test.cpp`.

Assisted by Gemini.
DeltaFile
+43-0libc/test/src/netinet/udp_test.cpp
+37-0libc/include/llvm-libc-types/struct_udphdr.h
+27-0libc/hdr/types/struct_udphdr.h
+13-0libc/test/src/netinet/CMakeLists.txt
+10-0libc/hdr/types/CMakeLists.txt
+9-0libc/include/netinet/udp.yaml
+139-06 files not shown
+153-012 files

LLVM/project a5a3398clang/lib/Driver Driver.cpp, clang/test/Driver offload-arch-translation-amdgpu.cu hip-toolchain-no-rdc.hip

[Clang][AMDGPU] Restore the non-RDC compilation pipeline

The new offload driver uses the LTO compilation pipeline even for non-RDC
compilation. This PR restores the conventional non-RDC flow, where the backend
generates executable code directly, which is then bundled into the HIP fat
binary.

We can revert this change in the future if we decide to deprecate the
distinction between non-RDC and RDC compilation and unify the compilation flow.
DeltaFile
+60-60clang/test/Driver/offload-arch-translation-amdgpu.cu
+74-26clang/lib/Driver/Driver.cpp
+26-45clang/test/Driver/hip-toolchain-no-rdc.hip
+21-13clang/test/Driver/hip-phases.hip
+3-11clang/test/Driver/hip-toolchain-opt.hip
+4-3clang/test/Driver/hip-save-temps.hip
+188-1582 files not shown
+190-1608 files

LLVM/project 82b4ef5llvm/lib/Transforms/Vectorize VPlan.h VPlanRecipes.cpp, llvm/test/Transforms/LoopVectorize/AArch64 sve2-histcnt.ll

[LV] Fix missing MetaData for histogram instructions (#134241)
DeltaFile
+56-0llvm/test/Transforms/LoopVectorize/AArch64/sve2-histcnt.ll
+32-0llvm/test/Transforms/LoopVectorize/VPlan/AArch64/sve2-histcnt-vplan.ll
+8-7llvm/lib/Transforms/Vectorize/VPlan.h
+4-3llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+2-1llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+102-115 files

LLVM/project cf797d6mlir/include/mlir/Interfaces MemorySlotInterfaces.td, mlir/lib/Transforms Mem2Reg.cpp

set insertion point before memOp in promoteInBlock
DeltaFile
+23-0mlir/test/Dialect/LLVMIR/mem2reg-dbginfo.mlir
+6-4mlir/include/mlir/Interfaces/MemorySlotInterfaces.td
+4-1mlir/lib/Transforms/Mem2Reg.cpp
+33-53 files

LLVM/project 16dc82cllvm/lib/Transforms/Scalar LoopInterchange.cpp, llvm/test/Transforms/LoopInterchange memory-attr.ll

[LoopInterchange] Prevent to interchange when memory-related calls exist
DeltaFile
+7-19llvm/test/Transforms/LoopInterchange/memory-attr.ll
+4-2llvm/lib/Transforms/Scalar/LoopInterchange.cpp
+11-212 files