Move KCFI type ID hash helpers out of LLVMSupport (#196784)
PR #167254 inappropriately introduced llvm/Support/Hash.{h,cpp} for the
KCFI helpers. The name is misleading — it has nothing to do with the
generic hashing facility in llvm/ADT/Hashing.h — and KCFI is a
CodeGen/IR feature that does not belong in the foundational Support
layer.
Move the files to llvm/lib/Transforms/Utils/KCFIHash.cpp, alongside
setKCFIType, which is the only existing KCFI helper in TransformUtils.
Also relocate the deprecated pre-xxh3 xxHash64 implementation into
KCFIHash.cpp, the sole user. clang/test/CodeGen/kcfi-generalize.c and
kcfi-normalize.c are end-to-end regression tests for the xxHash64 output
net-im/profanity: Update to 0.18.0
- Migrated from gmake to meson
- Added OPTIONS for optional features
- Added DEFAULT_OPTIONS reflect commonly used features
PR: 295126
Co-authored-by: Ashish SHUKLA <ashish at FreeBSD.org>
[libm] implementation of rsqrt, rsqrtf, and rsqrtl
From the PR:
The attached diff implements the inverse square root function, i.e,
rsqrt(x) = 1 / sqrt(x). Exhaustive testing of the float version
suggests that it is correctly rounded in round-to-nearest for all
test values in the range [0x1p-127,0x1p126].
Exhaustive testing of rsqrt and rsqrtl cannot be done, but 1100M
values of x for rsqrt and 400M values for rsqrtl were tested. All
tested values were correctly rounded.
I do not have access to LD128 (i.e., IEEE 128-bit floating point)
hardware, so the implementation of rsqrtl() is untested.
The following is a summary of changes to source code.
* lib/msun/Makefile:
. Add s_rsqrt.c and s_rsqrtf.c to COMMON_SRCS.
. For non-53-bit long double targets, add s_rsqrtl.c to COMMON_SRCS.
[31 lines not shown]
fuse-httpdirfs: initial import of package
HTTPDirFS stands for Hyper Text Transfer Protocol Directory Filesystem.
It allows to mount HTTP directory listings or a single file, using the
FUSE API.
The performance of the program is excellent. HTTP connections are reused
through curl-multi interface. The FUSE component runs in the
multithreaded mode. A permanent cache system caches all the file
segments you have downloaded, so you don't need to these segments again
if you access them later.
[InstCombine] Fold constant byte stores to integer stores (#196740)
Byte constants are equivalent to integer constants when stored to
memory. Replacing them in store instructions reduces IR differences and
enables existing optimizations over integer constants.
[flang][OpenMP] Optionally get final symbol in Get(Argument|Object)Symbol
Originally these functions returned the ultimate symbol for the one
obtained from the argument or object. However, this may be somewhat
unintuitive/unexpected, so instead return the original symbol, and
add a flag to optionally return the ultimate one.
[llvm][RISCV] Optimize fcopysign for fixed vectors (#193802)
vfsgnj is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFCOPYSIGN already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
[llvm][RISCV] Optimize fabs for fixed vectors (#194554)
vfabs is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFABS already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
[llvm][RISCV] Optimize fneg for fixed vectors (#194555)
vfneg is not available on zvfhmin or zvfbfmin, it's expected to expand
to integer operations instead of unrolling to scalar operations.
General expandFNEG already handles that in most of cases except for
fixed vector types that are not promotable, we need to find a better
heuristic to gate this.
Almost 26 years ago, when sti(4) was rewritten as an MI driver, some of
the pci-related defines for the "bus support" field in the rom information
were incorrectly defined. This was not noticed as there was no pci attachment
for sti devices yet.
Replace these with the correct values, as documented in the sti spec and also
in stirom.h found in HP-UX 11i.
While there, rework and simplify the logic deciding whether we need to make
a ram copy of the rom on pci devices.
No functional change, FireGL-UX still won't work.