LLVM/project 6891a6ecompiler-rt/lib/scudo/standalone chunk.h

[compiler-rt] Add bitmask to fix warning (#187812)

After #186881 was merged the gcc libc bots started complaining about the
conversion from u8 to 2 bit integer being unsafe (see:
https://lab.llvm.org/buildbot/#/builders/131/builds/42788). This PR
adds a bitmask that fixes the warning.
DeltaFile
+1-1compiler-rt/lib/scudo/standalone/chunk.h
+1-11 files

LLVM/project bae6a2allvm/cmake/modules LLVMExternalProjectUtils.cmake

[Runtimes] Fix Unix Makefiles race between runtimes-build and EXTRA_TARGETS (#187634)

In our downstream we have a non-runtime target depending on libclc
EXTRA_TARGET and then observe a race condition in parallel build: both
runtimes-build (full build, no lock) and libclc EXTRA_TARGET (triggered
by non-runtime target, FileLock) build concurrently, leading to corrupt
libclc library.

This exposes an limitation in ExternalProject EXTRA_TARGET design:
EXTRA_TARGETS in llvm_ExternalProject_Add only depend on
${name}-configure, not ${name}-build. This makes EXTRA_TARGETS unsafe as
dependencies of a non-runtime target..

Fix: Add a locked BUILD_COMMAND to ExternalProject_Add for Unix
Makefiles generator, using the same cmake.lock as EXTRA_TARGETS. This
serializes runtimes-build with all EXTRA_TARGETS under one lock.

With this PR, a non-runtime target can depend on a specific
EXTRA_TARGET, rather than needing to depend on the umbrella runtimes

    [9 lines not shown]
DeltaFile
+15-1llvm/cmake/modules/LLVMExternalProjectUtils.cmake
+15-11 files

LLVM/project 335a2d0clang/docs ReleaseNotes.rst, clang/lib/AST Expr.cpp

[clang] fix error: cannot compile this l-value expression yet (#187755)
DeltaFile
+17-0clang/test/CodeGenCXX/builtin_FUNCTION.cpp
+1-1clang/lib/AST/Expr.cpp
+1-0clang/docs/ReleaseNotes.rst
+19-13 files

LLVM/project 368f38bllvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp

[AMDGPU][SIInsertWaitcnts][NFC] SGPRInfo: Move score selection logic closer (#186518)

Selecting the score in SGPRInfo used to require an index which you would
get by calling a getSgprScoresIdx(), which is defined in a different
class.

This patch moves the score selection logic into the SGPRinfo. This makes
the interface simpler and more intuitive.

Also given that SGPRInfo contains only two scores, this patch also
replaces the score array with individual score variables.

Should be NFC.
DeltaFile
+22-20llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+22-201 files

LLVM/project a60b3a8libc/include threads.yaml

[libc] Fix function prototypes for <threads.h> C11 header. (#187808)

Fix return types and/or function arguments of several functions:
* mtx_destroy
* tss_delete
* thrd_exit
DeltaFile
+4-4libc/include/threads.yaml
+4-41 files

LLVM/project 57b0c94libc/src/__support/wctype perfect_hash_map.h

rename var
DeltaFile
+2-2libc/src/__support/wctype/perfect_hash_map.h
+2-21 files

LLVM/project f74010flibc/src/__support/CPP iterator.h, libc/src/__support/wctype perfect_hash_map.h

cleanup
DeltaFile
+1-2libc/src/__support/wctype/perfect_hash_map.h
+1-1libc/src/__support/CPP/iterator.h
+2-32 files

LLVM/project 3584492llvm/lib/Target/AArch64 AArch64SystemOperands.td, llvm/test/MC/AArch64 armv8.7a-xs.s armv9.5a-tlbiw.s

fixup! Move nxs bit into TLBIEntry rather than override
DeltaFile
+57-56llvm/test/MC/AArch64/armv8.7a-xs.s
+21-33llvm/lib/Target/AArch64/AArch64SystemOperands.td
+10-10llvm/test/MC/AArch64/armv9.5a-tlbiw.s
+88-993 files

LLVM/project 51c158bclang-tools-extra/clang-doc JSONGenerator.cpp, clang-tools-extra/clang-doc/assets function-template.mustache

[clang-doc] Fix incorrectly rendered specialization args in HTML (#187761)

Function template specialization arguments were incorrectly rendered
without a comma. This was due to the "End" JSON property also being
used in the levels above. Mustache looks for missing properties in
parent contexts, see #174359.
DeltaFile
+2-2clang-tools-extra/test/clang-doc/templates.cpp
+2-2clang-tools-extra/test/clang-doc/json/class-specialization.cpp
+1-1clang-tools-extra/clang-doc/JSONGenerator.cpp
+1-1clang-tools-extra/clang-doc/assets/function-template.mustache
+6-64 files

LLVM/project 36daf3ellvm/lib/Target/AArch64 AArch64SystemOperands.td, llvm/test/MC/AArch64 armv8.7a-xs.s armv9.5a-tlbiw.s

fixup! Move nxs bit into TLBIEntry rather than override
DeltaFile
+57-56llvm/test/MC/AArch64/armv8.7a-xs.s
+17-30llvm/lib/Target/AArch64/AArch64SystemOperands.td
+3-3llvm/test/MC/AArch64/armv9.5a-tlbiw.s
+77-893 files

LLVM/project 720615fllvm/lib/Transforms/Vectorize/SandboxVectorizer DependencyGraph.cpp, llvm/unittests/Transforms/Vectorize/SandboxVectorizer DependencyGraphTest.cpp

[SandboxVec][DAG] Fix DAG update when user is scheduled (#187148)

This patch fixes the update of the DAGNode UnscheduledSucc counter when
a use edge is modified. This is the result of a setOperand() or a RAUW
(and friends) operation.

Before this patch we would not check if the User (i.e., the consumer of
the use-def edge) is scheduled and we would update the definition's
UnscheduledSucc counter, resulting in counting errors.

For example, consider the following IR:
```
  %A = ...
  %B = ...
  %U = %A  ; scheduled
```
Note that %U's DAGNode is marked as "scheduled" while %A and %B are not.

If we change %U's operand from %A to %B then we should not attempt to
update %A's or %B's UnscheduledSuccs because %U is scheduled so it
should not get counted as an "unscheduled" successor.
DeltaFile
+38-0llvm/unittests/Transforms/Vectorize/SandboxVectorizer/DependencyGraphTest.cpp
+8-1llvm/lib/Transforms/Vectorize/SandboxVectorizer/DependencyGraph.cpp
+46-12 files

LLVM/project 9ee437bclang/lib/CIR/Dialect/IR CIRDialect.cpp

fix code dup rebase bug
DeltaFile
+0-4clang/lib/CIR/Dialect/IR/CIRDialect.cpp
+0-41 files

LLVM/project 2af8825libc/src/__support/wctype perfect_hash_map.h CMakeLists.txt

add UInt128
DeltaFile
+7-7libc/src/__support/wctype/perfect_hash_map.h
+1-0libc/src/__support/wctype/CMakeLists.txt
+8-72 files

LLVM/project 8cc0124compiler-rt/lib/scudo/standalone/tests wrappers_c_test.cpp

[scudo] Make the default for size/align checks to not die. (#187799)
DeltaFile
+3-3compiler-rt/lib/scudo/standalone/tests/wrappers_c_test.cpp
+3-31 files

LLVM/project cba6551libc/config/linux/aarch64 entrypoints.txt, libc/config/linux/riscv entrypoints.txt

[libc][stdlib][annex_k] Add set_constraint_handler_s.
DeltaFile
+28-0libc/src/stdlib/set_constraint_handler_s.cpp
+21-0libc/src/stdlib/set_constraint_handler_s.h
+11-0libc/src/stdlib/CMakeLists.txt
+7-0libc/include/stdlib.yaml
+1-0libc/config/linux/riscv/entrypoints.txt
+1-0libc/config/linux/aarch64/entrypoints.txt
+69-01 files not shown
+70-07 files

LLVM/project d4770delibc/config/linux/x86_64 entrypoints.txt, libc/include stdlib.yaml CMakeLists.txt

[libc][stdlib][annex_k] Add ignore_handler_s.
DeltaFile
+22-0libc/src/stdlib/ignore_handler_s.h
+16-0libc/src/stdlib/ignore_handler_s.cpp
+13-0libc/src/stdlib/CMakeLists.txt
+9-0libc/include/stdlib.yaml
+2-1libc/config/linux/x86_64/entrypoints.txt
+1-0libc/include/CMakeLists.txt
+63-12 files not shown
+65-18 files

LLVM/project bdc4ed6libc/src/__support/annex_k libc_constraint_handler.h CMakeLists.txt

[libc][annex_k] Add libc_constraint_handler.
DeltaFile
+26-0libc/src/__support/annex_k/libc_constraint_handler.h
+9-0libc/src/__support/annex_k/CMakeLists.txt
+35-02 files

LLVM/project 67fe046libc/src/__support/annex_k constraint_macros.h CMakeLists.txt

[libc][annex_k] Add libc_constraint_handler macros.
DeltaFile
+44-0libc/src/__support/annex_k/constraint_macros.h
+9-0libc/src/__support/annex_k/CMakeLists.txt
+53-02 files

LLVM/project bf32efclibc/src/__support/annex_k libc_constraint_handler.h

fix format
DeltaFile
+1-1libc/src/__support/annex_k/libc_constraint_handler.h
+1-11 files

LLVM/project f3dcadalibc/include stdlib.yaml, libc/src/__support/annex_k abort_handler_s.h CMakeLists.txt

[libc][annex_k] Add abort_handler_s.
DeltaFile
+43-0libc/src/__support/annex_k/abort_handler_s.h
+22-0libc/src/stdlib/abort_handler_s.h
+20-0libc/src/stdlib/abort_handler_s.cpp
+14-2libc/include/stdlib.yaml
+12-0libc/src/__support/annex_k/CMakeLists.txt
+10-0libc/src/stdlib/CMakeLists.txt
+121-25 files not shown
+126-211 files

LLVM/project 7a5431elldb/source/DataFormatters TypeSynthetic.cpp, lldb/test/API/functionalities/data-formatter/bytecode-synthetic main.cpp

[lldb][bytecode] Fix Update() and failing test (#187795)

Fixes a breakage from https://github.com/llvm/llvm-project/pull/182155
DeltaFile
+11-11lldb/test/API/functionalities/data-formatter/bytecode-synthetic/main.cpp
+3-1lldb/source/DataFormatters/TypeSynthetic.cpp
+14-122 files

LLVM/project 485eda9mlir/lib/Dialect/Tosa/IR TosaCanonicalizations.cpp, mlir/test/Dialect/Tosa constant_folding.mlir

[mlir][tosa] Fix crash in slice op folder when input values are not iterable (#187339)

A crash was encountered in the slice op folder when the input was a
constant with dense resource values. The folder was trying to iterate
over the input values, which is not possible for resource values. This
change fixes the crash and adds a test.
DeltaFile
+20-0mlir/test/Dialect/Tosa/constant_folding.mlir
+2-2mlir/lib/Dialect/Tosa/IR/TosaCanonicalizations.cpp
+22-22 files

LLVM/project a261548libc/hdr/types constraint_handler_t.h CMakeLists.txt, libc/include stdlib.yaml CMakeLists.txt

[libc][annex_k] Add constraint_handler_t. (#163239)

RFC https://discourse.llvm.org/t/rfc-bounds-checking-interfaces-for-llvm-libc/87685

Add `constraint_handler_t` type required by Annex K interface in LLVM libc.
DeltaFile
+30-0libc/hdr/types/constraint_handler_t.h
+22-0libc/include/llvm-libc-types/constraint_handler_t.h
+8-0libc/include/llvm-libc-types/CMakeLists.txt
+8-0libc/hdr/types/CMakeLists.txt
+1-0libc/include/stdlib.yaml
+1-0libc/include/CMakeLists.txt
+70-06 files

LLVM/project d514a4aclang/lib/CodeGen CGHLSLBuiltins.cpp, clang/test/CodeGenHLSL/builtins transpose.hlsl mul.hlsl

[HLSL][Matrix] Support row-major `transpose` and `mul` by inserting matrix memory layout transformations (#186898)

Fixes #184906

The SPIRV and DXIL backends assume matrices are provided in column-major
order when lowering matrix transpose and matrix multiplication
intrinsics.

To support row-major order matrices from Clang/HLSL, we therefore need
to convert row-major order matrices into column-major order matrices
before applying matrix transpose and multiplication. A conversion from
column-major order back to row-major order is also required for
correctness after a matrix transpose or matrix multiply.

For the matrix transpose case on row-major order matrices, the last two
matrix memory layout transforms cancel each other out. So a row-major
order matrix transpose is simply a column-major order transpose with the
row and column dimensions swapped.


    [36 lines not shown]
DeltaFile
+30-22clang/test/CodeGenHLSL/builtins/transpose.hlsl
+42-7clang/lib/CodeGen/CGHLSLBuiltins.cpp
+37-12clang/test/CodeGenHLSL/builtins/mul.hlsl
+22-0llvm/include/llvm/IR/MatrixBuilder.h
+131-414 files

LLVM/project 2b78c71lldb/source/Plugins/ExpressionParser/Clang ClangExpressionParser.cpp, lldb/test/API/commands/expression/ptrauth TestPtrAuthExpressions.py main.c

[lldb] Support -fptrauth-indirect-gotos in the expression evaluator (#187562)

When targeting arm64e, we enable `-fptrauth-indirect-gotos` by default,
which signs label addresses and authenticates indirect branches. Add
support (and a test) for this in the LLDB expression evaluator.
DeltaFile
+43-0lldb/test/API/commands/expression/ptrauth/TestPtrAuthExpressions.py
+15-0lldb/test/API/commands/expression/ptrauth/main.c
+1-0lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp
+59-03 files

LLVM/project 79f3104lldb/source/Plugins/SymbolLocator/SymStore SymbolLocatorSymStore.cpp

[lldb] Fix warning style for SymStore symbol locator (#187776)

Missed this when reviewing #186986. This fixes the warnings to follow
the [LLVM Coding
Standards](https://llvm.org/docs/CodingStandards.html#error-and-warning-messages).
DeltaFile
+3-3lldb/source/Plugins/SymbolLocator/SymStore/SymbolLocatorSymStore.cpp
+3-31 files

LLVM/project 343b566llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp

[TargetLowering] Move the MULH/MUL_LOHI legality checks to the beginning of BuildSDIV/UDIV. NFCI (#187780)

This groups the type and operation legality checks to the beginning. The
rest of the code can focus on the transformation.
DeltaFile
+62-66llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+62-661 files

LLVM/project 064fca8libc/src/__support/CPP iterator.h

fix 2
DeltaFile
+0-4libc/src/__support/CPP/iterator.h
+0-41 files

LLVM/project 3eecb98llvm/lib/CodeGen/SelectionDAG TargetLowering.cpp

[TargetLowering] Separate some of the control for the i32->i64 optimization out of BuildUDIVPattern. (#187739)

Check the type before we call getOperationAction. Give BuildUDIVPattern
only AllowWiden and a WideSVT.

Update variable names and comments to avoid spreading "64" to too many
places.
DeltaFile
+22-15llvm/lib/CodeGen/SelectionDAG/TargetLowering.cpp
+22-151 files

LLVM/project 2d3b8cellvm/test/tools/dsymutil asm-line-tables.test

[dsymutil] Require AArch64 backend in asm-line-tables.test (#187797)

This should fix the test on all the builders that don't enable this backend.
DeltaFile
+1-0llvm/test/tools/dsymutil/asm-line-tables.test
+1-01 files