LLVM/project 8f0815bmlir/include/mlir/Analysis FlatLinearValueConstraints.h, mlir/include/mlir/Dialect/Affine/Analysis AffineStructures.h

[MLIR] Allow recovering from semi-affine sets in FlatLinearValueConstraints

The IntegerSet constructor of FlatLinearValueConstraints asserts when
flattening fails, which happens for semi-affine integer sets. Since the
failure is signalled from inside a constructor, callers have no way to
detect the unsupported case ahead of time and no way to work around it;
they simply crash.

Make that constructor protected and expose the construction through
`FlatLinearValueConstraints::create` (and the corresponding
`FlatAffineValueConstraints::create`), which returns a `FailureOr` and
so lets callers handle a semi-affine set gracefully.

Existing in-tree users are updated: `addAffineIfOpDomain` keeps asserting
as before, and `simplifyIntegerSet` now returns the set unchanged instead
of asserting, since a semi-affine set simply cannot be simplified this way.
DeltaFile
+17-3mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
+15-2mlir/lib/Analysis/FlatLinearValueConstraints.cpp
+8-4mlir/lib/Dialect/Affine/Analysis/Utils.cpp
+10-2mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
+5-1mlir/unittests/Analysis/Presburger/Parser.h
+5-0mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
+60-126 files

LLVM/project 05eba61llvm/lib/Transforms/Vectorize VPlanUtils.h VPlanUtils.cpp

[VPlan] Add vputils::getEarlyExits helper (NFC) (#212348)

Both handleUncountableEarlyExits and the countable early-exit disconnect
in handleEarlyExits walk all exit blocks and skip predecessors coming
from the middle block to find the early exiting blocks.

Factor that walk out into vputils::getEarlyExits, returning the (early
exiting block, exit block) pairs.
DeltaFile
+28-32llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+6-12llvm/lib/Transforms/Vectorize/VPlanConstruction.cpp
+10-0llvm/lib/Transforms/Vectorize/VPlanUtils.cpp
+5-0llvm/lib/Transforms/Vectorize/VPlanUtils.h
+49-444 files

LLVM/project 0fa9cfallvm/docs CIBestPractices.rst Reference.md

[CI] Add documentation for self-hosted runners (#211622)

This patch adds (work in progress) documentation for the various
self-hosted runner groups we have access to in the LLVM monorepo.
DeltaFile
+105-0llvm/docs/GitHubActionsRunners.rst
+5-0llvm/docs/Reference.md
+3-0llvm/docs/CIBestPractices.rst
+113-03 files

LLVM/project d8d33abmlir/include/mlir/Analysis FlatLinearValueConstraints.h, mlir/include/mlir/Dialect/Affine/Analysis AffineStructures.h

[MLIR] Allow recovering from semi-affine sets in FlatLinearValueConst… (#212346)

…raints

The IntegerSet constructor of FlatLinearValueConstraints asserts when
flattening fails, which happens for semi-affine integer sets. Since the
failure is signalled from inside a constructor, callers have no way to
detect the unsupported case ahead of time and no way to work around it;
they simply crash.

Add an optional `bool *error` parameter to the constructor. When it is
non-null, hitting the unimplemented case sets `*error` to true and
returns instead of asserting, letting callers bail out gracefully.
`*error` is set to false on success. When the pointer is null the
previous assert behavior is retained, so existing callers are
unaffected.
DeltaFile
+17-3mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
+15-2mlir/lib/Analysis/FlatLinearValueConstraints.cpp
+8-4mlir/lib/Dialect/Affine/Analysis/Utils.cpp
+10-2mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
+4-1mlir/unittests/Analysis/Presburger/Parser.h
+5-0mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
+59-126 files

LLVM/project 1acf5ddclang/lib/Basic/Targets AMDGPU.cpp, llvm/include/llvm/TargetParser AMDGPUTargetParser.h

AMDGPU: Handle more TargetParser queries in tablegen

Previously we had various enum switches. Start generated tables
indexed by enums. Avoid some special cases by defining the dummy
"generic" and "generic-hsa" targets as real processors.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+62-82llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+87-30llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+7-4llvm/lib/Target/AMDGPU/GCNProcessors.td
+2-5clang/lib/Basic/Targets/AMDGPU.cpp
+2-4llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+4-0llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+164-1253 files not shown
+168-1269 files

LLVM/project f879bdfllvm/include/llvm/TargetParser AMDGPUTargetParser.def, llvm/lib/Target/AMDGPU AMDGPUTargetParser.td GCNProcessors.td

AMDGPU: Generate TargetParser table from TableGen

Migrate .def file to tablegen. The initial TargetParser
AMDGPU backend only handled R600. Extend to modern targets.
Stub out some tablegen definitions which will be used in future
changes.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+255-191llvm/lib/Target/AMDGPU/GCNProcessors.td
+0-155llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
+117-7llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+22-22llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+28-2llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+16-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+438-3775 files not shown
+456-38411 files

LLVM/project 6be5be5flang/include/flang/Semantics openmp-utils.h, flang/lib/Lower/OpenMP OpenMP.cpp

Apply metadirective loop checks after variant selection

Determine reachable replacements before preparing the associated loop. Apply
loop-only limitations only when a loop replacement can actually be selected.

Keep candidate-wide loop preparation for runtime cascades, where multiple
replacement arms remain reachable.
DeltaFile
+47-226flang/lib/Lower/OpenMP/OpenMP.cpp
+250-8flang/lib/Semantics/openmp-utils.cpp
+50-0flang/test/Semantics/OpenMP/metadirective-loop-nest.f90
+45-3flang/lib/Semantics/check-omp-variant.cpp
+48-0flang/test/Lower/OpenMP/metadirective-loop.f90
+46-0flang/include/flang/Semantics/openmp-utils.h
+486-2372 files not shown
+491-2378 files

LLVM/project 0508f49flang/include/flang/Semantics openmp-utils.h, flang/lib/Semantics check-omp-structure.h check-omp-variant.cpp

Check metadirective loop iteration variables

Apply the ordinary affected-loop iteration-variable restrictions to
statically applicable metadirective replacements. Diagnose noninteger and
THREADPRIVATE iteration variables and invalid explicit data-sharing clauses,
including collapsed nests.
DeltaFile
+74-47flang/lib/Semantics/check-omp-loop.cpp
+63-0flang/test/Semantics/OpenMP/metadirective-loop-nest.f90
+18-5flang/lib/Semantics/openmp-utils.cpp
+15-1flang/lib/Semantics/check-omp-variant.cpp
+7-0flang/lib/Semantics/check-omp-structure.h
+7-0flang/include/flang/Semantics/openmp-utils.h
+184-536 files

LLVM/project eb129b0flang/lib/Semantics check-omp-structure.cpp, flang/test/Semantics/OpenMP metadirective-loop-nest.f90

Reject interrupted metadirective loop associations

Treat an intervening OpenMP declarative directive as the end of a pending
loop association, matching ordinary loop-directive handling. Preserve
pending variants from enclosing scopes.
DeltaFile
+12-0flang/test/Semantics/OpenMP/metadirective-loop-nest.f90
+10-0flang/lib/Semantics/check-omp-structure.cpp
+22-02 files

LLVM/project 2feba9bmlir/include/mlir/Analysis FlatLinearValueConstraints.h, mlir/include/mlir/Dialect/Affine/Analysis AffineStructures.h

[MLIR] Allow recovering from semi-affine sets in FlatLinearValueConstraints

The IntegerSet constructor of FlatLinearValueConstraints asserts when
flattening fails, which happens for semi-affine integer sets. Since the
failure is signalled from inside a constructor, callers have no way to
detect the unsupported case ahead of time and no way to work around it;
they simply crash.

Make that constructor protected and expose the construction through
`FlatLinearValueConstraints::create` (and the corresponding
`FlatAffineValueConstraints::create`), which returns a `FailureOr` and
so lets callers handle a semi-affine set gracefully.

Existing in-tree users are updated: `addAffineIfOpDomain` keeps asserting
as before, and `simplifyIntegerSet` now returns the set unchanged instead
of asserting, since a semi-affine set simply cannot be simplified this way.
DeltaFile
+17-3mlir/lib/Dialect/Affine/Analysis/AffineStructures.cpp
+15-2mlir/lib/Analysis/FlatLinearValueConstraints.cpp
+8-4mlir/lib/Dialect/Affine/Analysis/Utils.cpp
+10-2mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
+4-1mlir/unittests/Analysis/Presburger/Parser.h
+5-0mlir/include/mlir/Dialect/Affine/Analysis/AffineStructures.h
+59-126 files

LLVM/project 06f044fllvm/lib/Target/AMDGPU AMDGPUTargetParser.td R600Processors.td, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add -gen-amdgpu-target-def TableGen backend

Currently subtarget information is duplicated between a def file and
the backend. There are also increasingly unwieldy mapping tables
for subarches. Work towards unifying these, starting with r600. This
mirrors aarch64 and riscv's existing custom targetparser backends (i.e.,
the prompt was copy what riscv does).

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+134-0llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+64-0llvm/unittests/TargetParser/TargetParserTest.cpp
+40-21llvm/lib/Target/AMDGPU/R600Processors.td
+42-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+31-0llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+4-4llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+315-253 files not shown
+321-259 files

LLVM/project 61225dfllvm/include/llvm/IR RuntimeLibcalls.h RuntimeLibcallsImpl.td, llvm/lib/IR RuntimeLibcalls.cpp

RuntimeLibcalls: Migrate to dag libcall predicates (#210674)

Switch to using dag predicates instead of free-form code predicates.

Co-authored-by: Claude (Claude-Opus-4.8) <noreply at anthropic.com>
DeltaFile
+239-112llvm/include/llvm/IR/RuntimeLibcalls.td
+21-10llvm/test/TableGen/RuntimeLibcallEmitter.td
+9-20llvm/include/llvm/IR/RuntimeLibcallsImpl.td
+0-26llvm/include/llvm/IR/RuntimeLibcalls.h
+0-17llvm/lib/IR/RuntimeLibcalls.cpp
+11-6llvm/test/TableGen/RuntimeLibcallEmitter-calling-conv.td
+280-1917 files not shown
+315-21513 files

LLVM/project c650bd3flang/test/Lower/OpenMP metadirective-implementation.f90

Strengthen metadirective clause-selection tests

Verify that unselected ASSUME clauses do not produce llvm.intr.assume.
DeltaFile
+6-0flang/test/Lower/OpenMP/metadirective-implementation.f90
+6-01 files

LLVM/project bbb644fflang/lib/Lower/OpenMP OpenMP.cpp, flang/test/Lower/OpenMP/Todo metadirective-loop-eager-privatization.f90

Diagnose eager privatization for metadirective loops

Metadirective loop IVs do not have the construct-scoped host
association required by eager privatization. Emit a focused TODO instead of
reaching an assertion or null dereference.
DeltaFile
+18-0flang/test/Lower/OpenMP/Todo/metadirective-loop-eager-privatization.f90
+6-0flang/lib/Lower/OpenMP/OpenMP.cpp
+24-02 files

LLVM/project 2112d7bflang/lib/Lower/OpenMP DataSharingProcessor.cpp OpenMP.cpp, flang/test/Lower/OpenMP metadirective-implementation.f90 metadirective-loop.f90

[flang][OpenMP] Lower DO and SIMD variants in metadirectives

Lower DO, SIMD, and DO SIMD replacement directives selected by a
metadirective. Support standalone and begin/end forms with static or runtime
selection.

A standalone metadirective and its associated loop are represented as sibling
PFT evaluations. For example:

```fortran
!$omp metadirective &
!$omp& when(user={condition(flag)}: do) &
!$omp& otherwise(nothing)
do i = 1, n
  a(i) = i
end do
```

has the following evaluation shape:

    [54 lines not shown]
DeltaFile
+432-6flang/lib/Lower/OpenMP/OpenMP.cpp
+416-0flang/test/Lower/OpenMP/metadirective-loop.f90
+69-8flang/lib/Lower/OpenMP/DataSharingProcessor.cpp
+74-0flang/test/Lower/OpenMP/Todo/metadirective-loop-unstructured.f90
+59-0flang/test/Lower/OpenMP/Todo/metadirective-loop-enclosing-data-environment.f90
+46-1flang/test/Lower/OpenMP/metadirective-implementation.f90
+1,096-1512 files not shown
+1,278-2818 files

LLVM/project 4f02e1elldb/source/Plugins/Language/ObjC ObjCLanguage.cpp, lldb/source/Plugins/LanguageRuntime/ObjC ObjCLanguageRuntime.cpp

[LLDB] Hide unresolvable children from ObjC tagged pointers  (#211936)

Foundation's small value inline representations have valid summaries and
sometimed synthetic children, but LLDB cannot access any ivars from
their base classes (such as [NSObject isa]).

Use a synthetic child provider to hide them.

rdar://182434208

Assisted-by: claude
DeltaFile
+115-0lldb/test/API/lang/objc/tagged-pointer-children/TestTaggedPointerChildren.py
+39-0lldb/source/Plugins/Language/ObjC/ObjCLanguage.cpp
+32-0lldb/test/API/lang/objc/tagged-pointer-children/tagged_synth_provider.py
+19-0lldb/test/API/lang/objc/tagged-pointer-children/main.m
+17-0lldb/source/Plugins/LanguageRuntime/ObjC/ObjCLanguageRuntime.cpp
+4-0lldb/test/API/lang/objc/tagged-pointer-children/Makefile
+226-02 files not shown
+231-08 files

LLVM/project 8a49f88llvm/utils/gn/secondary/llvm/lib/DebugInfo/LogicalView BUILD.gn

[gn build] Add missing deps (#212352)

From e7290b1f1815626c4461d38671d93093590bf405
DeltaFile
+4-0llvm/utils/gn/secondary/llvm/lib/DebugInfo/LogicalView/BUILD.gn
+4-01 files

LLVM/project 933e00bllvm/test/tools/llvm-objcopy/ELF cross-arch-headers.test

[llvm-objcopy] Remove unnecessary AMDGPU ELF flag from test

The EF_AMDGPU_MACH_AMDGCN_GFX900 flag was not needed in the test input.
The test only verifies that llvm-objcopy correctly sets EM_AMDGPU machine
type, 64-bit class, and little-endian encoding -- none of which depend on
the e_flags value. Use the same approach as all other architectures in
the test (no explicit FLAGS, defaulting to <none>).
DeltaFile
+1-1llvm/test/tools/llvm-objcopy/ELF/cross-arch-headers.test
+1-11 files

LLVM/project 9a1be34clang/lib/Basic/Targets AMDGPU.cpp, llvm/include/llvm/TargetParser AMDGPUTargetParser.h

AMDGPU: Handle more TargetParser queries in tablegen

Previously we had various enum switches. Start generated tables
indexed by enums. Avoid some special cases by defining the dummy
"generic" and "generic-hsa" targets as real processors.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+62-82llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+87-30llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+7-4llvm/lib/Target/AMDGPU/GCNProcessors.td
+2-5clang/lib/Basic/Targets/AMDGPU.cpp
+2-4llvm/include/llvm/TargetParser/AMDGPUTargetParser.h
+4-0llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+164-1253 files not shown
+168-1269 files

LLVM/project 4f927dcllvm/include/llvm/TargetParser AMDGPUTargetParser.def, llvm/lib/Target/AMDGPU AMDGPUTargetParser.td GCNProcessors.td

AMDGPU: Generate TargetParser table from TableGen

Migrate .def file to tablegen. The initial TargetParser
AMDGPU backend only handled R600. Extend to modern targets.
Stub out some tablegen definitions which will be used in future
changes.

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+255-191llvm/lib/Target/AMDGPU/GCNProcessors.td
+0-155llvm/include/llvm/TargetParser/AMDGPUTargetParser.def
+117-7llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+22-22llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+28-2llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+16-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+438-3774 files not shown
+453-38410 files

LLVM/project ab3d1b8llvm/lib/Target/AMDGPU AMDGPUTargetParser.td R600Processors.td, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add -gen-amdgpu-target-def TableGen backend

Currently subtarget information is duplicated between a def file and
the backend. There are also increasingly unwieldy mapping tables
for subarches. Work towards unifying these, starting with r600. This
mirrors aarch64 and riscv's existing custom targetparser backends (i.e.,
the prompt was copy what riscv does).

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+134-0llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+64-0llvm/unittests/TargetParser/TargetParserTest.cpp
+40-21llvm/lib/Target/AMDGPU/R600Processors.td
+42-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+31-0llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+4-4llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+315-253 files not shown
+321-259 files

LLVM/project c4f7e4allvm/lib/Target/AMDGPU AMDGPUTargetParser.td R600Processors.td, llvm/lib/TargetParser AMDGPUTargetParser.cpp

AMDGPU: Add -gen-amdgpu-target-def TableGen backend

Currently subtarget information is duplicated between a def file and
the backend. There are also increasingly unwieldy mapping tables
for subarches. Work towards unifying these, starting with r600. This
mirrors aarch64 and riscv's existing custom targetparser backends (i.e.,
the prompt was copy what riscv does).

Co-authored-by: Claude (Claude-Opus-4.8)
DeltaFile
+134-0llvm/utils/TableGen/Basic/AMDGPUTargetDefEmitter.cpp
+64-0llvm/unittests/TargetParser/TargetParserTest.cpp
+40-21llvm/lib/Target/AMDGPU/R600Processors.td
+42-0llvm/test/TableGen/AMDGPUTargetDefErrors.td
+31-0llvm/lib/Target/AMDGPU/AMDGPUTargetParser.td
+4-4llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+315-253 files not shown
+321-259 files

LLVM/project a22416bllvm/include/llvm/Analysis DXILResource.h, llvm/lib/Analysis DXILResource.cpp

[HLSL] Add UsedByAtomic64 shader flag (#211691)

This PR adds the `UsedByAtomic64` shader flag.
It detects any usage of an atomic instruction with a 64 bit type, and if
detected, sets the shader flag to true.
This is needed to pass DXIL validation.

Fixes https://github.com/llvm/llvm-project/issues/104392
Assisted by: Github Copilot
DeltaFile
+66-39llvm/lib/Analysis/DXILResource.cpp
+56-0llvm/test/Analysis/DXILResource/has-atomic64-use.ll
+47-0llvm/test/CodeGen/DirectX/ContainerData/PSVResources-UsedByAtomic64.ll
+6-2llvm/include/llvm/Analysis/DXILResource.h
+1-3llvm/lib/Target/DirectX/DXContainerGlobals.cpp
+176-445 files

LLVM/project 4ca573f.github/workflows libcxx-benchmark-commit.yml, libcxx/utils/ci/lnt schema.yaml run-benchbot

[libc++] Rename the test suite used on LNT (#212347)

The LNT instance on http://lnt.llvm.org was wiped since I created the
original schema, and we can now start over clean with a new test suite
named `libcxx`.
DeltaFile
+1-1libcxx/utils/ci/lnt/schema.yaml
+1-1libcxx/utils/ci/lnt/run-benchbot
+1-1.github/workflows/libcxx-benchmark-commit.yml
+3-33 files

LLVM/project beb4353llvm/test/CodeGen/AMDGPU llvm.amdgcn.intersect_ray.ll packed-fp32.ll, llvm/test/CodeGen/AMDGPU/GlobalISel regbankcombiner-merge-readanylane.mir llvm.amdgcn.struct.buffer.load.tfe.ll

[AMDGPU][GlobalISel] Fold redundant uniform G_AMDGPU_READANYLANE in RegBankCombiner
DeltaFile
+124-264llvm/test/CodeGen/AMDGPU/packed-fp32.ll
+69-144llvm/test/CodeGen/AMDGPU/llvm.amdgcn.intersect_ray.ll
+80-97llvm/test/CodeGen/AMDGPU/GlobalISel/insertelement.i8.ll
+36-108llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.struct.buffer.load.tfe.ll
+36-108llvm/test/CodeGen/AMDGPU/GlobalISel/llvm.amdgcn.raw.buffer.load.tfe.ll
+131-0llvm/test/CodeGen/AMDGPU/GlobalISel/regbankcombiner-merge-readanylane.mir
+476-7219 files not shown
+647-90215 files

LLVM/project 295c3a4clang/lib/Headers __clang_gpu_device_functions.h

[Offload] Decouple CUDA source from NVPTX syncthreads assumption (#212339)

With the introduction of offloading via LLVM, the frontend language will
not necessarily determine the backend target anymore. Thus it is
necessary to guard against NVPTX instead of CUDA, since we could have
CUDA-language device code targeting a non-NVPTX backend, where Clang
does not provide __syncthreads as an NVPTX builtin and the generic shim
is still needed.

This also avoids duplicate definitions on NVPTX. Clang already provides
`__syncthreads` as an NVPTX target builtin, so
`__clang_gpu_device_functions.h` should not also define an inline
`__syncthreads` shim for NVPTX targets.
DeltaFile
+1-1clang/lib/Headers/__clang_gpu_device_functions.h
+1-11 files

LLVM/project 38a1b57llvm/include/llvm/IR RuntimeLibcalls.td

comment
DeltaFile
+2-0llvm/include/llvm/IR/RuntimeLibcalls.td
+2-01 files

LLVM/project a98c033llvm/utils/TableGen/Basic RuntimeLibcalls.h

More comments
DeltaFile
+1-3llvm/utils/TableGen/Basic/RuntimeLibcalls.h
+1-31 files

LLVM/project 74ad8fbmlir/include/mlir/Analysis FlatLinearValueConstraints.h, mlir/lib/Analysis FlatLinearValueConstraints.cpp

[MLIR] Allow recovering from semi-affine sets in FlatLinearValueConstraints

The IntegerSet constructor of FlatLinearValueConstraints asserts when
flattening fails, which happens for semi-affine integer sets. Since the
failure is signalled from inside a constructor, callers have no way to
detect the unsupported case ahead of time and no way to work around it;
they simply crash.

Add an optional `bool *error` parameter to the constructor. When it is
non-null, hitting the unimplemented case sets `*error` to true and
returns instead of asserting, letting callers bail out gracefully.
`*error` is set to false on success. When the pointer is null the
previous assert behavior is retained, so existing callers are unaffected.
DeltaFile
+10-2mlir/lib/Analysis/FlatLinearValueConstraints.cpp
+7-1mlir/include/mlir/Analysis/FlatLinearValueConstraints.h
+17-32 files

LLVM/project afd4d7bflang/test/Driver openacc-nyi.f90, flang/test/Transforms/OpenACC acc-emit-nyi-flang.fir

Merge branch 'main' into users/rampitec/use-scalars-in-pk-u64
DeltaFile
+272-0mlir/test/Dialect/Linalg/block-pack-matmul-scalable.mlir
+199-0flang/test/Driver/openacc-nyi.f90
+94-45llvm/utils/TableGen/SubtargetEmitter.cpp
+128-0flang/test/Transforms/OpenACC/acc-emit-nyi-flang.fir
+120-1llvm/tools/llubi/lib/Value.cpp
+112-6llvm/tools/llubi/lib/Context.cpp
+925-52105 files not shown
+2,958-386111 files