LLVM/project fdf5c9ellvm/lib/Target/AMDGPU SIShrinkInstructions.cpp, llvm/test/CodeGen/AMDGPU flat-atomicrmw-fmax.ll flat-atomicrmw-fmin.ll

[AMDGPU] Shrink VOPCX (nosdst) instructions in SIShrinkInstructions (#202711)

Fix `SIShrinkInstructions` to shrink `V_CMPX_*_e64` instructions.

The `VOPC` destination handling block treated `MI.getOperand(0)` as the
destination unconditionally, but `VOPCX` variants have no `sdst`, their
operand 0 is `src0`. The pass set a bogus VCC allocation hint on the
source SGPR and skipped the shrink. The existing comment said these
should be excluded, but the code never actually did so.
DeltaFile
+13-26llvm/lib/Target/AMDGPU/SIShrinkInstructions.cpp
+16-16llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmax.ll
+16-16llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fmin.ll
+15-15llvm/test/CodeGen/AMDGPU/memintrinsic-unroll.ll
+12-12llvm/test/CodeGen/AMDGPU/flat-atomicrmw-fadd.ll
+12-12llvm/test/CodeGen/AMDGPU/memmove-var-size.ll
+84-977 files not shown
+114-12713 files

LLVM/project e9cf47bclang/lib/AST ASTImporter.cpp, clang/unittests/AST ASTImporterTest.cpp

[clang][ASTImporter] Add import of node 'FileScopeAsmDecl' (#193244)
DeltaFile
+25-0clang/lib/AST/ASTImporter.cpp
+10-0clang/unittests/AST/ASTImporterTest.cpp
+35-02 files

LLVM/project 53d1880cross-project-tests/debuginfo-tests/dexter/dex/evaluation StateMatch.py, cross-project-tests/debuginfo-tests/dexter/dex/test_script Script.py Nodes.py

Reapply "[Dexter] Add label nodes for line references" (#203938)

This reverts commit
https://github.com/llvm/llvm-project/commit/2a789821b0d723bc92f61563e74e67d69d660927.

The original commit previously caused pre-merge check failures for Linux
AArch64 cross-project-tests, due to the stepping behaviour being
slightly different to x86_64. The tests have been adjusted to be less
brittle to exact stepping behaviour, but this reapply also disables the
tests for ARM targets as there is not currently the infrastructure to
reliably test them, meaning we may end up with latent failures.
DeltaFile
+96-7cross-project-tests/debuginfo-tests/dexter/dex/test_script/Script.py
+80-13cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
+49-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/source_root_dir.cpp
+43-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/simple_labels.cpp
+35-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/labels/offset.cpp
+15-11cross-project-tests/debuginfo-tests/dexter/dex/evaluation/StateMatch.py
+318-314 files not shown
+353-3210 files

LLVM/project 8b68596llvm/lib/Target/SPIRV SPIRVModuleAnalysis.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_memory_access_aliasing alias-domain-order.ll alias-load-store.ll

[SPIR-V] Order alias-decl instructions so definitions precede uses (#203699)

The SPV_INTEL_memory_access_aliasing decl instructions are built at the
insertion point of the memory operation being selected. Because
selection is bottom-up, an alias domain shared between scopes that are
built at different memory operations could be emitted after a scope that
references it.

Sort the collected aliasing instructions by dependency tier.
DeltaFile
+25-0llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_memory_access_aliasing/alias-domain-order.ll
+19-0llvm/lib/Target/SPIRV/SPIRVModuleAnalysis.cpp
+6-6llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_memory_access_aliasing/alias-load-store.ll
+6-6llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_memory_access_aliasing/alias-masked-load-store.ll
+56-124 files

LLVM/project aac4e49llvm/lib/Target/SPIRV SPIRVPrepareFunctions.cpp, llvm/test/CodeGen/SPIRV/llvm-intrinsics noalias-scope-decl.ll metadata-argument-intrinsic.ll

[SPIR-V] Don't lower metadata-argument intrinsics to functions (#203654)

llvm.experimental.noalias.scope.decl takes a metadata argument. When the
SPIR-V backend lowered unknown intrinsics to functions (AMD vendor or
--spv-allow-unknown-intrinsics), it emitted
@spirv.llvm_experimental_noalias_scope_decl(metadata ...), which fails
the verifier: "Function has metadata parameter but isn't an intrinsic".

Therefore drop llvm.experimental.noalias.scope.decl, as it has no SPIR-V
representation.
DeltaFile
+25-0llvm/lib/Target/SPIRV/SPIRVPrepareFunctions.cpp
+22-0llvm/test/CodeGen/SPIRV/llvm-intrinsics/noalias-scope-decl.ll
+14-0llvm/test/CodeGen/SPIRV/llvm-intrinsics/metadata-argument-intrinsic.ll
+61-03 files

LLVM/project 7567d21llvm/lib/Target/SPIRV SPIRVEmitIntrinsics.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers extractvalue-aggregate-mutated-callsite-indirect.ll

[SPIR-V] Fix verifier crash on aggregate extract into a mutated callsite (#203729)

SPIRVPrepareFunctions rewrites indirect/inline-asm callsite signatures
so aggregate params become i32 value-ids, but leaves the operands for
SPIRVEmitIntrinsics to tokenize. An aggregate-returning spv_extractv
result passed to such a call was never tokenized, so it no longer
matched the mutated callee signature, tripping the IR verifier ("Call
parameter type does not match function signature!").

Mutate the spv_extractv result to i32 when it feeds a callsite param
that was rewritten to a value-id. Real SPIR-V type is recovered from the
value attributes later during selection.

Assisted by: Claude Code
DeltaFile
+21-0llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_function_pointers/extractvalue-aggregate-mutated-callsite-indirect.ll
+21-0llvm/test/CodeGen/SPIRV/extensions/SPV_INTEL_inline_assembly/extractvalue-aggregate-mutated-callsite-asm.ll
+16-0llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
+58-03 files

LLVM/project b244676llvm/docs AMDGPUUsage.rst, llvm/lib/Target/AMDGPU AMDGPULegalizerInfo.cpp SIISelLowering.cpp

[AMDGPU] Add synthetic apertures and use them for barriers

Define what a synthetic aperture is, and adjust the barrier AS
to use this new system. This makes the barrier AS even safer to
use as now we can use all 32 bits of it without ever risking
hitting a valid address of any kind (LDS or outside LDS).
DeltaFile
+57-56llvm/test/CodeGen/AMDGPU/addrspacecast-barrier.ll
+44-5llvm/docs/AMDGPUUsage.rst
+21-23llvm/lib/Target/AMDGPU/AMDGPULegalizerInfo.cpp
+19-17llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+12-0llvm/lib/Target/AMDGPU/SIDefines.h
+9-0llvm/lib/Target/AMDGPU/AMDGPUMemoryUtils.cpp
+162-1014 files not shown
+172-10610 files

LLVM/project 793dcf1llvm/test/CodeGen/AArch64 zeroing-forms-frint-frecpx-fsqrt.ll sve-intrinsics-int-arith-imm.ll

[NFC][LLVM][Tests] Replace instances of @llvm.aarch64.sve.ptrue.nxv16i1(i32 31) with splat (i1 true). (#204113)

I have kept instances where the ptrue seems more relevant. For example,
when a test varies the predicate pattern, I opted to maintain ptrue(31)
for test consistency.
DeltaFile
+108-216llvm/test/CodeGen/AArch64/zeroing-forms-frint-frecpx-fsqrt.ll
+86-176llvm/test/CodeGen/AArch64/sve-intrinsics-int-arith-imm.ll
+85-175llvm/test/CodeGen/AArch64/sve-intrinsics-unpred-form.ll
+57-119llvm/test/CodeGen/AArch64/sve-unary-movprfx.ll
+48-96llvm/test/CodeGen/AArch64/zeroing-forms-counts-not.ll
+36-72llvm/test/CodeGen/AArch64/zeroing-forms-rev.ll
+420-85453 files not shown
+877-1,78359 files

LLVM/project ba4d99allvm/test/CodeGen/RISCV clmul.ll clmulr.ll, llvm/test/CodeGen/RISCV/rvv clmulh-sdnode.ll clmul-sdnode.ll

Merge upstream/main into users/mariusz-sikora-at-amd/gfx13/add-last-use-tests
DeltaFile
+38,494-84,026llvm/test/CodeGen/RISCV/rvv/clmulh-sdnode.ll
+22,388-22,086llvm/test/CodeGen/RISCV/rvv/clmul-sdnode.ll
+19,087-24,391llvm/test/CodeGen/RISCV/clmul.ll
+10,473-12,572llvm/test/CodeGen/RISCV/clmulr.ll
+10,281-12,374llvm/test/CodeGen/RISCV/clmulh.ll
+8,361-8,920llvm/test/CodeGen/RISCV/rvv/expandload.ll
+109,084-164,3694,877 files not shown
+510,030-386,7484,883 files

LLVM/project ff0ee6fllvm/test/CodeGen/X86 fptosi-sat-vector-512.ll fptoui-sat-vector-512.ll

[X86] Add baseline f2i vector sat tests for #199416 (#204117)
DeltaFile
+7,323-0llvm/test/CodeGen/X86/fptosi-sat-vector-512.ll
+6,132-0llvm/test/CodeGen/X86/fptoui-sat-vector-512.ll
+4,289-1,259llvm/test/CodeGen/X86/fptosi-sat-vector-128.ll
+3,840-1,215llvm/test/CodeGen/X86/fptoui-sat-vector-128.ll
+3,473-0llvm/test/CodeGen/X86/fptosi-sat-vector-256.ll
+3,004-0llvm/test/CodeGen/X86/fptoui-sat-vector-256.ll
+28,061-2,4746 files

LLVM/project f8b41b5libcxx/include/__atomic/support c11.h

Use a CAS loop for pointer types in __cxx_atomic_fetch_{max,min} on c11.h

Clang's __c11_atomic_fetch_max/min builtins reject pointer arguments
("address argument to atomic operation must be a pointer to atomic integer
or supported floating point type"). The four __cxx_atomic_fetch_{max,min}
overloads in support/c11.h were unconditionally calling those builtins, so
std::atomic<T*>::fetch_max/min failed to compile on every Clang-based
config. support/gcc.h already had this dispatch via #if __has_builtin(...)
falling back to a CAS loop, which is why generic-gcc was passing.

Dispatch on is_pointer<_Tp>::value: pointer types use a CAS loop matching
gcc.h's body, others keep calling the builtin.

Assisted by Claude
DeltaFile
+48-8libcxx/include/__atomic/support/c11.h
+48-81 files

LLVM/project bf8b778llvm/docs LangRef.rst, llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp

[ISel] Introduce `llvm.pext` and `llvm.pdep` intrinsics (#200570)

Closes #172857

These are portable forms of the x86_64 pext/pdep or AArch64 bext/bdep instructions.
DeltaFile
+572-0llvm/test/CodeGen/AArch64/pext.ll
+545-0llvm/test/CodeGen/AArch64/pdep.ll
+544-0llvm/test/CodeGen/X86/pdep.ll
+537-0llvm/test/CodeGen/X86/pext.ll
+96-0llvm/docs/LangRef.rst
+83-0llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+2,377-017 files not shown
+2,632-023 files

LLVM/project 835c015flang/lib/Lower/OpenMP OpenMP.cpp, mlir/lib/Dialect/OpenMP/IR OpenMPDialect.cpp

[flang][OpenMP] Lower target in_reduction for host fallback

Enable host-fallback 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. Unsupported device/offload-entry and richer reduction forms remain diagnosed.

Add Flang lowering, MLIR verifier/translation, and LLVM IR tests for the supported host-fallback path, including a non-default-address-space case, and the remaining unsupported cases.
DeltaFile
+153-14mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+77-36mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
+110-3mlir/test/Target/LLVMIR/openmp-todo.mlir
+107-0mlir/test/Target/LLVMIR/openmp-target-in-reduction.mlir
+72-19flang/lib/Lower/OpenMP/OpenMP.cpp
+75-0mlir/test/Target/LLVMIR/openmp-target-in-reduction-multi.mlir
+594-727 files not shown
+764-8913 files

LLVM/project 7d4d3e4llvm/lib/Target/AArch64 AArch64InstrInfo.td AArch64InstrFormats.td, llvm/test/MC/AArch64 arm64-aliases.s

[AArch64] Define GCS operations as SYS and SYSL aliases

Move the remaining `GCS` instructions from dedicated opcodes to `SYSxt/SYSLxt`
aliases, keeping a tied `SYSL` pseudo for codegen where `GCS` preserves the`
input register when disabled at runtime.

Update `GCS` intrinsic selection, scheduling, disassembly aliases, and MC
coverage for the generic `SYS/SYSL` encodings.
DeltaFile
+23-49llvm/lib/Target/AArch64/AArch64InstrInfo.td
+27-0llvm/test/MC/AArch64/arm64-aliases.s
+19-4llvm/lib/Target/AArch64/AArch64InstrFormats.td
+9-3llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+78-564 files

LLVM/project 9eee6c0llvm/lib/Target/AArch64 AArch64InstrInfo.td AArch64InstrFormats.td, llvm/test/MC/AArch64 arm64-aliases.s brbe.s

[AArch64][llvm] Define APAS, BRB and TRCIT as SYS aliases (#203563)

`APAS`, `BRB IALL/INJ` and `TRCIT` use `SYS` encodings, so define them
as aliases of `SYSxt` instead of separate instructions.

Check that the preferred architectural aliases are printed when their
features are enabled and that disassembly falls back to the generic `SYS`
spelling when not enabled.
DeltaFile
+27-0llvm/test/MC/AArch64/arm64-aliases.s
+8-13llvm/lib/Target/AArch64/AArch64InstrInfo.td
+0-19llvm/lib/Target/AArch64/AArch64InstrFormats.td
+4-0llvm/test/MC/AArch64/brbe.s
+39-324 files

LLVM/project 74ac7c9lldb/packages/Python/lldbsuite/test lldbtest.py, lldb/test/API/commands/expression/anonymous-struct TestCallUserAnonTypedef.py

[lldb][test] Introduce build_and_run test utility (#194386)

We currently have several hundred tests require a running process in a
given state, and therefore perform the same three tasks:

* compile a test executable
* set a breakpoint by finding a source regex
* then launch the test process to hit that breakpoint.

A large chunk of these tests do this exact same setup with various
versions of copied boilerplate code. The different versions we have all
have different conventions of naming the breakpoint comment, the main
file (and whether it should be resolved), and different generated error
messages if things go wrong.

We already have a standardized and much shorter way of doing this in
LLDB (see below), but this still encourages test writers to specify
non-standard file names and non-standard breakpoint comment names.


    [15 lines not shown]
DeltaFile
+33-1lldb/packages/Python/lldbsuite/test/lldbtest.py
+1-4lldb/test/API/commands/expression/anonymous-struct/TestCallUserAnonTypedef.py
+1-4lldb/test/API/commands/expression/dollar-in-variable/TestDollarInVariable.py
+1-4lldb/test/API/lang/objc/bitfield_ivars/TestBitfieldIvars.py
+1-4lldb/test/API/lang/objcxx/conflicting-names-class-update-utility-expr/TestObjCConflictingNamesForClassUpdateExpr.py
+37-175 files

LLVM/project 33bb0e7lldb/packages/Python/lldbsuite/test lldbpexpect.py

[lldb][test] Faster shut down for pexpect tests (#201171)

Our pexpect tests spend most of their time in the shutdown logic
waiting for the test child to shut down. For example, our editline
tests spend about 95% of their 40s runtime just waiting for the
pexpect child to terminate.

One of the reasons is that the ptyprocess terminate approach
uses a timeout to give the child time to shut down and be cleaned
up by the kernel. While this timeout makes sense, our timeout is
extremely long (6s) since 56fb7456950d2564d16500e40c5719c954a6987a .

Because the default ptyprocess implementation is designed for very
short timeouts (0.1s), it just sleeps and then checks the process
status. For our long timeout, the child most likely already terminated
way before the timeout on a fast system. However, because we have
some very slow builders, we cannot reduce this timeout without
making tests flaky again.


    [7 lines not shown]
DeltaFile
+74-5lldb/packages/Python/lldbsuite/test/lldbpexpect.py
+74-51 files

LLVM/project b24bc4dllvm/lib/Target/AMDGPU GCNVOPDUtils.cpp VOP3PInstructions.td, llvm/lib/Target/AMDGPU/Utils AMDGPUBaseInfo.cpp

AMDGPU: Reland: Codegen for v_dual_dot2acc_f32_f16/bf16 from VOP3

For V_DOT2_F32_F16 and V_DOT2_F32_BF16 add their VOPDName and mark
them with usesCustomInserter which will be used to add pre-RA register
allocation hints to preferably assign dst and src2 to the same physical
register. When the hint is satisfied, canMapVOP3PToVOPD recognises the
instruction as eligible for VOPD pairing by checking if it is VOP2 like:
dst==src2, no source modifiers, no clamp, and src1 is a register.
Mark both instructions as commutable to allow a literal in src1 to be
moved to src0, since VOPD only permits a literal in src0.

Original patch had a bug where it did not check if physical src
registers match register class of appropriate operand in fullVOPD
instructions, check is now done via isValidVOPDSrc.
DeltaFile
+442-520llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.ll
+163-69llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fdot2.f32.bf16.ll
+34-1llvm/lib/Target/AMDGPU/GCNVOPDUtils.cpp
+8-5llvm/lib/Target/AMDGPU/VOP3PInstructions.td
+8-0llvm/lib/Target/AMDGPU/SIISelLowering.cpp
+6-0llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+661-5951 files not shown
+663-5977 files

LLVM/project cb1821dlldb/source/Expression IRExecutionUnit.cpp, lldb/test/API/lang/c/libc_calls TestLibcCalls.py main.c

[lldb] Avoid calling dyld's versions of libc functions (#201829)

dyld ships with its own version of various libc functions that we are
not supposed to call. This patch prevents the expression evaluator from
calling them by respecting the existing list of forbidden modules.
DeltaFile
+75-0lldb/test/API/lang/c/libc_calls/TestLibcCalls.py
+11-0lldb/test/API/lang/c/libc_calls/main.c
+8-0lldb/source/Expression/IRExecutionUnit.cpp
+3-0lldb/test/API/lang/c/libc_calls/Makefile
+97-04 files

LLVM/project c1ec4b3flang/include/flang/Optimizer/Dialect FIROps.td FIROps.h, flang/lib/Optimizer/Dialect FIROps.cpp

[flang][mem2reg] promote memory slots through declares (#196975)

Leverage the new mem2reg APIs for views to remove the
"same block" limitation over fir.declare mem2reg, and to allow mem2reg
over fir.convert so that mixed dialect mem2reg with fir + memref is
possible.

Note that fir.declare_value for memory used with different value types
will be dropped (e.g. EQUIVALENCE). A later patch will deal with
improving fir.declare_value to carry the variable type interpedently of
the value (like in LLVM), but there are anyway a bit more work to enable
mem2reg with equivalence given their storage is an array of bytes.

Assisted by: Claude
DeltaFile
+195-16flang/test/Fir/mem2reg.mlir
+111-24flang/lib/Optimizer/Dialect/FIROps.cpp
+10-3flang/include/flang/Optimizer/Dialect/FIROps.td
+1-0flang/include/flang/Optimizer/Dialect/FIROps.h
+317-434 files

LLVM/project b85c748llvm/lib/Target/Mips MipsSEISelLowering.cpp MipsMSAInstrInfo.td, llvm/test/CodeGen/Mips/msa f16-llvm-ir.ll

[MIPS] soft-promote `f16` also when using `+msa` (#203065)

Fixes https://github.com/llvm/llvm-project/issues/202808

Make use of the default soft-promote mechanism for f16, rather than an
ad-hoc approach making f16 storage-only.

In theory you could leave it at that, but I added custom implementations
to make use of the instructions for `FP16_TO_FP` and `FP_TO_FP16`, and
manually apply the "fptoui to fptosi trick" which generates shorter
code.

I don't really have a good way of testing this. The assembly changes
look reasonable but it's easy to miss something subtle of course. I've
tried to break the change up into smaller commits but it's still kind of
a lot.
DeltaFile
+966-1,105llvm/test/CodeGen/Mips/msa/f16-llvm-ir.ll
+103-416llvm/lib/Target/Mips/MipsSEISelLowering.cpp
+0-37llvm/lib/Target/Mips/MipsMSAInstrInfo.td
+2-14llvm/lib/Target/Mips/MipsSEISelLowering.h
+0-6llvm/lib/Target/Mips/MipsRegisterInfo.td
+1-1llvm/lib/Target/Mips/MipsScheduleI6400.td
+1,072-1,5792 files not shown
+1,072-1,5838 files

LLVM/project f1ec325llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/CodeGen/X86 vector-shuffle-combining-avx512bwvl.ll

[SelectionDAG] Fold subvector inserts into concat operands (#200937)

Push insert_subvector into the containing CONCAT_VECTORS operand when
the insertion is wholly contained there.

AI note: an LLM generated the code and the test, I've read them
DeltaFile
+8-36llvm/test/CodeGen/X86/vector-shuffle-combining-avx512bwvl.ll
+31-10llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+39-462 files

LLVM/project 4af8d82llvm/lib/Target/NVPTX NVPTXISelLowering.cpp NVPTXAsmPrinter.cpp

Revert "[NVPTX] Rip out vestigial variadic support (NFC)" (#204106)

Reverts llvm/llvm-project#202385
DeltaFile
+230-64llvm/lib/Target/NVPTX/NVPTXISelLowering.cpp
+21-11llvm/lib/Target/NVPTX/NVPTXAsmPrinter.cpp
+9-4llvm/lib/Target/NVPTX/NVPTXISelLowering.h
+8-0llvm/lib/Target/NVPTX/NVPTXSubtarget.h
+268-794 files

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

[flang][OpenMP] Lower target in_reduction for host fallback

Enable host-fallback 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. Unsupported device/offload-entry and richer reduction forms remain diagnosed.

Add Flang lowering, MLIR verifier/translation, and LLVM IR tests for the supported host-fallback path, including a non-default-address-space case, and the remaining unsupported cases.
DeltaFile
+143-14mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+77-36mlir/lib/Dialect/OpenMP/IR/OpenMPDialect.cpp
+107-0mlir/test/Target/LLVMIR/openmp-target-in-reduction.mlir
+72-19flang/lib/Lower/OpenMP/OpenMP.cpp
+83-3mlir/test/Target/LLVMIR/openmp-todo.mlir
+75-0mlir/test/Target/LLVMIR/openmp-target-in-reduction-multi.mlir
+557-726 files not shown
+685-8912 files

LLVM/project 6e3da4dllvm/lib/CodeGen MachineSink.cpp, llvm/test/CodeGen/X86 machine-sink-dbg-loc.mir

Fix machine-sink using debug instruction source locations in merged locations (#203900)
DeltaFile
+123-0llvm/test/CodeGen/X86/machine-sink-dbg-loc.mir
+4-4llvm/lib/CodeGen/MachineSink.cpp
+127-42 files

LLVM/project dcc97d8llvm/include/llvm/Support CommandLine.h

[Support] Apply suggested ABI annotation fixup (NFC) (#204102)

Reported by the "LLVM ABI annotation checker" on a PR, but present in
main.

See: https://github.com/llvm/llvm-project/pull/203969#issuecomment-4711157875
DeltaFile
+2-2llvm/include/llvm/Support/CommandLine.h
+2-21 files

LLVM/project 841a606llvm/lib/Target/AArch64 AArch64PerfectShuffle.cpp AArch64PerfectShuffle.h, llvm/test/CodeGen/AMDGPU fcanonicalize.ll llvm.log10.ll

Merge branch 'main' into users/krzysz00/insert-concat-dagcombine
DeltaFile
+6,583-0llvm/lib/Target/AArch64/AArch64PerfectShuffle.cpp
+3-6,571llvm/lib/Target/AArch64/AArch64PerfectShuffle.h
+1,825-1,328llvm/test/Transforms/LoopVectorize/WebAssembly/memory-interleave.ll
+2,269-65llvm/test/CodeGen/AMDGPU/fcanonicalize.ll
+1,134-744llvm/test/CodeGen/AMDGPU/llvm.log10.ll
+1,134-744llvm/test/CodeGen/AMDGPU/llvm.log.ll
+12,948-9,4521,357 files not shown
+65,358-25,9271,363 files

LLVM/project f36f02eflang/include/flang/Optimizer/Dialect FIROps.td, flang/lib/Optimizer/Dialect FIROps.cpp

rebase
DeltaFile
+46-22flang/lib/Optimizer/Dialect/FIROps.cpp
+7-5flang/include/flang/Optimizer/Dialect/FIROps.td
+53-272 files

LLVM/project 292362dflang/test/Fir mem2reg.mlir

update test after #198552
DeltaFile
+1-1flang/test/Fir/mem2reg.mlir
+1-11 files

LLVM/project b0a76c0flang/include/flang/Optimizer/Dialect FIROps.td FIROps.h, flang/lib/Optimizer/Dialect FIROps.cpp

[flang][mem2reg] promote memory slots through declares
DeltaFile
+195-16flang/test/Fir/mem2reg.mlir
+87-24flang/lib/Optimizer/Dialect/FIROps.cpp
+9-4flang/include/flang/Optimizer/Dialect/FIROps.td
+1-0flang/include/flang/Optimizer/Dialect/FIROps.h
+292-444 files