LLVM/project 7e7d9dclldb Maintainers.md

[lldb] Nominate John Harrison and Ebuka Ezike as lldb-dap maintainers (#175031)

As the lead maintainer, I've been asked by the project council to
confirm that we have an up-to-date list of active maintainers for LLDB.

In light of that, I'd like to nominate Ebuka and John as lldb-dap
maintainer and replace Greg, who hasn't been active in this area
recently. I did not move Greg to "former maintainer" as he's still
listed for other components.

As a reminder, our community policies regarding the responsibilities of
maintainers can be found here:
https://llvm.org/docs/DeveloperPolicy.html#maintainers.
DeltaFile
+6-3lldb/Maintainers.md
+6-31 files

LLVM/project 4191b0clldb/source/Plugins/Platform/WebAssembly PlatformWasmRemoteGDBServer.h PlatformWasm.cpp, lldb/source/Plugins/Platform/gdb-server PlatformRemoteGDBServer.cpp PlatformRemoteGDBServer.h

[lldb] Make PlatformWasm a RemoteAwarePlatform (#175263)

This PR makes `PlatformWasm` a `RemoteAwarePlatform` that can connect to
a remote GDB platform server. `PlatformWasmRemoteGDBServer` inherits
from `PlatformRemoteGDBServer`, with the only difference that it picks
the correct Process plugin when launching and attaching. The approach is
identical to the one taken by `PlatformAndroid`.

The context is that we're working on a platform based approach for
discovering and attaching Wasm processes running under JSC with the
[newly added debugging
support](https://github.com/WebKit/WebKit/pull/51462).
DeltaFile
+33-0lldb/source/Plugins/Platform/WebAssembly/PlatformWasmRemoteGDBServer.h
+27-0lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.cpp
+5-17lldb/source/Plugins/Platform/WebAssembly/PlatformWasm.h
+18-0lldb/source/Plugins/Platform/WebAssembly/PlatformWasmRemoteGDBServer.cpp
+4-3lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.cpp
+4-0lldb/source/Plugins/Platform/gdb-server/PlatformRemoteGDBServer.h
+91-201 files not shown
+92-207 files

LLVM/project 619a9c1mlir/include/mlir/Bindings/Python IRCore.h NanobindUtils.h, mlir/lib/Bindings/Python IRCore.cpp

[mlir][Python] downcast Value to BlockArgument or OpResult (#175264)

This PR adds "downcasting" of `ir.Value` to either `BlockArgument` or
`OpResult` (and then potentially further down if a user-registered
"value caster" exists). Also this PR changes `__str__` to return the
correct thing (`OpResult(...)` or `BlockArgument(...)` instead of
generic `Value(...)`).
DeltaFile
+43-27mlir/test/python/ir/value.py
+30-31mlir/lib/Bindings/Python/IRCore.cpp
+13-1mlir/include/mlir/Bindings/Python/IRCore.h
+4-4mlir/test/python/dialects/python_test.py
+1-1mlir/test/python/dialects/ub.py
+1-1mlir/include/mlir/Bindings/Python/NanobindUtils.h
+92-653 files not shown
+95-679 files

FreeBSD/src e25aedblib/libgeom geom_xml2tree.c

libgeom: Fix 32-bit gcc build

MFC after:      1 week
Fixes:          27894e20f140 ("libgeom: Fix segfault in 32-on-64 case")

(cherry picked from commit 17355cf50fcbd0d8ddb638e1f2fd5861b526edbe)
DeltaFile
+5-2lib/libgeom/geom_xml2tree.c
+5-21 files

FreeBSD/src 08e7bdalib/libgeom geom_xml2tree.c

libgeom: Fix segfault in 32-on-64 case

We were using strtoul() to parse object identifiers, which are kernel
pointers.  This works fine as long as the kernel and userland match,
but in a 32-bit libgeom on a 64-bit kernel this will return ULONG_MAX
for all objects, resulting in memory corruption when we later pick the
wrong object while resolving consumer-producer references.

MFC after:      1 week
PR:             292127
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D54452

(cherry picked from commit 27894e20f140ee2729c14b589035870c8185b87d)
DeltaFile
+2-2lib/libgeom/geom_xml2tree.c
+2-21 files

FreeBSD/src 4b6cab4lib/libgeom geom_xml2tree.c libgeom.h

libgeom: Clean up xml2tree code

MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D54453

(cherry picked from commit fad6707e2589d8557ceb6b6bf11f22323b265f01)
DeltaFile
+51-49lib/libgeom/geom_xml2tree.c
+1-1lib/libgeom/libgeom.h
+52-502 files

FreeBSD/src fba2421lib/libgeom geom_xml2tree.c

libgeom: Improve type safety of xml2tree code

When resolving references, assert that the type of the object we find
is what we expect.  This will help prevent memory corruption if two
objects of different types somehow end up with the same identifier.

MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D54454

(cherry picked from commit 4b0d5d1d6a7c9773e38882feb4747a76b37a645c)
DeltaFile
+44-10lib/libgeom/geom_xml2tree.c
+44-101 files

FreeBSD/src d97fa8etools/build depend-cleanup.sh

depend-cleanup.sh: Reduce repetition

MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D54329

(cherry picked from commit aa611fa7e835ae77a623cc6d05020f5ee76dc881)
DeltaFile
+11-9tools/build/depend-cleanup.sh
+11-91 files

FreeBSD/src 6eea426sys/compat/linuxkpi/common/include/linux kstrtox.h

linuxkpi: Correct kstrtobool

Implement the exact same logic as in Linux:

* Accept 'e', 't', 'y', '1', "on" for true.

* Accept 'd', 'f', 'n', '0', "of" for false.

* Disregard any characters beyond that.

* Check that the string is not null, but don't check the result pointer.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Sponsored by:   NetApp, Inc.
Reviewed by:    bz, emaste
Differential Revision:  https://reviews.freebsd.org/D54451

(cherry picked from commit f86148d2777d4d7985ed8f4ae957c41c44bd2484)
DeltaFile
+5-11sys/compat/linuxkpi/common/include/linux/kstrtox.h
+5-111 files

FreeBSD/src 5048c5d. Makefile.inc1, share/man/man5 src.conf.5

depend-cleanup: Force a clean build when options change

Similar to the build epoch check, cache a list of source options in the
object tree, and force a clean build if the cached list does not match
the current list, after filtering out options which are known not to
affect the build (e.g. CLEAN, TESTS, WARNS).

This also adds a DEPEND_CLEANUP option (which defaults to yes unless
the CLEAN option is set) which can be used to skip depend-cleanup for
faster incremental builds.

MFC after:      1 week
Reviewed by:    imp
Differential Revision:  https://reviews.freebsd.org/D52011

(cherry picked from commit 1d52d5c5372a43655a252880d34088fa56aa2530)
DeltaFile
+51-10tools/build/depend-cleanup.sh
+14-0share/man/man5/src.conf.5
+4-2Makefile.inc1
+5-0tools/build/options/WITHOUT_DEPEND_CLEANUP
+5-0share/mk/src.opts.mk
+79-125 files

FreeBSD/src de92f1bsys/compat/linuxkpi/common/include/linux kstrtox.h

linuxkpi: Don't clobber result on failure

In kstrto*(), don't assign to *res until we know the conversion is
successful, and address issues that may result in warnings if code
that uses <linux/kstrtox.h> is compiled at high warning levels.

MFC after:      1 week
Sponsored by:   Klara, Inc.
Sponsored by:   NetApp, Inc.
Reviewed by:    bz, emaste
Differential Revision:  https://reviews.freebsd.org/D54440

(cherry picked from commit 3542d60fb8042474f66fbf2d779ed8c5a80d0f78)
DeltaFile
+30-13sys/compat/linuxkpi/common/include/linux/kstrtox.h
+30-131 files

LLVM/project 7533aafllvm/lib/Support KnownFPClass.cpp

Merge KnownFPClass::fadd_self fix
DeltaFile
+3-3llvm/lib/Support/KnownFPClass.cpp
+3-31 files

LLVM/project 5de1fc4llvm/lib/Support KnownFPClass.cpp

merge fadd_self fix
DeltaFile
+6-2llvm/lib/Support/KnownFPClass.cpp
+6-21 files

LLVM/project 0732f1bllvm/test/Transforms/InstCombine simplify-demanded-fpclass-fadd.ll

generate checks
DeltaFile
+37-49llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
+37-491 files

LLVM/project 47910d6llvm/lib/Target/RISCV RISCVMergeBaseOffset.cpp, llvm/test/CodeGen/RISCV hoist-global-addr-base.ll

[RISCV] Detect QC_E_ADDAI and fold in RISCVMergeBaseOffset (#175496)

DeltaFile
+2-1llvm/lib/Target/RISCV/RISCVMergeBaseOffset.cpp
+1-2llvm/test/CodeGen/RISCV/hoist-global-addr-base.ll
+3-32 files

FreeBSD/src b0c2236usr.sbin/etcupdate/tests conflicts_test.sh tests_test.sh

etcupdate: tests: Fix tests

Fix test login.conf files and update their MD5 checksums.

PR:             291649
Reviewed by:    imp
Fixes:          54ce6b2c4c16 ("login.conf.5: Remove mention of login copyright setting")
Pull Request:   https://github.com/freebsd/freebsd-src/pull/1962
DeltaFile
+3-2usr.sbin/etcupdate/tests/conflicts_test.sh
+2-1usr.sbin/etcupdate/tests/tests_test.sh
+5-32 files

LLVM/project effa813mlir/cmake/modules AddMLIRPython.cmake

[mlir][Python] don't build libnanobind if module only has "pure" sources (#175090)

Like IREE's
[`IREECompilerBuildPythonModules`](https://github.com/iree-org/iree/blob/47fe908217caef04be21608cfcf45d44410f8dad/compiler/bindings/python/CMakeLists.txt#L300-L305).
Note, setting `MLIR_BINDINGS_PYTHON_NB_DOMAIN` on
`add_mlir_python_modules` explicitly would also workaround issues
related to this (and is generally recommended for projects building
multiple bindings packages).

---------

Co-authored-by: Rahul Kayaith <rkayaith at amd.com>
DeltaFile
+21-7mlir/cmake/modules/AddMLIRPython.cmake
+21-71 files

LLVM/project a705598mlir/test/python/ir value.py

address comment
DeltaFile
+1-0mlir/test/python/ir/value.py
+1-01 files

LLVM/project 7676471llvm/lib/Support UnicodeNameToCodepointGenerated.cpp UnicodeNameToCodepoint.cpp, llvm/utils/UnicodeData UnicodeNameMappingGenerator.cpp

[Support][NFC] Make unicode tables constant (#175573)

There's no reason that these large tables are mutable.
DeltaFile
+5-5llvm/utils/UnicodeData/UnicodeNameMappingGenerator.cpp
+5-5llvm/lib/Support/UnicodeNameToCodepointGenerated.cpp
+2-2llvm/lib/Support/UnicodeNameToCodepoint.cpp
+12-123 files

LLVM/project e69657cllvm/lib/Target/RISCV RISCVFrameLowering.cpp

used RISCV::NoSubRegister instead of 0.
DeltaFile
+10-7llvm/lib/Target/RISCV/RISCVFrameLowering.cpp
+10-71 files

LLVM/project 80c4e9cllvm/lib/Support KnownFPClass.cpp

Fix bug fadd_self
DeltaFile
+1-2llvm/lib/Support/KnownFPClass.cpp
+1-21 files

LLVM/project ed0839cllvm/lib/Support KnownFPClass.cpp

Fix fadd self
DeltaFile
+0-2llvm/lib/Support/KnownFPClass.cpp
+0-21 files

LLVM/project 137267allvm/include/llvm/ADT FloatingPointMode.h, llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp

DAZ is painful
DeltaFile
+16-2llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+17-0llvm/include/llvm/ADT/FloatingPointMode.h
+33-22 files

LLVM/project 0d44636llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp

nan suggestion
DeltaFile
+2-2llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+2-21 files

LLVM/project ad38c39llvm/include/llvm/Support CommandLine.h

[Support][NFC] Drop unnecessary default lambdas (#175577)

These lambdas must be instantiated and code-generated in multiple CUs;
instead use the null/default state of std::function as default state.

Very minor compile-time improvement of Clang/LLVM.
DeltaFile
+13-11llvm/include/llvm/Support/CommandLine.h
+13-111 files

LLVM/project af5e0a5llvm/include/llvm/Support KnownFPClass.h, llvm/lib/Support KnownFPClass.cpp

InstCombine: Handle fadd in SimplifyDemandedFPClass

Note some of the tests currently fail with alive, but not
due to this patch. Namely, when performing the fadd x, 0 -> x
simplification in functions with non-IEEE denormal handling.
The existing instsimplify ignores the denormals-are-zero hazard by
checking cannotBeNegativeZero instead of isKnownNeverLogicalZero.

Also note the self handling doesn't really do anything yet, other
than propagate consistent known-fpclass information until there is
multiple use support.

This also leaves behind the original ValueTracking support, without
switching to the new KnownFPClass:fadd utility. This will be easier
to clean up after the subsequent fsub support patch.
DeltaFile
+60-86llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
+99-0llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+42-0llvm/lib/Support/KnownFPClass.cpp
+10-0llvm/include/llvm/Support/KnownFPClass.h
+211-864 files

LLVM/project 39268a9llvm/lib/Support KnownFPClass.cpp

Update port of fadd_self logic
DeltaFile
+4-1llvm/lib/Support/KnownFPClass.cpp
+4-11 files

LLVM/project cd34244llvm/test/Transforms/InstCombine simplify-demanded-fpclass-fadd.ll

InstCombine: Add baseline tests for fadd SimplifyDemandedFPClass handling
DeltaFile
+2,067-0llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-fadd.ll
+2,067-01 files

LLVM/project 2cfa9b2llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass.ll

InstCombine: SimplifyDemandedFPClass multiple use support for select (#175548)

DeltaFile
+56-6llvm/test/Transforms/InstCombine/simplify-demanded-fpclass.ll
+27-1llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+83-72 files

LLVM/project 1aa5f28llvm/lib/Transforms/InstCombine InstCombineSimplifyDemanded.cpp, llvm/test/Transforms/InstCombine simplify-demanded-fpclass-minimum.ll simplify-demanded-fpclass-minimumnum.ll

InstCombine: Improve SimplifyDemandedFPClass min/max handling

Refine handling of minimum/maximum and minimumnum/maximumnum. The
previous folds to input were based on sign bit checks. This was too
conservative with 0s. This can now consider -0 as less than or equal
to +0 as appropriate, account for nsz. It additionally can handle
cases like one half is known positive normal and the other subnormal.
DeltaFile
+32-61llvm/lib/Transforms/InstCombine/InstCombineSimplifyDemanded.cpp
+23-58llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimum.ll
+22-52llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-minimumnum.ll
+23-46llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximumnum.ll
+22-44llvm/test/Transforms/InstCombine/simplify-demanded-fpclass-maximum.ll
+122-2615 files