Reapply "[NVPTX] Use the mask() operator to initialize packed structs with pointers"
The original patch revealed an issue of reading incorrect values on BE hosts. That is now changed to use `endian::read32le()` and `endian::read64le()`. Original commit message: The current implementation assumes that all pointers used in the initialization of an aggregate are aligned according to the pointer size of the target; that might not be so if the object is packed. In that case, an array of .u8 should be used and pointers should be decorated with the mask() operator. The operator was introduced in PTX ISA 7.1, so an error is issued if the case is detected for an earlier version. Differential Revision: https://reviews.llvm.org/D127504
Loading
Please sign in to comment