[all-commits] [llvm/llvm-project] 32b6c1: [SDAG] Use UnknownSize for masked load/store MMO size
David Green via All-commits
all-commits at lists.llvm.org
Tue Nov 23 01:48:09 PST 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 32b6c17b29079e7d2ac61cdc90b10983ee97d78d
https://github.com/llvm/llvm-project/commit/32b6c17b29079e7d2ac61cdc90b10983ee97d78d
Author: David Green <david.green at arm.com>
Date: 2021-11-23 (Tue, 23 Nov 2021)
Changed paths:
M llvm/include/llvm/CodeGen/MachineFunction.h
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
M llvm/lib/CodeGen/SelectionDAG/SelectionDAGBuilder.cpp
M llvm/lib/Target/Hexagon/HexagonISelLoweringHVX.cpp
M llvm/test/CodeGen/Thumb2/mve-masked-store-mmo.ll
M llvm/test/CodeGen/X86/masked_compressstore.ll
M llvm/test/CodeGen/X86/vmaskmov-offset.ll
Log Message:
-----------
[SDAG] Use UnknownSize for masked load/store MMO size
A masked load or store will load a potentially unknown number of bytes
from a memory location - that is not generally known at compile time.
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).
This makes sure that the MMO is given an unknown size to represent this.
which is less accurate that "may load/store from up to 16 bytes", but
less incorrect that "will load/store from 16 bytes".
Differential Revision: https://reviews.llvm.org/D113888
More information about the All-commits
mailing list