[clang][bytecode] Add DeclOrExpr (#213686)
And replace the previous usages of llvm::PointerUnion with this new
struct. This is currently just a refactoring but we'll later need to
have a proper type for the previos typedef so we can pass it to emit*
functions.
[AMDGPU] Support partial and empty WWM pools for SGPR spills (#213491)
SGPR lane spilling currently treats the WWM VGPR pool as all-or-nothing.
This can fail compilation when the requested pool cannot be formed, even
though scratch spilling or a smaller spillable pool could make progress.
This PR lets ordinary SGPR spills fall back to scratch when the pool is
empty and lets WWM register allocation use a nonempty partial pool. It
keeps the full-pool requirement for strict WWM/WQM and explicit
spill-carrier preallocation.
The no-pool fallback is recorded in SIMachineFunctionInfo so frame
lowering can provide enough emergency scavenging slots. The state is
also serialized to preserve the behavior across MIR round trips.
Fixes LCOMPILER-2542.
[AMDGPU] Lower uniform uaddsat.i16 to SALU instructions
Promote uniform i16 uadd.sat to i32 in promoteUniformOpToI32 so it
lowers to SALU (s_add_i32 + s_min_u32) instead of VALU + readfirstlane.
The saturating add on zero-extended operands reduces to
umin(add(lhs, rhs), 0xffff).
Co-authored-by: Cursor <cursoragent at cursor.com>
[AMDGPU] Add tests for uniform uaddsat.i16 (NFC)
Precommit tests covering uniform (SALU) uadd.sat for i16 and vector
i16 (v2i16, v3i16, v4i16) using the amdgpu_ps calling convention so
results are returned in SGPRs. These currently lower to VALU
(v_add_u16 clamp / v_pk_add_u16 clamp + v_readfirstlane).
Co-authored-by: Cursor <cursoragent at cursor.com>
[RISCV] Pick correct lround libcall for fp128 (#213220)
**LROUND** with an i32 result on rv64 chose the libcall as `f64 ?
LROUND_F64 : LROUND_F32`, so **fp128** fell through to the f32 libcall
(lroundf) and lost precision. Use `RTLIB::getLROUND`, which maps
**fp128** to lroundl.
Update to 0.11
Upstream changes:
0.11 Wed Jul 29 2026
Bug fixes to the 0.10 "textsize" work and one older defect:
- The bars are now raised as the text grows, so a large textsize no
longer prints the human readable text over the bottom of the
barcode. Previously anything above about 12 point overprinted,
which is a scanning failure rather than a cosmetic one. GitHub #8.
- The background extension strips are drawn at the height the
background box was actually drawn at, rather than one unit short.
GitHub #8.
- $qrcode is reset between barcodes, so a barcode drawn after a
QRcode in the same process no longer renders down the QRcode path.
GitHub #6.
Output at the default textsize is unchanged.
0.10 Wed Jul 29 2026
Added "textsize" parameter to set the point size of the human readable
text below the barcode. Defaults to 10, so existing output is unchanged.
[3 lines not shown]
[lit] Run builtin cat / diff in-process instead of spawning (#208024)
cat and diff are the only two builtins that still spawn a subprocess:
every cat/diff on a RUN line spawns a fresh Python interpreter, which
dominates wall time given how small lit's typical inputs are. Run them
in-process instead.
The spawned-script path stays as a fallback for now. Removing it
entirely is a follow-up PR. Output is byte-identical to the spawn path
either way.
[OpenMP][Clang] Enable `ATTACH`-style maps for mappers. (#210213)
This is a follow-up to #153683 to support OpenMP compliant
pointer-attachment
in `declare_mappers` via `ATTACH`-style maps.
In addition to enabling attach-style maps, we also need to propagate
information about
which map entries are for "pointee" data, i.e. have an "attach-ptr", and
thus occupy a different storage block than the base variable for which
the mapper is being generated. e.g.
```c
S sa[10];
#pragma omp declare_mapper (default: S s) map (s.x, s.p[0:10])
#pragma omp target_enter_data map(sa)
```
[18 lines not shown]
Update to 0.788
Upstream changes:
0.788 (07.17.2026) - John Siracusa <siracusa at gmail.com>
* Fixed a bug in refine_dbi_foreign_key_info. (Patch by Bernd Bleßmann)
0.787 (05.04.2026) - John Siracusa <siracusa at gmail.com>
* Adjusted MySQL column auto-generation to better handle the
explicit_defaults_for_timestamp server setting.
0.786 (08.20.2024) - John Siracusa <siracusa at gmail.com>
* Fixed a bug that could cause database passwords to appear in debugging
output when $Rose::DB::Debug was set to a true value. Also added
connection options to the debugging output.
0.785 (02.28.2023) - John Siracusa <siracusa at gmail.com>
* Added timestamps_are_inlined method to DBD::Pg. (Patch
by Ferry Hendrikx.)
0.784 (02.03.2023) - John Siracusa <siracusa at gmail.com>
* Added support for PDBs (Pluggable Databases) to DBD::Oracle. (Patch
by Ferry Hendrikx.)
* Added support for "numeric" booleans to DBD::Oracle. (Patch by Ferry
Hendrikx.)
Update to 0.44
Upstream changes:
0.44 Wed Jul 29 2026
- Embedded TrueType text is now searchable and copyable (GitHub #15,
RT #123564). A /ToUnicode CMap is generated for each embedded font,
covering only the glyphs actually used. Built here rather than via
Text::PDF::TTFont0, whose ToUnicode support emits a malformed CMap
(RT #123562, unfixed upstream).
- Fix "Didn't find pages" when a source filename is reused within one
session (GitHub #21, #22, RT #103758, RT #103768). %processed cached
byte offsets keyed by filename and was never invalidated when the
file behind that name was replaced, so the first file's offsets were
applied to the second file's bytes.
- CI now covers Linux, macOS and Windows again, with per-platform
isolation so one failing cell no longer masks the others
(GitHub #9, #10). Upstream workflow references are pinned to a SHA;
see docs/ci-pin-maintenance.md.
stand: consume UEFI PXE Base Code cache to seed DHCP
Populate stand/libsa/bootp.c's bootp_response global from the UEFI PXE
Base Code Protocol's cached DhcpAck, so bootp() can enter RFC 2131
INIT-REBOOT and skip DISCOVER/OFFER instead of running a fresh DHCP
transaction after the firmware has already done one.
Update to 6.1.0
Upstream changes:
v6.1.0 - 2026-07-19
- groff 1.24.0 broke use of the .IP macro for tag list formatting by
removing the mandatory spacing between the tag and the paragraph. Work
around this by using .TP for lists other than bullet or numbered
lists. Be aware that groff 1.24 and later defaults to a minimum gap of
two spaces between the tag and the paragraph for .TP instead of one
space as in previous pod2man and groff releases. POD documents that want
an indent just wide enough for tags to format on the same line as the
paragraph may need to increase the indent level for the =over command by
one to render as desired with those versions of groff.
- Change the default fixed-width font from CW to CR. This avoids warnings
with groff 1.24.0 or later at the cost of breaking troff output on
Solaris 10. nroff output and troff output on Solaris 11 are
unaffected. The pod2man option --fixed=CW will restore the previous
behavior. Thanks to G. Branden Robinson for the analysis and assistance.
(GitHub #43)
[24 lines not shown]
manuals: Fix Fx and nearby mechanical typos
Fix compiler warnings related to the Fx macro, as well as all other
mechanical typos that were visible within one screenful of them. These
cause rendering glitches on various toolchains with various of the five
and a half decades of rich output formats and tooling manpages scale to.
The *x macro set specifies operating systems. These macros take the rest
of the line as an argument. Sometimes, a space was not used to separate
the argument of Fx and the trailing period. Another, FreeBSD Foundation
was misrepresented as an operating system version instead of an author.
Two more had other parts of the sentence supplied as an argument to Fx.
While I had those open, fix the other mechancial typos visible on those
specific screenfulls. Fix a list width glitch, correct section typo
AUTHOR to AUTHORS, and switch AUTHORS sections containing prose to
prose-mode so that they wrap freely when rendered.
PR: 297248
[5 lines not shown]