[lldb] Fix crash when there is no compile unit. (#177278)
The crash occurred in lldb-dap when we are in a shared library with no
debug information and we are trying to get the expression path for an
address.
[CIR] Add cir.libc.memcpy Op (#176781)
The operation is a 1:1 mapping to libc's memcpy.
NOTE: This patch upstreams code from
* https://github.com/llvm/clangir.
This Op was originally implemented by Vinicius Couto Espindola
in https://github.com/llvm/clangir/pull/237. Further
modifications were made by other ClangIR contributors.
Co-authored-by: Vinicius Couto Espindola <vini.couto.e at gmail.com>
AMDGPU: Select VGPR MFMAs by default
AGPRs are undesirable since they are only usable by a
handful instructions like loads, stores and mfmas and everything
else requires copies to/from VGPRs. Using the AGPR form should be
a measure of last resort if we must use more than 256 VGPRs.
Improve pwenc handling
Add a common pwenc_rename function that resets caches on
config upload parsing and other places where we replace the
pwenc file. This also ensures that we never have a partially-
written pwenc file (for example sent by remote HA node).
When we rename / replace the pwenc file we'll keep a backup
of the old on so that we have potential to rebuild old
config if needed.
[AArch64] Consider MOVaddr* as cheap if fuse-adrp-add
These pseudo-instructions usually translate into a pair of adrp+add and
have a single cycle latency on some micro-architectures.
[LoopInterchange] Support the inner-loop reduction via Reduction2Mem (#172970)
Following our
[discussion](https://discourse.llvm.org/t/rfc-plan-to-improve-loopinterchange-by-undoing-simple-reductions/89071),
I ported GCC’s undo_simple_reduction into LLVM.
**Key changes**
- Implement an Reduction2Memory step in LoopInterchange to support the
reduction in the inner loop.
- The feature is behind an option `-loop-interchange-reduction-to-mem`
and is OFF by default. With the feature off, the pass behaves as before
(minimal impact).
- Add a regression test.
**Validation & performance**
- No compile or semantic errors observed on SPEC2006 and SPEC2017 with
the new feature enabled for validation.
[18 lines not shown]
Adds basic implementation of the low-level FUSE API.
This is sufficient to compile and run lowntfs-3g.
In this patch the low and high-level APIs are independent. The next
patch will modify the high-level API to make use of the low-level API
so that there is no longer any code duplication.
The libfuse changes are mostly additions and should be self-explanatory.
There are also some kernel changes required, which are:
- A fusefs dir vnode now keeps a reference to its parent vnode so that ".." is
resolves in fusefs_lookup rather than sending the lookup request to the FUSE
file system. This is consistent with Linux.
- Added sanity checks for the attributes returned from FBT_GETATTR. These
belong in the kernel and not in libfuse.
- fusefs_readdir needed some tweaking to handle full buffers.
- Set the vnode type from the attributes returned from FBT_MKDIR and
FBT_MKNOD.
[6 lines not shown]
[MLIR][GPU][NVVM] Add verify-target-arch option to nvvm-attach-target pass (#176774)
This change adds the `verify-target-arch` option to the
`nvvm-attach-target` to control the `verifyTarget` parameter in the
attached `NVVMTargetAttr` which is used to enable/disable the
verification of the target architecture with respect to the NVVM Ops.
wycheproof regress: wycheproof-testvectors was renamed to wycheproof
Installed packages will update and pkg_add wycheproof-testvectors will
continue to work.
[X86] Add BZHI zero mask / constant fold test coverage (#177136)
We need known bits support before we can start adding simplify demanded bits handling to address #176974
Pulled from the instcombine equivalent tests