[PATCH] D113888: [SDAG] Use UnknownSize for masked load/store MMO size
Eli Friedman via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Nov 16 11:22:34 PST 2021
efriedma added a comment.
> They do not necessarily load/store the entire vector width, and treating them as such can lead to incorrect aliasing information (for example, if the underlying object is smaller than the size of the vector).
Does this mean any operation that's a mayload/maystore needs to have the size of the operand set to "unknown"? I suspect we need to do significantly more work than just this patch if we want memory operands to work this way. (e.g. type legalization, if conversion.) What happens if we just say that size of a memory location is supposed to represent an upper bound, at least for now?
> we shouldn't be passing MemoryLocation::UnknownSize
If that's true, maybe we need to assert this? Apparently we are actually passing in MemoryLocation::UnknownSize in some places.
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D113888/new/
https://reviews.llvm.org/D113888
More information about the llvm-commits
mailing list