LLVM/project 4ebb19e — llvm/test/tools/yaml2obj help.test, llvm/tools/yaml2obj CMakeLists.txt Opts.td

[yaml2obj] Migrate to OptTable (#224964)

yaml2obj is one of three tools that parse with
cl::ParseCommandLineOptions(LongOptionsUseDoubleDash=true). Parse its
options with an OptTable instead, so that the mode can be removed from
cl::. Spellings follow the other migrated tools: -D<macro>=<v> and
-D <macro>=<v>, -o<file> and -o <file>, --docnum=<n> and --docnum <n>,
--max-size likewise, -E, -h/--help and --version. `-o=<file>` is no
longer accepted; the tests that used it are updated. `--help` lists
only yaml2obj's options.

LLM-aided
DeltaFile
+63-34llvm/tools/yaml2obj/yaml2obj.cpp
+18-0llvm/tools/yaml2obj/Opts.td
+11-0utils/bazel/llvm-project-overlay/llvm/BUILD.bazel
+3-6llvm/test/tools/yaml2obj/help.test
+9-0llvm/utils/gn/secondary/llvm/tools/yaml2obj/BUILD.gn
+7-0llvm/tools/yaml2obj/CMakeLists.txt
+111-401 files not shown
+112-417 files

LLVM/project 08ee0ef — lldb/source/Plugins/ObjectContainer/Clang-Offload-Bundle CMakeLists.txt ObjectContainerClangOffloadBundle.h, lldb/source/Symbol ObjectFile.cpp

[lldb] Add plugin for Clang offload bundle object container (#222362)

## Summary

Clang supports embedding binaries using the clang offload bundler:

https://clang.llvm.org/docs/ClangOffloadBundler.html

This patch creates an ObjectContainer plug-in that allows us to get the
contained binaries within any executable.

### why we need this? 
AMD/HIP host binaries may contain a .hip_fatbin section holding a Clang
offload bundle with one or more AMDGPU ELF code objects, typically for
different GPU architectures. Each ELF code object can contain multiple
ml kernels.


### Test 

    [11 lines not shown]
DeltaFile
+350-0lldb/unittests/ObjectContainer/ObjectContainerClangOffloadBundleTest.cpp
+261-0lldb/source/Plugins/ObjectContainer/Clang-Offload-Bundle/ObjectContainerClangOffloadBundle.cpp
+76-0lldb/source/Plugins/ObjectContainer/Clang-Offload-Bundle/ObjectContainerClangOffloadBundle.h
+14-7lldb/source/Symbol/ObjectFile.cpp
+13-0lldb/source/Plugins/ObjectContainer/Clang-Offload-Bundle/CMakeLists.txt
+3-0lldb/unittests/ObjectContainer/CMakeLists.txt
+717-71 files not shown
+718-77 files

LLVM/project dd17367 — clang/lib/Basic/Targets PPC.cpp, clang/lib/CodeGen CodeGenFunction.cpp

[FMV][AIX] Implement target_clones part 2 (target-features) (#206786)

This is part 2 (of 2) of FMV on AIX that would allow specifying
target-feature strings on the ``target_clones`` attribute. Part 1 was in
#177428.

The list of attributes supported is a subset of the attribute accepted
on the `target` attribute on AIX, specifically those that are runtime
detectable via the `__builtin_cpu_supports` builtin.

---------

Co-authored-by: Wael Yehia <wyehia at ca.ibm.com>
DeltaFile
+101-0clang/test/CodeGen/PowerPC/attr-target-clones.c
+96-0clang/test/Sema/PowerPC/attr-target-clones.c
+66-0llvm/include/llvm/TargetParser/PPCTargetParser.def
+53-7clang/lib/Basic/Targets/PPC.cpp
+47-11clang/lib/CodeGen/CodeGenFunction.cpp
+27-3clang/lib/Sema/SemaPPC.cpp
+390-218 files not shown
+441-2614 files

LLVM/project 2ed7faf — llvm/lib/Target/DirectX DXILOpLowering.cpp DXILResourceAccess.cpp, llvm/test/CodeGen/DirectX ResourceAtomicCompareExchange-texture-unsupported-kind.ll ResourceAtomicCompareExchange.ll

[DirectX] Support `cmpxchg` on buffer resources in DXIL lowering (#222162)

This PR is a backend change alone. It teaches DXIL lowering to handle a
`cmpxchg` on a buffer resource pointer, which the
`InterlockedCompareStore`
and `InterlockedCompareExchange` PRs above it in this stack need.

The PR adds:

- the `llvm.dx.resource.atomic.compare.exchange` intrinsic,
- its DXIL operation and op lowering,
- the `DXILResourceAccess` handling that turns a `cmpxchg` on a value
  returned by `llvm.dx.resource.getpointer` into that intrinsic.

DXIL has no atomic compare exchange for texture resources, so the pass
reports an error for them. A test covers that path.

There is no Clang change here, and no HLSL function becomes available.

Assisted by: Github Copilot
DeltaFile
+151-30llvm/lib/Target/DirectX/DXILResourceAccess.cpp
+82-0llvm/test/CodeGen/DirectX/ResourceAtomicCompareExchange-texture.ll
+69-0llvm/test/CodeGen/DirectX/ResourceAtomicCompareExchange-texture-nonscalar.ll
+53-0llvm/test/CodeGen/DirectX/ResourceAtomicCompareExchange.ll
+41-0llvm/lib/Target/DirectX/DXILOpLowering.cpp
+36-0llvm/test/CodeGen/DirectX/ResourceAtomicCompareExchange-texture-unsupported-kind.ll
+432-304 files not shown
+509-3210 files

LLVM/project 62fd85f — clang/test/CodeGenHLSL/builtins RasterizerOrderedByteAddressBuffer-InterlockedExchange.hlsl RWByteAddressBuffer-InterlockedExchange.hlsl, clang/test/SemaHLSL/BuiltIns ByteAddressBuffer-InterlockedExchange-sm65-errors.hlsl ByteAddressBuffer-InterlockedExchange-errors.hlsl

[HLSL] Add `InterlockedExchange` function and resource methods (#222161)

This PR adds the `InterlockedExchange` standalone function and resource
methods. The operation lowers to `atomicrmw xchg`.

`InterlockedExchange` is the first interlocked operation that reports
the
previous value. It takes that value through an `original_value`
reference
parameter, so this PR adds a `RequiresOriginalValue` flag to
`HLSLBuiltinTypeDeclBuilder` and a matching overload shape to
`HLSLExternalSemaSource`. The later compare operations reuse both.

The float overload of `InterlockedExchange` follows in a separate PR in
this
stack. This PR covers the integer overloads alone, so it links
https://github.com/llvm/llvm-project/issues/99129 without closing it.

Assisted by: Github Copilot
DeltaFile
+107-0clang/test/SemaHLSL/BuiltIns/InterlockedExchange-errors.hlsl
+44-0clang/test/CodeGenHLSL/builtins/InterlockedExchange.hlsl
+41-0clang/test/SemaHLSL/BuiltIns/ByteAddressBuffer-InterlockedExchange-errors.hlsl
+40-0clang/test/CodeGenHLSL/builtins/RWByteAddressBuffer-InterlockedExchange.hlsl
+27-0clang/test/CodeGenHLSL/builtins/RasterizerOrderedByteAddressBuffer-InterlockedExchange.hlsl
+26-0clang/test/SemaHLSL/BuiltIns/ByteAddressBuffer-InterlockedExchange-sm65-errors.hlsl
+285-014 files not shown
+365-3620 files

LLVM/project 7215a8a — llvm/test/CodeGen/AArch64/GlobalISel legalize-sinh.mir legalize-sin.mir

AArch64: Mark the LR def of GlobalISel calls dead

In SelectionDAG InstrEmitter would have marked this dead.

Co-Authored-By: Claude Opus 5 <noreply at anthropic.com>
DeltaFile
+22-22llvm/test/CodeGen/AArch64/GlobalISel/legalize-pow.mir
+21-21llvm/test/CodeGen/AArch64/GlobalISel/legalize-sinh.mir
+21-21llvm/test/CodeGen/AArch64/GlobalISel/legalize-sin.mir
+21-21llvm/test/CodeGen/AArch64/GlobalISel/legalize-fexp2.mir
+21-21llvm/test/CodeGen/AArch64/GlobalISel/legalize-exp.mir
+21-21llvm/test/CodeGen/AArch64/GlobalISel/legalize-atan2.mir
+127-12738 files not shown
+264-26044 files

LLVM/project 6ca0abd — clang-tools-extra/docs conf.py, clang/docs conf.py

[docs] Require MyST for Sphinx documentation builds (#223829)

Fedora plans to use the separate llvm_man_pages package that we build as part of our release process now:

https://discourse.llvm.org/t/rfc-make-myst-markdown-the-llvm-docs-format-rip-rest/90840/37

I'm assuming that other distributions are either going to be able to
install the necessary Python modules that we depend on (myst_parser
etc), or will use this man page package if they need it. Therefore, I think we
can remove this enum and associated complexity.

Assisted-by: codex
DeltaFile
+4-25utils/docs/llvm_sphinx/__init__.py
+10-0llvm/docs/ReleaseNotes.md
+1-1libc/docs/conf.py
+1-1clang/docs/conf.py
+1-1clang/docs/analyzer/conf.py
+1-1clang-tools-extra/docs/conf.py
+18-295 files not shown
+23-3411 files

LLVM/project 606e2ac — mlir/include/mlir/Dialect/Bufferization/Transforms OneShotAnalysis.h, mlir/lib/Dialect/Bufferization/Transforms OneShotAnalysis.cpp

[mlir][bufferization] Relax happens-before analysis (#223777)

On unstructured control-flow, the one-shot analysis is rather
conservative in regards to computing RaW conflicts, requiring strict
dominance which may not always be satisfied.

Relax this requirement to allow more cases to not be marked as
conflicting. Notably, readers/writers within a region that contains a
"diamond" or multiple loops are now handled.

This is a simpler version of
https://github.com/llvm/llvm-project/pull/223006 without the CFGLoopInfo
analysis, meaning it is a bit more conservative when analyzing regions
with nested loops.
DeltaFile
+714-0mlir/test/Dialect/ControlFlow/one-shot-bufferize-analysis.mlir
+276-40mlir/lib/Dialect/Bufferization/Transforms/OneShotAnalysis.cpp
+40-1mlir/include/mlir/Dialect/Bufferization/Transforms/OneShotAnalysis.h
+1,030-413 files

HardenedBSD/src cbf35e4 — lib/clang/libllvm Makefile, share/man/man5 src.conf.5

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/cross-dso-cfi
DeltaFile
+42-101usr.sbin/makefs/cd9660.c
+6-83lib/clang/libllvm/Makefile
+27-0sys/dev/nvme/nvme.h
+11-2sys/dev/nvme/nvme_ctrlr.c
+1-6share/man/man5/src.conf.5
+2-4usr.sbin/makefs/cd9660/cd9660_eltorito.c
+89-19626 files not shown
+105-25032 files

HardenedBSD/src ae32fa4 — lib/clang/libllvm Makefile, share/man/man5 src.conf.5

Merge remote-tracking branch 'rad/hardened/current/master' into hardened/current/pledge
DeltaFile
+42-101usr.sbin/makefs/cd9660.c
+6-83lib/clang/libllvm/Makefile
+27-0sys/dev/nvme/nvme.h
+11-2sys/dev/nvme/nvme_ctrlr.c
+1-6share/man/man5/src.conf.5
+2-4usr.sbin/makefs/cd9660/cd9660_eltorito.c
+89-19626 files not shown
+105-25032 files

LLVM/project 915c3bd — llvm/lib/Transforms/InstCombine InstCombineVectorOps.cpp, llvm/test/Transforms/InstCombine extractelement-strided-ptr-vector.ll

[InstCombine] Fold variable extract of a constant-strided pointer vector (#217078)

A vector built from pointers that all point into the same object at a
constant stride is a table of addresses, so a variable extract from it
is address arithmetic:

  %v0 = insertelement <4 x ptr> poison, ptr %b,      i64 0
  %v1 = insertelement <4 x ptr> %v0,    ptr %b + 8,  i64 1
  %v2 = insertelement <4 x ptr> %v1,    ptr %b + 16, i64 2
  %v3 = insertelement <4 x ptr> %v2,    ptr %b + 24, i64 3
  %r  = extractelement <4 x ptr> %v3, i32 %i
  -->
  %r  = getelementptr i8, ptr %b, i64 %i * 8

Fold it to a single GEP. Every element must be reachable from one base
pointer at a constant byte offset, every lane of the vector must be
defined, and the offsets must form an arithmetic sequence; otherwise the
pattern is left alone.
DeltaFile
+272-0llvm/test/Transforms/InstCombine/extractelement-strided-ptr-vector.ll
+62-0llvm/lib/Transforms/InstCombine/InstCombineVectorOps.cpp
+334-02 files

HardenedBSD/src 5cb0b5f — tests/sys/fs/tarfs tarfs_test.sh, usr.bin/gh-bc/tests dc_tests.sh bc_tests.sh

Merge remote-tracking branch 'rad/hardened/15-stable/main' into hardened/15-stable/pledge
DeltaFile
+78-19tests/sys/fs/tarfs/tarfs_test.sh
+1-1usr.bin/gh-bc/tests/dc_tests.sh
+1-1usr.bin/gh-bc/tests/bc_tests.sh
+80-213 files

HardenedBSD/src 377c16e — lib/clang/libllvm Makefile, share/man/man5 src.conf.5

Merge branch 'freebsd/current/main' into hardened/current/master
DeltaFile
+42-101usr.sbin/makefs/cd9660.c
+6-83lib/clang/libllvm/Makefile
+27-0sys/dev/nvme/nvme.h
+11-2sys/dev/nvme/nvme_ctrlr.c
+1-6share/man/man5/src.conf.5
+2-4usr.sbin/makefs/cd9660/cd9660_eltorito.c
+89-19626 files not shown
+105-25032 files

HardenedBSD/src 580bd64 — tests/sys/fs/tarfs tarfs_test.sh, usr.bin/gh-bc/tests dc_tests.sh bc_tests.sh

Merge branch 'freebsd/15-stable/main' into hardened/15-stable/main
DeltaFile
+78-19tests/sys/fs/tarfs/tarfs_test.sh
+1-1usr.bin/gh-bc/tests/dc_tests.sh
+1-1usr.bin/gh-bc/tests/bc_tests.sh
+80-213 files

HardenedBSD/ports 0f2ca31 — databases/py-pylance/files patch-rust_lance-linalg_src_simd_f64.rs patch-rust_lance-linalg_src_simd_f32.rs, security/rauthy Makefile.crates distinfo

Merge branch 'freebsd/main' into hardenedbsd/main
DeltaFile
+2,630-0sysutils/rust-coreutils/pkg-plist
+1,601-0security/rauthy/distinfo
+799-0security/rauthy/Makefile.crates
+406-0databases/py-pylance/files/patch-rust_lance-linalg_src_simd_f32.rs
+371-0databases/py-pylance/files/patch-rust_lance-linalg_src_simd_f64.rs
+9-226www/firefox/files/patch-libwebrtc-generated
+5,816-226258 files not shown
+9,347-2,116264 files

LLVM/project 55ce386 — llvm/lib/CodeGen SpillPlacement.cpp, llvm/test/CodeGen/AMDGPU wave-profile-spill.mir

[CodeGen] Use validated wave counts for AMDGPU spill costs

Lane-based block frequencies can understate the cost of a spill in
divergent GPU code: a wave still executes a block with only some lanes
active. Use measured block-wave counts to weight SpillPlacement's costs
relative to the original entry-wave count.

Opt in on AMDGPU only. Accept a measured count only when its IR block
maps uniquely to a machine block with matching predecessors and
successors. Keep the existing MBFI cost for unmeasured or rejected
blocks, and leave branch probabilities and general BFI unchanged.

DeltaFile
+251-0llvm/test/CodeGen/AMDGPU/wave-profile-spill.mir
+97-1llvm/lib/CodeGen/SpillPlacement.cpp
+348-12 files

FreeNAS/freenas 224b63e — tests/api2 test_legacy_websocket.py test_alert_service.py

Remove 25.04 and legacy Websocket API tests
DeltaFile
+0-37tests/api2/test_alert_service.py
+0-30tests/api2/test_legacy_websocket.py
+0-672 files

LLVM/project 4584e4b — lld/MachO Relocations.cpp SyntheticSections.cpp, lld/test/MachO tlv-dynamic-lookup-x86.s got-to-tlv-reference.s

[lld][MachO] Remove `__thread_ptrs` section so TLV can relocate against dynamic-lookup symbols (#221364)

lld/MachO rejects a relocation whenever `hasAttr(TLV) != sym->isTlv()`, but
`isTlv()` cannot separate "not thread-local" from "unknown", so that one
inequality rejects three unrelated cases and only one of them is ill-formed.
C++20 `constinit` made another of them common: it lets the compiler elide the
thread-local wrapper and access a cross-TU object directly ([folly 2c666105](https://github.com/facebook/folly/commit/2c666105e9a694aef7290cce3da14ed1ebf14462)),
producing a TLV relocation against a dynamic-lookup symbol. The check was also
masking a defect — `Symbol::gotIndex` is one field indexing whichever of `__got`
or `__thread_ptrs` holds the symbol — and never enforced it anyway, since
`UnwindInfoSection` and the stub paths call `in.got->addEntry` directly, so a
thread-local personality already collided on stock lld.

Both pools hold the same value, the descriptor's address, and ld-prime never
synthesizes `__thread_ptrs` at all. Make `__got` the sole non-lazy pointer
section, deleting `TlvPointerSection`, `NonLazyPointerSectionBase`,
`in.tlvPointers`, `Symbol::getTlvVA` and the indirect-symbol-table
special-casing, and collapsing `resolveGotVA`/`resolveTlvVA` into
`resolveNonLazyPtrVA`. One section, one index, so the collision becomes

    [9 lines not shown]
DeltaFile
+265-0lld/test/MachO/tlv-dynamic-lookup.s
+170-0lld/test/MachO/tlv-non-lazy-pointer.s
+128-0lld/test/MachO/got-to-tlv-reference.s
+52-0lld/test/MachO/tlv-dynamic-lookup-x86.s
+8-27lld/MachO/SyntheticSections.cpp
+31-3lld/MachO/Relocations.cpp
+654-3017 files not shown
+704-14423 files

FreeBSD/ports 816d151 — graphics/libfreehand pkg-plist Makefile

graphics/libfreehand: update to 0.1.4 release (+)

* Memory safety fixes
DeltaFile
+3-3graphics/libfreehand/distinfo
+1-1graphics/libfreehand/pkg-plist
+1-1graphics/libfreehand/Makefile
+5-53 files

HardenedBSD/ports 816d151 — graphics/libfreehand pkg-plist Makefile

graphics/libfreehand: update to 0.1.4 release (+)

* Memory safety fixes
DeltaFile
+3-3graphics/libfreehand/distinfo
+1-1graphics/libfreehand/pkg-plist
+1-1graphics/libfreehand/Makefile
+5-53 files

HardenedBSD/ports c2e3115 — devel/dmake Makefile distinfo

devel/dmake: update to 4.13.2 release (+)

Release notes:  https://github.com/jimjag/dmake/releases/tag/v4.13.2
DeltaFile
+3-3devel/dmake/distinfo
+1-2devel/dmake/Makefile
+4-52 files

FreeBSD/ports c2e3115 — devel/dmake Makefile distinfo

devel/dmake: update to 4.13.2 release (+)

Release notes:  https://github.com/jimjag/dmake/releases/tag/v4.13.2
DeltaFile
+3-3devel/dmake/distinfo
+1-2devel/dmake/Makefile
+4-52 files

Linux/linux 415f204 — include/trace/events landlock.h, security/landlock trace.c task.c

Merge tag 'landlock-7.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux

Pull Landlock fixes from Mickaël Salaün:
 "This mainly fixes the Landlock tracepoint support merged this cycle so
  that denial and rule events report the intended policy context,
  whether through tracefs or BTF-visible callbacks.

  The size of this all is mainly from propagating the corrected contract
  through event definitions and producers, adding new tests for the
  reported context, and updating the documentation.

  Also improve annotation and fix a GCC 16 build warning"

* tag 'landlock-7.3-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/mic/linux:
  landlock: Widen ruleset versions to 64 bits
  landlock: Add counted_by in landlock_domain
  landlock: Fix tracepoint contract documentation
  selftests/landlock: Test network denial context
  selftests/landlock: Test filesystem denial blockers

    [7 lines not shown]
DeltaFile
+179-120include/trace/events/landlock.h
+157-136tools/testing/selftests/landlock/net_test.c
+103-27tools/testing/selftests/landlock/trace_fs_test.c
+59-28security/landlock/task.c
+57-14security/landlock/trace.c
+29-30tools/testing/selftests/landlock/trace.h
+584-3559 files not shown
+751-43915 files

FreeBSD/ports 6909dcf — x11/cde-devel Makefile

x11/cde-devel: Add newly required pkgconf build dependency

Add a pkgconf build requirement. While at it also document an autoconf
and autoconf-archive requirement.

Fixes:          e4db654d831a
DeltaFile
+4-2x11/cde-devel/Makefile
+4-21 files

HardenedBSD/ports 6909dcf — x11/cde-devel Makefile

x11/cde-devel: Add newly required pkgconf build dependency

Add a pkgconf build requirement. While at it also document an autoconf
and autoconf-archive requirement.

Fixes:          e4db654d831a
DeltaFile
+4-2x11/cde-devel/Makefile
+4-21 files

LLVM/project dcef585 — llvm/lib/Transforms/Vectorize VPlanRecipes.cpp, llvm/test/Transforms/LoopVectorize/VPlan execution-frequencies-match-bfi.ll

[VPlan] Compute execution probability via APFloat for printing. (#226135)

Similar to #201824 (8e517e1d17b1), use APFloat to compute the execution
probability. This ensures the output is independent of the underlying
libc/OS/architecture.

Suggested in https://github.com/llvm/llvm-project/pull/203982.
DeltaFile
+9-9llvm/test/Transforms/LoopVectorize/VPlan/execution-frequencies-match-bfi.ll
+8-5llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+17-142 files

LLVM/project f676944 — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp

[SLP][NFC] Use BoUpSLP::getNumberOfParts() where appropriate (#225995)

Caches the results for better performance rather than directly calling
slpvectorizer::getNumberOrParts().

Small improvement in compile time.
DeltaFile
+18-31llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+18-311 files

LLVM/project 666f22b — llvm/lib/Target/SPIRV SPIRVStructurizer.cpp, llvm/test/CodeGen/SPIRV/structurizer cf.while.short-circuited-cond.ll cf.for.short-circuited-cond.ll

[SPIRV] Support structurizing nested break chains (#222459)

This PR updates the SPIRVStructurizer to handle nested break chains.
This pattern occurs when switch statements are lowered instead as branch
instructions and break statements need to exit out to an outer
containing block.

This is a required change to support #112056.

Assisted-by: GitHub Copilot
DeltaFile
+165-0llvm/test/CodeGen/SPIRV/structurizer/branch-no-switch.ll
+4-12llvm/test/CodeGen/SPIRV/structurizer/cf.for.short-circuited-cond.ll
+3-8llvm/test/CodeGen/SPIRV/structurizer/cf.while.short-circuited-cond.ll
+4-3llvm/lib/Target/SPIRV/SPIRVStructurizer.cpp
+176-234 files

LLVM/project 06d6747 — llvm/lib/Frontend/OpenMP OMPIRBuilder.cpp, mlir/lib/Target/LLVMIR/Dialect/OpenMP OpenMPToLLVMIRTranslation.cpp

[Flang][OpenMP][MLIR] Attach source location to target/target-data runtime c… (#222389)

…alls

This commit adds ident info to the OpenMP target call so the runtime now
reports the kernels source location in -g and non -g builds

Of note this does diverge from clang where the file info is only
provided with `-g` builds, however similar work is done in
`createMappingInformation` in
`mlir/lib/Target/LLVMIR/Dialect/OpenMPCommon.cpp`.
DeltaFile
+43-9mlir/lib/Target/LLVMIR/Dialect/OpenMP/OpenMPToLLVMIRTranslation.cpp
+40-0mlir/test/Target/LLVMIR/omptarget-target-region-source-loc.mlir
+28-0mlir/test/Target/LLVMIR/omptarget-target-data-source-loc-nodebug.mlir
+15-11llvm/lib/Frontend/OpenMP/OMPIRBuilder.cpp
+23-0mlir/test/Target/LLVMIR/omptarget-target-region-source-loc-nodebug.mlir
+5-5mlir/test/Target/LLVMIR/omptarget-llvm.mlir
+154-253 files not shown
+161-299 files

LLVM/project 52d7449 — llvm/lib/Target/AMDGPU SILowerControlFlow.cpp, llvm/test/CodeGen/AMDGPU lower-control-flow-live-intervals.mir branch-folding-implicit-def-subreg.ll

AMDGPU: Mark the SCC def dead when expanding CF pseudos

The control flow pseudos start with dead flags on the implicit scc def,
but did not transfer to the replacement instruction

Co-Authored-By: Claude Opus 5 <noreply at anthropic.com>
DeltaFile
+25-28llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-divergent-i1-used-outside-loop.ll
+25-25llvm/test/CodeGen/AMDGPU/collapse-endcf.mir
+20-20llvm/test/CodeGen/AMDGPU/branch-folding-implicit-def-subreg.ll
+16-16llvm/test/CodeGen/AMDGPU/GlobalISel/divergence-temporal-divergent-i1.ll
+19-6llvm/lib/Target/AMDGPU/SILowerControlFlow.cpp
+10-10llvm/test/CodeGen/AMDGPU/lower-control-flow-live-intervals.mir
+115-10513 files not shown
+165-15619 files