Use truenas-discovery service
This commit replaces avahi, wsdd, and netbios services with a
unified truenas-discovery service. This simplifies the middleware
implementation of these services. Tests are adjusted so that we
have more direct testing that middleware configuration changes
are reflected in the in-memory running configuration of the
truenas-discoveryd daemon. During testing / validation I
discovered that there were some escape avenues whereby the
configuration may not be properly reloaded after netbios name
or workgroup changes.
(cherry picked from commit 509ea9d1256d707185f1fb18d30410fef0ef2684)
NAS-140780 / 27.0.0-BETA.1 / Use truenas-discovery service (#18801)
This commit replaces avahi, wsdd, and netbios services with a unified
truenas-discovery service. This simplifies the middleware implementation
of these services. Tests are adjusted so that we have more direct
testing that middleware configuration changes are reflected in the
in-memory running configuration of the truenas-discoveryd daemon. During
testing / validation I discovered that there were some escape avenues
whereby the configuration may not be properly reloaded after netbios
name or workgroup changes.
[AMDGPU][MC] Allow the nolds modifier (#185129)
Some pre-GFX11 buffer_load instructions have two variants: one
requires the lds modifier and one does not allow lds. For the latter
allow nolds to be used.
[llvm] Implement the BPF ABI (#194031)
Implements BPFTargetInfo, the first target-specific ABI lowering for the
LLVM ABI library introduced in #158329.
BPFTargetInfo mirrors the BPF ABI rules currently encoded in
`clang::BPFABIInfo` (clang/lib/CodeGen/Targets/BPF.cpp), but operates
entirely on `llvm::abi` types, keeping the logic frontend-independent:
- Empty aggregates and void returns are ignored
- Aggregates ≤64 bits are coerced to an aligned integer type
- Aggregates 65–128 bits are coerced to [2 x i64]
- Aggregates >128 bits and oversized _BitInt types are passed/returned
indirectly
- Promotable integers are sign/zero extended
- All aggregate returns are indirect
Also adds the `createBPFTargetInfo` factory function declaration to
TargetInfo.h.
[clang] Add constant evaluation support for CK_ToUnion. (#193370)
Implementation is heavily based on the evaluation code for initializer
lists, but it's different enough that I couldn't figure out a good way
to share the code.
This fixes one of the few remaining gaps where CodeGen can
constant-evaluate a value which AST can't evaluate.
[NFC][MLIR] Use `getIntrinsicSignature` to verify overloaded intrinsics (#194035)
`getIntrinsicSignature` internally handles the decoding of the IIT table
and running the match, which is what this code is doing. So, use that
instead of manually doing what `getIntrinsicSignature` does.
[NFC][NSAN] Use `getIntrinsicSignature` instead of `matchIntrinsicSignature` (#194025)
`getIntrinsicSignature` internally handles the decoding of the IIT table
and running the match, which is what this code is doing. So use that
instead of manually doing what `getIntrinsicSignature` does.
[libc] Implement wcscoll (#192778)
_Closes #191073_
- `libc/src/wchar/wcscoll.cpp` - Implementation of wcscoll
- `libc/src/wchar/wcscoll.h` - Internal header for wcscoll
- `libc/include/wchar.yaml` - Added wcscoll to public header spec
- `libc/src/wchar/CMakeLists.txt` - Added build target for wcscoll
- `libc/config/linux/x86_64/entrypoints.txt` - Registered wcscoll
entrypoint
- `libc/test/src/wchar/wcscoll_test.cpp` - Unit tests for wcscoll
- `libc/test/src/wchar/CMakeLists.txt` - Added test target for wcscoll
Note: Locale support is not yet implemented. `wcscoll` currently behaves
identically to `wcscmp` until locale support is available in llvm-libc.