[libc++][string] Replace ASAN volatile wrapper with memory barrier (#184693)
The previous `_LIBCPP_ASAN_VOLATILE_WRAPPER` approach was used to
prevent
speculative loads of string data before the short/long state was
determined. This patch replaces that mechanism with a more explicit
`__annotate_memory_barrier()` using an empty volatile assembly block.
This PR is inspired by #183457 and by downstream false positive on
`__get_long_size`. It fails same way as `__get_long_pointer` before we
have
`_LIBCPP_ASAN_VOLATILE_WRAPPER`. Barrier approach avoids
expanding `_LIBCPP_ASAN_VOLATILE_WRAPPER` for size_t, and to
in general looks more readable.
I failed to create reasonable reproducer for test, I suspect it requires
precise set of compiler flags, and libc++ site_config which will be hard
to maintain in test.
version 6.1 does not link with base-gcc, erroring out with
"multiple definition of `ub_bsearch'"
Move to ports-gcc on gcc arches to fix build on sparc64
[SandboxVec][DAG] Handle unscheduled successors when user is external (#183861)
Whenever an IR use-def edge gets updated, the DAG gets notified about
the change by having its `notifySetUse()` callback called. The
callback's job is to update the DAG node's `UnscheduledSuccs` counter
which is the number of successor nodes that are yet to be scheduled.
This update makes sense only if both ends of the use-def edge are in the
DAG. Up until now we would still update the counter even if the user was
outside the DAG. This patch fixes this, so from now on we skip updatinge
`UnscheduledSuccs` if the user is outside the DAG.
[RISCV] Support 'f' Inline Assembly Constraint for bfloat16 (#184566)
This patch is to add 'f' and 'cf' Inline Assembly Constraint for the `bfloat16` type, so they are passed in the floating point registers.
[ELF] Add target-specific relocation scanning for RISC-V (#181332)
Implement RISCV::scanSectionImpl, following the pattern established
for x86 (#178846) and AArch64 (#181099). This merges the getRelExpr
and TLS handling for SHF_ALLOC sections into the target-specific
scanner, enabling devirtualization and eliminating abstraction
overhead.
- Inline relocation classification into scanSectionImpl with a switch
on relocation type, replacing the generic rs.scan() path.
- Use processR_PC/processR_PLT_PC for common PC-relative and PLT
relocations.
- Handle TLS IE and GD directly (RISC-V does not optimize GD/LD/IE).
- Replace TLS-optimization-specific expressions for TLSDESC, following
the x86 pattern: R_RELAX_TLS_GD_TO_IE -> R_GOT_PC,
R_RELAX_TLS_GD_TO_LE -> R_TPREL. Update relocateAlloc and relax()
to dispatch on relocation type instead of RelExpr for TLSDESC.
- Simplify getRelExpr to only handle relocations needed by
relocateNonAlloc and preprocessRelocs.
[4 lines not shown]
[RISCV] Add register overlap checks to the assembler for vector indexed segment load (#184569)
The destination vector register group cannot overlap the source vector
register group for vector indexed segment load. This patch is to add
register overlap checks to the assembler.
www/caddy: Update to 2.11.2
Changes:
Caddy 2.11.2 contains numerous bug fixes and enhancements! I know
that's a lame summary but it's really all over the place.
Highlights:
- Reverse proxy got a lot of love with certain edge cases related to
PROXY protocol, health check port, and closing body on retries.
Dynamic upstreams are now tracked which enables passive health
checking.
- Performance improvements for metrics.
- New tls_resolvers global option to control DNS resolvers for all
sites when using the ACME DNS challenge.
- Log rolling now supports zstd compression; deprecated roll_gzip,
which will be removed in the future. Use roll_compression instead.
- Refined logging and some error messages.
- Fixed a bug in rewrite handler that could cause some URIs to not
[23 lines not shown]
[clang][deps] Store `IgnoreCWD` on `ModuleDeps` (#184921)
This aligns us with downstream, where we need to be able to query
whether a module depends on CWD or not.
lang/go125: Update to 1.25.8
This is a direct commit to 2026Q1, as the Go framework has diverged.
Changes:
go1.25.8 (released 2026-03-05) includes security fixes to the
html/template, net/url, and os packages, as well as bug fixes to the
go command, the compiler, and the os package. See the Go 1.25.8
milestone on our issue tracker for details.
www/caddy: Update to 2.11.2
Changes:
Caddy 2.11.2 contains numerous bug fixes and enhancements! I know
that's a lame summary but it's really all over the place.
Highlights:
- Reverse proxy got a lot of love with certain edge cases related to
PROXY protocol, health check port, and closing body on retries.
Dynamic upstreams are now tracked which enables passive health
checking.
- Performance improvements for metrics.
- New tls_resolvers global option to control DNS resolvers for all
sites when using the ACME DNS challenge.
- Log rolling now supports zstd compression; deprecated roll_gzip,
which will be removed in the future. Use roll_compression instead.
- Refined logging and some error messages.
- Fixed a bug in rewrite handler that could cause some URIs to not
[22 lines not shown]
[RISCV] Remove outdated TODO in isExtractSubvectorCheap (#184938)
Index 0 is already handled by an early return, so the TODO comment about
extracting index 0 from a mask vector is no longer needed.
lang/go125: Update to 1.25.8
Changes:
go1.25.8 (released 2026-03-05) includes security fixes to the
html/template, net/url, and os packages, as well as bug fixes to the
go command, the compiler, and the os package. See the Go 1.25.8
milestone on our issue tracker for details.
lang/go126: Update to 1.26.1
Changes:
go1.26.1 (released 2026-03-05) includes security fixes to the
crypto/x509, html/template, net/url, and os packages, as well as bug
fixes to the go command, the go fix command, the compiler, and the
os and reflect packages. See the Go 1.26.1 milestone on our issue
tracker for details.