LLVM/project d84bfcdllvm/test/CodeGen/AArch64 neon-dotreduce.ll aarch64-mull-masks.ll, llvm/test/CodeGen/AMDGPU flat_atomics_i64_system_noprivate.ll flat_atomics_i64_noprivate.ll

better comment

Created using spr 1.3.6-beta.1
DeltaFile
+9,196-0llvm/test/CodeGen/AMDGPU/flat_atomics_i64_system_noprivate.ll
+6,804-0llvm/test/CodeGen/AMDGPU/flat_atomics_i64_noprivate.ll
+2,870-1,287llvm/test/CodeGen/AArch64/neon-dotreduce.ll
+1,223-530llvm/test/CodeGen/AArch64/aarch64-mull-masks.ll
+1,648-83llvm/test/CodeGen/RISCV/rvv/fixed-vectors-fp.ll
+1,523-0llvm/test/Transforms/AtomicExpand/AMDGPU/expand-atomicrmw-flat-noalias-addrspace.ll
+23,264-1,9001,172 files not shown
+69,772-39,6091,178 files

LLVM/project f364804llvm/test/Analysis/CostModel/RISCV cast.ll cmp.ll

[RISCV] Fix vp-intrinsics args in cost model tests. NFC (#112463)

This patch contains following changes to fix vp intrinsics tests.
1. v\*float -> v\*f32, v\*double -> v\*f64 and v\*half -> v\*f16
2. Fix the order of the vp-intrinsics.
DeltaFile
+1,119-1,119llvm/test/Analysis/CostModel/RISCV/cast.ll
+32-32llvm/test/Analysis/CostModel/RISCV/cmp.ll
+1,151-1,1512 files

LLVM/project 2039073llvm/lib/CodeGen/GlobalISel CombinerHelper.cpp

Add comment
DeltaFile
+2-0llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
+2-01 files

LLVM/project a14d462llvm/lib/CodeGen/GlobalISel CombinerHelper.cpp, llvm/test/CodeGen/AMDGPU/GlobalISel atomic_load_flat.ll atomic_load_global.ll

GlobalISel: Fix combine duplicating atomic loads

The sext_inreg (load) combine was not deleting the old load instruction,
and it would never be deleted if volatile or atomic.
DeltaFile
+18-78llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
+9-30llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
+9-27llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
+0-2llvm/test/CodeGen/AMDGPU/GlobalISel/postlegalizer-combiner-sextload-from-sextinreg.mir
+1-0llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
+37-1375 files

LLVM/project bdd2a6bllvm/lib/Target/AMDGPU BUFInstructions.td

Remove i16 result mubuf types.

This would only be used if we started using direct i16
values on gfx6/gfx7, but they should legalize all to i32
DeltaFile
+0-2llvm/lib/Target/AMDGPU/BUFInstructions.td
+0-21 files

LLVM/project 4245c00llvm/lib/ExecutionEngine/Orc LLJIT.cpp

[ORC] Fix LLJIT's atexit declaration for clang-repl on SystemZ.

The atexit needs a signext attribute on its return type. See
https://github.com/llvm/llvm-project/issues/109658.
DeltaFile
+10-4llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
+10-41 files

LLVM/project d8fadadmlir/include/mlir/Dialect/LLVMIR LLVMIntrinsicOps.td LLVMOpBase.td, mlir/lib/Dialect/LLVMIR/IR LLVMDialect.cpp

[mlir][LLVMIR] Add operand bundle support for llvm.intr.assume (#112143)

This patch adds operand bundle support for `llvm.intr.assume`.

This patch actually contains two parts:

- `llvm.intr.assume` now accepts operand bundle related attributes and
operands. `llvm.intr.assume` does not take constraint on the operand
bundles, but obviously only a few set of operand bundles are meaningful.
I plan to add some of those (e.g. `aligned` and `separate_storage` are
what interest me but other people may be interested in other operand
bundles as well) in future patches.

- The definitions of `llvm.call`, `llvm.invoke`, and
`llvm.call_intrinsic` actually define `op_bundle_tags` as an operation
property. It turns out this approach would introduce some unnecessary
burden if applied equally to the intrinsic operations because properties
are not available through `Operation *` but we have to operate on
`Operation *` during the import/export of intrinsics, so this PR changes
it from a property to an array attribute.
DeltaFile
+63-33mlir/lib/Dialect/LLVMIR/IR/LLVMDialect.cpp
+35-9mlir/include/mlir/Dialect/LLVMIR/LLVMIntrinsicOps.td
+35-2mlir/lib/Target/LLVMIR/ModuleTranslation.cpp
+31-1mlir/lib/Target/LLVMIR/ModuleImport.cpp
+27-0mlir/test/Dialect/LLVMIR/roundtrip.mlir
+19-6mlir/include/mlir/Dialect/LLVMIR/LLVMOpBase.td
+210-5114 files not shown
+276-7720 files

LLVM/project 5716f83llvm/include/llvm/ExecutionEngine/JITLink i386.h, llvm/lib/ExecutionEngine/JITLink ELF_i386.cpp

[JITLink] Fix i686 R_386_32 and other relocation values (#111091)

Fix R_386_32 and other relocations by correcting Addend computations.
DeltaFile
+9-24llvm/include/llvm/ExecutionEngine/JITLink/i386.h
+17-3llvm/lib/ExecutionEngine/JITLink/ELF_i386.cpp
+12-4llvm/test/ExecutionEngine/JITLink/i386/ELF_i386_absolute_relocations_32.s
+6-6llvm/test/ExecutionEngine/JITLink/i386/ELF_i386_small_pic_relocations_got.s
+9-1llvm/test/ExecutionEngine/JITLink/i386/ELF_i386_absolute_relocations_16.s
+4-3llvm/test/ExecutionEngine/JITLink/i386/ELF_i386_pc_relative_relocations_32.s
+57-411 files not shown
+60-447 files

LLVM/project 4db57abllvm/include/llvm/Transforms/Coroutines SuspendCrossingInfo.h, llvm/lib/Transforms/Coroutines SuspendCrossingInfo.cpp MaterializationUtils.cpp

[Coroutines] Improve dump of BB label to avoid str copies (#112374)

* This avoids the need to call printAsOperand that requires use of an
ostream and thus avoids a str copy.
* ModuleSlotTracker is used to get a BB # for BB's without names when
dumping SuspendCrossingInfo and materialization info.
* getBasicBlockLabel() is changed to dumpBasicBlockLabel() that directly
prints the label to dbgs()
* The label corresponds with the print-before BB #s.
* This change does not require any additional arguments to be added to
dump() methods, at least those that currently do not require any args.

Co-authored-by: tnowicki <tnowicki.nowicki at amd.com>
DeltaFile
+22-15llvm/lib/Transforms/Coroutines/SuspendCrossingInfo.cpp
+15-8llvm/lib/Transforms/Coroutines/MaterializationUtils.cpp
+4-1llvm/include/llvm/Transforms/Coroutines/SuspendCrossingInfo.h
+41-243 files

LLVM/project cfc10belld/ELF SymbolTable.cpp

[lld] Fix warning in SymbolTable.cpp (#112323)

Fix gcc warning:

lld/ELF/SymbolTable.cpp:340:33: warning: enumeral and non-enumeral type
in conditional expression [-Wextra]
DeltaFile
+1-1lld/ELF/SymbolTable.cpp
+1-11 files

LLVM/project 7937fe1compiler-rt/test/orc/TestCases/Linux/Generic llvm-jitlink-all-load.c, llvm/include/llvm/ExecutionEngine/Orc MachO.h ExecutionUtils.h

[ORC][llvm-jitlink] Add support for forced loading of archive members.

This patch adds support for forced loading of archive members, similar to the
behavior of the -all_load and -ObjC options in ld64. To enable this, the
StaticLibraryDefinitionGenerator class constructors are extended with a
VisitMember callback that is called on each member file in the archive at
generator construction time. This callback can be used to unconditionally add
the member file to a JITDylib at that point.

To test this the llvm-jitlink utility is extended with -all_load (all platforms)
and -ObjC (darwin only) options. Since we can't refer to symbols in the test
objects directly (these would always cause the member to be linked in, even
without the new flags) we instead test side-effects of force loading: execution
of constructors and registration of Objective-C metadata.

rdar://134446111
DeltaFile
+37-5llvm/lib/ExecutionEngine/Orc/ExecutionUtils.cpp
+35-0llvm/lib/ExecutionEngine/Orc/MachO.cpp
+26-6llvm/tools/llvm-jitlink/llvm-jitlink.cpp
+17-0llvm/include/llvm/ExecutionEngine/Orc/MachO.h
+14-1llvm/include/llvm/ExecutionEngine/Orc/ExecutionUtils.h
+14-0compiler-rt/test/orc/TestCases/Linux/Generic/llvm-jitlink-all-load.c
+143-124 files not shown
+180-1310 files

LLVM/project 193269ellvm/lib/Target/AMDGPU SIInstrInfo.td AMDGPUInstructions.td, llvm/test/CodeGen/AMDGPU/GlobalISel atomic_load_local_2.ll atomic_load_global.ll

AMDGPU/GlobalISel: Handle atomic sextload and zextload

Atomic loads are handled differently from the DAG, and have separate opcodes
and explicit control over the extensions, like ordinary loads. Add
new patterns for these.

There's room for cleanup and improvement. d16 cases aren't handled.

Fixes #111645
DeltaFile
+509-0llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_local_2.ll
+478-0llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_global.ll
+331-0llvm/test/CodeGen/AMDGPU/GlobalISel/atomic_load_flat.ll
+45-0llvm/lib/Target/AMDGPU/SIInstrInfo.td
+21-0llvm/lib/Target/AMDGPU/AMDGPUInstructions.td
+16-0llvm/lib/Target/AMDGPU/FLATInstructions.td
+1,400-03 files not shown
+1,416-09 files

LLVM/project 4c2c177clang/lib/Driver/ToolChains Clang.cpp, clang/test/Driver loongarch-mannotate-tablejump.c

[LoongArch] Add options for annotate tablejump

This aligns with GCC. LoongArch kernel developers requested that this
option generate some corresponding relations in a section, including the
addresses of the jump instruction(jr) and the `MachineJumpTableEntry`.

Reviewed By: heiher

Pull Request: https://github.com/llvm/llvm-project/pull/102411
DeltaFile
+133-0llvm/test/CodeGen/LoongArch/annotate-tablejump.ll
+49-0llvm/lib/Target/LoongArch/LoongArchExpandPseudoInsts.cpp
+45-0llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
+13-0llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
+13-0clang/test/Driver/loongarch-mannotate-tablejump.c
+8-0clang/lib/Driver/ToolChains/Clang.cpp
+261-02 files not shown
+268-18 files

LLVM/project b2b0e6ccompiler-rt/lib/lsan lsan_common.cpp

[NFC][lsan] Fix name of local var
DeltaFile
+3-3compiler-rt/lib/lsan/lsan_common.cpp
+3-31 files

LLVM/project 4cc6a08libc/cmake/modules LLVMLibCArchitectures.cmake

Update LLVMLibCArchitectures.cmake (#112464)

Hi there,

When building llvm-libc on the openEuler system, I encountered an issue
as shown in the image below:

![image](https://github.com/user-attachments/assets/75667de4-5bea-4a95-be28-ed34db0e05b9)

This issue happens because the regular expression used in
`libc/cmake/modules/LLVMLibCArchitectures.cmake`: `string(REGEX MATCH
"Target: [-_a-z0-9.]+[ \r\n]+")` does not handle capital letters
properly in `openEuler`.

To fix this, I modified the regular expression to: `string(REGEX MATCH
"Target: [-_a-zA-Z0-9.]+[ \r\n]+")`. This change makes it compatible
with capital letters.
DeltaFile
+1-1libc/cmake/modules/LLVMLibCArchitectures.cmake
+1-11 files

LLVM/project bb89988llvm CMakeLists.txt

[AIX][CMake] Disable `openmp` as LLVM_ENABLE_PROJECTS  (#110152)

in favor of LLVM_ENABLE_RUNTIMES
DeltaFile
+6-0llvm/CMakeLists.txt
+6-01 files

LLVM/project 3ef5f50llvm/lib/Target/LoongArch LoongArchMachineFunctionInfo.h LoongArchAsmPrinter.cpp

comments

Created using spr 1.3.5-bogner
DeltaFile
+3-1llvm/lib/Target/LoongArch/LoongArchMachineFunctionInfo.h
+3-0llvm/lib/Target/LoongArch/LoongArchAsmPrinter.cpp
+6-12 files

LLVM/project 6d13cc9clang/lib/Headers/hlsl hlsl_intrinsics.h, clang/lib/Sema SemaHLSL.cpp

[HLSL] Implement `WaveReadLaneAt` intrinsic (#111010)

- create a clang built-in in Builtins.td
    - add semantic checking in SemaHLSL.cpp
    - link the WaveReadLaneAt api in hlsl_intrinsics.h
    - add lowering to spirv backend op GroupNonUniformShuffle
      with Scope = 2 (Group) in SPIRVInstructionSelector.cpp
    - add WaveReadLaneAt intrinsic to IntrinsicsDirectX.td and mapping
      to DXIL.td

    - add tests for HLSL intrinsic lowering to spirv intrinsic in
      WaveReadLaneAt.hlsl
    - add tests for sema checks in WaveReadLaneAt-errors.hlsl
    - add spir-v backend tests in WaveReadLaneAt.ll
    - add test to show scalar dxil lowering functionality

    - note that this doesn't include support for the scalarizer to
      handle WaveReadLaneAt will be added in a future pr

This is the first part #70104
DeltaFile
+80-0clang/lib/Headers/hlsl/hlsl_intrinsics.h
+74-0clang/test/CodeGenHLSL/builtins/WaveReadLaneAt.hlsl
+61-0llvm/test/CodeGen/DirectX/WaveReadLaneAt.ll
+56-0llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WaveReadLaneAt.ll
+39-0clang/lib/Sema/SemaHLSL.cpp
+38-0clang/test/SemaHLSL/BuiltIns/WaveReadLaneAt-errors.hlsl
+348-08 files not shown
+413-014 files

LLVM/project 210140allvm/include/llvm/ExecutionEngine/JITLink x86_64.h, llvm/lib/ExecutionEngine/JITLink ELF_x86_64.cpp x86_64.cpp

[JITLink] Add support for R_X86_64_SIZE* relocations. (#110081)

This patch adds support for R_X86_64_SIZE32/R_X86_64_SIZE64 relocation
types by introducing edge kinds x86_64::Size32/x86_64::Size64. The
calculation for these relocations is: Z + A, where:

Z - Represents the size of the symbol whose index resides in the
    relocation entry.

A - Represents the addend used to compute the value of the relocation
    field.

Ref: [System V Application Binary Interface
x86-64](https://gitlab.com/x86-psABIs/x86-64-ABI/-/jobs/artifacts/master/raw/x86-64-ABI/abi.pdf?job=build)
DeltaFile
+34-0llvm/include/llvm/ExecutionEngine/JITLink/x86_64.h
+27-0llvm/test/ExecutionEngine/JITLink/x86-64/ELF_R_X86_64_SIZE.s
+6-0llvm/lib/ExecutionEngine/JITLink/ELF_x86_64.cpp
+4-0llvm/lib/ExecutionEngine/JITLink/x86_64.cpp
+71-04 files

LLVM/project 69f7758lldb/test/Shell/Commands command-expr-diagnostics.test

Revert "[lldb] Fix command-expr-diagnostics.test for Windows (#112109)"

This reverts commit eca3206d29e7ce97dd6336deaa3da96be37f8277.

This broke LLDB Linux bot for no apparent reason. I ll post a more
suitable fix later. Disabled command-expr-diagnostics.test on
windows for now.
DeltaFile
+2-1lldb/test/Shell/Commands/command-expr-diagnostics.test
+2-11 files

LLVM/project 4264fe1clang/lib/Analysis/FlowSensitive HTMLLogger.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.4
DeltaFile
+1-2clang/lib/Analysis/FlowSensitive/HTMLLogger.cpp
+1-21 files

LLVM/project eca3206lldb/test/Shell/Commands command-expr-diagnostics.test

[lldb] Fix command-expr-diagnostics.test for Windows (#112109)

This adds a minor change to command-expr-diagnostics.test to make
it pass on windows. Clang produces PDB on windows by default which
was ignoring main symbol due to optimization. The problem is fixed
by adding -gdwarf to commandline, making sure dwarf debug info gets
generated on both Windows and Linux.
DeltaFile
+1-1lldb/test/Shell/Commands/command-expr-diagnostics.test
+1-11 files

LLVM/project ed0fd13compiler-rt/lib/scudo/standalone combined.h, compiler-rt/lib/scudo/standalone/tests combined_test.cpp

[scudo] Double frees result in chunk state error (#110345)

Fixes bug where a device that supports tagged pointers doesn't use
the tagged pointer when computing the checksum.

Add tests to verify that double frees result in chunk state error
not corrupted header errors.
DeltaFile
+14-8compiler-rt/lib/scudo/standalone/combined.h
+21-0compiler-rt/lib/scudo/standalone/tests/combined_test.cpp
+35-82 files

LLVM/project 1b6a46allvm/include/llvm/ExecutionEngine/Orc COFFPlatform.h, llvm/lib/ExecutionEngine/Orc COFFPlatform.cpp LLJIT.cpp

[ORC][COFF] Remove the `ExecutionSession&` argument to `COFFPlatform` factory & constructor (#112419)

We can get a reference to the `ExecutionSession` from the
`ObjectLinkingLayer` argument, so there's no need to pass it in
separately.

This mirrors recent changes to `ElfNixPlatform` and `MachOPlatform` by
@lhames in
https://github.com/llvm/llvm-project/commit/3dba4ca155e0b460ca82917b25d3624eb5825940
and
https://github.com/llvm/llvm-project/commit/cc20dd285ab72292a1d383d0779aecbe5e1ccf81.
DeltaFile
+15-12llvm/lib/ExecutionEngine/Orc/COFFPlatform.cpp
+5-8llvm/include/llvm/ExecutionEngine/Orc/COFFPlatform.h
+3-3llvm/tools/llvm-jitlink/llvm-jitlink.cpp
+1-1llvm/lib/ExecutionEngine/Orc/LLJIT.cpp
+24-244 files

LLVM/project cc13d4flldb/source/Host/common Host.cpp

[lldb] Make the system log a NOOP on non-Darwin platforms

As discussed in #111911, we have consensus that as it stands, the system
log is only meaningful on Darwin and that by default it should be a NOOP
on other platforms.
DeltaFile
+4-22lldb/source/Host/common/Host.cpp
+4-221 files

LLVM/project 08ed199libc/test/integration/startup/gpu rpc_interface_test.cpp rpc_test.cpp

[libc] Fix incorrect RPC usage in tests
DeltaFile
+18-11libc/test/integration/startup/gpu/rpc_interface_test.cpp
+3-3libc/test/integration/startup/gpu/rpc_test.cpp
+21-142 files

LLVM/project ffc5b19clang/utils/TableGen ClangDiagnosticsEmitter.cpp

[Clang][TableGen] Use const pointers for various Init objects in Diagnostic Emitter (#112318)

Use const pointers for various Init objects in Diagnostic Emitter. This
is a part of effort to have better const correctness in TableGen
backends:


https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089
DeltaFile
+8-8clang/utils/TableGen/ClangDiagnosticsEmitter.cpp
+8-81 files

LLVM/project 9b422d1clang/utils/TableGen NeonEmitter.cpp

[Clang][TableGen] Use const pointers for various Init objects in NeonEmitter (#112317)

Use const pointers for various Init objects in NeonEmitter. This is a
part of effort to have better const correctness in TableGen backends:

https://discourse.llvm.org/t/psa-planned-changes-to-tablegen-getallderiveddefinitions-api-potential-downstream-breakages/81089
DeltaFile
+45-37clang/utils/TableGen/NeonEmitter.cpp
+45-371 files

LLVM/project ddc3f2dlibc/src/math sinpif16.h, libc/src/math/generic sinpif16.cpp CMakeLists.txt

[libc] Add sinpif16 function (#110994)

Half-precision floating point (16-bit) implementation of the
trigonometric function Sin for inputs scaled by pi
DeltaFile
+136-0libc/src/math/generic/sinpif16.cpp
+42-0libc/test/src/math/smoke/sinpif16_test.cpp
+40-0libc/test/src/math/sinpif16_test.cpp
+21-0libc/src/math/sinpif16.h
+19-0libc/src/math/generic/CMakeLists.txt
+16-2libc/utils/MPFRWrapper/MPFRUtils.cpp
+274-27 files not shown
+307-313 files

LLVM/project 7cbb365flang/include/flang/Semantics type.h, flang/lib/Semantics type.cpp

[flang] Fix broken shared library build (#112444)

I just introduced a dependency from the Evaluate library to the
Semantics library, which is circular in a shared library build.
Rearrange the code a little to ensure that the dependence is only on a
header.
DeltaFile
+12-1flang/include/flang/Semantics/type.h
+0-6flang/lib/Semantics/type.cpp
+12-72 files