emulators/cpmtools2: Update to fresh snapshot
- Update to fresh snapshot (no version change)
- Build with libdsk on by default (enables teledisk, raw, myz80 disk formats)
- While here, remove no-op GNU_CONFIGURE_MANPREFIX variable
[AArch64][GlobalISel] Drop unused value tracking from O0 pre-legalizer combiner (NFC) (#194826)
It doesn't improve compile-time, but it isn't necessary and can be
removed.
[X86][FastISel] Restore support for struct returns (#194586)
After #180322, X86 FastISel forces SDAG fallback for any call with a
struct return. This caused major compile-time regressions for debug
builds in Rust, where struct returns are very common.
The type legality check should work on the de-aggregated types, not on
the return type directly.
(cherry picked from commit 30fa4153a556f51143b1145af8c603581c80369a)
workflows: Add require-release-manager composite action (#194758)
This action checks that the workflow was started by someone in the
llvm-release-managers team. This is meant to replace the existing checks
which use a python script and will help to consolidate the access token
generation into a single place.
Also start using it in the release-binaries workflow.
[LLD][ELF] Fix performance regression when using linker scripts (#194668)
The addition of the support for `--enable-non-contiguous-regions` from
PR #90007 moved an "early out" condition in
`LinkerScript::computeInputSections()`. This could result in other
relatively expensive checks, i.e. `pat.sectionPat.match`,
`cmd->matchesFile`, `pat.excludesFile` and `flagsMatch`, to be performed
unnecessarily in the default situation where
`--enable-non-contiguous-regions` is disabled.
This fix restores the "early out" condition and shows an ~14%
improvement for the Linux kernel benchmark link and has been seen to
improve performance by up to ~30% for a large UE5 link.
(cherry picked from commit dbdbf1e63d735eada7c9e4ff42ac0e56f56f5774)
Add ARMv8-M and ARMv8.1-M support for Darwin (#195184)
Extend Mach-O reading/writing and Clang's driver with support for
ARMv8-M and ARMv8.1-M. Then, build libclang_rt for armv8m.main and
armv8.1m.main target triples.
fexecve(2): call out a scenario where you want !O_EXEC
We note a reason why you might need it, but there's an equally important
reason you may need to omit it: interpreted programs. Add a note
accordingly, along with the workaround configuration if there's reason
you can't help it.
PR: 294780
Reviewed by: Jan Bramkamp <crest_freebsd_rlwinm.de>, kib
Differential Revision: https://reviews.freebsd.org/D56704
stat: fix use of devname(3)
Besides being a little hard to parse through visually, this had its own
bug of inspecting st->st_mode to determine what to pass to devname(3),
which is only correct for st_rdev.
For st_dev, you're likely to be looking at files or directories and
attempting to assess what device they're located on, so the mode is
meaningless- we just have to assume that our filesystems are on
character devices and attempt to resolve st_dev as such.
Reviewed by: des, kib (previous version)
Differential Revision: https://reviews.freebsd.org/D56565