LLVM/project 7c04585clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete OperatorNewDeletePointers.h, clang/lib/ScalableStaticAnalysis/Analyses SSAFAnalysesCommon.h

address comments
DeltaFile
+9-8clang/lib/ScalableStaticAnalysis/Analyses/SSAFAnalysesCommon.h
+7-4clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointers.h
+4-4clang/unittests/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointersExtractorTest.cpp
+20-163 files

LLVM/project 3a98f5dllvm/lib/Target/BPF BPFCodeGenPassBuilder.cpp

update

Created using spr 1.3.7
DeltaFile
+1-0llvm/lib/Target/BPF/BPFCodeGenPassBuilder.cpp
+1-01 files

LLVM/project 5499c56llvm/lib/Target/BPF BPFCodeGenPassBuilder.cpp BPFMIPeephole.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+122-0llvm/lib/Target/BPF/BPFCodeGenPassBuilder.cpp
+78-39llvm/lib/Target/BPF/BPFMIPeephole.cpp
+60-29llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
+37-28llvm/lib/Target/BPF/BPFCheckAndAdjustIR.cpp
+12-45llvm/lib/Target/BPF/BPFTargetMachine.cpp
+37-6llvm/lib/Target/BPF/BPF.h
+346-1475 files not shown
+373-14711 files

LLVM/project b3867c5llvm/lib/Target/BPF BPFMIPeephole.cpp BPFCodeGenPassBuilder.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+88-39llvm/lib/Target/BPF/BPFMIPeephole.cpp
+122-0llvm/lib/Target/BPF/BPFCodeGenPassBuilder.cpp
+60-29llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
+37-28llvm/lib/Target/BPF/BPFCheckAndAdjustIR.cpp
+12-45llvm/lib/Target/BPF/BPFTargetMachine.cpp
+45-6llvm/lib/Target/BPF/BPF.h
+364-1475 files not shown
+392-14711 files

LLVM/project 1b6f152llvm/include/llvm/DebugInfo/DWARF DWARFDie.h, llvm/lib/DebugInfo/DWARF DWARFDie.cpp

[llvm][DebugInfo] Add DW_LNAME_ support to DWARFDie::getLanguage (#207151)

Currently `DWARFDie::getLanguage` only looks at `DW_AT_language`.
However, with DWARFv6 we may not have such attribute, and instead have a
`DW_AT_language_name` (and optional `DW_AT_language_version`).

This patch adjusts the implementation to also consider the DWARFv6
language name/version codes. In this patch I just convert it back to
`DW_LANG_` (similar to what we do for the `AsmPrinter`'s
`DwarfUnit::getSourceLanguage`). Added a FIXME to investigate whether we
want to return a variant-like type that can be either an DW_LANG vs.
DW_LNAME code.

The way I initially observed this was looking at a DWARFv6 dwarfdump for
a `const char[]` type. It displayed as follows:
```
DW_AT_type  (0x... "const char[[?, ? + 3)]")
```
which is our representation for when we [can't derive the default lower

    [12 lines not shown]
DeltaFile
+197-0llvm/unittests/DebugInfo/DWARF/DWARFDieTest.cpp
+108-0llvm/test/tools/llvm-dwarfdump/X86/array-type-lower-bound-dwarf6.s
+18-6llvm/lib/DebugInfo/DWARF/DWARFDie.cpp
+1-0llvm/include/llvm/DebugInfo/DWARF/DWARFDie.h
+324-64 files

LLVM/project 7b7508b.ci compute_projects_test.py compute_projects.py, .github/workflows libclang-python-tests.yml

CI: move libclang python byindings tests to main CI

This removes the separate python bindings CI, which run on the GitHub free
runners and take more than one hour to build libclang.

The tests are executed instead in the monolithic pipelines,
whenever clang would be tested.

This is fine in terms of resources because all the dependencies are
built anyway, and the tests themselves take less than one second to
run on the free runners.
DeltaFile
+0-59.github/workflows/libclang-python-tests.yml
+13-12.ci/compute_projects_test.py
+8-3clang/bindings/python/tests/cindex/test_source_range.py
+3-1clang/bindings/python/tests/cindex/test_translation_unit.py
+1-1.ci/compute_projects.py
+25-765 files

LLVM/project fab843ellvm/lib/Target/BPF BPFCodeGenPassBuilder.cpp BPFMIPeephole.cpp

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+122-0llvm/lib/Target/BPF/BPFCodeGenPassBuilder.cpp
+78-39llvm/lib/Target/BPF/BPFMIPeephole.cpp
+60-29llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
+37-28llvm/lib/Target/BPF/BPFCheckAndAdjustIR.cpp
+12-45llvm/lib/Target/BPF/BPFTargetMachine.cpp
+37-6llvm/lib/Target/BPF/BPF.h
+346-1475 files not shown
+373-14711 files

LLVM/project 7b79135llvm/lib/Target/BPF BPFCodeGenPassBuilder.cpp BPFMISimplifyPatchable.cpp

[𝘀𝗽𝗿] changes to main this commit is based on

Created using spr 1.3.7

[skip ci]
DeltaFile
+122-0llvm/lib/Target/BPF/BPFCodeGenPassBuilder.cpp
+60-29llvm/lib/Target/BPF/BPFMISimplifyPatchable.cpp
+37-28llvm/lib/Target/BPF/BPFCheckAndAdjustIR.cpp
+42-23llvm/lib/Target/BPF/BPFMIPeephole.cpp
+8-44llvm/lib/Target/BPF/BPFTargetMachine.cpp
+35-6llvm/lib/Target/BPF/BPF.h
+304-1305 files not shown
+331-13011 files

LLVM/project 3df648cllvm/test/Transforms/InstCombine select-abs-positive-mul.ll

[InstCombine] Add tests for select-abs through multiply (NFC) (#207833)

Add tests from approved https://github.com/llvm/llvm-project/pull/207539
DeltaFile
+361-0llvm/test/Transforms/InstCombine/select-abs-positive-mul.ll
+361-01 files

LLVM/project 8014a1dllvm/include/llvm/Support LEB128.h, llvm/unittests/Support LEB128Test.cpp

[Support] Fix undefined shift in decodeULEB128/decodeSLEB128 for overlong encodings (#205907)

When a (signed or unsigned) LEB128 value is encoded with extra trailing
bytes that only carry zero- or sign-extension, the decode loop could
keep
running with the shift amount at 64 or beyond and then evaluate
`Slice << Shift`, which is undefined behavior for a 64-bit type.

The DWARF expression parser feeds attacker-controlled LEB128 operands
(such as `DW_OP_bregN` / `DW_OP_constu`) through
`DataExtractor::getULEB128` / `getSLEB128`, so the
`lldb-dwarf-expression-fuzzer` reaches this under UBSan.  The unsigned
case:

```
LEB128.h:152:20: runtime error: shift exponent 70 is too large for
64-bit type 'uint64_t' (aka 'unsigned long long')
    #0 llvm::decodeULEB128(...) LEB128.h:152
    #1 getLEB128<unsigned long long>(...) DataExtractor.cpp:227

    [27 lines not shown]
DeltaFile
+12-2llvm/include/llvm/Support/LEB128.h
+11-0llvm/unittests/Support/LEB128Test.cpp
+23-22 files

LLVM/project 61b2337llvm/lib/Transforms/Vectorize SLPVectorizer.cpp, llvm/test/Transforms/SLPVectorizer/RISCV reordered-buildvector-scalars.ll

[𝘀𝗽𝗿] initial version

Created using spr 1.3.7
DeltaFile
+16-14llvm/test/Transforms/SLPVectorizer/RISCV/reordered-buildvector-scalars.ll
+11-7llvm/lib/Transforms/Vectorize/SLPVectorizer.cpp
+12-1llvm/test/Transforms/SLPVectorizer/X86/trunc-node-reused.ll
+2-2llvm/test/Transforms/SLPVectorizer/X86/commutative-copyable-external-phi-use.ll
+1-1llvm/test/Transforms/SLPVectorizer/X86/copyable-operand-non-scheduled-parent-node.ll
+42-255 files

LLVM/project c9c7fddflang/lib/Optimizer/HLFIR/Transforms SeparateAllocatableAssign.cpp, flang/test/HLFIR separate-allocatable-assign.fir

[flang] keep runtime allocator for pinned allocations (#207822)

If an allocatable is pinned, use the flang runtime instead of lowering
to normal memcpy/free.

---------

Co-authored-by: Yebin Chon <ychon at nvidia.com>
DeltaFile
+29-0flang/test/HLFIR/separate-allocatable-assign.fir
+8-0flang/lib/Optimizer/HLFIR/Transforms/SeparateAllocatableAssign.cpp
+37-02 files

LLVM/project 61d7668clang/lib/CodeGen CGExpr.cpp, clang/test/CodeGen attr-counted-by-nested-structs.c

[Clang][counted_by] Use the expr's RecordDecl that transitively contains the counter field (#205903)

The counted field could be in nested structs. This can happen when the
Expr is pointing to a field that has a struct type. The original code
didn't do a good job at finding the best RecordDecl to build the GEP off
of. It made too many assumptions about how structs' layouts.

This rewrite finds the RecordDecl that transitively contains the
__counted_by__'s counter field.

Fixes: #205652
DeltaFile
+127-0clang/test/CodeGen/attr-counted-by-nested-structs.c
+40-18clang/lib/CodeGen/CGExpr.cpp
+167-182 files

LLVM/project c81b3dbflang/lib/Semantics check-io.cpp mod-file.cpp, flang/test/Semantics enumeration-type-io.f90

Corrected IO restrictions to handle components and make restrictions consistent.
DeltaFile
+65-0flang/lib/Semantics/check-io.cpp
+16-0flang/test/Semantics/enumeration-type-io.f90
+4-4flang/lib/Semantics/mod-file.cpp
+85-43 files

LLVM/project 23a01e9llvm/lib/Target/AArch64 AArch64InstrInfo.cpp, llvm/test/CodeGen/AArch64 stack-guard-width.ll

[AArch64] Support 4-byte stack protector with large code model. (#205956)

This is a simple extension to existing code. We might need this in the
future.
DeltaFile
+14-7llvm/lib/Target/AArch64/AArch64InstrInfo.cpp
+7-0llvm/test/CodeGen/AArch64/stack-guard-width.ll
+21-72 files

LLVM/project f147395llvm/utils/gn/secondary/libcxx/include BUILD.gn, llvm/utils/gn/secondary/llvm/lib/ObjectYAML BUILD.gn

[gn build] Port commits (#207839)

1b2efd2e079a
9b2d44a51252
DeltaFile
+1-0llvm/utils/gn/secondary/libcxx/include/BUILD.gn
+1-0llvm/utils/gn/secondary/llvm/lib/ObjectYAML/BUILD.gn
+2-02 files

LLVM/project b69ec10llvm/lib/Transforms/Vectorize VPlan.h, llvm/test/Transforms/LoopVectorize early_exit_with_outer_loop.ll

Revert "[VPlan] Refine hasEarlyExit check." (#207838)

Reverts llvm/llvm-project#207791

This appears to break multiple build-bots
DeltaFile
+0-33llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll
+8-17llvm/lib/Transforms/Vectorize/VPlan.h
+8-502 files

FreeBSD/doc d21a710website/content/ru/releng _index.adoc

website/ru: Update releng/_index.adoc

Update to EN 8ead66a97f9ac8f2440f5e2126dc85eee4594315
DeltaFile
+2-2website/content/ru/releng/_index.adoc
+2-21 files

LLVM/project 25736ec.ci compute_projects_test.py compute_projects.py, .github/workflows libclang-python-tests.yml

CI: move libclang python byindings tests to main CI

This removes the separate python bindings CI, which run on the GitHub free
runners and take more than one hour to build libclang.

The tests are executed instead in the monolithic pipelines,
whenever clang would be tested.

This is fine in terms of resources because all the dependencies are
built anyway, and the tests themselves take less than one second to
run on the free runners.
DeltaFile
+0-59.github/workflows/libclang-python-tests.yml
+13-12.ci/compute_projects_test.py
+8-3clang/bindings/python/tests/cindex/test_source_range.py
+3-1clang/bindings/python/tests/cindex/test_translation_unit.py
+1-1.ci/compute_projects.py
+25-765 files

FreeBSD/ports 80c2db1mail/postfix distinfo Makefile

mail/postfix: Update to 3.11.5
DeltaFile
+3-3mail/postfix/distinfo
+2-2mail/postfix/Makefile
+5-52 files

FreeNAS/freenas 9849c1etests/directory_services test_ipa_join_no_dns_updates.py

Ruff fix

(cherry picked from commit c3069522c4be7f7521e2f29107cbce5d7184654e)
DeltaFile
+4-4tests/directory_services/test_ipa_join_no_dns_updates.py
+4-41 files

FreeNAS/freenas 4809ec1src/middlewared/middlewared/plugins/directoryservices_ ipa_join_mixin.py datastore.py, tests/directory_services test_ipa_join_no_dns_updates.py

Require DNS updates for the IPA directory service

Creating the SMB and NFS Kerberos service principals during an IPA
join uses FreeIPA's service-add, which refuses to add a service to a
host that has no DNS A/AAAA record. register_dns() creates that
record, so it is a prerequisite for service-principal setup rather
than an optional step.

With DNS updates disabled the join aborted at register_dns() before
the service principals were created, leaving smbd unable to start:

    krb5_kt_start_seq_get on FILE:/etc/ipa/smb.keytab failed
    (No such file or directory)

Reject enable_dns_updates=False for IPA at validation time with a
clear message, since DNS updates are currently required to properly
support kerberized services.

Also roll back the local configuration written during a failed join

    [9 lines not shown]
DeltaFile
+34-15src/middlewared/middlewared/plugins/directoryservices_/ipa_join_mixin.py
+14-0tests/directory_services/test_ipa_join_no_dns_updates.py
+9-0src/middlewared/middlewared/plugins/directoryservices_/datastore.py
+57-153 files

FreeNAS/freenas 07981f4src/middlewared/middlewared/plugins/directoryservices_ ipa_join_mixin.py datastore.py, tests/directory_services test_ipa_join_no_dns_updates.py

NAS-138474 / 27.0.0-BETA.1 / Require DNS updates for the IPA directory service (#19263)

Creating the SMB and NFS Kerberos service principals during an IPA
join uses FreeIPA's service-add, which refuses to add a service to a
host that has no DNS A/AAAA record. register_dns() creates that
record, so it is a prerequisite for service-principal setup rather
than an optional step.

With DNS updates disabled the join aborted at register_dns() before
 the service principals were created, leaving smbd unable to start:

```
        krb5_kt_start_seq_get on FILE:/etc/ipa/smb.keytab failed
        (No such file or directory)
```

Reject enable_dns_updates=False for IPA at validation time with a
clear message, since DNS updates are currently required to properly
support kerberized services.
DeltaFile
+34-15src/middlewared/middlewared/plugins/directoryservices_/ipa_join_mixin.py
+14-0tests/directory_services/test_ipa_join_no_dns_updates.py
+9-0src/middlewared/middlewared/plugins/directoryservices_/datastore.py
+57-153 files

LLVM/project e64a71fllvm/lib/Transforms/Vectorize VPlan.h, llvm/test/Transforms/LoopVectorize early_exit_with_outer_loop.ll

[VPlan] Refine hasEarlyExit check. (#207791)

Currently hasEarlyExit misses cases where we have things like dead exit
blocks or simplified the middle block.

Update to check by counting the predecessors.

This fixes a case where we missed properly updating LoopInfo due to
incorrect results.

Fixes https://github.com/llvm/llvm-project/issues/206007.
DeltaFile
+33-0llvm/test/Transforms/LoopVectorize/early_exit_with_outer_loop.ll
+17-8llvm/lib/Transforms/Vectorize/VPlan.h
+50-82 files

LLVM/project 395422eclang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete OperatorNewDeletePointers.h

Update clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointers.h

Co-authored-by: Balázs Benics <benicsbalazs at gmail.com>
DeltaFile
+1-0clang/include/clang/ScalableStaticAnalysis/Analyses/OperatorNewDelete/OperatorNewDeletePointers.h
+1-01 files

LLVM/project 2878d9cclang/include/clang/Basic LangOptions.def, clang/include/clang/Options Options.td

Make type discrimination of 128-bit types optional
DeltaFile
+18-10clang/test/CodeGen/ptrauth-function-type-discriminator.c
+15-6clang/lib/AST/ASTContext.cpp
+4-0clang/lib/Frontend/CompilerInvocation.cpp
+2-0clang/lib/Driver/ToolChains/Clang.cpp
+2-0clang/include/clang/Basic/LangOptions.def
+2-0clang/include/clang/Options/Options.td
+43-161 files not shown
+44-167 files

FreeBSD/doc feb78c7website/themes/beastie/i18n ru.toml

Update website/themes/beastie/i18n/ru.toml

Update to EN 1429387ea6272ab62c87ba6488bb20742cf95dbd
Improve wording
DeltaFile
+50-44website/themes/beastie/i18n/ru.toml
+50-441 files

FreeNAS/freenas c306952tests/directory_services test_ipa_join_no_dns_updates.py

Ruff fix
DeltaFile
+4-4tests/directory_services/test_ipa_join_no_dns_updates.py
+4-41 files

LLVM/project 09f2062clang/lib/CodeGen CodeGenTypes.cpp

clang: Use getFloatingPointType instead of reinventing it (#207213)
DeltaFile
+6-25clang/lib/CodeGen/CodeGenTypes.cpp
+6-251 files

LLVM/project b8d89feclang/test/CodeGen attr-counted-by.c attr-counted-by-with-sanitizers.c, llvm/test/CodeGen/RISCV determine-callee-saves-gpr.mir

Rebase, cleanup, improvements

Created using spr 1.3.7
DeltaFile
+0-2,755clang/test/CodeGen/attr-counted-by.c
+1,736-0clang/test/CodeGen/attr-counted-by-with-sanitizers.c
+0-1,645llvm/test/CodeGen/RISCV/rvv/vector-interleave.ll
+694-806llvm/test/CodeGen/X86/vector-reduce-mul.ll
+1,387-0clang/test/CodeGen/attr-counted-by-without-sanitizers.c
+1,283-0llvm/test/CodeGen/RISCV/determine-callee-saves-gpr.mir
+5,100-5,2061,504 files not shown
+52,823-27,2951,510 files