LLVM/project 1d62c58 — clang/lib/Driver/ToolChains CommonArgs.cpp Clang.cpp, clang/test/Driver aarch64-uefi-constructed-args.c aarch64-security-options.c

[clang][Driver] Use the Windows ARM64 defaults for aarch64-unknown-uefi

Match the Windows ARM64 driver defaults for aarch64-unknown-uefi, which
follows the same ABI:

* char is signed, so do not pass -fno-signed-char,
* the frame chain must stay valid even when frame pointers are omitted,
  so -fomit-frame-pointer yields -mframe-pointer=reserved rather than
  none, as the backend reserves the frame pointer for UEFI as well,
* -msign-return-address selects the B key, the only one the backend
  accepts for Windows and UEFI.

Assisted-by: Claude
DeltaFile
+9-0clang/test/Driver/aarch64-uefi-constructed-args.c
+9-0clang/test/Driver/aarch64-security-options.c
+4-4clang/lib/Driver/ToolChains/CommonArgs.cpp
+4-4clang/lib/Driver/ToolChains/Clang.cpp
+26-84 files

LLVM/project 43bb215 — clang/lib/Basic/Targets AArch64.h AArch64.cpp, clang/lib/Driver Driver.cpp

[clang] Add aarch64-unknown-uefi target

Add the aarch64-unknown-uefi target to clang, building on the backend
support added in the preceding patches. Like x86_64-unknown-uefi it
follows the Microsoft ABI conventions, matching the Windows ARM64 target
which is the only way EFI applications for AArch64 can be built with
Clang/LLVM today:

* add UEFIAArch64TargetInfo: LLP64 types, Microsoft C++ ABI, char*
  based va_list and the Win64 calling convention kind,
* use the Windows AArch64 ABI info in CodeGen for UEFI,
* accept aarch64 for *-uefi triples in the driver.

The UEFI toolchain already handles the linker invocation (lld-link with
/subsystem:efi_application), so no further driver changes are needed.

Assisted-by: Claude
DeltaFile
+50-0clang/lib/Basic/Targets/AArch64.cpp
+43-0clang/test/CodeGen/AArch64/uefi-abi.c
+19-0clang/test/Driver/aarch64-uefi-constructed-args.c
+14-0clang/lib/Basic/Targets/AArch64.h
+0-6clang/test/Driver/unsupported-target-arch.c
+4-2clang/lib/Driver/Driver.cpp
+130-89 files not shown
+147-915 files

LLVM/project 43eb3d3 — llvm/docs ReleaseNotes.md, llvm/lib/Target/AArch64 AArch64CodeLayoutOpt.cpp AArch64MachineFunctionInfo.cpp

[AArch64] Apply the Windows SEH and CRT codegen constraints to UEFI

aarch64-unknown-uefi uses SEH unwind information and has no C runtime
library, so the remaining Windows specific codegen decisions that follow
from this apply to it too:

* do not align loops or basic blocks, since SEH unwind info generation
  needs the exact function layout before alignment padding is inserted,
* sign return addresses with the B key by default and reject A key
  signing, matching the pac_sign_lr unwind code used by the unwinder;
  the branch protection parser defaults to the B key for UEFI as well,
  so that -mbranch-protection=pac-ret keeps working,
* do not lower wide shifts to libcalls at -Oz, as those helpers are not
  available.

The corresponding Windows tests gain aarch64-unknown-uefi run lines and
the LLVM release notes announce the new target, which completes the
backend side of aarch64-unknown-uefi support.

Assisted-by: Claude
DeltaFile
+18-0llvm/unittests/TargetParser/TargetParserTest.cpp
+5-5llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+2-2llvm/lib/TargetParser/ARMTargetParserCommon.cpp
+2-2llvm/lib/Target/AArch64/AArch64MachineFunctionInfo.cpp
+4-0llvm/docs/ReleaseNotes.md
+1-1llvm/lib/Target/AArch64/AArch64CodeLayoutOpt.cpp
+32-103 files not shown
+35-109 files

LLVM/project 6786c22 — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/lib/Transforms/Vectorize/SLPVectorizer SLPUtils.h SLPReductionUtils.h

[SLP][modularisation][NFC] Move getReductionInstr to SLPReductionUtils, getAggregateSize to SLPUtils

Move the reduction-root helper getReductionInstr out of SLPVectorizer.cpp
into the self-contained SLPVectorizer/SLPReductionUtils.{h,cpp} module.

getAggregateSize is not reduction-specific: its only user is
findBuildAggregate and it only computes the element count of a homogeneous
aggregate from its type. Move it to the generic SLPVectorizer/SLPUtils
module instead.

Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922

Assisted by AI
DeltaFile
+0-79llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+47-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPReductionUtils.cpp
+29-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
+9-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPReductionUtils.h
+5-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
+90-795 files

LLVM/project d893a2a — llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/lib/Transforms/Vectorize/SLPVectorizer SLPUtils.h SLPUtils.cpp

[SLP][modularisation][NFC] Move loop trip-count helpers to SLPUtils

Move the BoUpSLP-independent helpers findInnermostNonInvariantLoop and
getLoopTripCount out of SLPVectorizer.cpp into the self-contained
SLPVectorizer/SLPUtils.{h,cpp} module. getLoopTripCount reads the file-local
LoopAwareTripCount cl::opt, which stays static in SLPVectorizer.cpp and is
passed to the moved helper as an explicit parameter. NFC.

Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922
DeltaFile
+2-34llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+32-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
+11-0llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
+45-343 files

LLVM/project 7bebaee — clang-tools-extra/clang-tidy/readability RedundantParenthesesCheck.cpp, clang-tools-extra/docs ReleaseNotes.md

[clang-tidy] Fix readability-redundant-parentheses false positives on decltype (#224715)

Preserve parentheses that affect type deduction in `decltype` operands
and
`decltype(auto)` initializers and return statements. This also covers
dependent operands in templates and their instantiations, and operands
that create temporaries. Continue diagnosing redundant parentheses whose
removal does not affect type deduction, such as those in
`decltype((1))`.

Fixes #223522.
DeltaFile
+143-0clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses-cxx14.cpp
+26-1clang-tools-extra/clang-tidy/readability/RedundantParenthesesCheck.cpp
+27-0clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses-cxx20.cpp
+9-0clang-tools-extra/test/clang-tidy/checkers/readability/redundant-parentheses.cpp
+4-0clang-tools-extra/docs/ReleaseNotes.md
+209-15 files

LLVM/project 67d24a0 — llvm/lib/MC/MCParser AsmParser.cpp DarwinAsmParser.cpp, llvm/test/MC/AsmParser align_invalid.s

[MCParser] Fix power-of-2 alignment value range checking in a few places (#232663)
DeltaFile
+5-7llvm/lib/MC/MCParser/DarwinAsmParser.cpp
+4-2llvm/lib/MC/MCParser/AsmParser.cpp
+4-0llvm/test/MC/AsmParser/align_invalid.s
+13-93 files

LLVM/project df54c7d — clang/test/CXX/over/over.oper/over.inc/over.inc.default p1.cpp p2.cpp, clang/test/SemaCXX cxx2d-defaulted-postfix-operators.cpp

Test constrained and explicit object operators in defaulted postfix operators

Cover prefix and postfix operators that are constrained or declared with
an explicit object parameter, and add the remaining deletion and
constexpr-mismatch notes that were not yet tested: the decrement forms,
protected members, and non-constexpr constructors, conversion functions
and consteval declarations.

Co-Authored-By: Claude Fable 5.1 <noreply at anthropic.com>
DeltaFile
+229-0clang/test/CXX/over/over.oper/over.inc/over.inc.default/p3.cpp
+219-0clang/test/CXX/over/over.oper/over.inc/over.inc.default/p2.cpp
+73-0clang/test/SemaCXX/cxx2d-defaulted-postfix-operators.cpp
+37-0clang/test/CXX/over/over.oper/over.inc/over.inc.default/p1.cpp
+558-04 files

LLVM/project 05eadf9 — clang/lib/Sema SemaDeclCXX.cpp, clang/test/CXX/over/over.oper/over.inc/over.inc.default p1.cpp

Defer all defaulted postfix operator checks in dependent contexts

Return early from CheckExplicitlyDefaultedPostfixOperator when the first
parameter type is dependent or the function is in a dependent context,
after the prefix operator lookup. A deduced return type in a template is
now diagnosed when the template is instantiated.

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+32-43clang/lib/Sema/SemaDeclCXX.cpp
+12-6clang/test/CXX/over/over.oper/over.inc/over.inc.default/p1.cpp
+44-492 files

LLVM/project a7088ac — clang/lib/Sema SemaDeclCXX.cpp

Group defaulted postfix operator check functions before the build functions

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+89-89clang/lib/Sema/SemaDeclCXX.cpp
+89-891 files

LLVM/project ebb859b — llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer VecUtils.h, llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes LoadStoreVec.h

[SandboxVec][LoadStoreVec] Support constant vectors of mixed types
DeltaFile
+414-4llvm/test/Transforms/SandboxVectorizer/Passes/LoadStoreVec/load_store_vec_mixed_types.ll
+109-11llvm/lib/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.cpp
+58-13llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/VecUtils.h
+28-2llvm/include/llvm/Transforms/Vectorize/SandboxVectorizer/Passes/LoadStoreVec.h
+18-0llvm/lib/SandboxIR/Constant.cpp
+12-0llvm/unittests/SandboxIR/SandboxIRTest.cpp
+639-304 files not shown
+653-3310 files

LLVM/project f7160d3 — clang/lib/Sema SemaDeclCXX.cpp

Extract the copy and destroy check for defaulted postfix operators

Move the checks that C can be direct-initialized from an lvalue of type C
and then destroyed, from the context of the function body, into
canCopyAndDestroyForDefaultedPostfixOperator.

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+65-40clang/lib/Sema/SemaDeclCXX.cpp
+65-401 files

LLVM/project 37a89bc — llvm/lib/Transforms/Vectorize/SLPVectorizer SLPUtils.cpp SLPUtils.h

fixup! [SLP][modularisation][NFC] Move isFirstInsertElement/getDebugLocFromPHI to SLPUtils
DeltaFile
+4-4llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.h
+2-1llvm/lib/Transforms/Vectorize/SLPVectorizer/SLPUtils.cpp
+6-52 files

LLVM/project 3d43e53 — clang/include/clang/Basic DiagnosticSemaKinds.td, clang/lib/Sema SemaDeclCXX.cpp

Use InitializationSequence::Diagnose for defaulted postfix operator copy

Replace the hand-written explanation of why copy construction fails in a
defaulted postfix operator with InitializationSequence::Diagnose. This
emits errors rather than notes, so it is a FIXME for now.

Co-Authored-By: Claude Opus 5.5 <noreply at anthropic.com>
DeltaFile
+6-35clang/lib/Sema/SemaDeclCXX.cpp
+4-6clang/include/clang/Basic/DiagnosticSemaKinds.td
+4-4clang/test/CXX/over/over.oper/over.inc/over.inc.default/p2.cpp
+14-453 files

LLVM/project c34ffb6 — llvm/test/CodeGen/M68k pipeline.ll, llvm/test/CodeGen/M68k/Arith bitwise.ll

[M68k,Xtensa][test] Regenerate tests after LiveVariables removal changes (#233183)

Fix after #229069 (InstrEmitter no longer emits kill flags) and #228618
(LiveIntervals runs before PHIElimination).
DeltaFile
+170-170llvm/test/CodeGen/Xtensa/atomic-rmw.ll
+42-42llvm/test/CodeGen/Xtensa/mul.ll
+39-23llvm/test/CodeGen/Xtensa/rotl-rotr.ll
+2-2llvm/test/CodeGen/M68k/CConv/rtd-call.ll
+2-2llvm/test/CodeGen/M68k/Arith/bitwise.ll
+1-1llvm/test/CodeGen/M68k/pipeline.ll
+256-2406 files

LLVM/project 3e36d67 — llvm/tools/llvm-link llvm-link.cpp, llvm/tools/llvm-modextract llvm-modextract.cpp

[tools] Parse library options into LLVMContext (#233182)

cl::ParseCommandLineOptions sets library options in T::Global, so IR
options will no longer affect them after LLVMCore migrates off cl::opt.
Switch to cl::parseCommandLineOptions.
DeltaFile
+5-2llvm/tools/verify-uselistorder/verify-uselistorder.cpp
+3-2llvm/tools/llvm-modextract/llvm-modextract.cpp
+3-2llvm/tools/llvm-link/llvm-link.cpp
+11-63 files

LLVM/project eec054b — libcxx/include string, libcxx/test/std/strings/basic.string/string.modifiers/string_assign iterator.pass.cpp

[libc++] Fix use-after-free during self-assignment (#225296)

The range [data(), data() + size() + 1) points into the string's own
buffer and is one element longer than the capacity when the buffer is
full, so assigning it reallocates:

  std::string str;
str.resize(str.capacity(), 'a'); // size() == capacity()
  str.assign(str.data(), str.data() + str.size() + 1);  // reallocates

__assign_trivial called __grow_by_without_replace up front and read the
range afterwards, by which point the buffer holding it had been
released: that is a heap-use-after-free for a long string, and for a
short string the long representation has been written over the small
buffer the range points into, so the assignment silently stores garbage.

Allocate the new buffer and read the range into it before releasing the
buffer the string holds. That also keeps the range valid in the exotic
case where it is the byte representation of the string object itself,

    [14 lines not shown]
DeltaFile
+20-4libcxx/test/std/strings/basic.string/string.modifiers/string_assign/iterator.pass.cpp
+13-10libcxx/include/string
+33-142 files

LLVM/project 5a26fe4 — lld/test/MachO cstring-dedup.s

[lld][MachO][NFC] Don't let the output path trip cstring-dedup.s's check-not (#232631)

The __cstring check uses --implicit-check-not foo/bar, but llvm-objdump
prints the input file's full path first. When that path contains "bar"
(e.g. /home/isanbard/...), the test fails. Pass --no-leading-headers so
the path isn't printed. That also suppresses the "Contents of
(__TEXT,__cstring) section" line, so drop that STR check; --section
already restricts the output to __cstring.

Assisted-by: Claude Opus 5.5
DeltaFile
+1-2lld/test/MachO/cstring-dedup.s
+1-21 files

LLVM/project 99121aa — flang/lib/Semantics openmp-utils.cpp, flang/test/Lower/OpenMP metadirective-user.f90

[flang][OpenMP] Don't treat different runtime conditions as subsets

When two METADIRECTIVE candidates have the same score and one selector is
a strict subset of the other, the superset wins. Flang ranks every
runtime condition with the same property, so isStrictSubset saw
different conditions as the same:

  !$omp metadirective &
  !$omp& when(user={condition(a)}, &
  !$omp&      implementation={vendor(score(4): llvm)}: taskyield) &
  !$omp& when(user={condition(b)}, device={kind(host)}, &
  !$omp&      implementation={vendor(score(3): llvm)}: taskwait)

Both candidates score 5, and `b` was tested first, so TASKWAIT ran when
both conditions were true. Neither selector is a subset of the other, so
clause order should decide.

This patch adds a UserCondition key to VariantMatchInfo, and
isStrictSubset requires equal keys when the first selector has a

    [9 lines not shown]
DeltaFile
+77-0flang/test/Lower/OpenMP/metadirective-user.f90
+37-0llvm/unittests/Frontend/OpenMPContextTest.cpp
+13-3flang/lib/Semantics/openmp-utils.cpp
+7-0llvm/lib/Frontend/OpenMP/OMPContext.cpp
+4-0llvm/include/llvm/Frontend/OpenMP/OMPContext.h
+138-35 files

LLVM/project 690d861 — llvm/lib/MC MCLFI.cpp, llvm/test/MC/AArch64/LFI abi-note.s

[LFI][MC] Mark .note.LFI.ABI section with SHF_GNU_RETAIN (#233164)

Sections in a COMDAT group are subject to garbage collection during
linking when `--gc-sections` is enabled (even SHT_NOTE sections).
Because nothing references `.note.LFI.ABI.<arch>`, the deduplicated note
was previously removed by the linker with `-Wl,--gc-sections`.

Add `SHF_GNU_RETAIN` to `.note.LFI.ABI.<arch>` so that linkers recognize
it as a GC root while still deduplicating it via COMDAT.

Fixes #233086.
DeltaFile
+4-3llvm/lib/MC/MCLFI.cpp
+2-2llvm/test/MC/X86/LFI/abi-note.s
+2-2llvm/test/MC/AArch64/LFI/abi-note.s
+8-73 files

LLVM/project 6f63a4f — mlir/lib/Dialect/Arith/IR ArithCanonicalization.td, mlir/test/Dialect/Arith canonicalize.mlir

[mlir][arith] Drop nsw when canonicalizing shifted truncations
DeltaFile
+54-0mlir/test/Dialect/Arith/canonicalize.mlir
+12-2mlir/lib/Dialect/Arith/IR/ArithCanonicalization.td
+66-22 files

LLVM/project b921a87 — libc/shared/math/static_rounding exp2f.h, libc/src/__support/math exp2f_integer_eval.h

[libc][math] Add integer-only implementation for exp2f.

- Correctly rounded to all rounding mode (statically).
- Share core computations with expf integer-only static-rounding version
- Optimize for code size.

Assisted-by: Gemini for analysis and refactoring.
DeltaFile
+131-0libc/src/__support/math/exp2f_integer_eval.h
+44-17libc/test/src/math/exp2f_test.cpp
+39-13libc/test/src/math/smoke/exp2f_test.cpp
+32-1utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+30-0libc/shared/math/static_rounding/exp2f.h
+28-0libc/test/shared/shared_math_test.cpp
+304-319 files not shown
+358-3315 files

LLVM/project eefdf40 — libc/src/__support/FPUtil CMakeLists.txt fp_bitwise.h, libc/test/src/__support/FPUtil CMakeLists.txt fp_bitwise_test.cpp

[libc] Add floating-point bitwise operations to FPUtil.

Add `fp_and`, `fp_or`, `fp_xor`, `fp_andnot`, and `fp_not` to
`src/__support/FPUtil/fp_bitwise.h` to perform bitwise operations on
floating-point values directly in FP/SIMD registers when SSE2 or AArch64 NEON
is available, avoiding GPR round-trips.

DeltaFile
+189-0libc/src/__support/FPUtil/fp_bitwise.h
+135-0libc/test/src/__support/FPUtil/fp_bitwise_test.cpp
+13-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+13-0libc/test/src/__support/FPUtil/CMakeLists.txt
+13-0libc/src/__support/FPUtil/CMakeLists.txt
+12-0utils/bazel/llvm-project-overlay/libc/test/src/__support/FPUtil/BUILD.bazel
+375-06 files

LLVM/project 4a5df28 — mlir/lib/Dialect/Arith/IR ArithOps.cpp, mlir/test/Dialect/Arith canonicalize.mlir

[mlir][arith] Fix overflow flags when folding nested truncations
DeltaFile
+52-0mlir/test/Dialect/Arith/canonicalize.mlir
+5-3mlir/lib/Dialect/Arith/IR/ArithOps.cpp
+57-32 files

LLVM/project d1c8cef — mlir/lib/Conversion/ArithToLLVM ArithToLLVM.cpp, mlir/test/Conversion/ArithToLLVM arith-to-llvm.mlir

[mlir][ArithToLLVM] Preserve defined signed remainder by -1

Select a zero dividend when the divisor is -1 before emitting llvm.srem.
This preserves arith.remsi(INT_MIN, -1) == 0 without introducing LLVM UB.
Support scalar and vector operands, including multidimensional vectors.

Add regression coverage to the existing ArithToLLVM conversion test.
Tests were not run as requested.
DeltaFile
+85-11mlir/test/Conversion/ArithToLLVM/arith-to-llvm.mlir
+57-2mlir/lib/Conversion/ArithToLLVM/ArithToLLVM.cpp
+142-132 files

LLVM/project fee4778 — libc/src/__support/mathvec tanpif.h tanhf.h, libc/src/string string_length.h

[libc][NFC] Fix typo 'implemenation' in comments (#233089)

Fix the misspelling "implemenation" -> "implementation" in comments in
   libc/src/__support/mathvec/*.h and libc/src/string/string_length.h.
   No functional change.
DeltaFile
+1-1libc/src/string/string_length.h
+1-1libc/src/__support/mathvec/tanpif.h
+1-1libc/src/__support/mathvec/tanhf.h
+1-1libc/src/__support/mathvec/tanf.h
+1-1libc/src/__support/mathvec/sqrtf.h
+1-1libc/src/__support/mathvec/sinpif.h
+6-626 files not shown
+32-3232 files

LLVM/project 1feef69 — clang/lib/Driver Driver.cpp Compilation.cpp, clang/test/Driver offload-parallel-device-cc1.cu

[clang][Driver] Honor `--offload-jobs` in device-only compilation

`--offload-jobs=N` runs independent device compilations in parallel, but
it had no effect when only device code is compiled; multi-target
device-only builds still compiled each target one at a time.

Two things got in the way. The device-only compile produces an object
directly, and that step was not treated as one that can run in parallel.
Each target's compile is also followed by its own device link, so the
compiles that could run together are not next to each other, and only
neighboring steps were grouped for parallel execution.

Treat the object-producing device compile as parallelizable, and group
same-kind compiles even when other independent steps sit between them.
The grouped compiles do not depend on those in-between steps, so the
output is unchanged and only the build time drops.
DeltaFile
+37-36clang/lib/Driver/Compilation.cpp
+7-0clang/test/Driver/offload-parallel-device-cc1.cu
+2-1clang/lib/Driver/Driver.cpp
+46-373 files

LLVM/project ac3816e — lldb/packages/Python/lldbsuite/test/tools/lldb_dap session.py types.py, lldb/test/API/tools/lldb-dap/startDebugging TestDAP_startDebugging.py

[lldb-dap] Migrate the startDebugging tests (#232753)

Port TestDAP_startDebugging to the new test infrastructure
DeltaFile
+43-44lldb/test/API/tools/lldb-dap/startDebugging/TestDAP_startDebugging.py
+25-9lldb/packages/Python/lldbsuite/test/tools/lldb_dap/types.py
+16-0lldb/packages/Python/lldbsuite/test/tools/lldb_dap/session.py
+84-533 files

LLVM/project d42e422 — lldb/test/API lit.cfg.py

[lldb-dap][test] Propagate the LLDBDAP_RUN_AS_SERVER environment (#232792)

It previously only worked when calling `lldb-dotest` directly.
DeltaFile
+4-0lldb/test/API/lit.cfg.py
+4-01 files

LLVM/project 8fa94d0 — llvm/test/tools/llvm-reduce run-ir-passes.ll, llvm/tools/llvm-reduce llvm-reduce.cpp

[llvm-reduce] Parse library options into LLVMContext (#233162)

cl::ParseCommandLineOptions sets library options in T::Global,
no longer read by LibraryOptionsContext::get since #233044.
Switch to cl::parseCommandLineOptions.
DeltaFile
+15-1llvm/test/tools/llvm-reduce/run-ir-passes.ll
+3-3llvm/tools/llvm-reduce/llvm-reduce.cpp
+18-42 files