LLVM/project e60b4b6clang/lib/AST/ByteCode Interp.cpp, clang/test/AST/ByteCode dynamic-cast.cpp

[clang][bytecode] Fix an assertion failure in dynamic_cast handling (#206447)

If `Ptr` is already a root pointer, the `getBase()` call ran into an
assertion. Fix this by moving the check to the start of the loop.
DeltaFile
+14-0clang/test/AST/ByteCode/dynamic-cast.cpp
+3-2clang/lib/AST/ByteCode/Interp.cpp
+17-22 files

LLVM/project 787619allvm/lib/Target/AMDGPU AMDGPULateCodeGenPrepare.cpp, llvm/test/CodeGen/AMDGPU issue196582-late-codegenprepare-crash-non-po2.ll

[AMDGPU] Fix bit-packing condition in LiveRegOptimizer (#201520)

This commit changes the condition for determining the eligibility for
bit-packing in LiveRegOptimizer from requiring that the scalar target
type is larger than the source type to instead require that the target
is a multiple of it.

Fixes https://github.com/llvm/llvm-project/issues/196582.

---------

Signed-off-by: Steffen Holst Larsen <sholstla at amd.com>
DeltaFile
+25-0llvm/test/CodeGen/AMDGPU/issue196582-late-codegenprepare-crash-non-po2.ll
+3-3llvm/lib/Target/AMDGPU/AMDGPULateCodeGenPrepare.cpp
+28-32 files

LLVM/project cf1f0e9libcxx/include/__ranges adjacent_view.h, libcxx/test/libcxx/ranges/range.adaptors/range.adjacent nodiscard.verify.cpp

[libc++][ranges] Applied [[nodiscard]] to `adjacent_view` (#205206)

[[nodiscard]] should be applied to functions where discarding the return
value is most likely a correctness issue.

- https://libcxx.llvm.org/CodingGuidelines.html
- https://wg21.link/range.adjacent

Towards https://github.com/llvm/llvm-project/issues/172124

---------

Co-authored-by: A. Jiang <de34 at live.cn>
Co-authored-by: Hristo Hristov <zingam at outlook.com>
DeltaFile
+91-0libcxx/test/libcxx/ranges/range.adaptors/range.adjacent/nodiscard.verify.cpp
+19-18libcxx/include/__ranges/adjacent_view.h
+110-182 files

FreeBSD/ports 334aa3amath/py-cypari2 Makefile

math/py-cypari2: chase cython-3.12
DeltaFile
+1-0math/py-cypari2/Makefile
+1-01 files

FreeBSD/ports 0f3d887devel/py-cysignals distinfo Makefile

devel/py-cysignals: upgrade to 1.12.6

Release notes at https://github.com/sagemath/cysignals/releases/tag/1.12.6
DeltaFile
+3-3devel/py-cysignals/distinfo
+3-2devel/py-cysignals/Makefile
+6-52 files

FreeBSD/ports e870438math/py-primecountpy Makefile

math/py-primecountpy: chase cython-3.12
DeltaFile
+2-0math/py-primecountpy/Makefile
+2-01 files

OPNSense/core e04d5d3src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt

firewall: nat: enable virtualDOM here as well

(cherry picked from commit d61ff02165535f90e7444940c7f1844e43cdf899)
DeltaFile
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-01 files

LLVM/project acd0f6fcompiler-rt/include/sanitizer safestack_interface.h, compiler-rt/lib/safestack safestack.cpp

[SafeStack] Allocate unsafe sigaltstack (#206463)

PR https://github.com/llvm/llvm-project/pull/196969 was approved and
merged but with `spr` the wrong base branch was set.

This merges the approved changes into `main`

---------

Co-authored-by: Paul Walker <paul.walker at arm.com>
Co-authored-by: Arseniy Obolenskiy <arseniy.obolenskiy at amd.com>
DeltaFile
+70-0compiler-rt/lib/safestack/safestack.cpp
+20-0compiler-rt/test/safestack/sigaltstack.c
+15-0compiler-rt/include/sanitizer/safestack_interface.h
+105-03 files

LLVM/project 7d409e7llvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp

clang-format
DeltaFile
+7-3llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+7-31 files

LLVM/project daf2e3allvm/lib/Target/AMDGPU SIInsertWaitcnts.cpp AMDGPUHWEvents.cpp

[RFC][SIInsertWaitCnts] Remove VMemTypes

This can be considered a RFC. I'd personally like to get rid of VMEMTypes
but I don't know if anyone feels strongly that they should be kept.

My motivation for removing VMemTypes is simple: They are just a repeat
of VMEM events, just under a different name, and messier (defined as a
basic enum but actually stored as a bitmask later). It's just confusing.

This patch eliminates the need for them by:

- Adding a new entrypoint in AMDGPUHWEvents to get the basic set of
  VMEM events issued by a VMEM Instruction.
- Set BVH/SAMPLER events irrespective of whether the HW can track them.
  These events exist anyway, it should be up to InsertWaitCnt to deal with them
  properly (which is easy, only `counterOutOfOrder` needed work).
- Tracking an additional set of per-VGPR "PendingEvents" which is
  set using the "basic set of VMEM events" and cleared as needed.


    [3 lines not shown]
DeltaFile
+33-54llvm/lib/Target/AMDGPU/SIInsertWaitcnts.cpp
+7-6llvm/lib/Target/AMDGPU/AMDGPUHWEvents.cpp
+11-0llvm/lib/Target/AMDGPU/AMDGPUHWEvents.h
+51-603 files

LLVM/project 5d24d4fllvm/test/CodeGen/AMDGPU mixed-vmem-types.ll waitcnt-bvh.mir

[AMDGPU][InsertWaitCnts] Improve testing coverage for VMemTypes (#206439)

The next patch will get rid of VMEMTypes, but some of its functionality
was not tested well. This patch adds more tests to fix gaps in testing
so that the next patch in the stack can be shown to have no impact
on codegen.

The 2 issues I had noticed was that we didn't have a test for mixed
vmem types w/ BVH, only for sampler; we also did not have a test
that was affected by `clearVmemTypes`, so removing that call
had no effect.

This patch adds tests for both cases.
DeltaFile
+241-4llvm/test/CodeGen/AMDGPU/mixed-vmem-types.ll
+8-0llvm/test/CodeGen/AMDGPU/waitcnt-bvh.mir
+249-42 files

OPNSense/core d61ff02src/opnsense/mvc/app/views/OPNsense/Firewall nat_rule.volt

firewall: nat: enable virtualDOM here as well
DeltaFile
+1-0src/opnsense/mvc/app/views/OPNsense/Firewall/nat_rule.volt
+1-01 files

OpenBSD/ports QmLZfZFtextproc/py-lxml distinfo Makefile

   update to py3-lxml-6.1.1
VersionDeltaFile
1.25+2-2textproc/py-lxml/distinfo
1.64+1-1textproc/py-lxml/Makefile
+3-32 files

FreeNAS/freenas 62872ecsrc/middlewared/middlewared/plugins/truenas_connect heartbeat.py, src/middlewared/middlewared/pytest/unit/plugins test_truenas_connect.py

Handle TNC license delivery and token states in heartbeat

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
+238-0src/middlewared/middlewared/pytest/unit/plugins/test_truenas_connect.py
+90-34src/middlewared/middlewared/plugins/truenas_connect/heartbeat.py
+328-342 files

LLVM/project f97113across-project-tests/debuginfo-tests/dexter Script.md, cross-project-tests/debuginfo-tests/dexter-tests global-constant.cpp

review comments
DeltaFile
+2-1cross-project-tests/debuginfo-tests/dexter-tests/global-constant.cpp
+2-0cross-project-tests/debuginfo-tests/dexter/Script.md
+4-12 files

LLVM/project 01ba354cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb LLDB.py

Remove all tags that LLDB may add
DeltaFile
+5-2cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
+5-21 files

LLVM/project 286bd14cross-project-tests/debuginfo-tests/dexter-tests optnone-vectors-and-functions.cpp optnone-struct-and-methods.cpp, cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio VisualStudio.py

[Dexter] Switch to using script-mode by default

This patch changes the default mode of Dexter from heuristic-mode to
script-mode. The --use-script argument is replaced with --use-heuristic,
some comments/docs/error messages are updated accordingly, and tests have
their flags switched accordingly.
DeltaFile
+2-6cross-project-tests/debuginfo-tests/dexter/dex/debugger/visualstudio/VisualStudio.py
+3-4cross-project-tests/debuginfo-tests/dexter/feature_tests/subtools/view.cpp
+3-3cross-project-tests/debuginfo-tests/dexter/dex/tools/test/Tool.py
+2-2cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
+2-2cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
+2-2cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
+14-19168 files not shown
+188-208174 files

LLVM/project 9276305cross-project-tests/debuginfo-tests/dexter-tests optnone-loops.cpp vla.c, cross-project-tests/debuginfo-tests/dexter-tests/memvars unused-merged-value.c ptr-to.c

Address review comments, format
DeltaFile
+46-40cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
+11-9cross-project-tests/debuginfo-tests/dexter-tests/memvars/unused-merged-value.c
+4-10cross-project-tests/debuginfo-tests/dexter-tests/memvars/ptr-to.c
+2-3cross-project-tests/debuginfo-tests/dexter-tests/vla.c
+3-2cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
+2-1cross-project-tests/debuginfo-tests/dexter-tests/memvars/implicit-ptr.c
+68-6512 files not shown
+90-7718 files

LLVM/project 9884f2across-project-tests/debuginfo-tests/dexter-tests optnone-loops.cpp optnone-fastmath.cpp, cross-project-tests/debuginfo-tests/dexter-tests/memvars ctrl-flow.c inlining.c

Apply clang-format within reason
DeltaFile
+9-15cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
+5-5cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
+3-3cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
+2-2cross-project-tests/debuginfo-tests/dexter-tests/memvars/ctrl-flow.c
+2-2cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining.c
+2-2cross-project-tests/debuginfo-tests/dexter-tests/memvars/loop.c
+23-297 files not shown
+29-3813 files

LLVM/project 5fd22b8cross-project-tests/debuginfo-tests/dexter-tests optnone-vectors-and-functions.cpp optnone-simple-functions.cpp, cross-project-tests/debuginfo-tests/dexter-tests/memvars inlining-dse.c

[Dexter] Update lldb-based dexter-tests to use script-mode

This patch replaces uses of heuristic-mode Dexter in the dexter-tests suite
with uses of the script-mode, for tests that use DAP (via lldb-dap). The
updates are largely straightforward but occasionally non-trivial, and in
some cases some slight modifications have been made to keep the "spirit" of
the test intact.
DeltaFile
+93-73cross-project-tests/debuginfo-tests/dexter-tests/optnone-vectors-and-functions.cpp
+98-51cross-project-tests/debuginfo-tests/dexter-tests/optnone-simple-functions.cpp
+68-54cross-project-tests/debuginfo-tests/dexter-tests/optnone-loops.cpp
+57-33cross-project-tests/debuginfo-tests/dexter-tests/optnone-fastmath.cpp
+30-19cross-project-tests/debuginfo-tests/dexter-tests/optnone-struct-and-methods.cpp
+19-22cross-project-tests/debuginfo-tests/dexter-tests/memvars/inlining-dse.c
+365-25221 files not shown
+669-39227 files

LLVM/project 895a3f4cross-project-tests/debuginfo-tests/dexter README.md Heuristic.md

[Dexter] Document the structured script model

This patch adds documentation for the script model to the Dexter README,
shunting heuristic-mode information into a separate doc, creating a new
doc for script-mode, and linking to both (with a brief summary of the
differences) from the base README.
DeltaFile
+6-232cross-project-tests/debuginfo-tests/dexter/README.md
+231-0cross-project-tests/debuginfo-tests/dexter/Heuristic.md
+213-0cross-project-tests/debuginfo-tests/dexter/Script.md
+450-2323 files

LLVM/project 76d4c85cross-project-tests/debuginfo-tests/dexter/dex/evaluation ExpectMatch.py, cross-project-tests/debuginfo-tests/dexter/dex/test_script Nodes.py

[Dexter] Add ability to check float values within a range

Adds a new node type, !float, which can be used to match debugger ouptut as
float values rather than as strings, optionally allowing a range to be
specified for inexact matches. This new node allows a list of values to be
given, effectively a shorthand for a list of individual !float nodes.
DeltaFile
+109-1cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
+68-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
+12-1cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
+189-23 files

LLVM/project 28b0ac3cross-project-tests/debuginfo-tests/dexter Script.md

Address various review comments
DeltaFile
+21-20cross-project-tests/debuginfo-tests/dexter/Script.md
+21-201 files

LLVM/project 5c97ae5cross-project-tests/debuginfo-tests/dexter/dex/evaluation Metrics.py

Add irretrievable metric
DeltaFile
+5-0cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
+5-01 files

LLVM/project 82f6a97cross-project-tests/debuginfo-tests/dexter/dex/evaluation Metrics.py

backport: add optimized out metric
DeltaFile
+7-1cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
+7-11 files

LLVM/project afcb409cross-project-tests/debuginfo-tests/dexter/dex/test_script Nodes.py, cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts floats.cpp

Address review comments: extend docs, add test comment
DeltaFile
+7-7cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/floats.cpp
+2-1cross-project-tests/debuginfo-tests/dexter/dex/test_script/Nodes.py
+9-82 files

LLVM/project 1f6de02cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb LLDB.py, cross-project-tests/debuginfo-tests/dexter/dex/evaluation Metrics.py

format
DeltaFile
+6-2cross-project-tests/debuginfo-tests/dexter/dex/evaluation/Metrics.py
+1-1cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
+7-32 files

LLVM/project e206673cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb LLDB.py

Fix: Account for weird function name endings in lldb-dap
DeltaFile
+5-0cross-project-tests/debuginfo-tests/dexter/dex/debugger/lldb/LLDB.py
+5-01 files

LLVM/project 26a1cedcross-project-tests/debuginfo-tests/dexter/dex/evaluation ExpectMatch.py

Add a comment
DeltaFile
+3-0cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
+3-01 files

LLVM/project 8e19905cross-project-tests/debuginfo-tests/dexter/dex/evaluation ExpectMatch.py, cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation eval_sublist_aggregates.cpp eval_sublist_aggregates_addresses.cpp

[Dexter] Allow matching lists of values for aggregate members

This patch slightly extends the matching of aggregate members to allow for
lists of expected values for individual members, functioning the same as
lists of expected values for scalar values.
DeltaFile
+136-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates.cpp
+54-0cross-project-tests/debuginfo-tests/dexter/feature_tests/scripts/evaluation/eval_sublist_aggregates_addresses.cpp
+8-4cross-project-tests/debuginfo-tests/dexter/dex/evaluation/ExpectMatch.py
+198-43 files