[all-commits] [llvm/llvm-project] c69a4d: [SelectionDAG] When splitting gathers/scatters in ...
topperc via All-commits
all-commits at lists.llvm.org
Wed Mar 18 16:12:15 PDT 2020
Branch: refs/heads/master
Home: https://github.com/llvm/llvm-project
Commit: c69a4d6bef0a1350f509f35beb450dccc2a6c5e2
https://github.com/llvm/llvm-project/commit/c69a4d6bef0a1350f509f35beb450dccc2a6c5e2
Author: Craig Topper <craig.topper at intel.com>
Date: 2020-03-18 (Wed, 18 Mar 2020)
Changed paths:
M llvm/lib/CodeGen/SelectionDAG/LegalizeVectorTypes.cpp
Log Message:
-----------
[SelectionDAG] When splitting gathers/scatters in type legalization, set MMO size to UnknownSize
Gather/scatter don't access one memory location, they access multiple disjoint locations. So using a fixed size isn't accurate. But we don't have a way to represent the true behavior so just use UnknownSize.
Previously we "split" the memory VT and use that size for the MMO of each half. But the memory VT is scalar so splitting usually just returned the original scalar VT, but on 32-bit X86 if the scalar VT was i64 it probably returned i32?
Differential Revision: https://reviews.llvm.org/D76388
More information about the All-commits
mailing list