[CoroFrame][NFC] Create more helper functions for insertSpills (#177149)
This allows us to delete some variables and simplify the core loop of of
insertSpills.
AMDGPU: Select VGPR MFMAs by default (#159493)
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.
[SPIRV] Unify unsized array handling for AMGCN flavoured SPIR-V (#175848)
Currently we handle 0-sized arrays in multiple places, non-uniformly,
either via `SPIRVLegalizeZeroSizeArrays` or via `SPIRVPrepareGlobals`.
For AMDGCN flavoured SPIR-V we have a singular, simpler solution: set
all 0-sized arrays to be `UINT64_MAX` sized. This is an unambiguous
token that we can use during reverse translation to restore the intended
0 size.
[CIR][NFC] Move ABI lowering of dynamic_cast to CXXABILowering (#176931)
This patch moves the ABI lowering for `dynamic_cast` from
LoweringPrepare to the new CXXABILowering pass. This effectively removes
ABI lowering code away from LoweringPrepare, thus the patch also removes
the LoweringPrepareCXXABI classes and files.
Related to #175968 .
switch libwebp to building with CMake; this installs modules which are
needed by some software (e.g. OpenImageIO). from Brad. previously attempted
but backed out because it broke py-Pillow, that is now handled.
py-Pillow: like already done for tiff, stop searching for the libwebp
library and just assume that it's available if the header is present.
the search uses find_library_file from distutils which only works if
there's either a static library or a libfoo.so symlink.
from tb@, I tweaked the comment
[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.
[Clang][CIR] Implement CIRGen logic for __builtin_bit_cast
NOTE: This patch merely upstreams code from
* https://github.com/llvm/clangir.
This Op was originally implemented by Sirui Mu in #762 Further
modification were made by other ClangIR contributors.
co-authored-by: Sirui Mu <msrlancern at gmail.com>
[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>