LLVM/project 8444891libcxx/src/filesystem path.cpp, libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen lexically_normal.pass.cpp

[libc++] Do not remove a root-name followed by ".." in `path::lexically_normal()` (#201261)

For Windows paths like `"C:.."`, `path::lexically_normal()` should
preserve both the root-name and the `".."` component. In
[fs.path.generic]p6, clause (5) prescribes removing `".."` only after
non-dot-dot filenames. Since a root-name is not a filename, this clause
does not apply. Clause (6) only applies when there is a root-directory,
which is absent in this case. Therefore, the root-name and these `".."`
components should not be removed.

This change aligns `libc++` with MSSTL.
DeltaFile
+10-11libcxx/src/filesystem/path.cpp
+10-0libcxx/test/std/input.output/filesystems/class.path/path.member/path.gen/lexically_normal.pass.cpp
+20-112 files

LLVM/project a20ff53flang/test/Integration split-lto-unit-2.f90

Fixing the testcase failure in arm64 darwin systems (#206223)

For apple targets, the string EnableSplitLTOUnit is not emitted in
fulllto. Marking the test unsupported for this targets.
DeltaFile
+3-0flang/test/Integration/split-lto-unit-2.f90
+3-01 files

LLVM/project 159d377libcxx/test/libcxx/text/text_encoding environment.pass.cpp

[libc++][test] XFAIL `text/text_encoding/environment.pass.cpp` test on Armv7/Linux Ubuntu targets. (#206188)

The test gets failed on Armv7/Linux Ubuntu board during remote execution
when cross-compiling on the Windows build host with the following
message:

  Environment mismatch: Expected ID 3, received: {106,UTF-8}

Temporary XFAIL this test till investigation of the problem.

See #141312 for details
DeltaFile
+4-0libcxx/test/libcxx/text/text_encoding/environment.pass.cpp
+4-01 files

LLVM/project b477c15llvm/unittests/CodeGen AMDGPUMetadataTest.cpp, llvm/unittests/MC/AMDGPU DwarfRegMappings.cpp Disassembler.cpp

AMDGPU: Migrate unittests to subarch triples

Replace specifying a processor name with the triple
subarch.

The register-limit helpers in AMDGPUUnitTests.cpp that enumerate every
valid CPU via fillValidArchListAMDGCN still pass the CPU explicitly, as
does the MC Disassembler smoke test (its C disassembler API derives the
subtarget from the CPU, not the triple subarch).

Co-authored-by: Claude (Opus 4.8) <noreply at anthropic.com>
DeltaFile
+6-6llvm/unittests/Target/AMDGPU/DwarfRegMappings.cpp
+6-6llvm/unittests/MC/AMDGPU/DwarfRegMappings.cpp
+3-3llvm/unittests/CodeGen/AMDGPUMetadataTest.cpp
+2-2llvm/unittests/MC/AMDGPU/Disassembler.cpp
+2-2llvm/unittests/MI/LiveIntervalTest.cpp
+2-2llvm/unittests/MIR/MachineMetadata.cpp
+21-2110 files not shown
+33-3316 files

LLVM/project 41cad7ellvm/test/CodeGen/AMDGPU directive-amdgcn-target.ll directive-amdgcn-target-legacy-triples.ll

AMDGPU: Migrate target id tests to use new subarch triples
DeltaFile
+0-239llvm/test/CodeGen/AMDGPU/directive-amdgcn-target.ll
+239-0llvm/test/CodeGen/AMDGPU/directive-amdgcn-target-legacy-triples.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-all-on.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-1.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-off-2.ll
+11-11llvm/test/CodeGen/AMDGPU/tid-mul-func-xnack-any-on-1.ll
+283-2839 files not shown
+380-37815 files

LLVM/project 1d39604clang/lib/Driver/ToolChains CommonArgs.cpp, clang/test/Driver amdgpu-mcpu.cl hip-sanitize-options.hip

clang/AMDGPU: Stop passing redundant -target-cpu to cc1

Now that the exact target is encoded in the triple's subarch field,
-target-cpu is redundant. This avoids polluting the resultant IR with
unwanted "target-cpu" attributes. The net result is the desired codegen
when compiling libraries for a major subarch and linking it into a
program compiled for a specific arch. e.g., compiling for "gfx9-generic"
would pollute the IR with "target-cpu"="gfx9-generic", so codegen
would ultimately be performed for the generic target even after
linking into the concrete gfx9 cpu. The specialization will now be
achieved by merging the triples without the linker or optimization
passes needing to fixup function attributes.
DeltaFile
+62-62clang/test/Driver/amdgpu-mcpu.cl
+26-26clang/test/Driver/hip-sanitize-options.hip
+20-10clang/lib/Driver/ToolChains/CommonArgs.cpp
+12-16clang/test/Driver/hip-rdc-device-only.hip
+24-0clang/test/Preprocessor/amdgpu-subarch-cc1-target-cpu.cl
+10-10clang/test/Driver/amdgpu-xnack-sramecc-flags.c
+154-12427 files not shown
+214-21133 files

LLVM/project bb23c10clang/lib/Basic/Targets AMDGPU.h AMDGPU.cpp, clang/test/Misc/target-invalid-cpu-note amdgcn.c

clang/AMDGPU: Validate -target-cpu in cc1 is valid for the subarch

Restrict the reported list of valid target-cpus based on the triple's
subarch. This is more consistent with how other targets validate the
target CPU name. Currently we have split handling validating the target
name for the triple in both the driver and here. The driver based diagnostic
seems to be an amdgpu-ism in 2 different places (though there is one arm
validation emitting the same diagnostic). In the future we could probably
drop those.
DeltaFile
+55-0clang/test/Misc/target-invalid-cpu-note/amdgcn.c
+6-5clang/lib/Basic/Targets/AMDGPU.h
+1-1clang/lib/Basic/Targets/AMDGPU.cpp
+62-63 files

LLVM/project f7b45fcclang/lib/Basic OffloadArch.cpp, clang/lib/Driver Driver.cpp

clang: Start using new amdgpu subarch triples

Fixup invocations using --target=amdgcn + -mcpu to introduce
the subarch in the triple.

For offload toolchains, a single toolchain is constructed for the
top level amdgpu architecture, and the effective triple is used for
target specific tool invocations.

The specifics of the resource directory layout are tbd. This does
try to find resources in the subarch named directory. The paths
are searched at toolchain creation time, so that does not work
when there are multiple subarches.

Fixes #154925
DeltaFile
+234-2clang/lib/Basic/OffloadArch.cpp
+59-59clang/test/Driver/offload-arch-translation-amdgpu.cu
+43-43clang/test/Driver/hip-phases.hip
+33-33clang/test/Driver/hip-binding.hip
+49-15clang/lib/Driver/ToolChains/CommonArgs.cpp
+43-12clang/lib/Driver/Driver.cpp
+461-164103 files not shown
+1,251-491109 files

LLVM/project 0134bfbllvm/test/CodeGen/AMDGPU target-cpu.ll

AMDGPU: Rewrite target-cpu test for new subarches

The function subtargets should now be a valid subtarget for
the top-level subarch.
DeltaFile
+52-74llvm/test/CodeGen/AMDGPU/target-cpu.ll
+52-741 files

LLVM/project d39c3b4llvm/docs AMDGPUUsage.rst, llvm/lib/TargetParser AMDGPUTargetParser.cpp Triple.cpp

AMDGPU: Introduce amdgpu triple arch

Move towards using the triple for representing incompatible
ISA changes. Use the subarch field to represent the various
incompatible cases. Previously we pretended a single triple arch
was universally compatible, and only distinguished by function
level subtargets. Move towards using distinct triples to enable
more sophisticated toolchain handling in the future, like proper
runtime library linking.

Introduce a new subarch per unique ISA, but also introduce
"major subarches" which are compatible by a set of covered
minor ISA versions. These map to the existing generic targets.
There are a few placeholder subarch entries, which currently
have missing backing generic arches for codegen.

This should be the preferred triple arch name going forward,
but is treated as an alias of amdgcn. This does not yet change
clang to emit the new triples.

    [2 lines not shown]
DeltaFile
+548-434llvm/docs/AMDGPUUsage.rst
+417-0llvm/unittests/TargetParser/TargetParserTest.cpp
+239-11llvm/lib/TargetParser/AMDGPUTargetParser.cpp
+177-0llvm/test/CodeGen/AMDGPU/target-id-from-triple.ll
+149-14llvm/lib/TargetParser/Triple.cpp
+138-12llvm/unittests/TargetParser/TripleTest.cpp
+1,668-47172 files not shown
+2,504-67778 files

LLVM/project 7bb439bmlir/include/mlir-c IR.h, mlir/lib/CAPI/IR IR.cpp

[mlir-c] Add mlirValueReplaceUsesWithIf
DeltaFile
+53-0mlir/test/CAPI/ir.c
+14-0mlir/include/mlir-c/IR.h
+10-0mlir/lib/CAPI/IR/IR.cpp
+77-03 files

LLVM/project 151819amlir/include/mlir-c Diagnostics.h, mlir/lib/CAPI/IR Diagnostics.cpp

[mlir-c] Add mlirEmitWarning and mlirEmitRemark
DeltaFile
+10-0mlir/include/mlir-c/Diagnostics.h
+8-0mlir/test/CAPI/ir.c
+8-0mlir/lib/CAPI/IR/Diagnostics.cpp
+26-03 files

LLVM/project 07825d6mlir/include/mlir-c IR.h, mlir/lib/CAPI/IR IR.cpp

[mlir-c] Add structural operation equivalence
DeltaFile
+70-0mlir/test/CAPI/ir.c
+26-0mlir/lib/CAPI/IR/IR.cpp
+25-0mlir/include/mlir-c/IR.h
+121-03 files

FreeBSD/ports d065826databases/rrdtool Makefile, databases/rrdtool/files patch-src_rrd__open.c

databases/rrdtool: Fix rrdtool resize on zfs FreeBSD 15

It appears that `posix_fallocate` in FreeBSD 15 now returns `EOPNOTSUPP`
instead of `EINVAL`.

See also:
https://lists.libvirt.org/archives/list/devel@lists.libvirt.org/thread/QZXFLC6E47UDM65GZAFDBZ2DJKIDT7N2/?sort=date
https://github.com/mariadb-corporation/galera/issues/685

PR:             296381
DeltaFile
+11-0databases/rrdtool/files/patch-src_rrd__open.c
+1-1databases/rrdtool/Makefile
+12-12 files

LLVM/project 9f2d711llvm/test/Transforms/SLPVectorizer/X86 add-sub-nsw-intmin.ll

[SLP][NFC]Add a test with the incorrect nsw attr propagation, NFC



Reviewers: 

Pull Request: https://github.com/llvm/llvm-project/pull/206539
DeltaFile
+73-0llvm/test/Transforms/SLPVectorizer/X86/add-sub-nsw-intmin.ll
+73-01 files

LLVM/project 9061a88clang/lib/CIR/CodeGen CIRGenBuiltinAArch64.cpp, clang/test/CodeGen/AArch64 v8.2a-neon-intrinsics.c neon-scalar-x-indexed-elem.c

[CIR][AArch64] Lower vfma and scalar FMA lane builtins (#204819)

Lower additional AArch64 NEON fused multiply-accumulate builtins in CIR.

This covers:

* `BI__builtin_neon_vfma_v`: `vfma_f16`, `vfma_f32`, `vfma_f64`
* `BI__builtin_neon_vfma_lane_v`: `vfma_lane_f16`, `vfma_lane_f32`,
`vfma_lane_f64`
* `BI__builtin_neon_vfmah_lane_f16`: `vfmah_lane_f16`
* `BI__builtin_neon_vfmah_laneq_f16`: `vfmah_laneq_f16`
* `BI__builtin_neon_vfmas_lane_f32`: `vfmas_lane_f32`
* `BI__builtin_neon_vfmas_laneq_f32`: `vfmas_laneq_f32`

`vfma_v` and `vfma_lane_v` reuse the corresponding quad FMA lowering
paths. Vector lane forms splat the selected vector element, while scalar
lane/laneq forms extract the selected lane before emitting `llvm.fma`.

Represent NEON `Poly128` as a 16-byte integer vector in CIR, matching

    [9 lines not shown]
DeltaFile
+136-7clang/test/CodeGen/AArch64/neon/fused-multiply.c
+93-23clang/test/CodeGen/AArch64/neon/fused-multiple-fullfp16.c
+0-61clang/test/CodeGen/AArch64/v8.2a-neon-intrinsics.c
+26-26clang/lib/CIR/CodeGen/CIRGenBuiltinAArch64.cpp
+0-45clang/test/CodeGen/AArch64/neon-scalar-x-indexed-elem.c
+0-42clang/test/CodeGen/AArch64/neon-intrinsics.c
+255-2041 files not shown
+255-2337 files

LLVM/project b787f86clang/lib/Driver/ToolChains Clang.cpp, clang/test/Driver stack-protector-guard.c

Revert "[SystemZ][z/OS] Add support of stack guard on z/OS (#206045)" (#206532)

This reverts commit 7e4c74348e4d4e912db9c103636b37dda3b4b22f.
The test added in the reverted PR fails on
https://lab.llvm.org/buildbot/#/builders/187/builds/21322/steps/7/logs/FAIL__LLVM__zos-stack-protector_ll.
DeltaFile
+0-161llvm/test/CodeGen/SystemZ/zos-stack-protector.ll
+4-17llvm/lib/Target/SystemZ/SystemZInstrInfo.cpp
+0-8clang/test/Driver/stack-protector-guard.c
+0-6clang/lib/Driver/ToolChains/Clang.cpp
+1-2llvm/include/llvm/IR/RuntimeLibcalls.td
+5-1945 files

LLVM/project cd9acdeclang/lib/CIR/CodeGen CIRGenExprConstant.cpp, clang/test/CIR/CodeGen cross-reference-globals.c array.cpp

[CIR] Rewrite `ConstRecordBuilder` to be based on layout (#206137)

Note: this is a pretty sizable change, and for that I apologize.
Fortunately most of it is test changes, and the actual generation code
is fairly managable. Unfortunately this couldn't really get any smaller,
as the individual actual differences (unions, arrays, etc) all cascade.

The existing implementation of the ConstRecordBuilder mirrors the
ConstStructBuilder from classic codegen. In both cases, this is a type
that attempts to do a layout of the record/struct type in a
byte-compatible way with the actual struct layout for the purposes of a
constant.

This has a few problems:

First: it is another layout that we have to keep in sync with the main
one.

Second: it adds an additional layer of complexity to the IR in a way

    [43 lines not shown]
DeltaFile
+308-868clang/lib/CIR/CodeGen/CIRGenExprConstant.cpp
+61-0clang/test/CIR/CodeGen/cross-reference-globals.c
+18-27clang/test/CIR/CodeGenOpenACC/compute-reduction-clause-default-ops.c
+18-23clang/test/CIR/CodeGen/array.cpp
+36-0clang/test/CIR/CodeGen/anonymous-nested-init.c
+36-0clang/test/CIR/CodeGenCXX/base-layout.cpp
+477-91825 files not shown
+716-1,03131 files

LLVM/project 857b0faflang/lib/Optimizer/Dialect FIROps.cpp, flang/test/Fir present-absent-if-fold.fir

[flang][fir] fix fir.if canonicalization pattern from #205353 (#205757)

Address
https://github.com/llvm/llvm-project/pull/205353/files#r3468970484
DeltaFile
+31-0flang/test/Fir/present-absent-if-fold.fir
+5-1flang/lib/Optimizer/Dialect/FIROps.cpp
+36-12 files

FreeNAS/freenas 525d977src/middlewared/middlewared/utils dns.py, tests/unit test_dns.py

Fix
DeltaFile
+79-45tests/unit/test_dns.py
+26-21src/middlewared/middlewared/utils/dns.py
+105-662 files

FreeNAS/freenas 5b06778src/middlewared/middlewared/plugins/truenas_connect heartbeat.py, src/middlewared/middlewared/pytest/unit/plugins test_truenas_connect.py

NAS-140857 / 27.0.0-BETA.1 / Handle TNC license delivery and token states in heartbeat (#19153)

This commit adds changes to read the TNC heartbeat response body so we
can report the system fingerprint and installed license id, install a
license PEM that TNC delivers, and drive token rotation and the terminal
token states off the body fields instead of the old X-New-Token header.
A delivered license is deduped against the one already installed so we
don't reinstall it every beat, and a 205 that carries no license or
token is logged as a TNC fault rather than silently skipped.
DeltaFile
+211-0src/middlewared/middlewared/pytest/unit/plugins/test_truenas_connect.py
+83-34src/middlewared/middlewared/plugins/truenas_connect/heartbeat.py
+294-342 files

LLVM/project bb5c81eclang/docs ReleaseNotes.rst, clang/include/clang/Basic DiagnosticSemaKinds.td

Revert "Diagnose noreturn calls from a const or pure function" (#206523)

Reverts llvm/llvm-project#206134

```
llvm/llvm-project/llvm/lib/Support/APFloat.cpp:4370](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/lib/Support/APFloat.cpp?l=4370&ws=llvm-integration/4563832&snapshot=44):3: error: calling a 'noreturn' function from a function with the 'pure' attribute is undefined behavior [-Werror,-Wnoreturn-const-pure]
 4370 |   llvm_unreachable("didn't find the set bit");
      |   ^
[llvm/llvm-project/llvm/include/llvm/Support/ErrorHandling.h:169](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/include/llvm/Support/ErrorHandling.h?l=169&ws=llvm-integration/4563832&snapshot=44):31: note: expanded from macro 'llvm_unreachable'
  169 | #define llvm_unreachable(msg) LLVM_BUILTIN_UNREACHABLE
      |                               ^
[llvm/llvm-project/llvm/include/llvm/Support/Compiler.h:485](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/include/llvm/Support/Compiler.h?l=485&ws=llvm-integration/4563832&snapshot=44):57: note: expanded from macro 'LLVM_BUILTIN_UNREACHABLE'
  485 | # define LLVM_BUILTIN_UNREACHABLE __builtin_unreachable()
      |                                                         ^
[llvm/llvm-project/llvm/lib/Support/APFloat.cpp:4344](https://cs.corp.google.com/piper///depot/google3/llvm/llvm-project/llvm/lib/Support/APFloat.cpp?l=4344&ws=llvm-integration/4563832&snapshot=44):16: note: function declared 'pure' here
 4344 | int IEEEFloat::getExactLog2Abs() const {
      |                ^
1 error generated.
```
DeltaFile
+1-106clang/test/Sema/attr-const-pure.c
+0-15clang/lib/Sema/SemaChecking.cpp
+0-7clang/include/clang/Basic/DiagnosticSemaKinds.td
+1-3clang/docs/ReleaseNotes.rst
+2-1314 files

LLVM/project bb65ffdmlir/include/mlir-c IR.h, mlir/lib/CAPI/IR IR.cpp

[mlir-c] Add mlirOperationGetParentWithName
DeltaFile
+50-0mlir/test/CAPI/ir.c
+10-0mlir/lib/CAPI/IR/IR.cpp
+6-0mlir/include/mlir-c/IR.h
+66-03 files

OpenBSD/src vPBqB8ousr.bin/tmux style.c tmux.1

   Add link=/nolink to styles to specific a hyperlink. GitHub issue 4280
   from Moritz Angermann.
VersionDeltaFile
1.47+44-6usr.bin/tmux/style.c
1.1113+24-2usr.bin/tmux/tmux.1
1.33+14-2usr.bin/tmux/format-draw.c
1.1380+4-1usr.bin/tmux/tmux.h
1.38+2-1usr.bin/tmux/tty-features.c
+88-125 files

FreeBSD/ports a91a663security/stunnel distinfo Makefile

security/stunnel: Update to 5.79
DeltaFile
+3-3security/stunnel/distinfo
+1-1security/stunnel/Makefile
+4-42 files

LLVM/project 034fe42mlir/include/mlir-c Rewrite.h, mlir/lib/CAPI/Transforms Rewrite.cpp

[mlir-c] Add RewriterBase insertion point save/restore
DeltaFile
+62-0mlir/test/CAPI/rewrite.c
+26-0mlir/lib/CAPI/Transforms/Rewrite.cpp
+19-0mlir/include/mlir-c/Rewrite.h
+107-03 files

LLVM/project e7ce27fllvm/lib/Target/RISCV RISCVInsertVSETVLI.cpp, llvm/test/CodeGen/RISCV/rvv sifive-O0-ATM-ATK.ll sifive-xsfmm-vset-insert.mir

[RISCV] Don't run insertVSETMTK if +xsfmmbase isn't present (#206426)

I'm not familiar with xsfmmbase but IIUC we don't need to run those
passes if the extension isn't present, so this saves some compile time
when the feature isn't enabled.

Some tests were missing the sifive-O0-ATM-ATK.ll extension so I've added
the feature, which caused one of the vsetvlis to turn into a sf.vsettnt
DeltaFile
+5-3llvm/lib/Target/RISCV/RISCVInsertVSETVLI.cpp
+2-2llvm/test/CodeGen/RISCV/rvv/sifive-O0-ATM-ATK.ll
+1-1llvm/test/CodeGen/RISCV/rvv/sifive-xsfmm-vset-insert.mir
+8-63 files

LLVM/project 11332c6libcxx/docs/Status Cxx29Issues.csv, libcxx/include/__iterator move_iterator.h

[libc++] Implement LWG4125: `move_iterator`'s default constructor should be constrained (#206427)

- The default constructor is not yet defaulted as indicated by the
resolution of LWG4125, because the effects of defaulted-ness is not
strictly observable. Also, it's arguable not feasible to use default
member initializer `= _Iter()` because it might cause non-conforming
behavior in pre-C++17 modes, due to lack of guaranteed RVO.
- In the test file, `NoDefaultCtr` is replaced with a proper iterator
type `cpp20_input_iterator<int*>` to make the test more pedantically
conforming.
DeltaFile
+28-11libcxx/test/std/iterators/predef.iterators/move.iterators/move.iter.ops/move.iter.op.const/default.pass.cpp
+2-2libcxx/include/__iterator/move_iterator.h
+1-1libcxx/docs/Status/Cxx29Issues.csv
+31-143 files

FreeNAS/freenas 6e073c7src/middlewared/middlewared/utils dns.py

Fix ruff
DeltaFile
+5-4src/middlewared/middlewared/utils/dns.py
+5-41 files

LLVM/project 65e2b0ellvm/docs/TableGen BackEnds.rst, llvm/include/llvm/TableGen SearchableTable.td

[TableGen] Add support for sparse direct-lookup tables (#201158)

This change is motivated by the recent AMDGPU patch (#200241) where a
sparse direct-lookup table is generated manually to improve VOPD
eligibility lookup. The `GenericTable` only generates a direct lookup
for continuous tables, defaulting to binary search for non-continuous
spaces. This patch extends the `GenericTable` to support sparse tables.
Currently it is implemented as an opt-in feature, however the long-term
vision is to heuristically decide the best lookup scheme. Setting
`DisallowSparseTable = false` opts a table in: TableGen will emit a
sparse array as long as certain conditions are met (key space <= 4K
entries, single primary `bits<>` key, no secondary search indices,
etc.). For example:

```
def VOPDXYTable : GenericTable {
  let FilterClass = "VOPDXY";
  let CppTypeName = "VOPDXYInfo";
  let Fields = ["VOPDXYKey", "IsX", "IsY"];

    [62 lines not shown]
DeltaFile
+96-16llvm/utils/TableGen/SearchableTableEmitter.cpp
+80-4llvm/docs/TableGen/BackEnds.rst
+81-0llvm/test/TableGen/generic-tables.td
+7-0llvm/include/llvm/TableGen/SearchableTable.td
+264-204 files