diff options
author | Vang Thao <Vang.Thao@amd.com> | 2022-06-10 12:06:15 -0700 |
---|---|---|
committer | Vang Thao <Vang.Thao@amd.com> | 2022-08-08 11:04:01 -0700 |
commit | 257251247a267c3fa30fdeef17ffa4987d8a52e5 (patch) | |
tree | d3bdafc02dab7f0e524474ec96fca5b5b35d6575 /llvm/lib/IR/Function.cpp | |
parent | 5fff4b75ca0d72759f7ded4c96fc5493d917a3a9 (diff) | |
download | llvm-257251247a267c3fa30fdeef17ffa4987d8a52e5.zip llvm-257251247a267c3fa30fdeef17ffa4987d8a52e5.tar.gz llvm-257251247a267c3fa30fdeef17ffa4987d8a52e5.tar.bz2 |
[SROA] Try harder to find a vector promotion viable type when rewriting
We are seeing significant performance loss when an alloca fails to get promoted
to register. I have observed that this is due to the common type found when
attempting to rewrite partition users being unviable for promotion. While if we
would have continue looking for a type, we would have found a subtype in the
original allocated type that would have enabled promotion. Thus first check if
the initial common type found is promotion viable and if not then continue
looking instead of stopping with the initial common type found.
Reviewed By: arsenm
Differential Revision: https://reviews.llvm.org/D128073
Diffstat (limited to 'llvm/lib/IR/Function.cpp')
0 files changed, 0 insertions, 0 deletions