LLVM/project 6214dcclibunwind/src UnwindCursor.hpp

[Unwind][AArch64] Match sigreturn instructions in big endian (#167139)

Since insns are always stored LE, on a BE system the opcodes will be
loaded byte-reversed. Therefore, define two sets of opcodes, one for LE
and one for BE.
DeltaFile
+16-1libunwind/src/UnwindCursor.hpp
+16-11 files

LLVM/project 30386f3llvm/lib/Transforms/IPO LowerTypeTests.cpp, llvm/test/Other new-pm-O0-defaults.ll

[LTT][profcheck] Set branch weights for complex llvm.type.test lowering
DeltaFile
+38-11llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+21-2llvm/test/Transforms/LowerTypeTests/section.ll
+1-0llvm/test/Other/new-pm-O0-defaults.ll
+60-133 files

LLVM/project 643eafcllvm/lib/Transforms/Utils LoopPeel.cpp, llvm/test lit.cfg.py

[LP] Assign weights when peeling last iteration.
DeltaFile
+66-0llvm/test/Transforms/LoopUnroll/peel-last-iteration-bfi.ll
+32-15llvm/test/Transforms/LoopUnroll/peel-last-iteration-expansion-cost.ll
+22-1llvm/lib/Transforms/Utils/LoopPeel.cpp
+1-0llvm/test/lit.cfg.py
+121-164 files

LLVM/project 39c5123llvm/lib/Transforms/IPO LowerTypeTests.cpp, llvm/test/Transforms/LowerTypeTests function-weak.ll

[LTT] Mark as unkown weak function tests.
DeltaFile
+3-2llvm/test/Transforms/LowerTypeTests/function-weak.ll
+3-0llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+6-22 files

LLVM/project 8d08169llvm/test/CodeGen/AMDGPU regalloc-spill-wmma-scale.ll

[AMDGPU] Add baseline test to show spilling of wmma scale. NFC

This is to show the spilling of WMMA scale values which are limited
to low 256 VGPRs. We have free registers, just RA allocates low 256
first. The only problem, this test is large.
DeltaFile
+425-0llvm/test/CodeGen/AMDGPU/regalloc-spill-wmma-scale.ll
+425-01 files

LLVM/project 9036e23libcxx/include/__memory inout_ptr.h out_ptr.h, libcxx/test/libcxx/utilities/smartptr nodiscard.verify.cpp

[libc++] Apply `[[nodiscard]]` to `in/out_ptr` (#167097)

...according to Coding Guidelines: `[[nodiscard]]` should be applied to
functions where discarding the return value is most likely a correctness
issue.

Changes to:
  - [x] `inout_ptr()` 
  - [x] `out_ptr()` 


At the time of impelentation the `[[nodiscard]]` policy has not been
established yet.

---------

Co-authored-by: Hristo Hristov <zingam at outlook.com>
DeltaFile
+29-0libcxx/test/libcxx/utilities/smartptr/nodiscard.verify.cpp
+1-1libcxx/include/__memory/inout_ptr.h
+1-1libcxx/include/__memory/out_ptr.h
+31-23 files

LLVM/project 5305a53llvm/utils/gn/secondary/libcxx/include BUILD.gn

[gn] port c29b29bb6a7f (_LIBCPP_ASSERTION_SEMANTIC_DEFAULT)
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-01 files

LLVM/project 4530047lldb/source/Plugins/SymbolFile/DWARF DWARFUnit.cpp DWARFUnit.h, lldb/test/Shell/SymbolFile/DWARF dwp-str-offsets-dwarf64.test

[lldb] Add the ability to load DWARF64 .debug_str_offsets tables for DWARF32 DWARF units in .dwp files in LLDB. (#167997)

This patch is updating the reading capabilities of the LLDB DWARF parser
for a llvm-dwp patch https://github.com/llvm/llvm-project/pull/167457
that will emit .dwp files where the compile units are DWARF32 and the
.debug_str_offsets tables will be emitted as DWARF64 to allow .debug_str
sections that exceed 4GB in size.
DeltaFile
+100-0lldb/test/Shell/SymbolFile/DWARF/Inputs/dwp-str-offsets-dwarf64-exe.yaml
+44-0lldb/test/Shell/SymbolFile/DWARF/Inputs/dwp-str-offsets-dwarf64-dwp.yaml
+24-9lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.cpp
+25-0lldb/test/Shell/SymbolFile/DWARF/dwp-str-offsets-dwarf64.test
+1-0lldb/source/Plugins/SymbolFile/DWARF/DWARFUnit.h
+194-95 files

LLVM/project 43a2620llvm/lib/Transforms/IPO LowerTypeTests.cpp, llvm/test/Transforms/LowerTypeTests function-weak.ll

[LTT] Mark as unkown weak function tests.
DeltaFile
+3-2llvm/test/Transforms/LowerTypeTests/function-weak.ll
+3-0llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+6-22 files

LLVM/project 8bb5144llvm/lib/Transforms/IPO LowerTypeTests.cpp, llvm/test/Other new-pm-O0-defaults.ll

[LTT][profcheck] Set branch weights for complex llvm.type.test lowering
DeltaFile
+38-11llvm/lib/Transforms/IPO/LowerTypeTests.cpp
+21-2llvm/test/Transforms/LowerTypeTests/section.ll
+1-0llvm/test/Other/new-pm-O0-defaults.ll
+60-133 files

LLVM/project c7a6b54llvm/lib/Transforms/Utils LoopPeel.cpp, llvm/test lit.cfg.py

[LP] Assign weights when peeling last iteration.
DeltaFile
+66-0llvm/test/Transforms/LoopUnroll/peel-last-iteration-bfi.ll
+28-15llvm/test/Transforms/LoopUnroll/peel-last-iteration-expansion-cost.ll
+22-1llvm/lib/Transforms/Utils/LoopPeel.cpp
+1-0llvm/test/lit.cfg.py
+117-164 files

LLVM/project 4eea157llvm/lib/CodeGen Analysis.cpp, llvm/lib/CodeGen/GlobalISel IRTranslator.cpp

[GlobalISel] Return byte offsets from computeValueLLTs (NFC) (#166747)

To avoid scaling offsets back and forth. This is also what SelectionDAG
equivalent (ComputeValueVTs) does, and will allow to reuse
ComputeValueTypes with less effort.
DeltaFile
+14-14llvm/lib/CodeGen/GlobalISel/IRTranslator.cpp
+2-2llvm/lib/CodeGen/Analysis.cpp
+16-162 files

LLVM/project 94c384clldb/bindings/python python-wrapper.swig python.swig

[lldb] Enforce Py_LIMITED_API in the SWIG typemaps (#168147)

We missed a handful of uses of the Python private API in the SWIG
typemaps because they are included before we include the Python header
that defines Py_LIMITED_API.

This fixes that and guards the last private use on whether or not you're
targeting the limited API. Unfortunately there doesn't appear to be an
alternative, so we have to resort to being slightly less defensive.
DeltaFile
+5-2lldb/bindings/python/python-wrapper.swig
+5-0lldb/bindings/python/python.swig
+10-22 files

LLVM/project 55f634c.github/workflows libcxx-build-containers.yml

[libcxx][Github] Attempt to Fix libcxx Container Push

docker-compose could not find the configuration. After this patch it
should be able to.
DeltaFile
+3-1.github/workflows/libcxx-build-containers.yml
+3-11 files

LLVM/project 21502bdlldb/bindings/python python-typemaps.swig

[lldb] Drop support for the Buffer Protocol (#168144)

This is an alternative solution to the issue described in #167990, which
can be summarized as that we cannot target Python 3.8 with the stable
API and support building for Python 3.13 and later due to the buffer
protocol.

The approach taken in this PR, and proposed by Ismail, is to sidesteps
the issue by dropping support for the buffer protocol. The only two
users are SBFile::Read and SBFile::Write. Instead, we support PyBytes
and PyByteArray which are the builtin types that conform to the buffer
protocol. Technically, this means a small regression, where those
methods could previously take custom types that conform to Python's
buffer protocol. Like Ismail, I think this is acceptable given the
alternatives.

Co-authored-by: Med Ismail Bennani <ismail at bennani.ma>
DeltaFile
+22-49lldb/bindings/python/python-typemaps.swig
+22-491 files

LLVM/project 326d4e9llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/AArch64 non-inst-abs-sub-copyable-value.ll

[SLP]Check if the copyable element is a sub instruciton with abs in isCommutable

Need to check if the non-copyable element is an instruction before actually
trying to check its NSW attribute.
DeltaFile
+29-0llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
+7-4llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+36-42 files

LLVM/project 66d5f6alldb/include/lldb/Core ModuleList.h, lldb/include/lldb/Target Target.h

[lldb] fix parallel module loading deadlock for Linux DYLD (#166480)

Another attempt at resolving the deadlock issue @GeorgeHuyubo discovered
(his previous
[attempt](https://github.com/llvm/llvm-project/pull/160225)).

This change can be summarized as the following:
* Plumb through a boolean flag to force no preload in
`GetOrCreateModules` all the way through to `LoadModuleAtAddress`.
* Parallelize `Module::PreloadSymbols` separately from
`Target::GetOrCreateModule` and its caller `LoadModuleAtAddress` (this
is what avoids the deadlock).

These changes roughly maintain the performance characteristics of the
previous implementation of parallel module loading. Testing on targets
with between 5000 and 14000 modules, I saw similar numbers as before,
often more than 10% faster in the new implementation across multiple
trials for these massive targets. I think it's because we have less lock
contention with this approach.

    [109 lines not shown]
DeltaFile
+20-0lldb/source/Core/ModuleList.cpp
+15-1lldb/include/lldb/Target/Target.h
+3-4lldb/source/Target/Target.cpp
+3-3lldb/source/Plugins/DynamicLoader/POSIX-DYLD/DynamicLoaderPOSIXDYLD.cpp
+6-0lldb/include/lldb/Core/ModuleList.h
+2-1lldb/source/Core/DynamicLoader.cpp
+49-91 files not shown
+50-97 files

LLVM/project e02fdf0clang/lib/CIR/CodeGen CIRGenBuiltinX86.cpp CIRGenExprScalar.cpp, clang/test/CIR/CodeGen/X86 sse2-builtins.c

[CIR] Upstream CIR codegen for vec_ext x86 builtins (#167942)

This PR upstreams the codegen for the x86 vec_ext builtins from the
incubator. It is part of #167752.
DeltaFile
+21-4clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
+0-22clang/lib/CIR/CodeGen/CIRGenExprScalar.cpp
+16-0clang/lib/CIR/CodeGen/CIRGenBuiltin.cpp
+15-0clang/test/CIR/CodeGen/X86/sse2-builtins.c
+3-3clang/lib/CIR/CodeGen/CIRGenFunction.h
+4-2clang/lib/CIR/CodeGen/CIRGenBuilder.h
+59-316 files

LLVM/project 4c4ffd3llvm/lib/Transforms/Utils ProfileVerify.cpp

[ProfCheck] Refactor Select Instrumentation to use Early Exits (#168086)

I think this is quite a bit more readable than the nested conditionals.
From review feedback that was not addressed precommitn in #167973.
DeltaFile
+16-10llvm/lib/Transforms/Utils/ProfileVerify.cpp
+16-101 files

LLVM/project e8cc0d2llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/AArch64 non-inst-abs-sub-copyable-value.ll

Revert "[SLP]Check if the copyable element is a sub instruciton with abs in isCommutable"

This reverts commit ddf5bb0a2e2d2dd77bce66173387d62ab7174d9f to fix
buildbots  https://lab.llvm.org/buildbot/#/builders/11/builds/28083.
DeltaFile
+0-29llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
+4-7llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+4-362 files

LLVM/project 459a64blldb/cmake/modules LLDBConfig.cmake

[lldb] Diagnose unsupported configurations when targeting the Limited C API (#168145)

Diagnose unsupported configurations when targeting the Python Limited C
API. I used SEND_ERROR so that if there's multiple issues, you don't
need to keep reconfiguring.
DeltaFile
+13-1lldb/cmake/modules/LLDBConfig.cmake
+13-11 files

LLVM/project 3e2bb7bclang-tools-extra/clang-doc HTMLMustacheGenerator.cpp Generators.cpp

MustacheGenerator inherits from Generator, use generateDocumentation as base
DeltaFile
+40-181clang-tools-extra/clang-doc/HTMLMustacheGenerator.cpp
+136-0clang-tools-extra/clang-doc/Generators.cpp
+84-4clang-tools-extra/clang-doc/Generators.h
+6-7clang-tools-extra/clang-doc/YAMLGenerator.cpp
+6-7clang-tools-extra/clang-doc/MDGenerator.cpp
+6-7clang-tools-extra/clang-doc/HTMLGenerator.cpp
+278-2062 files not shown
+286-2128 files

LLVM/project e7fe8a7llvm/include/llvm/Transforms/Instrumentation UbsanMinimalHandlers.inc

fix

Created using spr 1.3.7
DeltaFile
+50-0llvm/include/llvm/Transforms/Instrumentation/UbsanMinimalHandlers.inc
+50-01 files

LLVM/project f2bd5c6llvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll, llvm/test/MC/AArch64 arm-poe2.s

rebase

Created using spr 1.3.7
DeltaFile
+13,141-11,946llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,719-5,242llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,062-3,678llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,042-2,017llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
+3,263-0llvm/test/MC/AArch64/arm-poe2.s
+1,555-1,504llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
+28,782-24,3873,662 files not shown
+137,540-88,3853,668 files

LLVM/project ff5162fllvm/test/CodeGen/AMDGPU amdgcn.bitcast.1024bit.ll amdgcn.bitcast.512bit.ll, llvm/test/MC/AArch64 arm-poe2.s

[𝘀𝗽𝗿] changes introduced through rebase

Created using spr 1.3.7

[skip ci]
DeltaFile
+13,141-11,946llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.1024bit.ll
+4,719-5,242llvm/test/MC/Disassembler/AMDGPU/gfx11_dasm_vop3_dpp16.txt
+4,062-3,678llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.512bit.ll
+2,042-2,017llvm/test/CodeGen/AMDGPU/a-v-flat-atomicrmw.ll
+3,263-0llvm/test/MC/AArch64/arm-poe2.s
+1,555-1,504llvm/test/CodeGen/AMDGPU/amdgcn.bitcast.256bit.ll
+28,782-24,3873,662 files not shown
+137,540-88,3853,668 files

LLVM/project ddf5bb0llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/AArch64 non-inst-abs-sub-copyable-value.ll

[SLP]Check if the copyable element is a sub instruciton with abs in isCommutable

Need to check if the non-copyable element is an instruction before actually
trying to check its NSW attribute.
DeltaFile
+29-0llvm/test/Transforms/SLPVectorizer/AArch64/non-inst-abs-sub-copyable-value.ll
+7-4llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+36-42 files

LLVM/project 72a6ae6llvm/lib/Target/AMDGPU/Utils AMDGPUBaseInfo.cpp, llvm/test/CodeGen/AMDGPU vgpr-lowering-gfx1250.mir vgpr-lowering-gfx1250-t16.mir

[AMDGPU] Fix wrong MSB encoding for V_FMAMK instructions (#168107)

These instructions use `src0`, `imm`, `src1` as operand.

Fixes SWDEV-566579.
DeltaFile
+34-5llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250.mir
+32-0llvm/test/CodeGen/AMDGPU/vgpr-lowering-gfx1250-t16.mir
+23-4llvm/lib/Target/AMDGPU/Utils/AMDGPUBaseInfo.cpp
+89-93 files

LLVM/project 47f0408compiler-rt/lib/ubsan_minimal ubsan_minimal_handlers.cpp UbsanMinimalHandlers.inc

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+20-36compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
+45-0compiler-rt/lib/ubsan_minimal/UbsanMinimalHandlers.inc
+65-362 files

LLVM/project 2792d1acompiler-rt/lib/ubsan_minimal ubsan_minimal_handlers.cpp UbsanMinimalHandlers.inc, llvm/include/llvm/Analysis TargetLibraryInfo.def

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+20-36compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
+50-0compiler-rt/lib/ubsan_minimal/UbsanMinimalHandlers.inc
+18-0llvm/include/llvm/Analysis/TargetLibraryInfo.def
+16-0llvm/lib/Transforms/Utils/BuildLibCalls.cpp
+104-364 files

LLVM/project 07235f2compiler-rt/lib/ubsan_minimal ubsan_minimal_handlers.cpp UbsanMinimalHandlers.inc

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+12-36compiler-rt/lib/ubsan_minimal/ubsan_minimal_handlers.cpp
+45-0compiler-rt/lib/ubsan_minimal/UbsanMinimalHandlers.inc
+57-362 files