LLVM/project 33d2c6alibc/include CMakeLists.txt

[libc] Add missing type dependencies to sys_types header target (#212601)

Add missing type dependencies to the sys_types header target in
libc/include/CMakeLists.txt for types defined in sys/types.yaml,
including __off_t, __off64_t, __uint64_t, off64_t, and BSD/System V
types added in commit 39df67d0edef.

Without these DEPENDS entries, CMake and Ninja do not copy the
corresponding type headers into the build and install directories,
causing missing header includes (e.g. __off64_t.h) when consuming
generated <sys/types.h>.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+15-0libc/include/CMakeLists.txt
+15-01 files

LLVM/project 3e97ecc.github/workflows release-sources.yml

XXX: debug
DeltaFile
+0-3.github/workflows/release-sources.yml
+0-31 files

LLVM/project c6f775cllvm/lib/Target/AMDGPU SIISelLowering.cpp AMDGPUInstructionSelector.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.ballot.i32.wave64.err.ll

Revert "[AMDGPU] Fix llvm.amdgcn.ballot with return width != wavefront size" (#212628)

Reverts llvm/llvm-project#211493

unblock bot: https://lab.llvm.org/buildbot/#/builders/232
DeltaFile
+0-15llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.wave64.err.ll
+2-9llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
+0-9llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+2-333 files

LLVM/project 6da37b1llvm/test/CodeGen/AMDGPU amdgcn.bitcast.512bit.ll bf16.ll, llvm/test/CodeGen/RISCV/rvv fixed-vectors-clmulh.ll

Rebase, address comments, cleanups

Created using spr 1.3.7
DeltaFile
+6,560-6,119llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+5,041-5,418llvm/test/CodeGen/AMDGPU/maximumnum.ll
+4,920-5,284llvm/test/CodeGen/AMDGPU/minimumnum.ll
+4,715-4,955llvm/test/CodeGen/AMDGPU/bf16.ll
+2,967-2,753llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+5,516-0llvm/test/CodeGen/RISCV/rvv/fixed-vectors-clmulh.ll
+29,719-24,5295,268 files not shown
+170,329-152,2695,274 files

LLVM/project 9f76105llvm/include/llvm/CodeGen/GlobalISel LegalizerHelper.h, llvm/lib/CodeGen/GlobalISel LegalizerHelper.cpp

AMDGPU/GlobalISel: Lower bf16 G_FPTRUNC from f32 and f64 (#212302)

Port the SDAG bf16 fptrunc lowering to GlobalISel.
DeltaFile
+545-268llvm/test/CodeGen/AMDGPU/itofp.i128.bf.ll
+559-0llvm/test/CodeGen/AMDGPU/GlobalISel/fptrunc.bf16.ll
+90-42llvm/test/CodeGen/AMDGPU/fmed3-cast-combine.ll
+62-0llvm/lib/CodeGen/GlobalISel/LegalizerHelper.cpp
+5-4llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+2-0llvm/include/llvm/CodeGen/GlobalISel/LegalizerHelper.h
+1,263-3146 files

LLVM/project de737fcllvm/lib/Transforms/Vectorize VPlanTransforms.cpp VPRecipeBuilder.h

Drop `isConsecutiveWithoutVPlanBasedStrideSpeculation`

Not necessary after all unit-strided memops are widened on VPlan prior
to this pass.
DeltaFile
+0-10llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+0-2llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+0-2llvm/lib/Transforms/Vectorize/VPRecipeBuilder.h
+0-143 files

LLVM/project efe202clibc/src/__support/CPP new.h new.cpp

[libc][CPP] Fix ASan alloc-dealloc-mismatch in custom operator delete (#212629)

Bypass custom operator delete redirection in new.h and new.cpp when
building with AddressSanitizer (LIBC_HAS_ADDRESS_SANITIZER).

cpp::unique_ptr is the first heap-owning utility in src/__support/CPP/
that executes delete/delete[] expressions. Previously, new.h redirected
operator delete via asm-renaming to __llvm_libc_delete (calling free()),
which caused ASan to report an alloc-dealloc-mismatch (operator new vs
free) when objects allocated via host operator new were deleted by
cpp::unique_ptr.

Guarding the custom operator delete implementations under ASan enables
ASan deallocation tracking while preserving hermetic libc behavior for
non-ASan builds.

Assisted-by: Automated tooling, human reviewed.
DeltaFile
+5-0libc/src/__support/CPP/new.cpp
+3-1libc/src/__support/CPP/new.h
+8-12 files

LLVM/project e0a9709llvm/lib/Frontend/Offloading Utility.cpp, llvm/test/tools/llvm-offload-wrapper offload-wrapper.ll

[LinkerWrapper] Retain the offloading entries section under --gc-sections (#212614)

Summary:
These sections are generated for 'relocatable' linking. Under
`--gc-sections` this could be stripped and then fail following links. We
sould mark it as used to ensure that these sections are retained.
DeltaFile
+8-4llvm/test/tools/llvm-offload-wrapper/offload-wrapper.ll
+4-3llvm/lib/Frontend/Offloading/Utility.cpp
+12-72 files

LLVM/project b4cb07b.github/workflows release-sources.yml

workflows/release-sources: Pass release-version to upload-release-artifacts

This was omitted from a8ccd42ab23af6848929a638cd6b099953c7e491.
DeltaFile
+1-0.github/workflows/release-sources.yml
+1-01 files

LLVM/project 8042782libcxx/test/libcxx/atomics builtin_clear_padding.pass.cpp clear_padding.pass.cpp, llvm/test/CodeGen/AMDGPU packed-fp32.ll

Merge remote-tracking branch 'origin/main' into vplan-based-stride-mv-rt-guard
DeltaFile
+5,516-0llvm/test/CodeGen/RISCV/rvv/fixed-vectors-clmulh.ll
+540-740llvm/test/Transforms/LoopUnroll/RISCV/vector.ll
+938-0libcxx/test/libcxx/atomics/clear_padding.pass.cpp
+0-919libcxx/test/libcxx/atomics/builtin_clear_padding.pass.cpp
+65-562llvm/test/Transforms/LoopVectorize/VPlan/vplan-based-stride-mv.ll
+296-99llvm/test/CodeGen/AMDGPU/packed-fp32.ll
+7,355-2,320892 files not shown
+28,151-8,481898 files

LLVM/project b432476clang/lib/Driver/ToolChains Cuda.cpp, clang/test/Driver cuda-cross-compiling.c

[NVPTX] Fix typo 'pxtas-path' -> 'ptxas-path' in tool invocation (#212599)
DeltaFile
+5-0clang/test/Driver/cuda-cross-compiling.c
+1-1clang/lib/Driver/ToolChains/Cuda.cpp
+6-12 files

LLVM/project dc7e9df.github/workflows release-sources.yml

workflows/release-sources: Make sure to checkout all the composite actions (#212544)
DeltaFile
+1-1.github/workflows/release-sources.yml
+1-11 files

LLVM/project 0eee613llvm/test/Transforms/SLPVectorizer/X86 reassociate-ops.ll

[SLP][NFC]Add extra test for operand reassociation, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/212631
DeltaFile
+123-5llvm/test/Transforms/SLPVectorizer/X86/reassociate-ops.ll
+123-51 files

LLVM/project 4cce6bbclang/test/OffloadTools/clang-offload-bundler basic.c

test
DeltaFile
+11-0clang/test/OffloadTools/clang-offload-bundler/basic.c
+11-01 files

LLVM/project 32b551dclang/lib/Basic/Targets AMDGPU.cpp, clang/lib/Driver OffloadBundler.cpp

Fixes and merge
DeltaFile
+8-4clang/lib/Basic/Targets/AMDGPU.cpp
+4-3clang/lib/Driver/OffloadBundler.cpp
+12-72 files

LLVM/project 4395c80clang/include/clang/Basic TargetID.h, clang/lib/Basic TargetID.cpp

Fix offload bundler usage of getConflictTargetIDCombination
DeltaFile
+14-9clang/tools/clang-offload-bundler/ClangOffloadBundler.cpp
+11-9clang/include/clang/Basic/TargetID.h
+12-2clang/lib/Driver/OffloadBundler.cpp
+9-4clang/lib/Driver/Driver.cpp
+2-3clang/lib/Basic/TargetID.cpp
+48-275 files

LLVM/project 56b053eclang/include/clang/Basic TargetID.h, clang/lib/Basic TargetID.cpp

clang: Use TargetID parsing from AMDGPUTargetParser

We had grown 2 parallel parsing implementations for
triple+gpu name+feature flag target ID strings. Mostly
eliminate the redundant clang version.

Co-authored-by: Claude (Opus 4.8)
DeltaFile
+30-165clang/lib/Basic/TargetID.cpp
+48-50clang/lib/Driver/ToolChains/AMDGPU.cpp
+27-41clang/lib/Driver/OffloadBundler.cpp
+7-33clang/include/clang/Basic/TargetID.h
+18-14clang/lib/Basic/Targets/AMDGPU.h
+17-14clang/lib/Basic/Targets/AMDGPU.cpp
+147-3175 files not shown
+172-34111 files

LLVM/project 575898blldb/source/Plugins/ObjectFile/Minidump MinidumpFileBuilder.cpp, lldb/test/API/functionalities/process_save_core_minidump_size_of_image Makefile testlib.c

[lldb][Minidump] Fix wrong variable in getModuleFileSize loop (#188363)

Use next_sect_sp instead of sect_sp when getting the byte size inside
the section-walking loop. Using the original sect_sp meant sect_size
never changed between iterations, producing an incorrect SizeOfImage and
risking an infinite loop when sections have different sizes.
DeltaFile
+155-0lldb/test/API/functionalities/process_save_core_minidump_size_of_image/TestMinidumpSizeOfImage.py
+27-0lldb/test/API/functionalities/process_save_core_minidump_size_of_image/main.c
+9-0lldb/test/API/functionalities/process_save_core_minidump_size_of_image/testlib.c
+4-0lldb/test/API/functionalities/process_save_core_minidump_size_of_image/Makefile
+1-1lldb/source/Plugins/ObjectFile/Minidump/MinidumpFileBuilder.cpp
+196-15 files

LLVM/project d8fb9eamlir/include/mlir/Dialect/OpenACC/Transforms Passes.td, mlir/lib/Dialect/OpenACC/Transforms CMakeLists.txt ACCEmitRemarksData.cpp

[mlir][acc] Add pass to emit remarks for openacc data mapping (#212623)

This pass emits MLIR remarks for all OpenACC data mapping actions.
Intended to be used when all the data actions are committed (typically
right before codegen to call runtime).
DeltaFile
+323-0mlir/test/Dialect/OpenACC/acc-emit-remarks-data.mlir
+267-0mlir/lib/Dialect/OpenACC/Transforms/ACCEmitRemarksData.cpp
+8-0mlir/include/mlir/Dialect/OpenACC/Transforms/Passes.td
+1-0mlir/lib/Dialect/OpenACC/Transforms/CMakeLists.txt
+599-04 files

LLVM/project fff2241llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/TargetParser AMDGPUTargetParser.cpp Triple.cpp

AMDGPU: TableGen the subarch triple name table

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+87-20llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+2-45llvm/lib/TargetParser/Triple.cpp
+23-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+17-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+4-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+133-655 files

LLVM/project 01faf0allvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Eliminate old macro driven processor name parsing

Previously the generated inc file had a series of macros for use
with StringSwitch; now just directly scan the generated name table.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+167-106llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+72-43llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+2-2llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+241-1513 files

LLVM/project b161c1cllvm/lib/Target/AMDGPU SIISelLowering.cpp AMDGPUInstructionSelector.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.ballot.i32.wave64.err.ll

Revert "[AMDGPU] Fix llvm.amdgcn.ballot with return width != wavefront size (…"

This reverts commit 85305ba2b67ea806e1e04b61dcc8743b19f51fc8.
DeltaFile
+0-15llvm/test/CodeGen/AMDGPU/llvm.amdgcn.ballot.i32.wave64.err.ll
+2-9llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
+0-9llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+2-333 files

LLVM/project 8adefe8clang/lib/Tooling/Inclusions HeaderIncludes.cpp

[include-cleaner] Cleanup Headers and Warnings (#212570)

Add missing headers and get rid of warning about param name mismatch.
DeltaFile
+21-4clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
+21-41 files

LLVM/project 9b9dc9dclang/lib/Tooling/Inclusions HeaderIncludes.cpp, clang/unittests/Tooling HeaderIncludesTest.cpp

[include-cleaner]Support #import directives in HeaderIncludes (#212582)

This change updates HeaderIncludes to recognize #import directives in
addition to #include when parsing existing headers. It also fixes up an
existing issue parsing include/import statements that may have contained
tabs.
DeltaFile
+41-0clang/unittests/Tooling/HeaderIncludesTest.cpp
+5-3clang/lib/Tooling/Inclusions/HeaderIncludes.cpp
+46-32 files

LLVM/project 74a90e2clang-tools-extra/include-cleaner/lib LocateSymbol.cpp, clang-tools-extra/include-cleaner/unittests LocateSymbolTest.cpp

[include-cleaner] Support ObjC interface and protocol declarations in LocateSymbol (#212617)

Treats forward declarations of Objective-C interfaces
(ObjCInterfaceDecl) and protocols (ObjCProtocolDecl) as incomplete,
allowing the symbol locator to prefer their definitions.

Also updates the unit tests to support Objective-C and adds test cases
for these declarations.

Also update the unit tests for forward declarations of enums and enum
classes.
DeltaFile
+10-2clang-tools-extra/include-cleaner/lib/LocateSymbol.cpp
+11-1clang-tools-extra/include-cleaner/unittests/LocateSymbolTest.cpp
+21-32 files

LLVM/project 7ffb471llvm/include/llvm/TargetParser AMDGPUTargetParser.h, llvm/lib/TargetParser AMDGPUTargetParser.cpp Triple.cpp

AMDGPU: TableGen the subarch triple name table

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+91-20llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+2-45llvm/lib/TargetParser/Triple.cpp
+24-0llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+17-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+4-0llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+138-655 files

LLVM/project 4af90c7bolt/include/bolt/Utils NameResolver.h, bolt/lib/Rewrite RewriteInstance.cpp

[BOLT] Reduce NameResolver memory usage during file object discovery

Summary:
NameResolver used a StringMap<uint64_t> to count duplicate names. StringMap
owns its keys, so every uniquify()/getUniquifiedNameCount() query allocated a
full copy of each (potentially large, mangled) symbol name. During
discoverFileObjects on a large binary, this string-key duplication accounted
for ~2 GB (1 to 2% of RSS) of allocations in
StringMap::try_emplace_with_hash -> StringMapEntry::create -> allocateWithKey.

Replace the StringMap with a DenseMap<pair<uint64_t,uint64_t>, uint64_t> keyed
by a 128-bit xxh3 hash of the name. No string is ever stored: each distinct
name costs a fixed-size entry regardless of length. A 128-bit hash makes
collisions effectively impossible, so the per-name counts (and therefore the
generated 'Name/ID' unique names) are identical to the string-keyed map and
remain reproducible to match profile (fdata) names.

Also clear the map at the end of discoverFileObjects, since the resolver is not
needed afterwards; all NR.uniquify()/getUniquifiedNameCount() calls occur

    [2 lines not shown]
DeltaFile
+24-7bolt/include/bolt/Utils/NameResolver.h
+4-0bolt/lib/Rewrite/RewriteInstance.cpp
+28-72 files

LLVM/project c7c4ece

[VPlan] Prepare replaceSymbolicStrides to handle plain CFG (NFC). (#212609)

Update replaceSymbolicStrides to use general getPlainCFGHeaderAndLatch
helper to make it more robust w.r.t. to pipeline changes.

Also tighten check for phis to skip replacement if loop executes
unconditionally.
DeltaFile
+0-00 files

LLVM/project 1cfa929llvm/lib/Transforms/Vectorize VPlanUtils.cpp VPlanTransforms.cpp

[VPlan] Prepare replaceSymbolicStrides to handle plain CFG (NFC). (#212609)

Update replaceSymbolicStrides to use general getPlainCFGHeaderAndLatch
helper to make it more robust w.r.t. to pipeline changes.

Also tighten check for phis to skip replacement if loop executes
unconditionally.
DeltaFile
+9-5llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+6-2llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
+15-72 files

LLVM/project 8dc4bb7flang/lib/Lower/OpenMP OpenMP.cpp, flang/lib/Semantics check-omp-structure.cpp

[Flang][OpenMP] Fix interop-var handling and diagnostics (#203959) (#211693)

This change builds on top of the work done in PR #203959
- Diagnose interop destroy without an interop variable
- Lower array-element / derived-component interop-vars via their
designator
- Require interop-var to be a scalar integer of omp_interop_kind
- Remove "hsa" prefer_type (no omp_ifr_hsa in the runtime)
- Fix a latent bug in Parser/OpenMP/interop-construct.f90
DeltaFile
+160-0flang/test/Semantics/OpenMP/interop-construct.f90
+99-25flang/lib/Semantics/check-omp-structure.cpp
+27-0flang/test/Lower/OpenMP/interop.f90
+11-6flang/test/Parser/OpenMP/interop-construct.f90
+10-2flang/lib/Lower/OpenMP/OpenMP.cpp
+1-0flang/test/Semantics/OpenMP/init-clause.f90
+308-336 files