LLVM/project b33350fllvm/include/llvm/ADT RadixTree.h

[ADT] Fix RadixTree singular iterator use in findOrCreate (#181510)

The root node's Key is initialized with default-constructed (singular)
iterators. When findOrCreate calls llvm::mismatch(Key, Curr->Key) on the
first loop iteration where Curr is the root, these singular iterators
are passed to std::mismatch. _GLIBCXX_DEBUG correctly rejects them as
not forming a valid iterator range.

Skip the mismatch when Curr is the root node since its key is
conceptually empty, making the mismatch a no-op.

Fixes a test failure in ADTTests/RadixTreeTypeTest introduced by
5fda2a5d9c1a ("[NFC][ADT] Add RadixTree (#164524)").
DeltaFile
+14-9llvm/include/llvm/ADT/RadixTree.h
+14-91 files

LLVM/project 02429c4llvm/lib/Transforms/Vectorize VPlanTransforms.cpp

[LV] Fix strict weak ordering violation in handleUncountableEarlyExits sort (#181462)

The sort comparator used VPDT.dominates() which returns true for
dominates(A, A), violating the irreflexivity requirement of strict weak
ordering. With _GLIBCXX_DEBUG enabled (LLVM_ENABLE_EXPENSIVE_CHECKS=ON),
std::sort validates this property and aborts:

Error: comparison doesn't meet irreflexive requirements, assert(!(a <
a)).

Use properlyDominates() instead, which correctly returns false for equal
inputs while preserving the intended dominance-based ordering.

This fixes a crash introduced by ede1a9626b89 ("[LV] Vectorize early
exit loops with multiple exits.").
DeltaFile
+1-1llvm/lib/Transforms/Vectorize/VPlanTransforms.cpp
+1-11 files

LLVM/project 5548b24clang-tools-extra/clang-tidy/readability NonConstParameterCheck.cpp, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Fix false positive for generic lambda parameters in readability-non-const-parameter (#179051)

Fixes #177354

### Summary
The `readability-non-const-parameter` check produces false positives on
generic lambda parameters, not fully resolved by #177345.

### Problem
Generic lambdas with explicit template parameters create dependent
contexts that cannot be analyzed at parse time:

```cpp
auto lambda = []<typename T>(int *p) {
  T x(*p);   // No longer warns
};
```
DeltaFile
+14-5clang-tools-extra/clang-tidy/readability/NonConstParameterCheck.cpp
+9-0clang-tools-extra/test/clang-tidy/checkers/readability/non-const-parameter.cpp
+2-1clang-tools-extra/docs/ReleaseNotes.rst
+25-63 files

LLVM/project a99b791clang/test/CIR/CodeGen builtin-floating-point.c, clang/test/OpenMP task_codegen.cpp threadprivate_codegen.cpp

Merge branch 'main' into users/c8ef/atomic_minmax
DeltaFile
+5,835-5,584llvm/test/tools/llvm-dwarfdump/X86/simplified-template-names.s
+3,458-2,041clang/test/OpenMP/task_codegen.cpp
+2,140-2,140clang/test/OpenMP/threadprivate_codegen.cpp
+1,560-1,560llvm/test/tools/llvm-mca/RISCV/SiFive7/vector-fp.s
+80-2,209llvm/test/Transforms/LowerMatrixIntrinsics/multiply-fused-loops-large-matrixes.ll
+2,212-0clang/test/CIR/CodeGen/builtin-floating-point.c
+15,285-13,5342,949 files not shown
+164,139-75,7532,955 files

LLVM/project 1df8f7elibcxx/docs/ReleaseNotes 23.rst

Update release notes for implemented papers

Updated release notes to reflect the implementation of ranges features from P2440R1 and P2322R6.
DeltaFile
+0-1libcxx/docs/ReleaseNotes/23.rst
+0-11 files

LLVM/project 9d5fee8clang/test/OpenMP task_codegen.cpp threadprivate_codegen.cpp, libc/src/__support/wctype wctype_classification_utils.cpp

Merge branch 'main' into users/c8ef/fold_left_first
DeltaFile
+5,835-5,584llvm/test/tools/llvm-dwarfdump/X86/simplified-template-names.s
+5,528-5,528llvm/test/CodeGen/AMDGPU/whole-wave-functions.ll
+4,314-4,314llvm/test/CodeGen/AMDGPU/accvgpr-spill-scc-clobber.mir
+3,458-2,041clang/test/OpenMP/task_codegen.cpp
+2,140-2,140clang/test/OpenMP/threadprivate_codegen.cpp
+3,681-0libc/src/__support/wctype/wctype_classification_utils.cpp
+24,956-19,6073,835 files not shown
+220,837-100,0563,841 files

LLVM/project 45bee6emlir/include/mlir/Bindings/Python IRInterfaces.h, mlir/lib/Bindings/Python IRInterfaces.h DialectTransform.cpp

[mlir][Python] fix IRInterfaces.h (#181522)

https://github.com/llvm/llvm-project/pull/176920 added `IRInterfaces.h`
but didn't include it in either the list of [installed
headers](https://github.com/llvm/llvm-project/blob/a1d7cda1d7ca4983e02727f589952b02626d2dc8/mlir/python/CMakeLists.txt#L557)
or `mlir/Bindings/Python`. This breaks downstreams. So just move the
header to `mlir/Bindings/Python`
DeltaFile
+0-152mlir/lib/Bindings/Python/IRInterfaces.h
+146-0mlir/include/mlir/Bindings/Python/IRInterfaces.h
+1-1mlir/lib/Bindings/Python/DialectTransform.cpp
+1-1mlir/lib/Bindings/Python/IRInterfaces.cpp
+148-1544 files

LLVM/project 1391fe5mlir/include/mlir/Bindings/Python IRInterfaces.h

move comments
DeltaFile
+10-16mlir/include/mlir/Bindings/Python/IRInterfaces.h
+10-161 files

LLVM/project 9cf307bmlir/include/mlir/Bindings/Python IRInterfaces.h, mlir/lib/Bindings/Python IRInterfaces.h IRInterfaces.cpp

[mlir][Python] fix IRInterfaces.h
DeltaFile
+152-0mlir/include/mlir/Bindings/Python/IRInterfaces.h
+0-152mlir/lib/Bindings/Python/IRInterfaces.h
+1-1mlir/lib/Bindings/Python/IRInterfaces.cpp
+1-1mlir/lib/Bindings/Python/DialectTransform.cpp
+154-1544 files

LLVM/project 208bab7llvm/docs ReleaseNotes.md, llvm/lib/Analysis BranchProbabilityInfo.cpp

[RFC][IR] Remove `Constant::isZeroValue`

`Constant::isZeroValue` currently behaves same as `Constant::isNullValue` for
all types except floating-point, where it additionally returns true for negative
zero (`-0.0`). However, in practice, almost all callers operate on
integer/pointer types where the two are equivalent, and the few FP-relevant
callers have no meaningful dependence on the `-0.0` behavior.

This PR removes `isZeroValue` to eliminate the confusing API surface. All
callers are changed to `isNullValue` with no test failures.

`isZeroValue` will be reintroduced in a future change with clearer semantics:
when null pointers may have non-zero bit patterns, `isZeroValue` will check for
bitwise-all-zeros, while `isNullValue` will check for the semantic null (which
may be non-zero).
DeltaFile
+1-17llvm/lib/IR/Constants.cpp
+9-9llvm/unittests/Analysis/ValueLatticeTest.cpp
+3-3llvm/lib/Transforms/Instrumentation/MemorySanitizer.cpp
+6-0llvm/docs/ReleaseNotes.md
+2-3llvm/lib/Analysis/BranchProbabilityInfo.cpp
+2-2llvm/lib/Transforms/InstCombine/InstCombineAndOrXor.cpp
+23-3430 files not shown
+60-7436 files

LLVM/project 08c5c0dclang-tools-extra/clang-tidy/modernize PassByValueCheck.cpp PassByValueCheck.h, clang-tools-extra/docs ReleaseNotes.rst

[clang-tidy] Add IgnoreMacros option to modernize-pass-by-value (#181465)

Part of #156153
DeltaFile
+24-0clang-tools-extra/test/clang-tidy/checkers/modernize/pass-by-value-ignore-macros.cpp
+6-1clang-tools-extra/clang-tidy/modernize/PassByValueCheck.cpp
+5-0clang-tools-extra/docs/clang-tidy/checks/modernize/pass-by-value.rst
+4-0clang-tools-extra/docs/ReleaseNotes.rst
+1-0clang-tools-extra/clang-tidy/modernize/PassByValueCheck.h
+40-15 files

LLVM/project 2dd94a4llvm/test/CodeGen/RISCV/GlobalISel bitmanip.ll, llvm/test/CodeGen/RISCV/GlobalISel/legalizer legalize-cttz-rv64.mir legalize-cttz-rv32.mir

[GlobalISel] Optimize CTPOP lowering to match SelDAG (#181499)

Prevent multiplication when only having 16 bits.
DeltaFile
+18-46llvm/test/CodeGen/RISCV/GlobalISel/bitmanip.ll
+12-12llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv64.mir
+12-12llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-cttz-rv32.mir
+12-12llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctpop-rv64.mir
+10-10llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv64.mir
+10-10llvm/test/CodeGen/RISCV/GlobalISel/legalizer/legalize-ctlz-rv32.mir
+74-1024 files not shown
+103-12910 files

LLVM/project 35e0470lld/ELF InputFiles.h, lld/ELF/Arch PPC64.cpp

[ELF,PPC64] Scope checkPPC64TLSRelax to section and simplify TLS markers

checkPPC64TLSRelax detects TLS GD/LD without TLSGD/TLSLD markers
(generated from old IBM XL) and disables TLS optimization. Previously it
set a per-file flag (ppc64DisableTLSRelax). Now scope it in the section
being scanned.

In addition, simplify the R_PPC64_TLSGD/R_PPC64_TLSLD marker handling:
the redundant `sym.setFlags(NEEDS_TLSIE)` is unnecessary as the
preceding GOT_TLSGD relocation already sets it.
DeltaFile
+16-25lld/ELF/Arch/PPC64.cpp
+0-4lld/ELF/InputFiles.h
+1-1lld/test/ELF/ppc64-tls-missing-gdld.s
+17-303 files

LLVM/project cfe1b46llvm/lib/CodeGen/SelectionDAG DAGCombiner.cpp, llvm/test/CodeGen/RISCV/rvv fixed-vectors-vaaddu.ll

[DAGCombiner] Fold trunc(build_vector(ext(x), ext(x)) -> build_vector(x,x) (#179857)

The original implementation performed the transformation when
isTruncateFree was true:
 truncate(build_vector(x, x)) -> build_vector(truncate(x), truncate(x)).
    
In some cases, x comes from an ext, try to pre-truncate build_vectors
source operands
 when the source operands of build_vectors comes from an ext.
    
 Testcase from: https://gcc.godbolt.org/z/bbxbYK7dh
DeltaFile
+39-0llvm/test/CodeGen/RISCV/rvv/fixed-vectors-vaaddu.ll
+8-7llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp
+47-72 files

LLVM/project 5a6f504libc/shared/math bf16add.h, libc/src/__support/math bf16add.h CMakeLists.txt

[libc][math] Refactor bf16add to header only (#181392)

Resolves #181016
Part of #147386
DeltaFile
+26-0libc/src/__support/math/bf16add.h
+23-0libc/shared/math/bf16add.h
+15-0utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+10-0libc/src/__support/math/CMakeLists.txt
+2-5libc/src/math/generic/bf16add.cpp
+1-5libc/src/math/generic/CMakeLists.txt
+77-103 files not shown
+80-109 files

LLVM/project a4cb2b0libc/shared/math tanhf16.h, libc/src/__support/math tanhf16.h CMakeLists.txt

[libc][math] Refactor tanhf16 implementation to header-only in src/__support/math folder. (#178645)

Part of https://github.com/llvm/llvm-project/issues/147386
closed https://github.com/llvm/llvm-project/issues/178492
DeltaFile
+166-0libc/src/__support/math/tanhf16.h
+2-138libc/src/math/generic/tanhf16.cpp
+29-0libc/shared/math/tanhf16.h
+22-0libc/src/__support/math/CMakeLists.txt
+20-1utils/bazel/llvm-project-overlay/libc/BUILD.bazel
+1-12libc/src/math/generic/CMakeLists.txt
+240-1513 files not shown
+243-1519 files

LLVM/project abf1d0bclang/bindings/python/clang cindex.py

[clang][Python] Use fstrings instead of string concatenations (#173861)

This PR replaces string concatenations and the older `%` string
interpolation with fstrings. These changes were originally part of
#173845 but have been moved to a new PR.
DeltaFile
+30-37clang/bindings/python/clang/cindex.py
+30-371 files

LLVM/project 5e87f81lld/ELF Relocations.cpp InputSection.cpp, lld/ELF/Arch PPC.cpp

[ELF] Add target-specific relocation scanning for PPC32 (#181517)

Implement PPC::scanSectionImpl, following the pattern established for
x86 (#178846) and PPC64 (#181496). This merges the getRelExpr and TLS
handling for SHF_ALLOC sections into the target-specific scanner,
enabling devirtualization and eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle R_PPC_PLTREL24 inline with addend masking via processAux,
  removing the EM_PPC special case from process().
- Handle TLS GD/LD/IE directly, eliminating handleTlsRelocation,
  getTlsGdRelaxSkip, and adjustTlsExpr overrides. Use handleTlsIe
  for TLS IE, and handleTlsGd for R_PPC_GOT_TLSGD16.
- Use R_DTPREL unconditionally for DTPREL relocations, removing
  R_RELAX_TLS_LD_TO_LE_ABS (PPC32 was the only user).
- Move TLS relaxation dispatch from relocateAlloc into relocate,

    [2 lines not shown]
DeltaFile
+175-97lld/ELF/Arch/PPC.cpp
+0-4lld/ELF/Relocations.cpp
+0-1lld/ELF/InputSection.cpp
+0-1lld/ELF/Relocations.h
+175-1034 files

LLVM/project 052f2f8clang/www cxx_dr_status.html

[clang] Update cxx_dr_status.html
DeltaFile
+592-214clang/www/cxx_dr_status.html
+592-2141 files

LLVM/project 9de9522clang/test/CXX/drs cwg30xx.cpp cwg29xx.cpp, clang/www cxx_dr_status.html

[clang] Revisit tests for CWG2917 and CWG3005 after Core updates (#181513)

This patch revisits the status of tests for two aforementioned Core
issues.
I agree with the analysis in #170410, so no changes are made to CWG2917
test.
In case of CWG3005, Core approved the 2025-09-12 proposed resolution,
which the test was written against in the first place.

Fixes #170410
DeltaFile
+6-14clang/www/cxx_dr_status.html
+1-1clang/test/CXX/drs/cwg30xx.cpp
+1-1clang/test/CXX/drs/cwg29xx.cpp
+8-163 files

LLVM/project 1d48322compiler-rt/test/asan/TestCases/Windows rtlsizeheap_zero.cpp

[ASan] [Windows] Fix a new test in mingw mode

The new test case added in 781719778003ca298ca57e486ab629b7f384844b
didn't work in mingw mode; defines set through `/D` only works when
using the clang-cl compiler driver, not the regular clang compiler
driver.

Switch this to use `-D`, which works with both plain clang and
clang-cl, so we don't need to use a lit macro for expanding
the right option to use.
DeltaFile
+1-1compiler-rt/test/asan/TestCases/Windows/rtlsizeheap_zero.cpp
+1-11 files

LLVM/project caf2a48llvm/test/Transforms/LoopVectorize/VPlan vplan-sink-scalars-and-merge.ll vplan-printing-before-execute.ll, llvm/test/Transforms/LoopVectorize/VPlan/X86 vplan-vp-intrinsics.ll

[VPlan] Use -vplan-print-after in more VPlan tests

use vplan-print-after instead of -debug/-debug-only in more tests,
auto-generate some checks.
DeltaFile
+1,000-715llvm/test/Transforms/LoopVectorize/VPlan/vplan-sink-scalars-and-merge.ll
+84-77llvm/test/Transforms/LoopVectorize/VPlan/vplan-printing-before-execute.ll
+2-2llvm/test/Transforms/LoopVectorize/VPlan/X86/vplan-vp-intrinsics.ll
+1-1llvm/test/Transforms/LoopVectorize/VPlan/vplan-predicate-switch.ll
+1-1llvm/test/Transforms/LoopVectorize/VPlan/vplan-iv-transforms.ll
+1-1llvm/test/Transforms/LoopVectorize/VPlan/uncountable-early-exit-vplan.ll
+1,089-7976 files not shown
+1,095-80312 files

LLVM/project 03471delldb/include/lldb/Target StackFrame.h, lldb/source/API SBFrame.cpp

[lldb] Add extended variable support to Get*VariableList.

This patch adds a new flag to the lldb_private::StackFrame API to get variable lists: `include_extended_vars`.  This allows ScriptedFrame (and other future synthetic frames) to construct 'fake' variables and return them in the VariableList, so that commands like `fr v` and `SBFrame::GetVariables` can show them to the user as requested.

This patch includes all changes necessary to call the API the new way - I tried to use my best judgement on when to include extended variables or not and leave comments explaining the decision.

As a consequence of producing extended variables, this patch means that ScriptedFrame can produce Variable objects with ValueType that contains a ValueTypeExtendedMask in a high bit. This necessarily complicates some of the switch/case handling in places where we would expect to find such variables, and this patch makes best effort to address all such cases as well. From experience, they tend to show up whenever we're dealing with checking if a Variable is in a specified scope, which means we basically have to check the high bit against some user input saying "yes/no extended variables".

stack-info: PR: https://github.com/llvm/llvm-project/pull/181501, branch: users/bzcheeseman/stack/9
DeltaFile
+42-8lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
+40-10lldb/source/API/SBFrame.cpp
+30-11lldb/source/Commands/CommandObjectFrame.cpp
+27-7lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+16-2lldb/include/lldb/Target/StackFrame.h
+15-2lldb/source/Target/StackFrame.cpp
+170-407 files not shown
+205-5613 files

LLVM/project aecc499lld/ELF Relocations.cpp InputSection.cpp, lld/ELF/Arch PPC64.cpp

[ELF] Add target-specific relocation scanning for PPC64 (#181496)

Implement PPC64::scanSectionImpl, following the pattern established for
x86. This merges the getRelExpr and TLS handling for SHF_ALLOC sections
into the target-specific scanner, enabling devirtualization and
eliminating abstraction overhead.

- Inline relocation classification into scanSectionImpl with a switch
  on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
  relocations.
- Handle TLS GD, LD, and DTPREL directly, eliminating
  handleTlsRelocation, getTlsGdRelaxSkip, and adjustTlsExpr overrides.
  Use handleTlsIe for TLS IE, enabling IE-to-LE optimization even when
  ppc64DisableTLSRelax is set (lifted a limitation from
  the workaround patch https://reviews.llvm.org/D92959).
- Use processAux for R_PPC64_PCREL_OPT. Remove the PPC64-specific
  special case from process().
- Replace RE_PPC64_RELAX_GOT_PC with R_RELAX_GOT_PC, which computes

    [5 lines not shown]
DeltaFile
+276-194lld/ELF/Arch/PPC64.cpp
+16-28lld/ELF/Relocations.cpp
+30-6lld/test/ELF/ppc64-tls-missing-gdld.s
+0-2lld/ELF/InputSection.cpp
+0-2lld/ELF/Relocations.h
+322-2325 files

LLVM/project cd38f84llvm/test/Transforms/LoopVectorize smax-idx.ll epilog-iv-select-cmp.ll

[LV] Add argmin test for epilogue vectorization w/o wide canonical IV.

Add additional epilogue vectorization test coverage for
https://github.com/llvm/llvm-project/pull/170223.

Also regenerate check lines for related tests.
DeltaFile
+169-16llvm/test/Transforms/LoopVectorize/smax-idx.ll
+96-12llvm/test/Transforms/LoopVectorize/epilog-iv-select-cmp.ll
+265-282 files

LLVM/project 8074a07lldb/include/lldb/Target StackFrame.h, lldb/source/API SBFrame.cpp

[lldb] Add extended variable support to Get*VariableList.

This patch adds a new flag to the lldb_private::StackFrame API to get variable lists: `include_extended_vars`.  This allows ScriptedFrame (and other future synthetic frames) to construct 'fake' variables and return them in the VariableList, so that commands like `fr v` and `SBFrame::GetVariables` can show them to the user as requested.

This patch includes all changes necessary to call the API the new way - I tried to use my best judgement on when to include extended variables or not and leave comments explaining the decision.

As a consequence of producing extended variables, this patch means that ScriptedFrame can produce Variable objects with ValueType that contains a ValueTypeExtendedMask in a high bit. This necessarily complicates some of the switch/case handling in places where we would expect to find such variables, and this patch makes best effort to address all such cases as well. From experience, they tend to show up whenever we're dealing with checking if a Variable is in a specified scope, which means we basically have to check the high bit against some user input saying "yes/no extended variables".

stack-info: PR: https://github.com/llvm/llvm-project/pull/181501, branch: users/bzcheeseman/stack/9
DeltaFile
+40-10lldb/source/API/SBFrame.cpp
+42-8lldb/source/Plugins/Process/scripted/ScriptedFrame.cpp
+30-11lldb/source/Commands/CommandObjectFrame.cpp
+27-7lldb/test/API/functionalities/scripted_frame_provider/TestScriptedFrameProvider.py
+16-2lldb/include/lldb/Target/StackFrame.h
+15-2lldb/source/Target/StackFrame.cpp
+170-407 files not shown
+205-5613 files

LLVM/project 8b4485flldb/include/lldb lldb-enumerations.h, lldb/include/lldb/API SBVariablesOptions.h

[lldb] Scaffolding for extended variable support.

This patch handles most of the scaffolding for extended variable support that isn't directly tied to functional changes. This patch will be used by one following patch that actually modifies the lldb_private::StackFrame API to allow us to fetch extended variables.

There were a couple important/interesting decisions made in this patch that should be noted:
- Any value type may be 'extended', which is why it's a mask applied over the top of another value type.
- When printing frame variables with `fr v`, default to showing extended variables.

This new value type mask makes some of the ValueType handling more interesting, but since nothing generates objects with this mask until the next patch, we can land the concept in this patch in some amount of isolation.

stack-info: PR: https://github.com/llvm/llvm-project/pull/181500, branch: users/bzcheeseman/stack/8
DeltaFile
+19-2lldb/source/API/SBVariablesOptions.cpp
+10-2lldb/source/Interpreter/OptionGroupVariable.cpp
+5-0lldb/include/lldb/lldb-enumerations.h
+4-0lldb/include/lldb/API/SBVariablesOptions.h
+1-0lldb/include/lldb/Interpreter/OptionGroupVariable.h
+39-45 files

LLVM/project 846e022lldb/source/Plugins/ScriptInterpreter/Python/Interfaces ScriptInterpreterPythonInterfaces.cpp

[lldb] NFC: Use standard comment for lldb-python.h include (#181498)

## Summary
Use the standard `// LLDB Python header must be included first.` comment
to match every other Python interface `.cpp` file in this directory, as
suggested by @JDevlieghere.

## Test plan
NFC - comment only change.

Co-authored-by: Rahul Reddy Chamala <rachamal at meta.com>
DeltaFile
+1-2lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptInterpreterPythonInterfaces.cpp
+1-21 files

LLVM/project 7b052c4.github/workflows build-libc-container.yml

[Github][libc] Also build arm container (#181497)

Some of the libc full build tests also run on AArch64 machines. We need
to build an ARM container or otherwise the container fails to start and
we never end up running anything.
DeltaFile
+6-1.github/workflows/build-libc-container.yml
+6-11 files

LLVM/project de4f473lldb/source/Interpreter ScriptInterpreter.cpp, lldb/source/Plugins/ScriptInterpreter/Python/Interfaces ScriptedPythonInterface.cpp

[lldb] Fix Windows linker error for MakeSBModuleSpec in lldb-server (#181494)

## Summary
Move the definition of `ScriptInterpreter::MakeSBModuleSpec` from
`ScriptInterpreter.cpp` to `ScriptedPythonInterface.cpp`.

`MakeSBModuleSpec` constructs an `SBModuleSpec`, whose symbols live in
the API library (`liblldb`). `ScriptInterpreter.cpp` is part of
`lldbInterpreter`, which is also linked into `lldb-server` — and
`lldb-server` does not link the API library. On Windows, this causes
`LNK2019: unresolved external symbol` for `SBModuleSpec`'s constructor
and destructor.

`ScriptedPythonInterface.cpp` is part of the Python plugin library,
which only links into `liblldb` where the API symbols are available. The
method retains friend access to `SBModuleSpec` since it is still a
member of `ScriptInterpreter` regardless of which `.cpp` file defines
it.


    [5 lines not shown]
DeltaFile
+10-0lldb/source/Plugins/ScriptInterpreter/Python/Interfaces/ScriptedPythonInterface.cpp
+0-6lldb/source/Interpreter/ScriptInterpreter.cpp
+10-62 files