This is an archive of the discontinued LLVM Phabricator instance.

Mips: Remove immarg from copy and insert intrinsics
ClosedPublic

Authored by arsenm on Jul 15 2019, 3:39 PM.

Details

Summary

These intrinsics do in fact work with non-constant index arguments.

These are lowered to either the generic
ISD::INSERT_VECTOR_ELT/ISD::EXTRACT_VECTOR_ELT, or to
VEXTRACT_SEXT_ELT. The handling of these all accept variable
indexes. Turning these into generic instructions which do allow
variables introduces complications in a future change to immarg
handling.

Since these just turn into generic instructions, these are kind of
pointless and should probably just be autoupgraded to
extractelement/insertelement.

Diff Detail