login_chpass: No longer need to install this setuid root
When the YP code was removed login_chpass became wrapper that just
execs login_lchpass.
OK deraadt@
libc/rand: remove no-longer-needed LINTED comment
The calculation happens in unsigned integer mode, which is guaranteed to
wrap around on overflow. As long as RAND_MAX fits in 'int', the cast to
'int' is not necessary, but it doesn't hurt either.
[BitcodeReader] Simplify CST_CODE_DATA constant parsing (NFC) (#190846)
Cleanup boilerplate in the CST_CODE_DATA case for bitcode parser. This
is generally an aesthetic improvement and can significantly reduce stack
usage on some compilers (such as MSVC) where each SmallVector previously
was allocated it's own individual space.
bswap16: remove no-longer-needed LINTED comment
Lint computes the integer constraints for the expression and thus knows
that it fits in uint16_t. Since the default LINTFLAGS contain only a
single -a, lint wouldn't detect an accidental overflow at this point, it
would need a second -a flag.
[test] Improve driver option coverage (#192861)
Split the Linux GNU-linker assertions into a dedicated file and extend
them with previously-untested passthrough flags handled by
gnutools::Linker::ConstructJob: -s, -u sym, -rdynamic (-export-dynamic),
-Wl,-z keyword pairs.
LoongArch on Linux previously had no test for -X / --no-relax, which are
emitted by Gnu.cpp for LoongArch and RISC-V.
[LPM][LegacyPM] Reenable LCSSA Verification
This was disabled about a decade ago due to issues with LoopSink.
LoopSink has since had its LegacyPM version removed and is now a
function pass due to not needing too much loop infrastructure. So we can
try enabling this again to prevent backsliding on important cases while
we work on switching to the NewPM which does enforce these things.
Eventually we will want to add assertions here for LoopStrengthReduce,
but given it does not correctly preserve LCSSA, postpone that for now.
Reviewers: arsenm, Meinersbur, nikic, fhahn
Pull Request: https://github.com/llvm/llvm-project/pull/191667
[CIR] Fix __builtin_clz/__builtin_ctz poison_zero to respect target
CIR was hardcoding poisonZero=true for all clz/ctz builtins, ignoring
the target's isCLZForZeroUndef(). This caused incorrect UB on targets
like AArch64 where clz/ctz of zero is well-defined.
Also add support for __builtin_c[lt]zg fallback (2-arg) variants with
compare+select, and add NYI stubs for elementwise variants.
sysutils/fastfetch: update to 2.61.0
# changes
2.61.0
Changes:
* Support for Windows 7 and 8 has been removed.
* Windows 8.1 is now the oldest version supported by fastfetch.
* The GPU module on WSL no longer relies on `DXCore`.
* The `directx-headers` dependency is no longer required.
* Fastfetch on Linux is now pure C; a C++ compiler is no longer required.
* GPU type detection is now slightly less accurate, but detection speed should be slightly faster.
* The GPU module on Windows now uses `DXCore` for more accurate GPU type detection (requires Windows 10 or later).
* This feature is built only when `DXCore` headers are available, which requires installing `mingw-w64-<msystem>-x86_64-directx-headers` on MSYS2.
Features:
* Adds a `brightness` option for color display configuration (#2238, Colors)
* Adds support for detecting Bluetooth keyboards on Linux (#2220, Keyboard)
[66 lines not shown]
[ConstantFold] Support byte values in `bitcast` constant folding (#188030)
Add support for constant folding `bitcast` instructions including
`ConstantByte` values. This patch handles bitcasts between byte types
and integer, FP, and other byte types in both directions.
`poison` source bytes are preserved, rather than letting the generic
integer fold refine them to `undef` or zero. This is because some
threading optimizations just compare the result of constant folding
(e.g., https://github.com/llvm/llvm-project/pull/114280).
Folds are skipped for byte `bitcast`s where element counts don't divide
evenly and the source contains `poison` values. Some of these casts can
be folded. However, this is left for a future PR.