LLVM/project 082ac6ellvm/utils/lit/lit ShUtil.py

[lit] Optimize ShLexer string construction (#199641)

`lex_arg_quoted` and `lex_arg_slow` methods in the `lit`'s `ShLexer`
class used `+=` for string concatenation, which was inefficient. This change
replaces that pattern by collecting string fragments in a list and using
`"".join()` at the end.

**Baseline:**
| Stage | Metric (Runtime / Peak RSS) |
| :--- | :--- |
| **CodeGen-X86** | 99.310s / 51872 kB |
| **llvm-transforms** | 51.457s / 66928 kB |

**Changes made here:**
| Stage | Metric (Runtime / Peak RSS) |
| :--- | :--- |
| **CodeGen-X86** | 94.964s / 51868 kB |
| **llvm-transforms** | 50.890s / 66328 kB |


    [2 lines not shown]
DeltaFile
+22-20llvm/utils/lit/lit/ShUtil.py
+22-201 files

LLVM/project 0a0fd08clang/test/Sema/AArch64 arm_sve_streaming_only_sme_AND_sme2p3.c arm_sve_feature_dependent_sve_AND_sve2p3___sme_AND_LP_sve2p3_OR_sme2p3_RP.c

fixup! Run `clang/utils/aarch64_builtins_test_generator.py`
DeltaFile
+118-0clang/test/Sema/AArch64/arm_sve_streaming_only_sme_AND_sme2p3.c
+77-0clang/test/Sema/AArch64/arm_sve_feature_dependent_sve_AND_sve2p3___sme_AND_LP_sve2p3_OR_sme2p3_RP.c
+62-0clang/test/Sema/AArch64/arm_sve_non_streaming_only_sve_AND_sve2p3.c
+56-0clang/test/Sema/AArch64/arm_sme_streaming_only_sme_AND_sme2p3.c
+313-04 files

LLVM/project c5fe7eeclang/include/clang/Basic DiagnosticParseKinds.td

Change ext_c2y_decl_statement from ExtWarn to Extension
DeltaFile
+1-1clang/include/clang/Basic/DiagnosticParseKinds.td
+1-11 files

LLVM/project 9a0fe91llvm/lib/Target/AArch64 AArch64ISelDAGToDAG.cpp

fixup! Don't modify SelectMultiVectorLutiLane
DeltaFile
+38-45llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+38-451 files

LLVM/project c20c666lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime AppleObjCClassDescriptorV2.cpp AppleObjCClassDescriptorV2.h

[lldb][NFCI] Cleanup AppleObjCClassDescriptorV2::objc_class_t API (#200180)
DeltaFile
+45-43lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.cpp
+2-15lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCClassDescriptorV2.h
+47-582 files

LLVM/project b405ce2clang/include/clang/Basic DiagnosticParseKinds.td

fix ci
DeltaFile
+2-2clang/include/clang/Basic/DiagnosticParseKinds.td
+2-21 files

LLVM/project 3e92883clang-tools-extra/clangd XRefs.cpp, clang-tools-extra/clangd/test type-hierarchy-ext.test type-hierarchy.test

[clangd] Remove redundant symbol name from hierarchy item details (#170112)

Closes clangd/clangd#2346.
DeltaFile
+55-61clang-tools-extra/clangd/unittests/CallHierarchyTests.cpp
+2-2clang-tools-extra/clangd/test/type-hierarchy-ext.test
+2-2clang-tools-extra/clangd/test/type-hierarchy.test
+2-1clang-tools-extra/clangd/XRefs.cpp
+61-664 files

LLVM/project eec9319llvm/include/llvm/IR IntrinsicsAArch64.td, llvm/lib/Target/AArch64 SVEInstrFormats.td AArch64ISelDAGToDAG.cpp

fixup! Amend after PR comments
DeltaFile
+11-8llvm/include/llvm/IR/IntrinsicsAArch64.td
+4-4llvm/lib/Target/AArch64/SVEInstrFormats.td
+2-3llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+1-1llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
+18-164 files

LLVM/project 624586bllvm/lib/Support UnicodeNameToCodepointGenerated.cpp, llvm/test/CodeGen/AMDGPU/NextUseAnalysis spill-vreg-many-lanes.mir acyclic-770bb.mir

Merge branch 'main' into users/kosarev/vcc-tuples
DeltaFile
+275,101-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/spill-vreg-many-lanes.mir
+144,679-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/acyclic-770bb.mir
+57,682-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/double-nested-loops-complex-cfg.mir
+23,873-20,923llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
+41,844-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_multiple_spills2.mir
+40,613-0llvm/test/CodeGen/AMDGPU/NextUseAnalysis/test_ers_multiple_spills1.mir
+583,792-20,92328,938 files not shown
+3,252,506-1,110,43528,944 files

LLVM/project f24ee22mlir/test/Conversion/MemRefToEmitC memref-to-emitc-alloc.mlir memref-to-emitc-alloc-dealloc.mlir

[mlir][EmitC] Include DeallocOp in AllocOp memref conversion tests (#198275)

This PR helps keep changes introduced in
https://github.com/llvm/llvm-project/pull/194591 visible, by renaming
files in a separate commit.
DeltaFile
+0-72mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc.mlir
+72-0mlir/test/Conversion/MemRefToEmitC/memref-to-emitc-alloc-dealloc.mlir
+72-722 files

LLVM/project 8ab00f2llvm/test/CodeGen/Generic available_externally_alias.ll 2009-03-17-LSR-APInt.ll

[z/OS][tests] XFAIL using aliases on z/OS (#200176)

This PR XFAIL 2 lit test cases as the following errors are expected:

```
FAIL: LLVM :: CodeGen/Generic/available_externally_alias.ll
# | <unknown>:0: error: Only aliases to functions is supported in GOFF.

FAIL: LLVM :: CodeGen/Generic/2009-03-17-LSR-APInt.ll
# | <unknown>:0: error: Weak alias/reference not supported on z/OS
```
DeltaFile
+2-2llvm/test/CodeGen/Generic/available_externally_alias.ll
+2-2llvm/test/CodeGen/Generic/2009-03-17-LSR-APInt.ll
+4-42 files

LLVM/project a16511cclang/lib/Driver Driver.cpp Types.cpp, clang/lib/Driver/ToolChains Clang.cpp

[clang][modules-driver] Precompile std modules independently of -o and final phase (#199289)

With this, Standard library modules are always precompiled as the
primary output of their `-cc1` invocation, instead of being produced as
a byproduct of compiling the Standard library modules to object files.

This also keeps Standard library module precompilation independent of
the final phase specified on the command line, so importing them keep
working under `-fsyntax-only` (and other command-line options that
specify the final phase).

This also makes the Standard library module precompilation independent
of the `-o` flag, so that a command like `clang -std=c++23
-fmodules-driver main.cpp -o main` no longer redirects the Standard
library module outputs to 'main', breaking the compilation.
DeltaFile
+69-1clang/test/Driver/modules-driver-import-std.cpp
+41-13clang/lib/Driver/Driver.cpp
+33-9clang/lib/Driver/Types.cpp
+11-11clang/test/Driver/modules-driver-dep-graph-stdlib-modules.cpp
+15-2clang/lib/Driver/ModulesDriver.cpp
+5-1clang/lib/Driver/ToolChains/Clang.cpp
+174-372 files not shown
+180-378 files

LLVM/project 5536348llvm/utils/lit/lit TestingConfig.py

[lit] Handle config loading safely (#200168)

Currently, the config file is opened outside the `try` block without
explicit encoding and handled with a bare `except`.
We can move to putting a `with open()` context manager inside the `try`
block and catching OSError.

Signed-off-by: Prasoon Kumar <prasoonkumar054 at gmail.com>
DeltaFile
+3-3llvm/utils/lit/lit/TestingConfig.py
+3-31 files

LLVM/project 3c21a0cllvm/lib/Target/SPIRV SPIRVLegalizerInfo.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers i128-icmp.ll

[SPIR-V] Add s128 to allPtrsScalarsAndVectors in legalizer (#199998)

Without this, i128 G_ICMP fails legalization before OpTypeInt emits the
diagnostic

---------

Co-authored-by: Dmitry Sidorov <dsidorov at amd.com>
DeltaFile
+32-0llvm/test/CodeGen/SPIRV/extensions/SPV_ALTERA_arbitrary_precision_integers/i128-icmp.ll
+5-5llvm/lib/Target/SPIRV/SPIRVLegalizerInfo.cpp
+37-52 files

LLVM/project b43dcbellvm/lib/Target/SPIRV SPIRVEmitIntrinsics.cpp SPIRVInstructionSelector.cpp, llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze poison.ll poison-composite.ll

Implement SPV_KHR_poison_freeze extension (#198037)

Specification can be found here:

https://github.com/KhronosGroup/SPIRV-Registry/blob/main/extensions/KHR/SPV_KHR_poison_freeze.asciidoc
DeltaFile
+122-44llvm/lib/Target/SPIRV/SPIRVEmitIntrinsics.cpp
+103-0llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison.ll
+43-0llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/poison-composite.ll
+40-0llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/freeze.ll
+33-4llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
+31-0llvm/test/CodeGen/SPIRV/extensions/SPV_KHR_poison_freeze/arithmetic-poison-execmode.ll
+372-4810 files not shown
+447-5416 files

LLVM/project 34e7ecallvm/lib/IR Constants.cpp

[IR] Avoid caching a DenseMap reference across erase in handleOperandChangeImpl. NFC (#200179)

They bind a reference into the map and write through it after erasing
the old entry. This will not hold for backward-shift deletion. Extracted
from #199615
DeltaFile
+12-15llvm/lib/IR/Constants.cpp
+12-151 files

LLVM/project 2766733compiler-rt CMakeLists.txt, compiler-rt/lib/profile CMakeLists.txt InstrProfilingFile.c

[compiler-rt][profile] Add COMPILER_RT_BUILD_PROFILE_ROCM option (#200127)
DeltaFile
+9-1compiler-rt/lib/profile/CMakeLists.txt
+9-0compiler-rt/CMakeLists.txt
+4-0compiler-rt/lib/profile/InstrProfilingFile.c
+22-13 files

LLVM/project 992ee59compiler-rt/cmake/Modules AllSupportedArchDefs.cmake, compiler-rt/lib/asan asan_allocator.h

Add support for Alpha to libsanitizer (#194161)

Add support for [Alpha](https://en.wikipedia.org/wiki/DEC_Alpha) to
libsanitizer.

- [sanitizer] Add SANITIZER_ALPHA platform macro
- [sanitizer] Add Linux/Alpha syscall implementation
- [sanitizer] Skip __old_kernel_stat check on Alpha
- [sanitizer] Use statx for stat syscalls on Linux/Alpha
- [sanitizer] Add GetPcSpBp signal context support for Alpha
- [sanitizer] Add Alpha struct size constants
- [sanitizer] Add Alpha ioctl encoding constants
- [compiler-rt] sanitizer: Alpha struct sigaction has no sa_restorer
- [compiler-rt] sanitizer: Disable interceptor trampoline on Alpha
- [compiler-rt] sanitizer: Add Alpha __sanitizer_dirent layout
- [compiler-rt] sanitizer: Add Alpha ThreadDescriptorSizeFallback()
- [compiler-rt] Enable Alpha Linux target
- [compiler-rt] Use fixed shadow offset 0x10000000000 (1T) for Alpha
- [compiler-rt][ASan] Limit allocator to 512G on Alpha

    [2 lines not shown]
DeltaFile
+146-0compiler-rt/lib/sanitizer_common/sanitizer_syscall_linux_alpha.inc
+26-7compiler-rt/lib/sanitizer_common/sanitizer_linux.cpp
+13-2compiler-rt/lib/sanitizer_common/sanitizer_platform_limits_posix.h
+4-3compiler-rt/cmake/Modules/AllSupportedArchDefs.cmake
+6-0compiler-rt/lib/sanitizer_common/sanitizer_platform.h
+5-0compiler-rt/lib/asan/asan_allocator.h
+200-126 files not shown
+214-1712 files

LLVM/project d5edbe4.github/workflows/upload-release-artifact action.yml

workflows/upload-release-artifact: Validate input and remove template expansion (#199972)

https://github.com/llvm/llvm-project/security/code-scanning/1757
https://github.com/llvm/llvm-project/security/code-scanning/1758
https://github.com/llvm/llvm-project/security/code-scanning/1759
https://github.com/llvm/llvm-project/security/code-scanning/1760
https://github.com/llvm/llvm-project/security/code-scanning/1761
DeltaFile
+17-5.github/workflows/upload-release-artifact/action.yml
+17-51 files

LLVM/project 5d29057.github/actions/push-container action.yml

actions/push-container: Remove template expansion (#200062)

https://github.com/llvm/llvm-project/security/code-scanning/1757
DeltaFile
+1-1.github/actions/push-container/action.yml
+1-11 files

LLVM/project fa5d53cclang/test/Sema/aarch64-sve2p3-intrinsics acle_sve2p3_target_lane.c acle_sve2p3_target.c, llvm/lib/Target/AArch64 AArch64InstrInfo.td

fixup! Move tests
DeltaFile
+0-54clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target_lane.c
+38-3clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target.c
+1-0llvm/lib/Target/AArch64/AArch64InstrInfo.td
+39-573 files

LLVM/project 6ee1092clang/test/Sema/aarch64-sve2p3-intrinsics acle_sve2p3_target_lane.c acle_sve2p3_imm.cpp, llvm/test/CodeGen/AArch64 sve2p3-intrinsics-luti6.ll

fixup! Add some more _bf16 tests
DeltaFile
+27-0clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target_lane.c
+11-0llvm/test/CodeGen/AArch64/sve2p3-intrinsics-luti6.ll
+3-0clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_imm.cpp
+41-03 files

LLVM/project a2ee7c9clang/include/clang/Basic arm_sme.td arm_sve.td, clang/test/CodeGen/AArch64/sme2p3-intrinsics acle_sme2p3_luti6.c

fixup! Fix more PR comments
DeltaFile
+10-13llvm/include/llvm/IR/IntrinsicsAArch64.td
+4-4clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
+2-2clang/include/clang/Basic/arm_sme.td
+1-1clang/include/clang/Basic/arm_sve.td
+17-204 files

LLVM/project 67e7608clang/lib/Sema SemaARM.cpp, clang/test/Sema/aarch64-sve2p3-intrinsics acle_sve2p3_target_lane.c

fixup! More small PR fixes
DeltaFile
+0-44llvm/test/Verifier/AArch64/luti6-intrinsics.ll
+6-9llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+5-8llvm/test/CodeGen/AArch64/sve2p3-intrinsics-luti6.ll
+8-1clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target_lane.c
+1-4llvm/test/CodeGen/AArch64/sme2p3-intrinsics-luti6.ll
+1-2clang/lib/Sema/SemaARM.cpp
+21-682 files not shown
+23-698 files

LLVM/project d868e50clang/include/clang/Basic arm_sve.td, clang/test/CodeGen/AArch64/sme2p3-intrinsics acle_sme2p3_luti6.c

fixup! Adjust after ACLE changes to svluti6_lane_s16_x4
DeltaFile
+48-4clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
+15-6llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+12-4llvm/lib/Target/AArch64/SMEInstrFormats.td
+8-8clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_imm.c
+4-0llvm/include/llvm/IR/IntrinsicsAArch64.td
+2-1clang/include/clang/Basic/arm_sve.td
+89-232 files not shown
+92-248 files

LLVM/project 8baa129clang/include/clang/Basic arm_sve.td, clang/test/CodeGen/AArch64/sve2p3-intrinsics acle_sve2p3_luti6.c

fixup! Adjust definitions after ACLE updates from @rockdreamer
DeltaFile
+12-12clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
+4-4clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target.c
+1-1clang/include/clang/Basic/arm_sve.td
+17-173 files

LLVM/project b236c78clang/include/clang/Basic arm_sve.td arm_sme.td, clang/test/CodeGen/AArch64/sme2p3-intrinsics acle_sme2p3_luti6.c

fixup! Adjust `def`s and split out tests
DeltaFile
+0-158clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
+138-0clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6_lane_x2.c
+5-5clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
+0-4clang/include/clang/Basic/arm_sve.td
+1-0clang/include/clang/Basic/arm_sme.td
+144-1675 files

LLVM/project ef4c473clang/include/clang/Basic arm_sve.td, clang/test/Sema/aarch64-sme2p3-intrinsics acle_sme2p3_target_lane.c acle_sme2p3_target.c

fixup! Address more PR comments
DeltaFile
+15-9clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target_lane.c
+0-16clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_target_lane.c
+5-5llvm/test/CodeGen/AArch64/sme2p3-intrinsics-luti6.ll
+3-3clang/test/Sema/aarch64-sme2p3-intrinsics/acle_sme2p3_target.c
+1-4llvm/lib/Target/AArch64/AArch64SVEInstrInfo.td
+4-0clang/include/clang/Basic/arm_sve.td
+28-371 files not shown
+28-387 files

LLVM/project 39ef379clang/lib/Sema SemaARM.cpp, clang/test/CodeGen/AArch64/sme2p3-intrinsics acle_sme2p3_luti6.c

fixup! Address more PR comments
DeltaFile
+21-3clang/lib/Sema/SemaARM.cpp
+12-4clang/test/CodeGen/AArch64/sme2p3-intrinsics/acle_sme2p3_luti6.c
+4-11llvm/include/llvm/IR/IntrinsicsAArch64.td
+6-6clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
+9-0clang/test/Sema/aarch64-sve2p3-intrinsics/acle_sve2p3_target_lane.c
+2-3llvm/lib/Target/AArch64/AArch64ISelDAGToDAG.cpp
+54-274 files not shown
+59-3310 files

LLVM/project 198b237clang/include/clang/Basic arm_sve.td, clang/test/CodeGen/AArch64/sve2p3-intrinsics acle_sve2p3_luti6.c

fixup! Fix final PR comments for now
DeltaFile
+118-8clang/test/CodeGen/AArch64/sve2p3-intrinsics/acle_sve2p3_luti6.c
+5-0llvm/lib/Target/AArch64/SVEInstrFormats.td
+1-1clang/include/clang/Basic/arm_sve.td
+1-0llvm/test/Verifier/AArch64/luti6-intrinsics.ll
+125-94 files