LLVM/project fdf0409llvm/lib/Target/WebAssembly WebAssemblyDebugValueManager.cpp

[WebAssembly] Avoid scanning unrelated debug values (NFCI) (#218378)

RegStackify looks for debug values when moving an instruction.

But when a debug use comes before the definition, it may collect values
for a lot of unrelated variables until the end of the block.

Stop early once all relevant values have been found instead.

(cherry picked from commit 5bff640ac99dc29ab61cb55bdfc9b992d09b5a85)
DeltaFile
+74-54llvm/lib/Target/WebAssembly/WebAssemblyDebugValueManager.cpp
+74-541 files

LLVM/project cefac32llvm/lib/DWARFLinker/Parallel DependencyTracker.h DependencyTracker.cpp, llvm/test/tools/dsymutil/X86/DWARFLinkerParallel odr-shared-subtree-demotion.s

[DWARFLinker] Walk each shared subtree's dependencies once (#218072)

cdc31cfa66f0 made every root that references an already-marked subtree
re-walk that subtree to record the completeness dependencies it
contributes, which is what makes the recorded dependency set complete
and independent of thread interleaving. That walk replaced the
isAlreadyMarked short-circuit which had kept marking linear, so a widely
shared subtree is re-parsed and re-resolved once per referencing root.

Linking a RelWithDebInfo clang went from 27s to 67s of wall time and
from 242s to 1447s of CPU, peak memory grew from 35GB to 63GB, and 7.0
billion dependencies were recorded for an unchanged dSYM.

Record only that a root carries the subtree's dependencies and walk each
distinct subtree once. All of a subtree's dependencies demote the same
root, so the expansion stops at the first one that does.

A subtree contributes two kinds of dependency. One kind is recorded
under the root referencing the subtree, varies with that root, and is

    [24 lines not shown]
DeltaFile
+298-0llvm/test/tools/dsymutil/X86/DWARFLinkerParallel/odr-shared-subtree-demotion.s
+164-55llvm/lib/DWARFLinker/Parallel/DependencyTracker.cpp
+121-14llvm/lib/DWARFLinker/Parallel/DependencyTracker.h
+583-693 files

LLVM/project 5f58ba5lldb/source/API SBEnvironment.cpp, lldb/unittests/API CMakeLists.txt SBEnvironmentTest.cpp

[lldb][API] Fix SBEnvironment crash when Set is called with a nullptr. (#218906)

Crashed because std::string is constructed with a nullptr. Wrap with
`llvm::StringRef`.

Add a unittest

(cherry picked from commit 69db8489be2f4e3cb1cf3f874403481d206b545c)
DeltaFile
+36-0lldb/unittests/API/SBEnvironmentTest.cpp
+12-3lldb/source/API/SBEnvironment.cpp
+1-0lldb/unittests/API/CMakeLists.txt
+49-33 files

LLVM/project b201342clang/lib/Format UnwrappedLineParser.cpp, clang/unittests/Format TokenAnnotatorTest.cpp

[clang-format] Harden star and amp annotation (#212856)

At this point we can't (or won't) decide wether this is a template
argument or just an expression, opt out of the specialized (and in the
test cases wrong) assignment.

Fixes #212622

(cherry picked from commit af15d15f9bbd5ac5d3f020d270b38ffe01b0a72a)

[clang-format][NFC] Apply review comments (#218142)

That were missed while merging #212856.

(cherry picked from commit 8dba93818258d95c46fa2c17e902a8256e4d91b5)
DeltaFile
+18-3clang/lib/Format/UnwrappedLineParser.cpp
+12-0clang/unittests/Format/TokenAnnotatorTest.cpp
+30-32 files

LLVM/project b6fee07clang/include/clang/Options Options.td, clang/test/Driver linker-opts.c entry.s

[Driver] Reject the joined form -exxx (#219658)

PR #69114 changed -e to JoinedOrSeparate so that the new --entry aliases
would work. This also accepts -exxx, silently treating a typo or GCC's
-export-dynamic as an entry name (rejected by #72804).

Make -e Separate again.
DeltaFile
+8-2clang/test/Driver/entry.s
+0-6clang/test/Driver/linker-opts.c
+1-1clang/include/clang/Options/Options.td
+9-93 files

LLVM/project 8e392aborc-rt/lib/bedrock/posix Memory.cpp

[orc-rt] Drop reserveMemory's /dev/zero fallback. (#219656)

Just use MAP_ANON / MAP_ANONYMOUS as available.

Also replaces <sys/errno.h> with <errno.h> and drops the now-unused
<fcntl.h>.
DeltaFile
+11-21orc-rt/lib/bedrock/posix/Memory.cpp
+11-211 files

LLVM/project 291a617llvm/lib/Transforms/Vectorize LoopVectorizationPlanner.h LoopVectorize.cpp

[LV] Invalidate cost model before code-gen (NFC) (#217556)

The planner previously held a reference to the
LoopVectorizationCostModel, which is only needed while planning and
computing the best VF. Change the member to a std::unique_ptr so the
planner owns it, and release it via a new clearCostModel() before
executing the best plan. This prevents code generation from relying on
cost-modeling decisions, surfacing any violations.

This patch also migrates one remaining cost-model lookup during codegen
(whether partial alias masks are used) to be VPlan-based (via
findIncomingAliasMask)

Note that there is one case remaining that needs migrating to VPlan yet.
That is checking if an epilogue is allowed.

PR: https://github.com/llvm/llvm-project/pull/217556
DeltaFile
+68-44llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+22-10llvm/lib/Transforms/Vectorize/LoopVectorizationPlanner.h
+90-542 files

LLVM/project f2c31b8compiler-rt/test/fuzzer merge-sigusr.test

[fuzzer] Restrict merge-sigusr.test to Linux (#216702)

The `fuzzer/merge-sigusr.test` test causes the whole `ninja check-all`
run on NetBSD to be killed with `SIGUSR2`.

It turns out the test is highly Linux-specific in at least two ways:

- The `setsid` command doesn't exist on any of Darwin, FreeBSD, and
NetBSD.

- `ps -o sess= <pid>` is highly unportable, too:

  - FreeBSD `ps` doesn't have the `sess` keyword at all.

- NetBSD `ps` does, but with different semantics: it's the session
pointer, not the session id as on Linux, which leads to randomly killing
unrelated processes.

Therefore this patch restricts the test to Linux instead of simply

    [3 lines not shown]
DeltaFile
+3-3compiler-rt/test/fuzzer/merge-sigusr.test
+3-31 files

LLVM/project cb2f67dcompiler-rt/test/msan fork.cpp, compiler-rt/test/sanitizer_common/TestCases/Posix fork_threaded.c

[sanitizer] Skip hanging tests on FreeBSD (#216703)

Three sanitizer tests hang indefinitely on FreeBSD:

```
MemorySanitizer-X86_64 :: fork.cpp
SanitizerCommon-tsan-x86_64-FreeBSD :: Posix/fork_threaded.c
ThreadSanitizer-x86_64 :: fork_multithreaded.cpp
```

All of them loop and don't time out, so they need to be terminated
manually for `ninja check-all` to complete. To avoid this, this patch
skips the affected tests.

Tested on `x86_64-pc-freebsd15.1`, `x86_64-pc-netbsd11.0` and
`x86_64-pc-linux-gnu`.
DeltaFile
+3-0compiler-rt/test/sanitizer_common/TestCases/Posix/fork_threaded.c
+1-1compiler-rt/test/msan/fork.cpp
+2-0compiler-rt/test/tsan/fork_multithreaded.cpp
+6-13 files

LLVM/project c7e6d56orc-rt/include/orc-rt-internal/support/sys Memory.h DynamicLibrary.h, orc-rt/lib/bedrock/Unix NativeDylibAPIs.inc NativeMemoryAPIs.inc

[orc-rt] Add a scheme for system-specific code. (#219648)

System-specific code was written two ad-hoc ways: .cpp files selected by
CMake, and Unix/*.inc textually included behind #if ladders.

Those operations are now declared in orc-rt-internal/support/sys/, with
one implementation per capability directory (posix/, darwin/, windows/).
CMake composes capability lists rather than selecting an OS list. E.g.
POSIX targets get posix/ plus their OS directory. A file belongs in a
shared list only if it is uniform across that list's members; where a
function needs an OS conditional it moves into an OS-specific directory
instead. The "Target OS ... unsupported" #error ladders go away with the
textual includes -- components no longer include system code at all, so
the diagnostic belongs in CMake.

hostOS* becomes the orc_rt::sys namespace, matching llvm::sys.

Cache invalidation is the exception, since it wants to inline: it is
declared in sys/CacheControl.h, which selects a per-system definition
header. Its generic path now uses __builtin___clear_cache instead of
declaring __clear_cache, which forced an opaque call.
DeltaFile
+0-103orc-rt/lib/bedrock/Unix/NativeMemoryAPIs.inc
+95-0orc-rt/lib/bedrock/posix/Memory.cpp
+92-0orc-rt/lib/bedrock/posix/DynamicLibrary.cpp
+0-72orc-rt/lib/bedrock/Unix/NativeDylibAPIs.inc
+48-0orc-rt/include/orc-rt-internal/support/sys/DynamicLibrary.h
+44-0orc-rt/include/orc-rt-internal/support/sys/Memory.h
+279-1756 files not shown
+419-20512 files

LLVM/project b8dcc02clang/include/clang/AST TemplateName.h, clang/lib/AST TemplateName.cpp

[Clang][C++29] Template pack indexing (#218738)

This partially implement p3670r4
(https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2026/p3670r4.pdf) I
haven't implemented mangling yet, it part to limit the scope of this
change which is somewhat larger than I thought it would be.

This introduces a new uncommon template name storage kind that stores a
pattern and the expanded parameter, like we do for types and
expressions.

The rest is fairly mechanical.

The feature is backported to C++98 (for type template parameters).
Funnilly, the backport of pack indexing of types was never actually
tested in C++98 mode and did not work.
It should be fixed by this PR but I'll write tests for it as a follow
up.


    [8 lines not shown]
DeltaFile
+456-0clang/test/SemaCXX/cxx2d-pack-indexing-template.cpp
+139-20clang/lib/Sema/TreeTransform.h
+156-3clang/lib/AST/TemplateName.cpp
+99-1clang/include/clang/AST/TemplateName.h
+82-0clang/lib/Parse/ParseDeclCXX.cpp
+43-32clang/lib/Parse/ParseExprCXX.cpp
+975-5658 files not shown
+1,896-21464 files

LLVM/project 2cba3adllvm/lib/Target/AMDGPU SIRegisterInfo.cpp AMDGPUInstructionSelector.cpp, llvm/lib/Target/RISCV RISCVRegisterInfo.cpp

GlobalISel: Replace MachineOperand based register constraint API (#219283)
DeltaFile
+38-39llvm/lib/Target/AMDGPU/AMDGPUInstructionSelector.cpp
+6-6llvm/lib/Target/WebAssembly/GISel/WebAssemblyInstructionSelector.cpp
+4-5llvm/lib/Target/RISCV/RISCVRegisterInfo.cpp
+4-5llvm/lib/Target/AMDGPU/SIRegisterInfo.cpp
+2-6llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.cpp
+3-2llvm/lib/Target/WebAssembly/WebAssemblyRegisterInfo.h
+57-635 files not shown
+66-7211 files

LLVM/project d34be0fclang-tools-extra/clang-tidy/readability IdentifierNamingCheck.cpp, clang-tools-extra/docs ReleaseNotes.md

[Clang-Tidy] Support lambda's init captures in `readability-identifier-naming`. (#214353)

Add an ability to declare a custom rules for lambda's init-captures. It
recently came up in some of the discussions and people find it useful to
to have rules for those types of identifiers.

Co-authored-by: Dmitrii Kuragin <dkuragin at adobe.com>
DeltaFile
+60-0clang-tools-extra/docs/clang-tidy/checks/readability/identifier-naming.rst
+45-0clang-tools-extra/test/clang-tidy/checkers/readability/identifier-naming-lambda-capture.cpp
+4-0clang-tools-extra/docs/ReleaseNotes.md
+4-0clang-tools-extra/clang-tidy/readability/IdentifierNamingCheck.cpp
+113-04 files

LLVM/project ec53c6eclang/include/clang/Options Options.td, clang/test/Driver linker-opts.c

[clang] Fix --entry command line option (#69114)

Fixes: #68355
DeltaFile
+6-0clang/test/Driver/linker-opts.c
+3-2clang/include/clang/Options/Options.td
+9-22 files

LLVM/project 8712ee6llvm/lib/Target/AArch64 AArch64TargetTransformInfo.cpp, llvm/test/Analysis/CostModel/AArch64 vec3-ops.ll load_store.ll

[AArch64] Improve load / store costs for non-power2 vector types. (#214695)

This adjusts the existing non-power-2 load/store cost routines to handle
larger than 128bit vectors, by splitting out the initial 128bit chunks
and costing the remainder with loads + inserts.

Fixes #214475
DeltaFile
+172-172llvm/test/Analysis/CostModel/AArch64/load_store.ll
+32-32llvm/test/Analysis/CostModel/AArch64/vec3-ops.ll
+17-16llvm/lib/Target/AArch64/AArch64TargetTransformInfo.cpp
+30-3llvm/test/Transforms/SLPVectorizer/AArch64/masked-loads-side-effects-after-vec.ll
+14-0llvm/test/Transforms/VectorCombine/AArch64/shrink-types.ll
+265-2235 files

LLVM/project c3a5d37llvm/lib/Transforms/InstCombine InstCombineAndOrXor.cpp, llvm/test/Transforms/InstCombine and-xor-or.ll

[InstCombine] Preserve no-wrap flags in BitwiseOp(trunc(A), trunc(B)) fold. (#219567)

proof: https://alive2.llvm.org/ce/z/BP5VSQ
DeltaFile
+195-0llvm/test/Transforms/InstCombine/and-xor-or.ll
+12-1llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+207-12 files

LLVM/project 118efe7clang/lib/Driver/ToolChains OpenBSD.cpp, clang/test/Driver openbsd.c

[Driver][OpenBSD] Pass -pie for static PIE links (#216907)

OpenBSD uses `rcrt0.o` for static PIE executables. This startup object
references the linker-defined `_DYNAMIC` symbol.

OpenBSD's system linker defaults to PIE, which previously masked the
missing driver flag. An LLD cross-linker built on a non-OpenBSD host
does not share that default. Consequently,
`clang --target=...-openbsd -static` selects `rcrt0.o`, but LLD does not
create `_DYNAMIC`, causing the link to fail.
DeltaFile
+6-2clang/lib/Driver/ToolChains/OpenBSD.cpp
+1-0clang/test/Driver/openbsd.c
+7-22 files

LLVM/project e744b81orc-rt/include/orc-rt/support SimplePackedSerialization.h, orc-rt/include/orc-rt/support/sps SimplePackedSerialization.h

[orc-rt] Group SPS headers under sps/ subdirectories. NFC. (#219614)

The SPS format headers move from support/ to support/sps/, and
SimpleRemoteCA -- whose wire format is SPS, fixed by compatibility with
LLVM's SimpleRemoteEPC -- moves from bedrock/ to bedrock/sps/. Every
file whose contents are SPS-specific now lives under an sps/ directory
in its layer, matching what the sps-ci -> sps rename set up. Tests and
include guards follow.
DeltaFile
+0-826orc-rt/include/orc-rt/support/SimplePackedSerialization.h
+826-0orc-rt/include/orc-rt/support/sps/SimplePackedSerialization.h
+0-441orc-rt/test/unit/support/SimplePackedSerializationTest.cpp
+441-0orc-rt/test/unit/support/sps/SimplePackedSerializationTest.cpp
+0-318orc-rt/test/unit/support/SPSWrapperFunctionTest.cpp
+318-0orc-rt/test/unit/support/sps/SPSWrapperFunctionTest.cpp
+1,585-1,58536 files not shown
+2,775-2,77442 files

LLVM/project b5a2282llvm/include/llvm/ADT SmallPtrSet.h

[ADT] Simplify SmallPtrSetIterator (NFC) (#219087)

This patch simplifies SmallPtrSetIterator by defining it directly
without the type-erased SmallPtrSetIteratorImpl.

In commit cc3fe3c546e0 (#160814), SmallPtrSetIteratorImpl was introduced
to reduce template instantiation bloat.  However, because
SmallPtrSetIteratorImpl is defined entirely in the header and its
trivial iterator loops are aggressively inlined at call sites, the
separate base class adds structural complexity without providing
meaningful code size savings.

Assisted-by: Antigravity
DeltaFile
+34-48llvm/include/llvm/ADT/SmallPtrSet.h
+34-481 files

LLVM/project e714fcellvm/docs/CommandGuide llvm-ar.md llvm-exegesis.md

[docs] Convert CommandGuide docs to Markdown
DeltaFile
+1,610-1,625llvm/docs/CommandGuide/llvm-debuginfo-analyzer.md
+581-604llvm/docs/CommandGuide/FileCheck.md
+524-549llvm/docs/CommandGuide/lit.md
+417-429llvm/docs/CommandGuide/llvm-cov.md
+302-310llvm/docs/CommandGuide/llvm-exegesis.md
+269-275llvm/docs/CommandGuide/llvm-ar.md
+3,703-3,79225 files not shown
+5,638-5,82731 files

LLVM/project d0a2bd3llvm/docs/CommandGuide lit.rst lit.md

[docs] Rename CommandGuide docs to Markdown
DeltaFile
+0-2,234llvm/docs/CommandGuide/llvm-debuginfo-analyzer.rst
+2,234-0llvm/docs/CommandGuide/llvm-debuginfo-analyzer.md
+0-961llvm/docs/CommandGuide/FileCheck.rst
+961-0llvm/docs/CommandGuide/FileCheck.md
+0-798llvm/docs/CommandGuide/lit.rst
+798-0llvm/docs/CommandGuide/lit.md
+3,993-3,99356 files not shown
+8,796-8,79662 files

LLVM/project 4cbcc02mlir/lib/Dialect/XeGPU/Transforms XeGPUPropagateLayout.cpp XeGPULayoutImpl.cpp, mlir/test/Dialect/XeGPU resolve-layout-conflicts.mlir

[mlir][xegpu] Resolve layout conflict on scf.for init operands (#215911)

Extends XeGPU layout conflict resolution to cover values carried across
region boundaries. Previously
`ResolveLayoutConflicts::resolveVectorConsumer` skipped all
region-branch operands, so a mismatch between a loop-carried
value's own layout and the layout its loop position requires was never
reconciled and causing lowering issue.
  
  
  assisted-by-claude

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply at anthropic.com>
DeltaFile
+80-3mlir/test/Dialect/XeGPU/resolve-layout-conflicts.mlir
+63-0mlir/lib/Dialect/XeGPU/Transforms/XeGPULayoutImpl.cpp
+14-19mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+157-223 files

LLVM/project 2d8d8f4clang/lib/CIR/Lowering/DirectToLLVM LowerToLLVMOpenCLMetadata.cpp, flang/lib/Optimizer/OpenACC/Support FIROpenACCTypeInterfaces.cpp

Rebase, address comments

Created using spr 1.3.7
DeltaFile
+521-370llvm/test/Transforms/LoopVectorize/AArch64/bounded-load.ll
+301-0llvm/test/Transforms/LoopVectorize/VPlan/epilogue-vectorization-printing.ll
+285-0llvm/test/Transforms/LoopVectorize/bounded-load-scalable.ll
+175-0clang/lib/CIR/Lowering/DirectToLLVM/LowerToLLVMOpenCLMetadata.cpp
+83-21flang/lib/Optimizer/OpenACC/Support/FIROpenACCTypeInterfaces.cpp
+100-0llvm/test/CodeGen/AMDGPU/trans-bf16-omod.ll
+1,465-39147 files not shown
+2,275-67353 files

LLVM/project 48378dellvm/test/Transforms/SLPVectorizer/RISCV splat-gather-trim-combined.ll

[SLP][NFC]Add an extra test for throttled splats, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/219607
DeltaFile
+92-0llvm/test/Transforms/SLPVectorizer/RISCV/splat-gather-trim-combined.ll
+92-01 files

LLVM/project efaaff6clang/test/OpenMP parallel_for_codegen.cpp, llvm/test/CodeGen/AMDGPU llvm.amdgcn.icmp.w32.ll llvm.amdgcn.icmp.w64.ll

Rebase, address comments

Created using spr 1.3.7
DeltaFile
+0-2,905llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w64.ll
+0-2,456llvm/test/CodeGen/AMDGPU/llvm.amdgcn.fcmp.w32.ll
+1,049-1,049clang/test/OpenMP/parallel_for_codegen.cpp
+0-2,074llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w64.ll
+0-1,719llvm/test/CodeGen/AMDGPU/llvm.amdgcn.icmp.w32.ll
+1,194-0orc-rt/test/unit/bedrock/SessionTest.cpp
+2,243-10,203916 files not shown
+38,163-34,943922 files

LLVM/project ce39ebamlir/test/Integration/GPU/CUDA/TensorCore wmma-matmul-f32.mlir wmma-matmul-f32-bare-ptr.mlir

[mlir][gpu] Drop the explicit sm_70 from the CUDA WMMA integration tests (#219373)

Let the three TensorCore WMMA tests compile for the default chip.

CUDA 13 dropped Volta, so its `ptxas` no longer knows `sm_70`:

  ptxas fatal : Value 'sm_70' is not defined for option 'gpu-name'

which fails all three tests on any machine with a current toolkit,
whatever GPU it has -- the arch is pinned in the RUN line and never
reached the hardware's own.

Nothing here needs the arch pinned. `sm_75` is already the default chip
of `gpu-lower-to-nvvm-pipeline`, of `nvvm-attach-target`, and of
`#nvvm.target`, and it is the oldest arch a current `ptxas` accepts; the
WMMA shapes these tests use are available there. Every other CUDA
integration test that doesn't need a specific arch takes that default,
so take it here too, and these tests follow the one place the minimum
supported arch is written down rather than pinning their own copy of it

    [2 lines not shown]
DeltaFile
+1-1mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32.mlir
+1-1mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f32-bare-ptr.mlir
+1-1mlir/test/Integration/GPU/CUDA/TensorCore/wmma-matmul-f16.mlir
+3-33 files

LLVM/project 9a6c60corc-rt/include/orc-rt/support BitmaskEnum.h Math.h, orc-rt/lib/bedrock ExecutorProcessInfo.cpp

[orc-rt] Replace Math.h in favor of bit.h. (#219390)

Replace isPowerOf2 with has_single_bit, and nextPowerOf2 with bit_width
(plus necessary arithmetic at the call sites, and a guard on the long
from sysconf in detectPageSize, which only excluded -1).

Bitmask enums must now have an unsigned underlying type (STL <bit> APIs
require it, and "bit.h" matches the STL).
DeltaFile
+0-78orc-rt/test/unit/support/MathTest.cpp
+0-35orc-rt/include/orc-rt/support/Math.h
+19-3orc-rt/test/unit/support/BitmaskEnumTest.cpp
+13-3orc-rt/include/orc-rt/support/BitmaskEnum.h
+13-0orc-rt/test/unit/support/bit-test.cpp
+3-3orc-rt/lib/bedrock/ExecutorProcessInfo.cpp
+48-1223 files not shown
+50-1269 files

LLVM/project 5224a6cllvm/test/Transforms/LoopVectorize/VPlan predicator.ll

Extra tests for mask/phi re-use
DeltaFile
+149-0llvm/test/Transforms/LoopVectorize/VPlan/predicator.ll
+149-01 files

LLVM/project 078262allvm/lib/Transforms/Vectorize VPlanPredicator.cpp, llvm/test/Transforms/LoopVectorize/VPlan predicator.ll

Share block masks in reconstructSSA for blend masks
DeltaFile
+10-18llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
+4-7llvm/test/Transforms/LoopVectorize/VPlan/predicator.ll
+14-252 files

LLVM/project 6c53d34llvm/lib/Transforms/Vectorize VPlanPredicator.cpp, llvm/test/Transforms/LoopVectorize blend-in-header.ll predicatedinst-loop-invariant.ll

Don't preserve branch-on-constant
DeltaFile
+15-62llvm/test/Transforms/LoopVectorize/constantfolder.ll
+5-25llvm/test/Transforms/LoopVectorize/predicatedinst-loop-invariant.ll
+2-10llvm/test/Transforms/LoopVectorize/blend-in-header.ll
+11-1llvm/lib/Transforms/Vectorize/VPlanPredicator.cpp
+2-9llvm/test/Transforms/LoopVectorize/X86/replicate-recipe-with-only-first-lane-used.ll
+3-7llvm/test/Transforms/LoopVectorize/RISCV/dead-ops-cost.ll
+38-1141 files not shown
+39-1217 files