LLVM/project 954d25fflang/lib/Lower/OpenMP OpenMP.cpp, mlir/lib/Dialect/OpenMP/IR OpenMPDialect.cpp

[flang][OpenMP] Lower target in_reduction

Enable host lowering for target in_reduction in Flang and MLIR OpenMP
translation.

Model target in_reduction through the matching map entry, force
address-preserving implicit mapping for Flang in_reduction list items, and emit
the host-side task-reduction lookup with __kmpc_task_reduction_get_th_data. The
runtime entry point takes and returns a generic, default-address-space pointer,
so normalize a non-default-address-space captured pointer to the generic address
space before the call and cast the returned private pointer back to the map
block argument's address space, mirroring the in_reduction handling on
omp.taskloop. On the target device, in_reduction is handled as a regular
map(tofrom) variable. The byref modifier, two-argument initializers, cleanup
regions, and the remaining Flang COMMON/EQUIVALENCE/privatized-variable cases
continue to be diagnosed.

Add Flang lowering, MLIR verifier/translation, and LLVM IR tests for the
supported host path, including a non-default-address-space case, and the
remaining unsupported cases.
DeltaFile
+128-21mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
+124-14mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+107-0mlir/test/Target/LLVMIR/openmp-target-in-reduction.mlir
+88-15flang/lib/Lower/OpenMP/OpenMP.cpp
+88-3mlir/test/Target/LLVMIR/openmp-todo.mlir
+85-0mlir/test/Dialect/OpenMP/invalid.mlir
+620-5314 files not shown
+1,029-7920 files

LLVM/project c8280c8libunwind/test aix_vapi_unw_resume.pass.cpp

Reapply "Update test to split CHECK lines between debug and non-debug"

This reverts commit f0f4dafe821b76676c3a969ea10bba5ba3782631.
DeltaFile
+14-12libunwind/test/aix_vapi_unw_resume.pass.cpp
+14-121 files

LLVM/project f0f4daflibunwind/test aix_vapi_unw_resume.pass.cpp

Revert "Update test to split CHECK lines between debug and non-debug"

This reverts commit 7bb5fc12c1a94ed959a1d40e441ee43a45ccfc31.
DeltaFile
+12-14libunwind/test/aix_vapi_unw_resume.pass.cpp
+12-141 files

LLVM/project 33d833clibunwind/test aix_vapi_signal_unwind.pass.cpp

clang-format
DeltaFile
+9-6libunwind/test/aix_vapi_signal_unwind.pass.cpp
+9-61 files

LLVM/project d39d71blibunwind/test aix_vapi_signal_unwind.pass.cpp

Use DEBUG-DAG to allow for synthetic trace ordering difference
DeltaFile
+24-20libunwind/test/aix_vapi_signal_unwind.pass.cpp
+24-201 files

LLVM/project 8fb0bd8libunwind/test aix_vapi_signal_unwind.pass.cpp

IBM Bob: Add synthetic trace output when LLU is not enabled
DeltaFile
+21-0libunwind/test/aix_vapi_signal_unwind.pass.cpp
+21-01 files

LLVM/project 9fb7168libunwind/test aix_vapi_signal_unwind.pass.cpp

Add DEBUG check lines for unw_step calls
DeltaFile
+4-0libunwind/test/aix_vapi_signal_unwind.pass.cpp
+4-01 files

LLVM/project a251105libunwind/test aix_vapi_signal_unwind.pass.cpp

WIP: IBM Bob: Add API calls; enable tracing, add DEBUG-LABEL checks
DeltaFile
+26-6libunwind/test/aix_vapi_signal_unwind.pass.cpp
+26-61 files

LLVM/project a3dbb34libunwind/test aix_vapi_signal_unwind.pass.cpp

Fixup! IBM Bob: Account for `trapper` frame and C++ name mangling
DeltaFile
+5-2libunwind/test/aix_vapi_signal_unwind.pass.cpp
+5-21 files

LLVM/project 9c59e1blibunwind/test aix_vapi_signal_unwind.pass.cpp

WIP: Skeleton for libunwind C API test for signal handler that is a Virtual API
DeltaFile
+52-0libunwind/test/aix_vapi_signal_unwind.pass.cpp
+52-01 files

LLVM/project 2033c45llvm/include/llvm/ProfileData SampleProfReader.h, llvm/lib/ProfileData SampleProfReader.cpp

[SampleProfile] Remove ProfileHasAttribute parameter from readFuncMetadata (NFC) (#208604)

This patch removes the ProfileHasAttribute parameter from
readFuncMetadata overloads.

Because ProfileHasAttribute is set once in readImpl during section
header parsing and never modified afterward, readFuncMetadata observes
the exact same immutable value regardless of whether it is passed as a
function parameter or read from the class member variable.

Assisted-by: Antigravity
DeltaFile
+8-12llvm/lib/ProfileData/SampleProfReader.cpp
+3-5llvm/include/llvm/ProfileData/SampleProfReader.h
+11-172 files

LLVM/project f6a359fllvm/lib/CodeGen ReplaceWithVeclib.cpp, llvm/test/CodeGen/X86 sincos-fpmath.ll veclib-llvm.sincos.ll

[CodeGen] Teach ReplaceWithVeclib split vector llvm.sincos when only sin/cos veclib mappings exist (#194639)

Some vector math libraries provide vector sin and vector cos but no
vector sincos or no sincos with an ABI that LLVM can emit.

The one of the common case is glibc libmvec on x86: it exposes
`_ZGV{b,c,d,e}N{2,4,8,16}vvv_sincos{,f}` symbols, but those use a
vectors-of-pointers output ABI that expandMultipleResultFPLibCall does
not currently support. As a result, sincos will falls back to scalar
sincos calls even when the target has a fully working vector sin and
vector cos.

So we trying to split it into separate sin and cos calls, which will
then be replaced with vector calls if the target supports it, it
generally better than scalarized sincos calls.
DeltaFile
+105-8llvm/lib/CodeGen/ReplaceWithVeclib.cpp
+87-0llvm/test/CodeGen/X86/sincos-fpmath.ll
+8-18llvm/test/CodeGen/X86/veclib-llvm.sincos.ll
+200-263 files

LLVM/project 3f6af3bllvm/include/llvm/ADT GenericCycleImpl.h GenericCycleInfo.h, llvm/test/Analysis/UniformityAnalysis/AMDGPU/irreducible reducible-headers.ll diverged-entry-headers-nested.ll

[CycleInfo] Store blocks using Euler tour representation (#208614)

Each GenericCycle owned a `SetVector<BlockT*>` of its blocks (its own
plus every nested cycle's), so a block nested D cycles deep is stored D
times.

Instead, store every cycle's blocks in one GenericCycleInfo::BlockLayout
array laid out as an Euler tour of the cycle forest: each cycle owns a
contiguous range [IdxBegin, IdxEnd) nested inside its parent's.

run() builds the cycle tree and the block-to-innermost-cycle map as
before, then lays the array out in `layoutBlocks`. Its DFS also moves
from a single worklist that eagerly pushed every successor (so the stack
grew with the fan-out along the current path) to a stack of (block,
successor cursor) frames bounded by the DFS depth, with each block
pushed once; successors are still visited in the same order (hence the
weird `std::reverse_iterator`), so the cycles found are unchanged.

Block iteration order within a cycle changes, so cycle-print order in

    [4 lines not shown]
DeltaFile
+141-64llvm/include/llvm/ADT/GenericCycleImpl.h
+53-28llvm/include/llvm/ADT/GenericCycleInfo.h
+6-6llvm/test/Transforms/FixIrreducible/callbr.ll
+3-3llvm/test/CodeGen/X86/cycle-info.mir
+3-3llvm/test/Analysis/UniformityAnalysis/AMDGPU/irreducible/reducible-headers.ll
+2-2llvm/test/Analysis/UniformityAnalysis/AMDGPU/irreducible/diverged-entry-headers-nested.ll
+208-1065 files not shown
+213-11111 files

LLVM/project 9497c20llvm/docs LangRef.rst LangRef.md, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll

Merge branch 'filecheck-diag-annotator' into filecheck-pattern-notes
DeltaFile
+20,246-21,270llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+0-33,190llvm/docs/LangRef.rst
+30,315-0llvm/docs/LangRef.md
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+8,882-7,730llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
+6,601-5,921llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.a16.ll
+89,948-68,1238,879 files not shown
+556,549-389,2128,885 files

LLVM/project 6f5c63allvm/docs LangRef.rst LangRef.md, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll

Merge branch 'filecheck-improve-labeler' into filecheck-diag-annotator
DeltaFile
+20,246-21,270llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+0-33,190llvm/docs/LangRef.rst
+30,315-0llvm/docs/LangRef.md
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+8,882-7,730llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
+6,601-5,921llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.a16.ll
+89,948-68,1238,879 files not shown
+556,549-389,2128,885 files

LLVM/project b1a3502bolt/test lit.cfg.py

[BOLT] Remove ability to use external shell

The external shell is getting removed soon, so remove the ability to
force the use of it within BOLT.

Reviewers:
aaupov, petrhosek, maksfb, yozhu, paschalis-mpeis, yavtuk, ilovepi, rafaelauler, ayermolo

Pull Request: https://github.com/llvm/llvm-project/pull/209567
DeltaFile
+1-12bolt/test/lit.cfg.py
+1-121 files

LLVM/project 13d2f17bolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

rebase

Created using spr 1.3.7
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-31110 files not shown
+5,145-1,090116 files

LLVM/project 1421e4dbolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-31110 files not shown
+5,145-1,090116 files

LLVM/project 6e62720polly/test lit.cfg, polly/test/UnitIsl lit.cfg

[Polly] Remove ability to use external shell

The external shell is getting removed soon, so remove the ability to
force enable it for polly tests.

Reviewers: ilovepi, Meinersbur, petrhosek

Pull Request: https://github.com/llvm/llvm-project/pull/209566
DeltaFile
+1-12polly/test/lit.cfg
+1-11polly/test/UnitIsl/lit.cfg
+2-232 files

LLVM/project f131c17llvm/docs LangRef.rst LangRef.md, llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll

Merge branch 'main' into filecheck-improve-labeler
DeltaFile
+20,246-21,270llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+0-33,190llvm/docs/LangRef.rst
+30,315-0llvm/docs/LangRef.md
+23,904-12llvm/test/CodeGen/RISCV/clmul.ll
+8,882-7,730llvm/test/MC/AMDGPU/gfx12_asm_vopc.s
+6,601-5,921llvm/test/CodeGen/AMDGPU/GlobalISel/legalize-llvm.amdgcn.image.sample.a16.ll
+89,948-68,1238,879 files not shown
+556,549-389,2128,885 files

LLVM/project d18dc1bbolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-31110 files not shown
+5,145-1,090116 files

LLVM/project 4376c0bmlir/test lit.cfg.py

[MLIR] Remove ability to use external shell

The external shell is getting removed soon, so clean up the logic here
to enable it.

Reviewers: petrhosek, jpienaar, ilovepi, joker-eph

Pull Request: https://github.com/llvm/llvm-project/pull/209565
DeltaFile
+1-11mlir/test/lit.cfg.py
+1-111 files

LLVM/project a91b301bolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-31110 files not shown
+5,145-1,090116 files

LLVM/project b208160clang/test lit.cfg.py, clang/test/Analysis/exploded-graph-rewriter lit.local.cfg

[Clang] Drop ability to use the external shell

The external shell in lit is getting deleted soon and it will soon no
longer be possible to force enable it.

Reviewers: compnerd, petrhosek, ilovepi

Pull Request: https://github.com/llvm/llvm-project/pull/209564
DeltaFile
+1-12clang/test/lit.cfg.py
+1-2clang/test/Analysis/exploded-graph-rewriter/lit.local.cfg
+1-2clang/test/Analysis/scan-build/lit.local.cfg
+1-2clang/utils/perf-training/bolt.lit.cfg
+1-2clang/utils/perf-training/lit.cfg
+1-2clang/utils/perf-training/order-files.lit.cfg
+6-223 files not shown
+9-259 files

LLVM/project f4eb688bolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-31109 files not shown
+5,137-1,082115 files

LLVM/project e824f1allvm/lib/Target/RISCV RISCVSchedAndes45.td

[RISCV] Rename VLSU_MEM_LATENCY to Andes45VLSU_MEM_LATENCY in RISCVSchedAndes45.td (#209388)

Prefix the defvar with the Andes45 scheduler name to match the other
Andes45-local defvars (e.g. Andes45DLEN) and avoid a bare, generic name
in the shared RISC-V TableGen namespace.

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
DeltaFile
+8-8llvm/lib/Target/RISCV/RISCVSchedAndes45.td
+8-81 files

LLVM/project 2778658bolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

feedback

Created using spr 1.3.7
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-3196 files not shown
+5,036-1,025102 files

LLVM/project e82736dbolt/test/X86 dwarf-inline-range-plt-shift.s, clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest SharedLexicalRepresentationFormatTest.cpp

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+1,437-0llvm/test/Instrumentation/MemorySanitizer/X86/avx512dq-intrinsics.ll
+614-0bolt/test/X86/dwarf-inline-range-plt-shift.s
+317-0llvm/lib/Target/NVPTX/NVPTXPromoteParamAlign.cpp
+259-0clang/unittests/ScalableStaticAnalysis/Serialization/JSONFormatTest/SharedLexicalRepresentationFormatTest.cpp
+217-0llvm/test/CodeGen/NVPTX/promote-param-align.ll
+165-31lldb/source/Commands/CommandObjectScripting.cpp
+3,009-3195 files not shown
+5,036-1,024101 files

LLVM/project 6ce9488llvm/utils/lit/tests shtest-run-at-line.py shtest-timeout.py, llvm/utils/lit/tests/Inputs/shtest-readfile lit.cfg

[lit] Remove most external shell test coverage

Now that LLVM 23 has branched, we can look at removing the external
shell.

https://discourse.llvm.org/t/rfc-removal-of-the-lit-external-shell/90951

This patch removes most test coverage that was explicitly for the
external shell as it was entirely duplicated with the internal shell.
This patch leaves out removing test coverage in shtest-format as not all
the coverage there is duplicated and it seems like there is some missing
from the internal shell and I want to give it more careful
consideration.

Reviewers: hnrklssn, ilovepi, jh7370, arichardson

Pull Request: https://github.com/llvm/llvm-project/pull/209500
DeltaFile
+5-53llvm/utils/lit/tests/shtest-run-at-line.py
+7-30llvm/utils/lit/tests/shtest-timeout.py
+0-36llvm/utils/lit/tests/shtest-external-shell-kill.py
+0-25llvm/utils/lit/tests/shtest-readfile-external.py
+0-12llvm/utils/lit/tests/Inputs/shtest-run-at-line/external-shell/line-continuation.txt
+1-11llvm/utils/lit/tests/Inputs/shtest-readfile/lit.cfg
+13-16721 files not shown
+44-25427 files

LLVM/project f89a594clang/test/CIR/CodeGenBuiltins/X86 avx10_2bf16-builtins.c avx10_2_512bf16-builtins.c

[CIR] Fix x86 builtin tests after tighter inlining (#209653)

The behavior of the AlwaysInliner was tightened in a recent change
(https://github.com/llvm/llvm-project/pull/209345) to avoid inling
functions with mismatched target attributes even when the alwaysinline
attribute was present. This exposed a few failures in CIR where we were
either running with stale target features or missing target features
that were needed for the builtins we were testing.

This change updates the run lines to use the correct feature sets.
DeltaFile
+3-3clang/test/CIR/CodeGenBuiltins/X86/avx10_2bf16-builtins.c
+2-2clang/test/CIR/CodeGenBuiltins/X86/avx10_2_512bf16-builtins.c
+1-1clang/test/CIR/CodeGenBuiltins/X86/keylocker.c
+6-63 files