LLVM/project b8c301flldb/scripts generate-sbapi-dwarf-enum.py

Fix the regex in the sbapi python script
DeltaFile
+1-1lldb/scripts/generate-sbapi-dwarf-enum.py
+1-11 files

LLVM/project 82383d5mlir/include/mlir/Dialect/Tosa/IR TosaOps.td, mlir/lib/Conversion/TosaToLinalg TosaToLinalg.cpp

[mlir][tosa] Rename Tosa Div op to IntDiv Op (#80047)

This patch renames Tosa Div Op to IntDiv Op to align with the TOSA Spec.

<!-- Reviewable:start -->
- - -
This change is [<img src="https://reviewable.io/review_button.svg"
height="34" align="absmiddle"
alt="Reviewable"/>](https://reviewable.io/reviews/llvm/llvm-project/80047)
<!-- Reviewable:end -->

Signed-off-by: Tai Ly <tai.ly at arm.com>
DeltaFile
+4-4mlir/test/Dialect/Tosa/constant-op-fold.mlir
+3-3mlir/lib/Conversion/TosaToLinalg/TosaToLinalg.cpp
+3-3mlir/test/Dialect/Tosa/ops.mlir
+2-2mlir/include/mlir/Dialect/Tosa/IR/TosaOps.td
+2-2mlir/lib/Dialect/Tosa/IR/TosaOps.cpp
+1-1mlir/lib/Dialect/Tosa/Transforms/TosaMakeBroadcastable.cpp
+15-154 files not shown
+19-1910 files

LLVM/project fa9e96alldb/test/API/macosx/nslog TestDarwinNSLogOutput.py

Skip pexpect test under ASAN
DeltaFile
+2-0lldb/test/API/macosx/nslog/TestDarwinNSLogOutput.py
+2-01 files

LLVM/project dcbf0fclldb/scripts generate-sbapi-dwarf-enum.py, lldb/source/API CMakeLists.txt

[lldb] Use Python script to generate SBLanguages.h (#90753)

Use a Python script to generate SBLanguages.h instead of piggybacking on
LLDB TableGen. This addresses Nico Weber's post-commit feedback.
DeltaFile
+67-0lldb/scripts/generate-sbapi-dwarf-enum.py
+0-67lldb/utils/TableGen/LLDBSBAPIDWARFEnum.cpp
+14-4lldb/source/API/CMakeLists.txt
+0-8lldb/utils/TableGen/LLDBTableGen.cpp
+0-1lldb/utils/TableGen/CMakeLists.txt
+81-805 files

LLVM/project c4e8e2clldb/test/API/driver/quit_speed TestQuitWithProcess.py

Skip timing-sensitive test under ASAN
DeltaFile
+2-1lldb/test/API/driver/quit_speed/TestQuitWithProcess.py
+2-11 files

LLVM/project f2d7130bolt/include/bolt/Profile DataAggregator.h, bolt/lib/Profile DataAggregator.cpp

[BOLT][NFC] Simplify DataAggregator::getFallthroughsInTrace (#90752)

DeltaFile
+13-23bolt/lib/Profile/DataAggregator.cpp
+1-7bolt/include/bolt/Profile/DataAggregator.h
+14-302 files

LLVM/project fc382dbllvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/RISCV combined-loads-stored.ll

[SLP]Improve comparison of shuffled loads/masked gathers by adding GEP cost.

In some cases masked gather is less profitable than insert-subvector of
consecutive/strided stores. SLP has this kind of analysis, but need to
improve it by adding the cost of the GEP analysis.
Also, the GEP cost estimation for masked gather is fixed.

Reviewers: RKSimon

Reviewed By: RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/90737
DeltaFile
+56-20llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+6-9llvm/test/Transforms/SLPVectorizer/RISCV/combined-loads-stored.ll
+62-292 files

LLVM/project 59ef94dllvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/RISCV minbw-with-and-and-scalar-trunc.ll trunc-to-large-than-bw.ll

[SLP]Do not include the cost of and -1, <v> and emit just <v> after MinBitWidth.

After minbitwidth analysis, and <v>, (power_of_2 - 1 const) can be
transformed into just an <v>, (all_ones const), which can be ignored at
the cost estimation and at the codegen. x264 benchmark has this pattern.

Reviewers: RKSimon

Reviewed By: RKSimon

Pull Request: https://github.com/llvm/llvm-project/pull/90739
DeltaFile
+24-0llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+1-2llvm/test/Transforms/SLPVectorizer/RISCV/minbw-with-and-and-scalar-trunc.ll
+1-2llvm/test/Transforms/SLPVectorizer/RISCV/trunc-to-large-than-bw.ll
+26-43 files

LLVM/project e846778llvm/lib/Transforms/Vectorize VPlanRecipes.cpp VPlan.h, llvm/unittests/Transforms/Vectorize VPlanTest.cpp

[VPlan] Make CallInst optional for VPWidenCallRecipe (NFCI).

Replace relying on the underling CallInst for looking up the called
function and its types by instead adding the called function as operand,
in line with how called functions are handled in CallInst.

Operand bundles, metadata and fast-math flags are optionally used if
there's an underlying CallInst.

This enables creating VPWidenCallRecipes without requiring an underlying
IR instruction.
DeltaFile
+29-17llvm/lib/Transforms/Vectorize/VPlanRecipes.cpp
+20-6llvm/lib/Transforms/Vectorize/VPlan.h
+17-9llvm/unittests/Transforms/Vectorize/VPlanTest.cpp
+3-2llvm/lib/Transforms/Vectorize/LoopVectorize.cpp
+2-2llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+71-365 files

LLVM/project b88d211lldb/cmake/modules LLDBFramework.cmake LLDBConfig.cmake, lldb/include/lldb/API LLDB.h

Install generated API headers into LLDB.framework (#90666)

DeltaFile
+3-2lldb/packages/Python/lldbsuite/test/make/Makefile.rules
+4-0lldb/packages/Python/lldbsuite/test/builders/builder.py
+2-0lldb/cmake/modules/LLDBFramework.cmake
+1-0lldb/cmake/modules/LLDBConfig.cmake
+1-0lldb/include/lldb/API/LLDB.h
+11-25 files

LLVM/project 465807eflang/lib/Semantics check-declarations.cpp, flang/test/Semantics resolve58.f90 call14.f90

[flang] Catch missing "not a dummy argument" cases (#90268)

Declaration checking is looking for inappropriate usage of the INTENT,
VALUE, & OPTIONAL attributes in multiple places, and some oddball cases
like ENTRY points are not checked. Centralize the check for attributes
that apply only to dummy arguments into one spot.
DeltaFile
+11-26flang/lib/Semantics/check-declarations.cpp
+4-4flang/test/Semantics/resolve58.f90
+1-1flang/test/Semantics/call14.f90
+16-313 files

LLVM/project 7111304flang/lib/Semantics mod-file.cpp

[flang] Fix CHECK() crash in module file generator (#90234)

A sanity CHECK() in mod-file.cpp needs to allow for USE association of a
derived type that has the same name as a locally defined generic
interface.

Fixes https://github.com/llvm/llvm-project/issues/90192.
DeltaFile
+1-1flang/lib/Semantics/mod-file.cpp
+1-11 files

LLVM/project f0fbccbclang-tools-extra/test CMakeLists.txt lit.site.cfg.py.in

[clang-tidy] Enable plugin tests with LLVM_INSTALL_TOOLCHAIN_ONLY (#90370)

The only reason for the removed condition was that there was a
dependency for `CTTestTidyModule` on the `clang-tidy-headers` target,
which was only created under the same `NOT LLVM_INSTALL_TOOLCHAIN_ONLY`
condition. It looks like this target is not needed for
`CTTestTidyModule` to build and run, so the dependency can be removed
along with the condition.

See also https://reviews.llvm.org/D111100 for earlier discussions.
DeltaFile
+22-25clang-tools-extra/test/CMakeLists.txt
+1-1clang-tools-extra/test/lit.site.cfg.py.in
+23-262 files

LLVM/project 6d44a1elld/ELF OutputSections.cpp Driver.cpp, lld/docs ld.lld.1

[ELF] Adjust --compress-sections to support compression level

zstd excels at scaling from low-ratio-very-fast to
high-ratio-pretty-slow. Some users prioritize speed and prefer disk read
speed, while others focus on achieving the highest compression ratio
possible, similar to traditional high-ratio codecs like LZMA.

Add an optional `level` to `--compress-sections` (#84855) to cater to
these diverse needs. While we initially aimed for a one-size-fits-all
approach, this no longer seems to work.
(https://richg42.blogspot.com/2015/11/the-lossless-decompression-pareto.html)

When --compress-debug-sections is used together, make
--compress-sections take precedence since --compress-sections is usually
more specific.

Remove the level distinction between -O/-O1 and -O2 for
--compress-debug-sections=zlib for a more consistent user experience.

Pull Request: https://github.com/llvm/llvm-project/pull/90567
DeltaFile
+11-11lld/ELF/OutputSections.cpp
+14-4lld/test/ELF/compress-sections.s
+6-8lld/test/ELF/compressed-debug-level.test
+10-2lld/ELF/Driver.cpp
+6-6lld/docs/ld.lld.1
+3-2lld/ELF/Options.td
+50-332 files not shown
+56-358 files

LLVM/project 20b9ed6llvm/lib/Target/RISCV RISCVISelLowering.cpp, llvm/test/CodeGen/RISCV pr90652.ll

[RISCV][ISel] Fix types in `tryFoldSelectIntoOp` (#90659)

```
SelectionDAG has 17 nodes:
  t0: ch,glue = EntryToken
    t6: i64,ch = CopyFromReg t0, Register:i64 %2
  t8: i1 = truncate t6
          t4: i64,ch = CopyFromReg t0, Register:i64 %1
        t7: i1 = truncate t4
            t2: i64,ch = CopyFromReg t0, Register:i64 %0
          t10: i64,i1 = saddo t2, Constant:i64<1>
        t11: i1 = or t8, t10:1
      t12: i1 = select t7, t8, t11
    t13: i64 = any_extend t12
  t15: ch,glue = CopyToReg t0, Register:i64 $x10, t13
  t16: ch = RISCVISD::RET_GLUE t15, Register:i64 $x10, t15:1
```

`OtherOpVT` should be i1, but `OtherOp->getValueType(0)` returns `i64`,

    [5 lines not shown]
DeltaFile
+19-0llvm/test/CodeGen/RISCV/pr90652.ll
+1-1llvm/lib/Target/RISCV/RISCVISelLowering.cpp
+20-12 files

LLVM/project ece9d35llvm/include/llvm/CodeGen/GlobalISel LoadStoreOpt.h, llvm/lib/CodeGen/GlobalISel LoadStoreOpt.cpp

[GlobalISel] Fix store merging incorrectly classifying an unknown index expr as 0. (#90375)

During analysis, we incorrectly leave the offset part of an address info
struct
as zero, when in actual fact we failed to decompose it into base +
offset.
This results in incorrectly assuming that the address is adjacent to
another store
addr. To fix this we wrap the offset in an optional<> so we can
distinguish between
real zero and unknown.

Fixes issue #90242

(cherry picked from commit 19f4d68252b70c81ebb1686a5a31069eda5373de)
DeltaFile
+52-10llvm/test/CodeGen/AArch64/GlobalISel/store-merging.mir
+28-20llvm/lib/CodeGen/GlobalISel/LoadStoreOpt.cpp
+16-4llvm/include/llvm/CodeGen/GlobalISel/LoadStoreOpt.h
+19-0llvm/test/CodeGen/AArch64/GlobalISel/store-merging.ll
+115-344 files

LLVM/project 91fef00lld/ELF OutputSections.cpp

[ELF] Catch zlib deflateInit2 error

The function may return Z_MEM_ERROR or Z_STREAM_ERR. The former does not
have a good way of testing. The latter will be possible with a pending
change that allows setting the compression level, which will come with a
test.
DeltaFile
+5-1lld/ELF/OutputSections.cpp
+5-11 files

LLVM/project a7b8b89llvm/lib/TargetParser Host.cpp

[X86] Enable EVEX512 when host CPU has AVX512 (#90479)

This is used when -march=native run on an unknown CPU to old version of
LLVM.

(cherry picked from commit b3291793f11924a3b62601aabebebdcfbb12a9a1)
DeltaFile
+4-1llvm/lib/TargetParser/Host.cpp
+4-11 files

LLVM/project 4da5b14llvm/lib/CodeGen/GlobalISel CombinerHelper.cpp, llvm/test/CodeGen/AArch64/Atomics aarch64-atomic-load-rcpc_immo.ll

[GlobalISel] Don't form anyextending atomic loads.

Until we can reliably check the legality and improve our selection of these,
don't form them at all.

(cherry picked from commit 60fc4ac67a613e4e36cef019fb2d13d70a06cfe8)
DeltaFile
+28-28llvm/test/CodeGen/AArch64/GlobalISel/arm64-atomic.ll
+40-15llvm/test/CodeGen/AArch64/Atomics/aarch64-atomic-load-rcpc_immo.ll
+47-0llvm/test/CodeGen/AArch64/GlobalISel/atomic-anyextending-load-crash.ll
+14-14llvm/test/CodeGen/AArch64/GlobalISel/arm64-pcsections.ll
+2-2llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
+131-595 files

LLVM/project 1ca6005clang/lib/StaticAnalyzer/Checkers/WebKit PtrTypesSemantics.cpp, clang/test/Analysis/Checkers/WebKit uncounted-obj-arg.cpp

[alpha.webkit.UncountedCallArgsChecker] Support more trivial expressions. (#90414)

Treat a compound operator such as |=, array subscription, sizeof, and
non-type template parameter as trivial so long as subexpressions are
also trivial.

Also treat true/false boolean literal as trivial.
DeltaFile
+22-1clang/lib/StaticAnalyzer/Checkers/WebKit/PtrTypesSemantics.cpp
+23-0clang/test/Analysis/Checkers/WebKit/uncounted-obj-arg.cpp
+45-12 files

LLVM/project aca5117libc/include/llvm-libc-macros/linux fcntl-macros.h, libc/include/llvm-libc-types struct_flock.h struct_flock64.h

[libc] Implement fcntl() function (#89507)

Fixes #84968. 

Implements the `fcntl()` function defined in the `fcntl.h` header.
DeltaFile
+155-0libc/test/src/fcntl/fcntl_test.cpp
+93-0libc/src/fcntl/linux/fcntl.cpp
+31-0libc/include/llvm-libc-macros/linux/fcntl-macros.h
+25-0libc/include/llvm-libc-types/struct_flock.h
+25-0libc/include/llvm-libc-types/struct_flock64.h
+25-0libc/include/llvm-libc-types/struct_f_owner_ex.h
+354-016 files not shown
+545-022 files

LLVM/project d1b3648flang/include/flang/Tools CLOptions.inc, flang/lib/Optimizer/Transforms PolymorphicOpConversion.cpp

[flang] always run PolymorphicOpConversion sequentially (#90721)

It was pointed out in post commit review of
https://github.com/llvm/llvm-project/pull/90597 that the pass should
never have been run in parallel over all functions (and now other top
level operations) in the first place. The mutex used in the pass was
ineffective at preventing races since each instance of the pass would
have a different mutex.
DeltaFile
+4-16flang/lib/Optimizer/Transforms/PolymorphicOpConversion.cpp
+4-15flang/test/Driver/mlir-pass-pipeline.f90
+1-10flang/test/Fir/basic-program.fir
+2-4flang/test/Driver/mlir-debug-pass-pipeline.f90
+2-4flang/test/Driver/bbc-mlir-pass-pipeline.f90
+1-1flang/include/flang/Tools/CLOptions.inc
+14-501 files not shown
+15-517 files

LLVM/project 28869a7llvm/lib/Bitcode/Reader BitcodeReader.cpp, llvm/lib/Bitcode/Writer BitcodeWriter.cpp

Reapply "Use an abbrev to reduce size of VALUE_GUID records in ThinLTO summaries" (#90610) (#90692)

This reverts commit 2aabfc811670beb843074c765c056fff4a7b443b.

Add fixes to LLD and Gold tests missed in original change.

Co-authored-by: Jan Voung <jvoung at google.com>
DeltaFile
+38-38llvm/test/Bitcode/thinlto-function-summary-paramaccess.ll
+29-24llvm/test/Assembler/thinlto-summary.ll
+26-4llvm/lib/Bitcode/Writer/BitcodeWriter.cpp
+8-8llvm/test/ThinLTO/X86/distributed_indexes.ll
+5-5llvm/test/tools/gold/X86/thinlto.ll
+7-2llvm/lib/Bitcode/Reader/BitcodeReader.cpp
+113-8116 files not shown
+146-11422 files

LLVM/project cf3c714llvm/include/llvm/TargetParser RISCVISAInfo.h, llvm/lib/TargetParser RISCVISAInfo.cpp

[RISCV] Merge RISCVISAInfo::updateFLen/MinVLen/MaxELen into a single function. (#90665)

This simplifies the callers.
DeltaFile
+32-35llvm/lib/TargetParser/RISCVISAInfo.cpp
+7-8llvm/include/llvm/TargetParser/RISCVISAInfo.h
+39-432 files

LLVM/project 09f4b06clang/test/Driver riscv-profiles.c riscv-arch.c, llvm/lib/TargetParser RISCVISAInfo.cpp

[RISCV] Refactor profile selection in RISCVISAInfo::parseArchString. (#90700)

Instead of hardcoding the 4 current profile prefixes, treat profile
selection as a fallback if we don't find "rv32" or "rv64".

Update the error message accordingly.
DeltaFile
+22-23llvm/lib/TargetParser/RISCVISAInfo.cpp
+4-2llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+1-1clang/test/Driver/riscv-profiles.c
+1-1llvm/test/MC/RISCV/invalid-attribute.s
+1-1clang/test/Driver/riscv-arch.c
+29-285 files

LLVM/project 7396ab1llvm/lib/Target/NVPTX NVPTXInstrInfo.td, llvm/test/CodeGen/NVPTX rotate.ll

[NVPTX] Fix 64 bits rotations with large shift values (#89399)

ROTL and ROTR can take a shift amount larger than the element size, in
which case the effective shift amount should be the shift amount modulo
the element size.

This patch adds the modulo step when the shift amount isn't known at
compile time. Without it the existing implementation would end up
shifting beyond the type size and give incorrect results.
DeltaFile
+314-25llvm/test/CodeGen/NVPTX/rotate.ll
+6-4llvm/lib/Target/NVPTX/NVPTXInstrInfo.td
+320-292 files

LLVM/project 0cb7f13lldb/docs lldb-gdb-remote.txt, lldb/docs/resources lldbgdbremote.md

address PR reviewer comments and rebase

Created using spr 1.3.4
DeltaFile
+2,399-0lldb/docs/resources/lldbgdbremote.md
+0-2,286lldb/docs/lldb-gdb-remote.txt
+0-1,451llvm/lib/Support/RISCVISAInfo.cpp
+1,383-0llvm/lib/TargetParser/RISCVISAInfo.cpp
+928-0llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+0-928llvm/unittests/Support/RISCVISAInfoTest.cpp
+4,710-4,6651,241 files not shown
+70,957-17,2031,247 files

LLVM/project cf2f32cllvm/include/llvm/CodeGen MIRYamlMapping.h, llvm/lib/CodeGen MIRPrinter.cpp

[MIR] Serialize MachineFrameInfo::isCalleeSavedInfoValid() (#90561)

In case of functions without a stack frame no "stack" field is
serialized into MIR which leads to isCalleeSavedInfoValid being false
when reading a MIR file back in. To fix this we should serialize
MachineFrameInfo::isCalleeSavedInfoValid() into MIR.
DeltaFile
+41-0llvm/test/CodeGen/MIR/AArch64/calleesavedinfovalid.mir
+5-1llvm/include/llvm/CodeGen/MIRYamlMapping.h
+1-0llvm/lib/CodeGen/MIRParser/MIRParser.cpp
+1-0llvm/lib/CodeGen/MIRPrinter.cpp
+1-0llvm/test/CodeGen/MIR/Generic/frame-info.mir
+49-15 files

LLVM/project 4911164lldb/docs lldb-gdb-remote.txt, lldb/docs/resources lldbgdbremote.md

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.4

[skip ci]
DeltaFile
+2,399-0lldb/docs/resources/lldbgdbremote.md
+0-2,286lldb/docs/lldb-gdb-remote.txt
+0-1,451llvm/lib/Support/RISCVISAInfo.cpp
+1,383-0llvm/lib/TargetParser/RISCVISAInfo.cpp
+0-928llvm/unittests/Support/RISCVISAInfoTest.cpp
+928-0llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+4,710-4,6651,236 files not shown
+70,911-17,1581,242 files

LLVM/project b1a2afalldb/docs lldb-gdb-remote.txt, lldb/docs/resources lldbgdbremote.md

rebase

Created using spr 1.3.4
DeltaFile
+2,399-0lldb/docs/resources/lldbgdbremote.md
+0-2,286lldb/docs/lldb-gdb-remote.txt
+0-1,451llvm/lib/Support/RISCVISAInfo.cpp
+1,383-0llvm/lib/TargetParser/RISCVISAInfo.cpp
+0-928llvm/unittests/Support/RISCVISAInfoTest.cpp
+928-0llvm/unittests/TargetParser/RISCVISAInfoTest.cpp
+4,710-4,6651,236 files not shown
+70,911-17,1581,242 files