LLVM/project 9953fd8flang/lib/Semantics resolve-directives.cpp

[flang][OpenMP] Use common utility functions to get affected nest depth

Remove the existing code that calculates the number of affected loops in
an OpenMP construct. There is a single function that does that and that
handles all directives and clauses.

Issue: https://github.com/llvm/llvm-project/issues/191249
DeltaFile
+9-129flang/lib/Semantics/resolve-directives.cpp
+9-1291 files

LLVM/project 8926b3clldb/source/Plugins/Process/FreeBSD-Kernel-Core ProcessFreeBSDKernelCore.cpp

[LLDB][ProcessFreeBSDKernelCore] Log error when creating kernel image (#191397)
DeltaFile
+3-1lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
+3-11 files

LLVM/project b35941ellvm/test/CodeGen/AMDGPU llvm.amdgcn.dead.ll fptrunc.ll

[AMDGPU] Change *-DAG to *-SDAG in check prefixes (#191411)

In some cases the use of *-DAG seemed to confuse the update scripts
because of the clash with FileCheck's built-in -DAG suffix.
DeltaFile
+139-139llvm/test/CodeGen/AMDGPU/llvm.amdgcn.dead.ll
+24-24llvm/test/CodeGen/AMDGPU/fptrunc.ll
+163-1632 files

LLVM/project 43d6e38compiler-rt/lib/interception interception_linux.cpp interception_win.cpp, compiler-rt/lib/interception/tests interception_linux_test.cpp

[compiler-rt] Expose shared DSO helpers for compiler-rt runtimes (#191098)

The motivation of this PR is to refactor and expose DSO helper functions
so
they can be used by all compiler-rt libraries, including the profile
library,
without duplicating dlopen/dlsym (non-Windows) or
LoadLibrary/GetProcAddress
(Windows) logic in each runtime.

Implement the helpers in namespace __interception in
interception_linux.cpp for
non-Windows targets and interception_win.cpp for Windows, and use them
from the
existing Linux interception path for RTLD_NEXT/RTLD_DEFAULT/dlvsym
lookups.

This is NFC for existing libraries that already use interception's
public APIs;
sanitizer and interception lit behavior is unchanged.
DeltaFile
+54-5compiler-rt/lib/interception/interception_linux.cpp
+24-0compiler-rt/lib/interception/interception_win.cpp
+11-0compiler-rt/lib/interception/tests/interception_linux_test.cpp
+10-0compiler-rt/lib/interception/interception.h
+99-54 files

LLVM/project b8ac638flang/include/flang/Semantics openmp-utils.h, flang/lib/Semantics openmp-utils.cpp

[flang][OpenMP] Add optional SemanticsContext parameter to loop utili… (#191231)

…ties

Some of the utilities may be used in symbol resolution which is before
the expression analysis is done. In such situations, the typedExpr's
normally stored in parser::Expr may not be available. To be able to
obtain the numeric values of expressions, using the analyzer directly
may be necessary, which requires SemanticsContext to be provided.
DeltaFile
+49-28flang/lib/Semantics/openmp-utils.cpp
+28-11flang/include/flang/Semantics/openmp-utils.h
+77-392 files

LLVM/project e709e62llvm/tools/llvm-readobj ELFDumper.cpp

fixup! [llvm-readobj, ELF] Support reading binary with more than PN_XNUM segments.
DeltaFile
+3-3llvm/tools/llvm-readobj/ELFDumper.cpp
+3-31 files

LLVM/project cc91188lldb/source/Plugins/Process/FreeBSD-Kernel-Core ProcessFreeBSDKernelCore.cpp

[lldb][Process/FreeBSDKernelCore] Fix thread ordering (#187976)

In #178306, I made an incorrect assumption that traversing `allproc` in
reverse direction would give incremental pid order based on the fact
that new processes are added at the head of allproc. However, this
assumption is false under certain circumstance such as reusing pid
number, thus failing to sort threads correctly. Without using any
assumption, explicitly sort threads based on pid retrieved from memory.

Fixes: 5349c664fabd49f88c87e31bb3774f40bf938691 (#178306)

---------

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
DeltaFile
+23-17lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
+23-171 files

LLVM/project 6d2d804libc/docs/gpu building.rst

[libc][docs][NFC] Rework GPU building documentation (#191381)

Reworked libc/docs/gpu/building.rst to match the style of
getting_started.rst:

* Removed mkdir and cd commands.
* Used -S and -B flags for CMake.
* Used -C flag for Ninja.
* Split commands into smaller blocks with brief explanations.

Use the same terminology as elsewhere in the LLVM libc docs and move
away from the deprecated runtime terms.

* Standard runtimes build -> Bootstrap Build
* Runtimes cross build -> Two-stage Cross-compiler Build
DeltaFile
+72-54libc/docs/gpu/building.rst
+72-541 files

LLVM/project 7074258llvm/docs/CommandGuide llvm-dwarfdump.rst, llvm/test/tools/llvm-dwarfdump/X86 coverage.test

[llvm-dwarfdump][LineCov 2/3] Add coverage baseline comparison and line table coverage in isolation (#183790)

Patch 2 of 3 to add to llvm-dwarfdump the ability to measure DWARF
coverage of local variables in terms of source lines, as discussed in
[this
RFC](https://discourse.llvm.org/t/rfc-debug-info-coverage-tool-v2/83266).

This patch adds the ability to compare a variable’s coverage against a
baseline, e.g. an unoptimised compilation of the same code. This is
provided using the optional `--coverage-baseline` argument.

When a baseline is provided, the output also includes a per-variable
measure of the line table’s coverage (`LT`, `LTRatio`), distinct from
the variable’s coverage proper. See section 2.2 of the RFC for details
on this metric.
DeltaFile
+212-42llvm/tools/llvm-dwarfdump/Coverage.cpp
+24-3llvm/tools/llvm-dwarfdump/llvm-dwarfdump.cpp
+18-1llvm/docs/CommandGuide/llvm-dwarfdump.rst
+12-0llvm/test/tools/llvm-dwarfdump/X86/coverage.test
+3-1llvm/tools/llvm-dwarfdump/llvm-dwarfdump.h
+269-475 files

LLVM/project 5be7083flang/lib/Semantics openmp-utils.cpp

Spell out types in declarations
DeltaFile
+6-3flang/lib/Semantics/openmp-utils.cpp
+6-31 files

LLVM/project dfbae3elibcxx/docs/Status Cxx2cIssues.csv Cxx20Issues.csv, libcxx/utils conformance

[libc++] Fix incorrect links and broken formatting in CSV status files (#191289)

Also, update the conformance script to look for closed issues when
searching for unlinked issues.
DeltaFile
+5-5libcxx/docs/Status/Cxx2cIssues.csv
+1-1libcxx/utils/conformance
+1-1libcxx/docs/Status/Cxx20Issues.csv
+7-73 files

LLVM/project 4367701flang/docs OpenMP-extensions.md OpenMPSupport.md

[Flang][Docs][NFC] Move OpenMP API extensions to separate document (#186981)

This PR follows suit of the Extensions.md document and provides the same
file for OpenMP API extensions. These have previously been stored in
OpenMPSupport.md. Having a more centralized view and place for these
extensions seems useful.

---------

Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot at users.noreply.github.com>
DeltaFile
+42-0flang/docs/OpenMP-extensions.md
+0-12flang/docs/OpenMPSupport.md
+1-0flang/docs/index.md
+43-123 files

LLVM/project e0ac76alldb/source/Plugins/Process/FreeBSD-Kernel-Core ProcessFreeBSDKernelCore.cpp

[lldb][Process/FreeBSDKernelCore] Switch to LLDBLog::Process (#191408)

Failure to read all required fields for msgbuf isn't ObjectFile's fault
but FreeBSD-Kernel-Core plugin specific. Thus this should be logged
through `LLDBLog::Process` rather than `LLDBLog::Object`.

Signed-off-by: Minsoo Choo <minsoochoo0122 at proton.me>
DeltaFile
+1-1lldb/source/Plugins/Process/FreeBSD-Kernel-Core/ProcessFreeBSDKernelCore.cpp
+1-11 files

LLVM/project 4cd2db4llvm/test/Transforms/LoopVectorize diag-with-hotness-info-2.ll diag-with-hotness-info.ll, llvm/test/Transforms/LoopVectorize/Hexagon minimum-vf.ll

[LV][NFC] Remove llvm.ident, tbaa and other attributes from tests (#191375)

While in this area I also removed unnecessary annotations for wchar_size
and also cleaned up some more function attributes.
DeltaFile
+117-132llvm/test/Transforms/LoopVectorize/X86/strided_load_cost.ll
+21-35llvm/test/Transforms/LoopVectorize/Hexagon/minimum-vf.ll
+18-23llvm/test/Transforms/LoopVectorize/diag-with-hotness-info-2.ll
+18-23llvm/test/Transforms/LoopVectorize/diag-with-hotness-info.ll
+8-24llvm/test/Transforms/LoopVectorize/X86/cost-model-assert.ll
+10-19llvm/test/Transforms/LoopVectorize/X86/tail_folding_and_assume_safety.ll
+192-25622 files not shown
+244-43228 files

LLVM/project 200505aflang/test/Integration/OpenMP map-types-and-sizes.f90, mlir/lib/Target/LLVMIR/Dialect/OpenMP OpenMPToLLVMIRTranslation.cpp

[OpenMP][MLIR] Modify lowering OpenMP Dialect lowering to support attach mapping

This PR adjusts the LLVM-IR lowering to support the new attach map type that the runtime
uses to link data and pointer together, this swaps the mapping from the older
OMP_MAP_PTR_AND_OBJ map type in most cases and allows slightly more complicated ref_ptr/ptee
and attach semantics.
DeltaFile
+360-240mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+273-0mlir/test/Target/LLVMIR/omptarget-host-ref-semantics.mlir
+116-123flang/test/Integration/OpenMP/map-types-and-sizes.f90
+27-58mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
+70-0offload/test/offloading/fortran/map_attach_always.f90
+55-0offload/test/offloading/fortran/map_attach_never.f90
+901-42113 files not shown
+1,054-50619 files

LLVM/project a72f7fclibc/docs full_host_build.rst, libc/include CMakeLists.txt

[libc] Add generate-libc-headers custom target (#191160)

Added the generate-libc-headers custom target depending on libc-headers.

This allows troubleshooting headers without needing to install them
first.
DeltaFile
+6-0libc/docs/full_host_build.rst
+2-1libc/include/CMakeLists.txt
+8-12 files

LLVM/project e267605flang/lib/Semantics resolve-directives.cpp

[flang][OpenMP] Move check for threadprivate iteration variable (#191208)

This moves the test of whether the iteration variable of an affected DO
loop is marked as threadprivate. This makes the `ordCollapseLevel`
member unnecessary.

Issue: https://github.com/llvm/llvm-project/issues/191249
DeltaFile
+11-19flang/lib/Semantics/resolve-directives.cpp
+11-191 files

LLVM/project d0af73aflang/lib/Lower/OpenMP Utils.cpp, flang/lib/Optimizer/OpenMP MapInfoFinalization.cpp

[Flang][OpenMP][Offload] Modify MapInfoFinalization to handle attach mapping and 6.1's ref_* and attach map keywords

This PR is one of four required to implement the attach mapping semantics in Flang, alongside the
ref_ptr/ref_ptee/ref_ptr_ptee map modifiers and the attach(always/never/auto) modifiers.

This PR is the MapInfoFinalization changes required to support these features, it mainly deals with
applying the correct attach map type and manipulating the descriptor types maps for base address
and descriptor so that when we specify ref_ptr/ref_ptee we emit one of the two maps and when we
emit ref_ptr_ptee we emit our usual default maps. In all cases we add the "glue" of an new
attach map except in cases where a user has provided attach never. In cases where we are
provided an always, we apply the always map type to our attach maps.

It's important to note the runtime has a toggle for the auto map behaviour, which will flip the
attach behaviour to the newer semantics or the older semantics for backwards compatability (outside
the purview of this PR but good to mention).
DeltaFile
+552-268flang/lib/Optimizer/OpenMP/MapInfoFinalization.cpp
+43-44flang/test/Lower/OpenMP/use-device-ptr-to-use-device-addr.f90
+19-19flang/test/Lower/OpenMP/optional-argument-map-2.f90
+22-11flang/test/Transforms/omp-map-info-finalization.fir
+18-12flang/test/Lower/OpenMP/derived-type-allocatable-map.f90
+16-7flang/lib/Lower/OpenMP/Utils.cpp
+670-36113 files not shown
+742-40219 files

LLVM/project 9791929llvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp, llvm/test/CodeGen/AMDGPU naked-fn-with-frame-pointer.ll

[AMDGPU] Do not emit function prologue on naked functions (#191398)

Summary:
Naked functions are intended to allow the user to write the entirety of
the function block, so we shouldn't include the `waitcnt` instructions
for them.
DeltaFile
+2-1llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+0-1llvm/test/CodeGen/AMDGPU/naked-fn-with-frame-pointer.ll
+2-22 files

LLVM/project fb0b737llvm/lib/Target/SystemZ SystemZTargetTransformInfo.cpp, llvm/test/Analysis/CostModel/SystemZ fold-rmw-cost.ll

[SystemZTTI][CostModel] Improve SystemZ cost model for scalar Read-Modify-Write Sequence, Fix #189183 (#190350)

This patch improves the SystemZ cost model to identify Read-Modify-Write
sequences
 that can be folded into a single instruction (e.g., ASI, NI, OI).
If a load, a scalar arithmetic operation (ADD, SUB, AND, OR, XOR) with
an
 immediate, and a store all target the same memory location and have no
 external uses, the cost of the arithmetic and store insn should bw 0.
This implementation does not include TTI::TCK_RecipThroughput CostKind,
as
 it causes regression in non-power-2-subvector-extract.ll.

Fixes #189183. (Refer it for example)

---------

Co-authored-by: anoopkg6 <anoopkg6 at github.com>
DeltaFile
+147-0llvm/test/Analysis/CostModel/SystemZ/fold-rmw-cost.ll
+48-1llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp
+195-12 files

LLVM/project 8b37260llvm/unittests/ADT SmallVectorTest.cpp

[UnitTest][ADT] Add iterator operator== (#191396)

Apparently required by some older libstdc++ versions.
DeltaFile
+4-1llvm/unittests/ADT/SmallVectorTest.cpp
+4-11 files

LLVM/project c21f9fcflang/test/Integration/OpenMP map-types-and-sizes.f90, mlir/lib/Target/LLVMIR/Dialect/OpenMP OpenMPToLLVMIRTranslation.cpp

[OpenMP][MLIR] Modify lowering OpenMP Dialect lowering to support attach mapping

This PR adjusts the LLVM-IR lowering to support the new attach map type that the runtime
uses to link data and pointer together, this swaps the mapping from the older
OMP_MAP_PTR_AND_OBJ map type in most cases and allows slightly more complicated ref_ptr/ptee
and attach semantics.
DeltaFile
+359-240mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+273-0mlir/test/Target/LLVMIR/omptarget-host-ref-semantics.mlir
+116-123flang/test/Integration/OpenMP/map-types-and-sizes.f90
+27-58mlir/test/Target/LLVMIR/omptarget-record-type-with-ptr-member-host.mlir
+70-0offload/test/offloading/fortran/map_attach_always.f90
+55-0offload/test/offloading/fortran/map_attach_never.f90
+900-42113 files not shown
+1,053-50619 files

LLVM/project 3263854mlir/include/mlir/Dialect/Tosa/IR TosaOps.td TosaComplianceData.h.inc, mlir/lib/Dialect/Tosa/IR TosaOps.cpp

[mlir][tosa] Add TOSA Max Pool 2D Adaptive (#191225)

Implements:
- Operator definition
- Operator verifier
- Validation
- Tests
- Adds NoMemoryEffect to AvgPool2dAdaptive

Signed-off-by: Iliyan Georgiev <Iliyan.Georgiev at arm.com>
DeltaFile
+116-0mlir/test/Dialect/Tosa/level_check.mlir
+53-3mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
+47-0mlir/test/Dialect/Tosa/ops.mlir
+37-1mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
+24-0mlir/test/Dialect/Tosa/verifier.mlir
+13-0mlir/include/mlir/Dialect/Tosa/IR/TosaComplianceData.h.inc
+290-44 files not shown
+324-710 files

LLVM/project 49ee3f3libsycl/src/detail program_manager.cpp

fix format

Signed-off-by: Tikhomirova, Kseniya <kseniya.tikhomirova at intel.com>
DeltaFile
+8-8libsycl/src/detail/program_manager.cpp
+8-81 files

LLVM/project 7b05d9dllvm/lib/Target/AMDGPU AMDGPUCodeGenPrepare.cpp, llvm/test/CodeGen/AMDGPU fract-match.ll

AMDGPU: Match fract from compare and select and minimum (#189082)

Implementing this with any of the minnum variants is overconstraining
for the actual use. Existing patterns use fmin, then have to manually
clamp nan inputs to get nan propagating behavior. It's cleaner to
express this with a nan propagating operation to start with.
DeltaFile
+197-264llvm/test/CodeGen/AMDGPU/fract-match.ll
+124-85llvm/lib/Target/AMDGPU/AMDGPUCodeGenPrepare.cpp
+321-3492 files

LLVM/project 1c4e978llvm/lib/Transforms/Vectorize VPlanTransforms.cpp

Address review comments
DeltaFile
+4-6llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+4-61 files

LLVM/project 8f341ccclang-tools-extra/clang-tidy/readability IdentifierNamingCheck.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Fix readability-identifier-naming FP with DefaultCase on function templates (#189788)

Closes #189755

---------

Co-authored-by: EugeneZelenko <eugene.zelenko at gmail.com>
Co-authored-by: Daniil Dudkin <unterumarmung at yandex.ru>
DeltaFile
+61-0clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-template-method-default.cpp
+6-2clang-tools-extra/docs/ReleaseNotes.rst
+7-0clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+74-23 files

LLVM/project 81ed875llvm/cmake/modules AddLLVM.cmake, llvm/unittests/Support raw_sha1_ostream_test.cpp

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+1-14llvm/unittests/Support/raw_sha1_ostream_test.cpp
+1-1llvm/cmake/modules/AddLLVM.cmake
+2-152 files

LLVM/project 524525eclang/lib/Driver/ToolChains Clang.cpp, clang/test/Driver openmp-offload-gpu.c

[Clang] Pass toolchain paths unconditionally in linker wrapper (#191311)

Summary:
Previously we used the auto-forwarding mechanism to handle options like
forwarding --cuda-path. The problem is that this went over the toolchain
options and that meant if someone used just bare `--offload-link` there
would be no CUDA or ROCm toolchain to figure out if we should forward
it. Just do this unconditionally for all toolchains, there's no harm in
setting it if it's unused.

Fixes: https://github.com/llvm/llvm-project/issues/190979
DeltaFile
+8-3clang/lib/Driver/ToolChains/Clang.cpp
+9-0clang/test/Driver/openmp-offload-gpu.c
+17-32 files

LLVM/project 701f5bcllvm/unittests/ADT SmallVectorTest.cpp

[spr] initial version

Created using spr 1.3.8-wip
DeltaFile
+4-1llvm/unittests/ADT/SmallVectorTest.cpp
+4-11 files