[SYCL][Driver] Emit textual SPIR-V for device-only -S compilations (#227844)
With -fsycl -fsycl-device-only -S, the SYCL device backend step produced
textual LLVM IR. It now produces assembly, which for spirv64 is textual
SPIR-V from the SPIR-V backend. Adding -emit-llvm produces LLVM IR.
NAS-141966 / 25.10.8 / Remove frames from JSON-RPC error responses (by anodos325) (by bugclerk) (#19919)
The client-facing error trace included every stack frame's locals (via
get_frame_details, which reprs each local). This can result in API calls
echoing back parameters from the call to the same API client in the
error response. Generally, this information is not consumed by the
truenas API client, jobs framework, or other internal call sites.
Original PR: https://github.com/truenas/middleware/pull/19403
Original PR: https://github.com/truenas/middleware/pull/19415
Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
NAS-141966 / 26.0.0-RC.1 / Remove frames from JSON-RPC error responses (by anodos325) (#19415)
The client-facing error trace included every stack frame's locals (via
get_frame_details, which reprs each local). This can result in API calls
echoing back parameters from the call to the same API client in the
error response. Generally, this information is not consumed by the
truenas API client, jobs framework, or other internal call sites.
Original PR: https://github.com/truenas/middleware/pull/19403
Co-authored-by: Andrew Walker <andrew.walker at truenas.com>
(cherry picked from commit 6f2d85152223e0f5bdce7175c4867e405abde73d)
graphics/alembic: the port had been updated to version 1.8.12
- Stop forcing C++ standard, upstream defaults to C++14 which
is lower than most consumers in the ports
- Replace hand-rolled `do-test' target by USES+=cmake:testing
- Do not build tests unless requested, this cuts down regular
build target count roughly in half
PR: 281999 (second take)
Reported by: portscout
Merge tag 'hid-for-linus-2026100201' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid
Pull HID fixes from Benjamin Tissoires:
- Revert of the Bolt integration into hid-logitech-dj (Benjamin
Tissoires)
- A couple of buffer overflow in Intel-thc-hid (Even Xu)
- A couple of Sashiko findings fixes in hid-multitouch and HID-BPF
(Aldo Ariel Panzardo and Benjamin Tissoires)
* tag 'hid-for-linus-2026100201' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid:
selftest/hid: add test for negative return codes for hid_bpf_hw_request
HID: bpf: cast size to ssize_t when checking hid_bpf_hw_request
HID: Intel-thc-hid: Intel-quickspi: Fix buffer overflow
HID: Intel-thc-hid: Intel-quicki2c: Fix buffer overflow
HID: universal-pidff: Add support for Turtle Beach VelocityOne Race
HID: multitouch: stop the release timer from being rearmed on remove
Revert "HID: logitech: add Bolt receiver support for Logitech HID++ devices"
[AsmPrinter] Find a DIE's unit by its owner, not by its tag (#219660)
[AsmPrinter] Find a DIE's unit by its owner
Fix DIE::getUnitDie() for DW_TAG_partial_unit. The existing parent walk
recognizes unit roots by tag but omits partial units, so a cross-unit
DW_FORM_ref_addr can reach getDebugSectionOffset() without a unit and
assert.
Have getUnit() walk the parent chain until Owner contains a DIEUnit, then
derive getUnitDie() from that unit. A DIEUnit owns its unit DIE, so this
handles every unit root tag without maintaining another tag list and
still returns null for a DIE tree that no DIEUnit owns. Use
dwarf::isUnitType for the constructor assertion as well. Update the
DIEUnit comments to describe the owner-based walk.
Add unit coverage for all four unit root tags and an unowned DIE tree.
Add a dwarfutil test for resolving DW_FORM_ref_addr into a partial unit
with and without garbage collection. Keep that test on the classic
linker and omit --verify because of #219613 and #219365.
[3 lines not shown]
[bazel] Pin rules_cc_autoconf to 0.24.0 (#227956)
The GNU multiprecision deps (GMP, MPFR, MPC) bring in an old version of
`rules_cc_autoconf` that have some transitive includes pruned by newer
libc++:
```
external/rules_cc_autoconf+/autoconf/private/checker/debug_logger.h:43:33: error: no member named 'back_inserter' in namespace 'std'
43 | std::back_inserter(lower_level), ::tolower);
| ^~~~~~~~~~~~~
1 error generated.
```
This fix pins it to a newer version.
---------
Co-authored-by: Keith Smiley <keithbsmiley at gmail.com>
DAG: Gracefully diagnose missing floating-point state libcalls (#228426)
Previously makeStateFunctionCall would hit a fatal error if the target has no
fegetenv/fesetenv/fegetmode/fesetmode implementation. Report a proper
context error and emit nothing.
Co-authored-by: Claude Opus 5 <noreply at anthropic.com>
[flang] Pass llvm::StringRef directly to message formatting (#228449)
Added an overload of MessageFormattedText::Convert for llvm::StringRef.
This removes the need to explicitly convert llvm::StringRef arguments to
std::string in calls to diagnostic functions (Say/Warn/Attach).
Only direct message arguments are changed; uses that feed
ToUpperCaseLetters (which takes std::string_view), llvm::Twine
concatenations, and variable initializers are left as-is. No behavioral
change.
Co-Authored-By: Claude Opus 4 (1M context) <noreply at anthropic.com>
[flang] Handle vector operands in logical op codegen (#225407)
FIR logical ops take `AnyLogicalOrIntegerLike` operands; this includes
vector types. This PR makes the `normalizeLogicalToI1` and
`extendI1ToType` utils type-agnostic so that they don't assert when
passing a non-scalar type.
Fixes e.g. the crash:
```mlir
; fir-opt --fir-to-llvm-ir="target=aarch64" crash.mlir
func.func @neqv_vector(%a: vector<4xi32>, %b: vector<4xi32>) -> vector<4xi32> {
%0 = fir.neqv %a, %b : vector<4xi32>
return %0 : vector<4xi32>
}
```
When converting a section identifier (for example, "1" or "1m") to
a volume title (for example, "General Commands Manual" or "Maintenance
Commands") and no exact match is found for the identifier, retry
using only the first character of the identifier before giving up.
For example, when using OpenBSD to format the Oracle Solaris ipmitool(1m)
manual, which contains the line '.TH ipmitool 1m "29 June 2012"',
use the section 1 volume title "General Commands Manual" rather
than finding no title at all. In general, this improves formatting
of the page header line of manual pages using session suffixes that
are not declared in msec.in on the formatting system. That's useful
everywhere for formatting foreign manual pages, but also for
formatting native manuals on systems using many suffixes.
I had this idea for a small improvement while looking at how FreeBSD
customizes the companion file msec.in in their freebsd-src/contrib/mandoc
directory.
[CodeGen] Remove unused RABasic::UsableRegs (NFC) (#228351)
The last use was removed on June 20, 2012 in commit
03b87d5aaaa2399b9a537b6455bf564586894ff8.
Assisted-by: Antigravity
Mark hddTempIndex as not-accessible in the TrueNAS MIB
RFC 2578 section 7.7 requires an object that is used as a table index
to have a MAX-ACCESS of not-accessible. The hddTempIndex object was
declared read-only, and a strict MIB importer may reject the file for
that reason. The SNMP agent has never served this column, so the values
returned by the agent do not change.
RFC 2578 section 10 requires a new REVISION entry and an updated
LAST-UPDATED value for any change to a module, so both are included.
llvm-exegesis: Set the module triple and ABI-aware DataLayout (#228447)
The module used to assemble snippets only had a DataLayout set, which
was computed without the target ABI. Set the target triple on the
module, synthesize the "target-abi" module flag from the
TargetMachine's ABI option, and compute the DataLayout from it.
Without the ABI, a TargetMachine with a non-default ABI would hit the
incompatible DataLayout error when creating the MachineFunction.
Co-Authored-By: Claude <noreply at anthropic.com>
[SLP]Support copyable GEP/zext main ops and relax gather pointer compatibility
Extends copyable-element modeling to single-index scalar GEPs (copyable
lane = gep V, 0) and scalar zexts (copyable lane = zext of a truncated
constant), and treats constant-offset lanes (including the bare base
pointer) as compatible with any same-object pointer when classifying
gathered loads. Runtime-strided accesses like b[i*S] form a single
masked gather with a vectorized address splat(b) + zext(mul <0..7>, S)
instead of a strided-load/scalar-load/gather mix.
Fixes #63855
Reviewers: bababuck, RKSimon
Pull Request: https://github.com/llvm/llvm-project/pull/221599
[RISCV][P-ext] Remove unnecessary check from (p)m(r)acc handling in LowerIntrinsic_WO_CHAIN. NFC (#228172)
This was rejecting MVT::i32 on RV64, but this check was mutually
exclusive with every other case handled in this block. We can let it go
to the final return SDValue().
I'm not sure we can even get to this case anyway since
ReplaceNodeResults should be called for an illegal MVT::i32 on RV64.