LLVM/project 5342e96clang/include/clang/Analysis/Analyses/LifetimeSafety MovedLoans.h, clang/lib/Analysis/LifetimeSafety MovedLoans.cpp Checker.cpp

Revisit handling moved origins
DeltaFile
+121-0clang/lib/Analysis/LifetimeSafety/MovedLoans.cpp
+45-12clang/lib/Analysis/LifetimeSafety/Checker.cpp
+32-24clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+37-17clang/test/Sema/warn-lifetime-safety.cpp
+45-0clang/include/clang/Analysis/Analyses/LifetimeSafety/MovedLoans.h
+26-9clang/lib/Sema/AnalysisBasedWarnings.cpp
+306-6215 files not shown
+443-10621 files

LLVM/project 5396f79llvm/test/TableGen CPtrWildcard.td, llvm/utils/TableGen DAGISelMatcherEmitter.cpp

[SelectionDAGISel][TableGen] Remove trailing 0 from isel table. NFC (#178744)

I suspect this was here to prevent a trailing comma. If we actually
reach this byte in isel, it will be treated as OPC_Scope not a
terminator.
DeltaFile
+1-2llvm/test/TableGen/CPtrWildcard.td
+1-2llvm/utils/TableGen/DAGISelMatcherEmitter.cpp
+2-42 files

LLVM/project aad7259llvm/include/llvm/CodeGen TargetLowering.h, llvm/lib/CodeGen/SelectionDAG SelectionDAG.cpp

[AArch64] Optimize memset to use NEON DUP instruction for more sizes (#166030)

This change improves memset code generation for non-zero values on
AArch64 by using NEON's DUP instruction instead of
the less efficient multiplication with 0x01010101 pattern.

For small sizes, the value is extracted from a larger DUP. For
non-power-of-two sizes, overlapping stores are used in some cases.

TargetLowering::findOptimalMemOpLowering is modified to allow explicitly
specifying the size of the constant in cases where the constant is
larger than the store operations.

Fixes #165949
DeltaFile
+223-36llvm/test/CodeGen/AArch64/memset-inline.ll
+50-72llvm/test/CodeGen/AArch64/aarch64-mops.ll
+99-10llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
+19-22llvm/test/CodeGen/AArch64/arm64-memset-inline.ll
+29-9llvm/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+14-10llvm/include/llvm/CodeGen/TargetLowering.h
+434-15910 files not shown
+476-20416 files

LLVM/project ce28564clang/include/clang/Analysis/Analyses/LifetimeSafety MovedLoans.h, clang/lib/Analysis/LifetimeSafety MovedLoans.cpp FactsGenerator.cpp

Revisit handling moved origins
DeltaFile
+121-0clang/lib/Analysis/LifetimeSafety/MovedLoans.cpp
+32-24clang/lib/Analysis/LifetimeSafety/FactsGenerator.cpp
+44-12clang/lib/Analysis/LifetimeSafety/Checker.cpp
+37-17clang/test/Sema/warn-lifetime-safety.cpp
+45-0clang/include/clang/Analysis/Analyses/LifetimeSafety/MovedLoans.h
+26-9clang/lib/Sema/AnalysisBasedWarnings.cpp
+305-6215 files not shown
+449-10721 files

LLVM/project a5e388dllvm/include/llvm/Target/GlobalISel Combine.td, llvm/test/CodeGen/AArch64/GlobalISel combine-add.mir

[GlobalISel] Fold Add Shift combine from SelectionDAG (#177371)

This PR adds the combine rule `fold (add x, shl(0 - y, n)) -> sub(x,
shl(y, n))` to GlobalISel, corresponding to an existing SelectionDAG
combine in
[DAGCombiner::visitADDLikeCommutative](https://github.com/llvm/llvm-project/blame/fcba3040107944604904aeb146c26ec0628160f4/llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp#L3367).

Co-authored-by: Sarah Kuhn <sarahlinhkuhn at gmail.com>

---------

Co-authored-by: Sarah Kuhn <sarahlinhkuhn at gmail.com>
Co-authored-by: Luisa Cicolini <48860705+luisacicolini at users.noreply.github.com>
DeltaFile
+184-0llvm/test/CodeGen/AArch64/GlobalISel/combine-add.mir
+26-1llvm/include/llvm/Target/GlobalISel/Combine.td
+210-12 files

LLVM/project f1928b9lldb/tools/lldb-dap DAP.cpp

[lldb-dap] Improve DetectReplMode (#178740)

When DetectReplMode is called without a valid frame, we cannot check if
an expression refers to a variable in scope.
This avoids unnecessary checks when completing expressions.
DeltaFile
+5-0lldb/tools/lldb-dap/DAP.cpp
+5-01 files

LLVM/project c1ab08eclang/include/clang/CIR/Dialect/Builder CIRBaseBuilder.h, clang/lib/CIR/CodeGen CIRGenBuiltinX86.cpp

[CIR][X86]Implement handling for Select/Selectsh builtins in CIR (#174003)

Related to: #167765

DeltaFile
+437-0clang/test/CIR/CodeGenBuiltins/X86/avx512-select-builtins.c
+45-1clang/lib/CIR/CodeGen/CIRGenBuiltinX86.cpp
+18-0clang/include/clang/CIR/Dialect/Builder/CIRBaseBuilder.h
+500-13 files

LLVM/project 34b2fc6llvm/include/llvm/Analysis DominanceFrontierImpl.h DominanceFrontier.h

[NFC][DominanceFrontier] Remove unused return value (#178708)

DeltaFile
+2-7llvm/include/llvm/Analysis/DominanceFrontierImpl.h
+1-1llvm/include/llvm/Analysis/DominanceFrontier.h
+3-82 files

LLVM/project 8cfe111clang/lib/StaticAnalyzer/Core BugSuppression.cpp, clang/test/Analysis suppress-namespace-redecl-webkit.cpp suppress-namespace-redecl-core.cpp

[analyzer] Fix [[clang::suppress]] for tricky template specializations (#178441)

The code assumed that taking the lexical parent decl context of a node
and traversing it will eventually visit the node itself. While this is
certeanly true for most AST constructs, template specializations (aka.
instantiations) might inject their AST to surprising lexical parents,
depending on when they get instantiated.

This means that just taking the lexical parent of a template
specialization might land us on some AST node that won't contain (thus
visit) the definition, and consequently, miss the Suppress attribute...

To fix this, we must take special care for template specializations. For
a regular instantiation select the primary template (that has the definition).
For an instantiation coming from a partial specialization, pretend if it
was the partial specialization instead.

Once we canonicalize to the primary template/partial specialization
definition, the usual "walk the lexical parents" logic covers the rest

    [4 lines not shown]
DeltaFile
+85-0clang/test/Analysis/suppress-namespace-redecl-webkit.cpp
+63-0clang/lib/StaticAnalyzer/Core/BugSuppression.cpp
+33-0clang/test/Analysis/suppress-namespace-redecl-core.cpp
+181-03 files

LLVM/project 293a668clang/lib/CodeGen CGHLSLBuiltins.cpp, clang/lib/Sema SemaHLSL.cpp

[HLSL] Add wave prefix count bits function (#178059)

This PR adds the WavePrefixCountBits function to HLSL, including spirv
and DXIL code generation.
Fixes https://github.com/llvm/llvm-project/issues/99171
DeltaFile
+55-0llvm/lib/Target/SPIRV/SPIRVInstructionSelector.cpp
+30-0clang/test/SemaHLSL/BuiltIns/WavePrefixCountBits-errors.hlsl
+27-0clang/test/CodeGenHLSL/builtins/WavePrefixCountBits.hlsl
+25-0clang/lib/CodeGen/CGHLSLBuiltins.cpp
+22-0clang/lib/Sema/SemaHLSL.cpp
+17-0llvm/test/CodeGen/SPIRV/hlsl-intrinsics/WavePrefixCountBits.ll
+176-08 files not shown
+221-014 files

LLVM/project d3ed8f9clang/test/CodeGenHLSL/builtins round-overloads.hlsl floor-overloads.hlsl

[HLSL] Make round, trunc, floor overload tests stricter. NFC (#178508)

This patch changes the run lines for round, trunc, floor overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+90-63clang/test/CodeGenHLSL/builtins/round-overloads.hlsl
+91-43clang/test/CodeGenHLSL/builtins/floor-overloads.hlsl
+90-43clang/test/CodeGenHLSL/builtins/trunc-overloads.hlsl
+271-1493 files

LLVM/project 289ebd8clang/test/CodeGenHLSL/builtins sqrt-overloads.hlsl sin-overloads.hlsl

[HLSL] Make atan, sin, sqrt overload tests stricter. NFC (#177702)

This patch changes the run lines for atan, sin, sqrt overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+106-63clang/test/CodeGenHLSL/builtins/sqrt-overloads.hlsl
+106-43clang/test/CodeGenHLSL/builtins/sin-overloads.hlsl
+105-42clang/test/CodeGenHLSL/builtins/atan-overloads.hlsl
+317-1483 files

LLVM/project d32a18bclang/test/CodeGenHLSL/builtins log2-overloads.hlsl tan-overloads.hlsl

[HLSL] Make log2, tan overload tests stricter. NFC  (#177700)

This patch changes the run lines for log2, tan overload test to use -O1
instead of -disable-llvm-passes and rewrite the tests to actually look
at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+106-43clang/test/CodeGenHLSL/builtins/log2-overloads.hlsl
+105-42clang/test/CodeGenHLSL/builtins/tan-overloads.hlsl
+211-852 files

LLVM/project e2e7c12clang/test/CodeGenHLSL/builtins step-overloads.hlsl rsqrt-overloads.hlsl

[HLSL] Make  step, isinf, rsqrt overload tests stricter. NFC  (#177697)

This patch changes the run lines for step, isinf, rsqrt overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+128-64clang/test/CodeGenHLSL/builtins/step-overloads.hlsl
+108-64clang/test/CodeGenHLSL/builtins/rsqrt-overloads.hlsl
+31-14clang/test/CodeGenHLSL/builtins/isinf-overloads.hlsl
+267-1423 files

LLVM/project ff50220clang/test/CodeGenHLSL/builtins acos-overloads.hlsl log-overloads.hlsl

[HLSL] Make log, asin, acos overload tests stricter. NFC (#177664)

This patch changes the run lines for log, asin, acos overload test to
use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+125-42clang/test/CodeGenHLSL/builtins/acos-overloads.hlsl
+106-43clang/test/CodeGenHLSL/builtins/log-overloads.hlsl
+105-42clang/test/CodeGenHLSL/builtins/asin-overloads.hlsl
+336-1273 files

LLVM/project 695d72aclang/test/CodeGenHLSL/builtins degrees-overloads.hlsl frac-overloads.hlsl

[HLSL] Make  frac, tanh, degrees overload tests stricter. NFC (#177657)

This patch changes the run lines for frac, tanh, degrees overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.
DeltaFile
+110-66clang/test/CodeGenHLSL/builtins/degrees-overloads.hlsl
+108-64clang/test/CodeGenHLSL/builtins/frac-overloads.hlsl
+105-42clang/test/CodeGenHLSL/builtins/tanh-overloads.hlsl
+323-1723 files

LLVM/project 3c45148clang/test/CodeGenHLSL/builtins normalize-overloads.hlsl exp-overloads.hlsl

[HLSL] Make  cosh, exp, normalize overload tests stricter. NFC (#177507)

This patch changes the run lines for cosh, exp, normalize overload test
to use -O1 instead of -disable-llvm-passes and rewrite the tests to
actually look at the whole function.

This work is part of https://github.com/llvm/llvm-project/issues/138016.

---------

Co-authored-by: Joao Saffran <jderezende at microsoft.com>
DeltaFile
+109-65clang/test/CodeGenHLSL/builtins/normalize-overloads.hlsl
+105-63clang/test/CodeGenHLSL/builtins/exp-overloads.hlsl
+106-43clang/test/CodeGenHLSL/builtins/cosh-overloads.hlsl
+320-1713 files

LLVM/project ac5dc54llvm/test/Transforms/SLPVectorizer/X86 bad-reduction.ll

[SLP][NFC]Add disjoint or forms of tests, which actually should lead to scalar identity/bswap, NFC
DeltaFile
+346-0llvm/test/Transforms/SLPVectorizer/X86/bad-reduction.ll
+346-01 files

LLVM/project ef725a4lldb/source/Commands CommandObjectDWIMPrint.cpp

[lldb] Make `print` delegate to synthetic frames.

This patch is more of a proposal in that it's a pretty dramatic change to the way that `print` works. It completely delegates getting values to the frame if the frame is synthetic, and does not redirect at all if the frame fails.

For this patch, the main goal was to allow the synthetic frame to bubble up its own errors in expression evaluation, rather than having errors come back with an extra "could not find identifier <blah>" or worse, simply get swallowed. If there's a better way to handle this, I'm more than happy to change this as long as the core goals of 'delegate variable/value extraction to the synthetic frame', and 'allow the synthetic frame to give back errors that are displayed to the user' can be met.

stack-info: PR: https://github.com/llvm/llvm-project/pull/178602, branch: users/bzcheeseman/stack/7
DeltaFile
+23-2lldb/source/Commands/CommandObjectDWIMPrint.cpp
+23-21 files

LLVM/project 41eeb01lldb/include/lldb/Interpreter/Interfaces ScriptedFrameInterface.h, lldb/source/Plugins/Process/scripted ScriptedFrame.cpp ScriptedFrame.h

[lldb] Add support for ScriptedFrame to provide values/variables.

This patch adds plumbing to support the implementations of StackFrame::Get{*}Variable{*} on ScriptedFrame. The major pieces required are:
- A modification to ScriptedFrameInterface, so that we can actually call the python methods.
- A corresponding update to the python implementation to call the python methods.
- An implementation in ScriptedFrame that can get the variable list on construction inside ScriptedFrame::Create, and pass that list into the ScriptedFrame so it can get those values on request.

There is a major caveat, which is that if the values from the python side don't have variables attached, right now, they won't be passed into the scripted frame to be stored in the variable list. Future discussions around adding support for 'extended variables' when printing frame variables may create a reason to change the VariableListSP into a ValueObjectListSP, and generate the VariableListSP on the fly, but that should be addressed at a later time.

This patch also adds tests to the frame provider test suite to prove these changes all plumb together correctly.

stack-info: PR: https://github.com/llvm/llvm-project/pull/178575, branch: users/bzcheeseman/stack/6
DeltaFile
+87-0lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
+82-0lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
+53-0lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+28-0lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.cpp
+16-0lldb/source/Plugins/Process/scripted/ScriptedFrame.h
+9-0lldb/include/lldb/Interpreter/Interfaces/ScriptedFrameInterface.h
+275-02 files not shown
+285-08 files

LLVM/project dbd4240llvm/lib/Target/AMDGPU SIInstrInfo.cpp, llvm/test/CodeGen/AMDGPU release-vgprs-spill.ll

[AMDGPU] Fix DEALLOC_VGPRS in the presence of spills to scratch (#178461)

DeltaFile
+5-4llvm/lib/Target/AMDGPU/SIInstrInfo.cpp
+1-3llvm/test/CodeGen/AMDGPU/release-vgprs-spill.ll
+6-72 files

LLVM/project a617b90lldb/bindings/interface SBInstructionExtensions.i, lldb/include/lldb/API SBInstruction.h

[lldb] [disassembler] chore: add GetVariableAnnotations to SBInstruction api (#177676)

## Description
Contribution to this topic [Rich Disassembler for
LLDB](https://discourse.llvm.org/t/rich-disassembler-for-lldb/76952),
this part.
```
The rich disassembler output should be exposed as structured data and made available through LLDB’s scripting API so more tooling could be built on top of this
```

----

This pr replaces #174847

As was suggested in [this
comment](https://github.com/llvm/llvm-project/pull/174847#issuecomment-3757015552),
implement access to variable annotations from `SBInstruction` class
itself.


    [36 lines not shown]
DeltaFile
+97-0lldb/test/API/functionalities/disassembler-variables/TestVariableAnnotationsDisassembler.py
+41-0lldb/source/Core/Disassembler.cpp
+36-0lldb/bindings/interface/SBInstructionExtensions.i
+22-1lldb/source/API/SBInstruction.cpp
+16-0lldb/include/lldb/API/SBInstruction.h
+5-0lldb/include/lldb/Core/Disassembler.h
+217-11 files not shown
+218-17 files

LLVM/project 9c57d52lldb/source/Commands CommandObjectDWIMPrint.cpp

[lldb] Make `print` delegate to synthetic frames.

This patch is more of a proposal in that it's a pretty dramatic change to the way that `print` works. It completely delegates getting values to the frame if the frame is synthetic, and does not redirect at all if the frame fails.

For this patch, the main goal was to allow the synthetic frame to bubble up its own errors in expression evaluation, rather than having errors come back with an extra "could not find identifier <blah>" or worse, simply get swallowed. If there's a better way to handle this, I'm more than happy to change this as long as the core goals of 'delegate variable/value extraction to the synthetic frame', and 'allow the synthetic frame to give back errors that are displayed to the user' can be met.

stack-info: PR: https://github.com/llvm/llvm-project/pull/178602, branch: users/bzcheeseman/stack/7
DeltaFile
+23-2lldb/source/Commands/CommandObjectDWIMPrint.cpp
+23-21 files

LLVM/project 1aed119lldb/include/lldb/Interpreter/Interfaces ScriptedFrameInterface.h, lldb/source/Plugins/Process/scripted ScriptedFrame.cpp ScriptedFrame.h

[lldb] Add support for ScriptedFrame to provide values/variables.

This patch adds plumbing to support the implementations of StackFrame::Get{*}Variable{*} on ScriptedFrame. The major pieces required are:
- A modification to ScriptedFrameInterface, so that we can actually call the python methods.
- A corresponding update to the python implementation to call the python methods.
- An implementation in ScriptedFrame that can get the variable list on construction inside ScriptedFrame::Create, and pass that list into the ScriptedFrame so it can get those values on request.

There is a major caveat, which is that if the values from the python side don't have variables attached, right now, they won't be passed into the scripted frame to be stored in the variable list. Future discussions around adding support for 'extended variables' when printing frame variables may create a reason to change the VariableListSP into a ValueObjectListSP, and generate the VariableListSP on the fly, but that should be addressed at a later time.

This patch also adds tests to the frame provider test suite to prove these changes all plumb together correctly.

stack-info: PR: https://github.com/llvm/llvm-project/pull/178575, branch: users/bzcheeseman/stack/6
DeltaFile
+85-0lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
+82-0lldb/test/API/functionalities/scripted_frame_provider/test_frame_providers.py
+53-0lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+28-0lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedFramePythonInterface.cpp
+16-0lldb/source/Plugins/Process/scripted/ScriptedFrame.h
+9-0lldb/include/lldb/Interpreter/Interfaces/ScriptedFrameInterface.h
+273-02 files not shown
+283-08 files

LLVM/project 29e43fbflang/lib/Semantics resolve-directives.cpp, flang/test/Semantics/OpenMP local-variables.f90

[flang][OpenMP] Leave local automatic variables alone

There is code in resolve-directives.cpp that tries to apply DSA flags
to symbols encountered inside constructs. This code was written with
the assumption that all such symbols will be declared outside of the
construct.
When a symbol declared in a BLOCK construct nested in a construct was
found, the code would attempt to either privatize or share it in the
enclosing construct (where the symbol didn't exist) leading to trouble.

BLOCK constructs (and thus the possibility of having local variables)
was introduced in F2008.
The first OpenMP spec that considered F2008 was 5.0, where the behavior
of the BLOCK construct was explicitly left unspecified.
From OpenMP 5.1 onwards, all local non-static variables are private
in the construct enclosing the declaration. This PR extends this behavior
retroactively to all prior OpenMP versions.

Fixes https://github.com/llvm/llvm-project/issues/178613
DeltaFile
+41-0flang/test/Semantics/OpenMP/local-variables.f90
+11-1flang/lib/Semantics/resolve-directives.cpp
+52-12 files

LLVM/project 8122d0elldb/bindings/python python-wrapper.swig, lldb/include/lldb/API SBValue.h

[lldb] Add conversions for SBValueList and SBValue to the python bridge. (#178574)


This patch adds support for:
- PyObject -> SBValueList (which was surprisingly not there before!)
- PyObject -> SBValue
- SBValue -> ValueObjectSP using the ScriptInterpreter

These three are the main remaining plumbing changes necessary before we can get to the meat of actually using ScriptedFrame to provide values to the printer/etc. Future patches build off this change in order to allow ScriptedFrames to provide variables and get values for variable expressions.
DeltaFile
+38-0lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
+14-0lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.h
+12-0lldb/bindings/python/python-wrapper.swig
+10-0lldb/source/Interpreter/ScriptInterpreter.cpp
+3-0lldb/include/lldb/Interpreter/ScriptInterpreter.h
+3-0lldb/include/lldb/API/SBValue.h
+80-01 files not shown
+81-07 files

LLVM/project 75f03a6llvm/lib/CodeGen InlineSpiller.cpp, llvm/test/CodeGen/Hexagon regalloc-bad-undef.mir

[InlineSpiller] Hoist spills only when all of its subranges are available (#177703)

Context:
https://github.com/llvm/llvm-project/issues/176001#issuecomment-3793846479

When we're hoisting a spill to another block, and storing one of its
sibling values there instead, we need to make sure all sub ranges of
that sibling value is alive at the insertion point. Otherwise, we might
accidentally store compromised subranges values back to the spill slot.
DeltaFile
+146-0llvm/test/CodeGen/RISCV/pr176001.ll
+8-2llvm/lib/CodeGen/InlineSpiller.cpp
+4-4llvm/test/CodeGen/Hexagon/regalloc-bad-undef.mir
+158-63 files

LLVM/project c92e24blldb/source/Target Statistics.cpp, lldb/test/API/functionalities/stats_api minidump.yaml TestStatisticsAPI.py

[LLDB][Statistics] Add coreFile to Target stats (#161448)

This patch adds the coreFilePath, if applicable, to the target
statistics for LLDB. My primary motivation here is sanity check user
reports when they say I had an issue with a specific corefile and then
validating it was in fact that specifies corefile, as right now there is
no guaruntee the filename and the process/target name will be the same.
DeltaFile
+38-0lldb/test/API/functionalities/stats_api/minidump.yaml
+22-0lldb/test/API/functionalities/stats_api/TestStatisticsAPI.py
+4-0lldb/source/Target/Statistics.cpp
+64-03 files

LLVM/project 58f623clldb/include/lldb/API SBValue.h, lldb/include/lldb/ValueObject ValueObject.h

[lldb] Move ValueImpl and ValueLocker to ValueObject, NFC. (#178573)


This patch moves ValueImpl and ValueLocker to ValueObject.{h,cpp}. This follows the example set in TypeImpl/SBType, where we have something that SBType uses internally that needs to be exposed in the layer below. In this case, SBValue uses ValueImpl, which wraps ValueObject. The wrapper helps avoid bugs, so we want to keep it, but the script interpreter needs to use it and said interpreter is conceptually *below* the SB layer...which means we can't use methods on SBValue.

This patch is purely the code motion part of that, future patches will actually make use of this moved code.
DeltaFile
+0-166lldb/source/API/SBValue.cpp
+91-0lldb/source/ValueObject/ValueObject.cpp
+78-0lldb/include/lldb/ValueObject/ValueObject.h
+3-4lldb/include/lldb/API/SBValue.h
+172-1704 files

LLVM/project db6b186utils/bazel/llvm-project-overlay/mlir BUILD.bazel, utils/bazel/llvm-project-overlay/mlir/test BUILD.bazel

[bazel][[mlir][xegpu] Fix build for #177492 (#178728)

Fix d9c65f94b11f2fed7b78af3a8e7bec6c84bdf219.
DeltaFile
+4-0utils/bazel/llvm-project-overlay/mlir/test/BUILD.bazel
+1-0utils/bazel/llvm-project-overlay/mlir/BUILD.bazel
+5-02 files