[PATCH] D84463: [LegalizeTypes] Teach DAGTypeLegalizer::GenWidenVectorLoads to pad with undef if needed when concatenating small or loads to match a larger load

Craig Topper via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Jul 23 14:52:46 PDT 2020


craig.topper added a comment.

In D84463#2170797 <https://reviews.llvm.org/D84463#2170797>, @spatel wrote:

> I was stepping through that function myself after seeing the bug, and it wasn't clear to me why we are ok with reading more than the actual load size. Ie, we are only allowed to read <23 x float>, but we created a <16 x float> load + two <4 x float> loads right? Something later is guaranteed to reduce that to make sure we don't actually load the full <24 x float>?


No we load the whole 24xfloat. Because the load is 16 byte aligned we know the last load won’t cross a page boundary so won’t fault.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D84463/new/

https://reviews.llvm.org/D84463





More information about the llvm-commits mailing list