Use v16i8 rather than v2i64 as the VT for memset expansion on AArch64.
authorOwen Anderson <resistor@mac.com>
Thu, 19 Aug 2021 08:00:29 +0000 (08:00 +0000)
committerOwen Anderson <resistor@mac.com>
Thu, 19 Aug 2021 16:54:07 +0000 (16:54 +0000)
commit06a4c858901d72389e01fbdd0f83b03c74d56831
treee475202d186364870cc62084a4b5f7cfd8a2c841
parent94e1442d78b2160eea6e8796b4d0f2667088a5f3
Use v16i8 rather than v2i64 as the VT for memset expansion on AArch64.

This allows the instruction selector to realize that it can directly
broadcast the low byte of the memset value, rather than replicating
it to a 64-bit GPR before broadcasting.

This fixes PR50985.

Differential Revision: https://reviews.llvm.org/D108354
llvm/lib/Target/AArch64/AArch64ISelLowering.cpp
llvm/test/CodeGen/AArch64/memset.ll [new file with mode: 0644]