[libc] Remove duplicate clang-tidy pass in object rules (#231078)
Entrypoint object linting ran clang-tidy a second time with
--system-headers to run llvmlibc-restrict-system-libc-headers.
This check is already covered by libc/src/.clang-tidy in the primary
invocation. The second pass doubled lint execution time and passed a
host resource directory that could conflict with the linter.
Remove the second invocation and rely on the primary pass.
Assisted-by: Automated tooling, human reviewed.
TableGen: Emit GlobalISel combiner apply roots in a deterministic order
Rules with more than one apply root emitted them in an order that
depended on pointer values, so the generated combiners for AArch64,
AMDGPU and RISC-V changed between runs. Use a SetVector instead of a
DenseSet.
Co-authored-by: Claude Opus 5.5 <noreply at anthropic.com>
[SPIR-V] Fix crash on PHI operands in SPIRVModuleAnalysis requirements (#231186)
Get operand types from the global registry instead of reading operand 1
of the defining instruction, which is not a type for a PHI since #229736
Fixes #231171
[libc] Files now flush on exit (#230215)
The C standard specifies that when the `exit` function is called, all
open files are flushed. This PR refactors the platform specific fflush
code
into an internal function called by the public entrypoint so that it can
be
called on exit.
Also adds `LIBC_CONF_EXIT_FLUSH_STREAMS` to disable flushing on
exit for systems with no FILE support.
Fixes: #219219
Assisted-by: Automated tooling, human reviewed
[RISCV][P-ext] Add cls, srx, and slx C intrinsics. (#230688)
These can use existing builtins so don't require any backend changes or
IR intrinsics.
Assisted-by: Claude
[test][msan] Pin release_origin.c to a single CPU on Linux (#231058)
Pin the test to a single CPU to avoid flaky /proc/self/statm RSS
readings on
machines with many CPUs and large page sizes (such as ppc64le).
Assisted-by: Gemini
Revert "net/libmodbus: [NEW PORT] Modbus TCP/RTU library for industrial communications"
* This is the duplicate of comms/libmodbus
This reverts commit 6479175b5c5c80fd1b9912cc30d925ec16b76af7.
PR: 299193
databases/mysql267-{server|client}: Add New Port
Welcome MySQL 26.7
MySQL switched to calendar versioning (YY.M) after the 9.7 LTS series,
so 26.7.0 is the first Innovation release after 9.7; there is no 9.8.
What is new in MySQL 26.7:
https://dev.mysql.com/doc/relnotes/mysql/26.7/en/news-26-7-0.html
Compared to mysql97:
- Drop patches for backup_page_tracker.cc and stdx/filesystem.cc,
merged upstream
- Add a missing <time.h> include to mgmapi.h, needed for the new
time_t member of ndb_mgm_cert_table
- Build as C++23 like upstream and drop USE_CXXSTD=c++20
- Drop -malign-double, an i386 workaround while i386 is excluded
- Drop WITH_BOOST, boost is bundled under extra/boost now
- Drop -DWITH_xxx=system already covered by WITH_SYSTEM_LIBS
[6 lines not shown]
[SupportTests] Ignore STATUS_DLL_NOT_FOUND errors with MSVC (#230726)
When the unittests are linked with LLVM.dll, the
TestExecuteEmptyEnvironment fails because there are no library paths to
search. There was already a workaround for this issue on MINGW, and this
patch just extends it to work in MSVC mode environments too.
vr(4): reinitialize device when rx engine fails to go to the idle state.
When detecting root via NFS, DHCP timed out on some boots.
Investigation showed that in certain cases RX engine was getting stuck,
likely triggered by an ARP frame arriving before driver handled a link up
state.
NFS boot's RARP fallback was calling media up command, triggering
reinitialization and forced reset, restoring the device state.
Since fallback doesn't set the IP address, NFS boot failed,
requesting to prompt root device again.
Subsequent attempt succeeded since device was reinitialized
by the RARP fallback, but manual input was required.
The fix always verifies successful rx/tx engine shutdown in vr_mii_statchg(),
even when state is active and media link is up.
In case it fails, device reinitialization is initiated, allowing DHCP process
to succeed.
[5 lines not shown]
pamtester: Avoid harmful -Werror
Using -Werror is usually not okay in pkgsrc and too much out of control.
In particular, the PAM_CONV_CONST test that checks if the second
argument of pam_conv.conv() takes const pointer failed on NetBSD
because in the test the variable "c" was not used.
Now the package install cleanly on NetBSD.
perf(AMDGPU): fold extended boolean AND/OR
Accept ANY_EXTEND in the AND-to-select combine and add the matching
OR fold. Guard OR folds for shared extensions and uniform conditions
to avoid code-size regressions.
[Attributor] Skip the dead-internal-function walk for AAs that will not be updated (#227187)
AAIsDeadFunction::initialize calls isAssumedDeadInternalFunction, which
runs checkForAllCallSites and so creates an AAIsDead for every internal
caller, each of which repeats the walk. Initialization therefore
recurses through the whole cone of internal callers.
When the AA will not be updated (outside of deduction, or for a function
the Attributor is not run on), getOrCreateAAFor fixes it pessimistically
right after initialize returns, discarding the walk's result. Skip the
walk in that case and assume the entry block live.
This is the dominant cost of the CGSCC OpenMPOpt pass, whose cleanupIR
queries the liveness of callers outside the current SCC on every SCC,
giving (#SCCs) x (depth of the internal caller chain). #222226 removed
the callee-seeding half of this cost; this removes the walk itself.
* The cleanup-no-seeding.ll change drops a debug check that only the
removed walk printed.
[30 lines not shown]
pamtester: Import pamtester-0.1.2 as wip/pamtester
pamtester is a tiny program to test the pluggable authentication modules (PAM)
facility, which is a defacto mechanism for authentication management in many
unices and similar OSes including Solaris, HP-UX, *BSD, MacOSX and Linux.
While specifically designed to help PAM module authors to test their modules,
that might also be useful for system administrators interested in building a
centralised authentication system using common standards such as NIS, SASL and
LDAP.
Still does not build, see TODO.
[BOLT] Handle the indexed DWARF address forms by class (#227591)
DWARF's address class covers DW_FORM_addr plus DW_FORM_addrx,
addrx1 through addrx4 and DW_FORM_GNU_addr_index, where the
indexed ones store an index into .debug_addr rather than the
address itself. Several places enumerated a subset of those
forms instead of testing the class, so addrx1 through addrx4
took wrong code path.
The local getHighPC() helper compared against DW_FORM_addr
alone, so every indexed form was read as an offset, yielding
"LowPC + index". It also never resolved an index at all,
unlike the getLowPC() directly above it.
Add isAddressForm() and isIndexedAddressForm(), and route all
of the above through them. getHighPC() now takes a DWARFUnit
argument so it can resolve an index through .debug_addr the
way getLowPC() does.
[15 lines not shown]