LLVM/project fa92475llvm/lib/Target/RISCV RISCVInstrInfoA.td RISCVInstrInfo.cpp, llvm/lib/Target/RISCV/MCTargetDesc RISCVBaseInfo.h

[RISCV] Add an OperandType for ordering for atomic pseudos. (#171744)

DeltaFile
+14-6llvm/lib/Target/RISCV/RISCVInstrInfoA.td
+3-0llvm/lib/Target/RISCV/RISCVInstrInfo.cpp
+2-0llvm/lib/Target/RISCV/MCTargetDesc/RISCVBaseInfo.h
+19-63 files

LLVM/project d7c3021llvm/lib/Target/LoongArch/Disassembler LoongArchDisassembler.cpp, llvm/test/MC/LoongArch/Basic/Integer misc.s

Address weining's comments
DeltaFile
+9-9llvm/lib/Target/LoongArch/Disassembler/LoongArchDisassembler.cpp
+6-1llvm/test/MC/LoongArch/Basic/Integer/misc.s
+15-102 files

LLVM/project a8f6c51mlir/lib/Dialect/XeGPU/Transforms XeGPUWgToSgDistribute.cpp XeGPUPropagateLayout.cpp, mlir/test/Dialect/XeGPU xegpu-wg-to-sg.mlir

adjust the layout for expandedUnitDims and wg-to-sg distribution shapecast op
DeltaFile
+46-29mlir/lib/Dialect/XeGPU/Transforms/XeGPUWgToSgDistribute.cpp
+17-0mlir/test/Dialect/XeGPU/xegpu-wg-to-sg.mlir
+0-4mlir/lib/Dialect/XeGPU/Transforms/XeGPUPropagateLayout.cpp
+1-1mlir/lib/Dialect/XeGPU/Transforms/XeGPUSubgroupDistribute.cpp
+64-344 files

LLVM/project 2614af0clang/lib/Tooling Tooling.cpp, clang/unittests/Tooling ToolingTest.cpp

[Tooling] Fix misleading progress report when files have multiple compile commands (#169640)

This patch fixes an issue in progress reporting where the processed item
counter could exceed the total item count, leading to confusing outputs
like [22/18].

Closes [#169168](https://github.com/llvm/llvm-project/issues/169168)
DeltaFile
+133-0clang/unittests/Tooling/ToolingTest.cpp
+19-12clang/lib/Tooling/Tooling.cpp
+152-122 files

LLVM/project 3fdce79libunwind/src UnwindCursor.hpp

[libunwind] fix building on Haiku i386 (#171586)

Co-authored-by: Jérôme Duval <jerome.duval at gmail.com>
DeltaFile
+3-2libunwind/src/UnwindCursor.hpp
+3-21 files

LLVM/project 76ae530compiler-rt/test/builtins/Unit/ppc fixunstfti_test.c fixtfti_test.c

[PPC] XFAIL ppc/fixtfti_test.c and ppc/fixunstfti_test.c and track them under issue 171751
DeltaFile
+1-0compiler-rt/test/builtins/Unit/ppc/fixunstfti_test.c
+1-0compiler-rt/test/builtins/Unit/ppc/fixtfti_test.c
+2-02 files

LLVM/project 1f07f7cflang-rt/lib/cuda allocatable.cpp pointer.cpp, flang/lib/Lower Allocatable.cpp

[flang][cuda] Add support for allocate with device source (#171743)

Add support for allocate statement with a source that is a device
variable.
DeltaFile
+16-8flang-rt/lib/cuda/allocatable.cpp
+8-6flang-rt/lib/cuda/pointer.cpp
+10-3flang/lib/Lower/Allocatable.cpp
+9-0flang/test/Lower/CUDA/cuda-allocatable.cuf
+0-9flang/test/Lower/CUDA/TODO/cuda-allocate-source-device.cuf
+5-2flang/test/Fir/CUDA/cuda-allocate.fir
+48-284 files not shown
+63-3610 files

LLVM/project ba73d60llvm/lib/Target/RISCV RISCVInstrInfoXRivos.td

[RISCV] Use sew and vec_policy for Rivos vector instruction operands. (#171721)

This enables MachineVerifier and MachineIR printing support for these
operands.
DeltaFile
+2-2llvm/lib/Target/RISCV/RISCVInstrInfoXRivos.td
+2-21 files

LLVM/project 16e6055llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/DebugInfo/X86 selectionDAG-load-sext-trunc.ll selectionDAG-load-sext.ll

Revert "[SelectionDAG] Salvage debuginfo when combining load and sext… (#171745)

… instrs. (#169779)"

This reverts commit 2b958b9ee24b8ea36dcc777b2d1bcfb66c4972b6.

I might have broken the sanitizer-x86_64-linux bot


/home/b/sanitizer-x86_64-linux/build/llvm-project/compiler-rt/lib/sanitizer_common/sanitizer_procmaps_linux.cpp
clang++:
/home/b/sanitizer-x86_64-linux/build/llvm-project/llvm/include/llvm/ADT/ArrayRef.h:248:
const T &llvm::ArrayRef<llvm::DbgValueLocEntry>::operator[](size_t)
const [T = llvm::DbgValueLocEntry]: Assertion `Index < Length &&
"Invalid index!"' failed.
DeltaFile
+0-70llvm/test/DebugInfo/X86/selectionDAG-load-sext-trunc.ll
+0-61llvm/test/DebugInfo/X86/selectionDAG-load-sext.ll
+2-39llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+2-1703 files

LLVM/project 1dd78d7lldb/source/Interpreter CommandInterpreter.cpp, lldb/test/API/functionalities/breakpoint/breakpoint_command TestRegexpBreakCommand.py

rebase after fix landed

Created using spr 1.3.8-beta.1
DeltaFile
+88-0lldb/source/Interpreter/CommandInterpreter.cpp
+29-18llvm/utils/TableGen/Common/InfoByHwMode.cpp
+22-6lldb/test/API/functionalities/breakpoint/breakpoint_command/TestRegexpBreakCommand.py
+21-0llvm/test/TableGen/RegClassByHwModeErrors.td
+7-7llvm/test/CodeGen/AArch64/tbi.ll
+6-1llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+173-322 files not shown
+175-348 files

LLVM/project 055bfc4lldb/source/Interpreter CommandInterpreter.cpp, lldb/test/API/functionalities/breakpoint/breakpoint_command TestRegexpBreakCommand.py

clang-format

Created using spr 1.3.8-beta.1
DeltaFile
+88-0lldb/source/Interpreter/CommandInterpreter.cpp
+29-18llvm/utils/TableGen/Common/InfoByHwMode.cpp
+22-6lldb/test/API/functionalities/breakpoint/breakpoint_command/TestRegexpBreakCommand.py
+21-0llvm/test/TableGen/RegClassByHwModeErrors.td
+7-7llvm/test/CodeGen/AArch64/tbi.ll
+6-1llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+173-322 files not shown
+175-348 files

LLVM/project 62aaa3allvm/runtimes CMakeLists.txt

[compiler-rt] follow-up to 166837, rename COMPILER_RT_FORCE_TEST_BUILTINS_DIR to COMPILER_RT_TEST_BUILTINS_DIR (#171741)

Co-authored-by: David Tenty <daltenty at ibm.com>
DeltaFile
+2-2llvm/runtimes/CMakeLists.txt
+2-21 files

LLVM/project c5470e0llvm/lib/Target/RISCV RISCVInstrInfoP.td

[RISC-V][MC] Fix tied operand register class mismatch in P-extension

I have a change to validate the operand classes emitted in the AsmParser
and that caused llvm/test/MC/RISCV/rv32p-valid.s to fail due to the rd_wb
register using a different register class from rd:
`PWADDA_H operand 1 register X6 is not a member of register class GPRPair`
This happens because tablegen's AsmMatcherEmitter emits code to literally
copy over the tied registers and does not feed them through the equivalent
of RISCVAsmParser::validateTargetOperandClass() which would allow adjusting
these operand classes.

Ideally we would handle this in tablegen (or at least add an error), but
the tied operand handling logic is rather complex and I don't understand
it yet. For now just update the rd register class to match rd_wb.

Pull Request: https://github.com/llvm/llvm-project/pull/171738
DeltaFile
+1-1llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+1-11 files

LLVM/project 3abaed8llvm/test/TableGen RegClassByHwModeErrors.td, llvm/utils/TableGen/Common InfoByHwMode.cpp

[TableGen] Replace reachable assertion with error in *ByHwMode

Having duplicate mode entries previously asserted (or silently replaced
the last value with a new one in release builds). Report an error with
a helpful message instead.

Pull Request: https://github.com/llvm/llvm-project/pull/171715
DeltaFile
+29-18llvm/utils/TableGen/Common/InfoByHwMode.cpp
+21-0llvm/test/TableGen/RegClassByHwModeErrors.td
+50-182 files

LLVM/project 6dafa09lldb/source/Interpreter CommandInterpreter.cpp, lldb/test/API/functionalities/breakpoint/breakpoint_command TestRegexpBreakCommand.py

Add a _regexp-break-add and some more tests for the b alias. (#171236)

This commit leaves "b" aliased to the old _regexp-break for now. The two
variants are identical except that `_regexp-break` allows you to say:

`(lldb) b <unrecognized_input> 
`
which gets translated to:

`break set <unrecognized_input>
`

So switching people to `_regexp-break-add` would be a surprising
behavior change. It would be wrong for `_regexp_break-add` have one
branch that call `break set`, so to avoid surprise, I'll add the command
and let people who are playing with `break add` instead of `break set`
can set the alias to the new one by hand for now.
DeltaFile
+88-0lldb/source/Interpreter/CommandInterpreter.cpp
+22-6lldb/test/API/functionalities/breakpoint/breakpoint_command/TestRegexpBreakCommand.py
+1-1lldb/test/API/terminal/TestEditlineCompletions.py
+111-73 files

LLVM/project d9e35f0mlir/include/mlir/Conversion/LLVMCommon VectorPattern.h Pattern.h, mlir/lib/Conversion/LLVMCommon Pattern.cpp VectorPattern.cpp

working
DeltaFile
+31-0mlir/lib/Conversion/LLVMCommon/Pattern.cpp
+19-8mlir/lib/Conversion/MathToLLVM/MathToLLVM.cpp
+7-18mlir/include/mlir/Conversion/LLVMCommon/VectorPattern.h
+22-1mlir/include/mlir/Conversion/LLVMCommon/Pattern.h
+0-21mlir/lib/Conversion/LLVMCommon/VectorPattern.cpp
+1-7mlir/lib/ExecutionEngine/APFloatWrappers.cpp
+80-552 files not shown
+82-588 files

LLVM/project 02b4dd0llvm/lib/Target/AArch64 AArch64ISelLowering.cpp, llvm/test/CodeGen/AArch64 tbi.ll

[AArch64] Restrict TBI to ignore top 4 bits for Darwin targets.

In order to allow arm64 code to run on MTE environments, we need to make the
compiler only assume the top 4 bits can be ignored as MTE occupies the lower 4.

rdar://164645323
DeltaFile
+7-7llvm/test/CodeGen/AArch64/tbi.ll
+6-1llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+13-82 files

LLVM/project d92d2e4clang/lib/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.cpp, clang/test/CodeGen attr-counted-by.c attr-counted-by-for-pointers.c

clang-format

Created using spr 1.3.8-beta.1
DeltaFile
+394-275clang/test/CodeGen/attr-counted-by.c
+444-0clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
+327-5clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
+59-172llvm/test/CodeGen/AMDGPU/bf16.ll
+220-0mlir/lib/Dialect/OpenACC/Transforms/ACCLoopTiling.cpp
+67-57clang/test/CodeGen/attr-counted-by-for-pointers.c
+1,511-50931 files not shown
+2,225-69637 files

LLVM/project 42e332eclang/lib/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.cpp, clang/test/CodeGen attr-counted-by.c attr-counted-by-for-pointers.c

clang-format

Created using spr 1.3.8-beta.1
DeltaFile
+394-275clang/test/CodeGen/attr-counted-by.c
+444-0clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
+327-5clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
+59-172llvm/test/CodeGen/AMDGPU/bf16.ll
+220-0mlir/lib/Dialect/OpenACC/Transforms/ACCLoopTiling.cpp
+67-57clang/test/CodeGen/attr-counted-by-for-pointers.c
+1,511-50931 files not shown
+2,219-69237 files

LLVM/project 38fa134llvm/lib/Target/RISCV/AsmParser RISCVAsmParser.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.8-beta.1
DeltaFile
+31-0llvm/lib/Target/RISCV/AsmParser/RISCVAsmParser.cpp
+31-01 files

LLVM/project dfa4b63llvm/test/TableGen RegClassByHwModeErrors.td

fix test

Created using spr 1.3.8-beta.1
DeltaFile
+1-1llvm/test/TableGen/RegClassByHwModeErrors.td
+1-11 files

LLVM/project a047a2dllvm/lib/Target/RISCV RISCVInstrInfoP.td

[𝘀𝗽𝗿] initial version

Created using spr 1.3.8-beta.1
DeltaFile
+1-1llvm/lib/Target/RISCV/RISCVInstrInfoP.td
+1-11 files

LLVM/project 069d3aaclang/lib/CodeGen CGExpr.cpp CodeGenFunction.h, clang/test/CodeGen attr-counted-by.c attr-counted-by-for-pointers.c

[Clang][counted_by] Correct signed counted_by values (#171260)

If the 'counted_by' value is signed, we will incorrectly allow accesses
when the value is negative. This has obvious bad effects as it will
allow accessing a huge swath of unallocated memory.

Also clarify and rearrange the parameters to make them more
perspicuous.

Fixes: #170987.
DeltaFile
+394-275clang/test/CodeGen/attr-counted-by.c
+67-57clang/test/CodeGen/attr-counted-by-for-pointers.c
+61-36clang/lib/CodeGen/CGExpr.cpp
+35-36clang/test/DebugInfo/Generic/bounds-checking-debuginfo.c
+9-8clang/lib/CodeGen/CodeGenFunction.h
+566-4125 files

LLVM/project 871dabclldb/test/Shell/Commands command-expr-diagnostics.test command-dwim-print.test

[lldb] fix failing tests due to CI diagnostics rendering (#171685)

This patch fixes issues introduced by
https://github.com/llvm/llvm-project/pull/171491 when running tests in
CI.

The shell tests expect certain characters when matching diagnostics.
With https://github.com/llvm/llvm-project/pull/171491, those characters
can either be Unicode specific characters or their ASCII equivalent. The
tests were always expecting the ASCII version. This patch fixes this by
using a regex to match one or the other.
DeltaFile
+5-5lldb/test/Shell/Commands/command-expr-diagnostics.test
+3-3lldb/test/Shell/Commands/command-dwim-print.test
+3-3lldb/test/Shell/Commands/command-options.test
+11-113 files

LLVM/project e305cf2utils/bazel/llvm-project-overlay/mlir BUILD.bazel

[bazel] Port 575d6892bcc5cef926cfc1b95225148262c96a15 (#171722)

DeltaFile
+2-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+2-01 files

LLVM/project 56fb92aclang/include/clang/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.h, clang/lib/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.cpp

[NFC] [FlowSensitive] [StatusOr] expose statusType in header (#171719)

DeltaFile
+5-5clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
+1-0clang/include/clang/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.h
+6-52 files

LLVM/project 2b958b9llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/DebugInfo/X86 selectionDAG-load-sext-trunc.ll selectionDAG-load-sext.ll

[SelectionDAG] Salvage debuginfo when combining load and sext instrs. (#169779)

SelectionDAG uses the DAGCombiner to fold a load followed by a sext to a
load and sext instruction. For example, in x86 we will see that

```
%1 = load i32, ptr @GlobArr
  #dbg_value(i32 %1, !43, !DIExpression(), !52)
%2 = sext i32 %1 to i64, !dbg !53
```

is converted to:

```
%0:gr64_nosp = MOVSX64rm32 $rip, 1, $noreg, @GlobArr, $noreg, debug-instr-number 1, debug-location !51
DBG_VALUE $noreg, $noreg, !"Idx", !DIExpression(), debug-location !52
```

The `DBG_VALUE` needs to be transferred correctly to the new combined

    [4 lines not shown]
DeltaFile
+70-0llvm/test/DebugInfo/X86/selectionDAG-load-sext-trunc.ll
+61-0llvm/test/DebugInfo/X86/selectionDAG-load-sext.ll
+39-2llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+170-23 files

LLVM/project e603facclang/lib/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.cpp, clang/unittests/Analysis/FlowSensitive UncheckedStatusOrAccessModelTestFixture.cpp

[FlowSensitive] [StatusOr] [15/15] Support references to Status(Or) ptrs

That hopefully concludes the initial upstreaming.

Reviewers: jvoung

Reviewed By: jvoung

Pull Request: https://github.com/llvm/llvm-project/pull/170951
DeltaFile
+65-0clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
+50-0clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
+115-02 files

LLVM/project 6b75eaeclang/unittests/Analysis/Scalable CMakeLists.txt

[clang][ssaf] Speculative fix of unittest build (#171720)

https://github.com/llvm/llvm-project/pull/169131

Should fix:
ASTEntityMappingTest.cpp.o: undefined reference to symbol
'_ZN4llvm3omp27isAllowedClauseForDirectiveENS0_9DirectiveENS0_6ClauseEj'

https://lab.llvm.org/buildbot/#/builders/10/builds/18851
DeltaFile
+6-0clang/unittests/Analysis/Scalable/CMakeLists.txt
+6-01 files

LLVM/project ddc638cclang/lib/Analysis/FlowSensitive/Models UncheckedStatusOrAccessModel.cpp, clang/unittests/Analysis/FlowSensitive UncheckedStatusOrAccessModelTestFixture.cpp

[FlowSensitive] [StatusOr] [14/N] Support nested StatusOrs



Reviewers: jvoung

Reviewed By: jvoung

Pull Request: https://github.com/llvm/llvm-project/pull/170950
DeltaFile
+171-0clang/unittests/Analysis/FlowSensitive/UncheckedStatusOrAccessModelTestFixture.cpp
+36-0clang/lib/Analysis/FlowSensitive/Models/UncheckedStatusOrAccessModel.cpp
+207-02 files