HomePhabricator

[CostModel] Return an invalid cost for memory ops with unsupported types

Authored by kmclaughlin on Jun 8 2021, 2:49 AM.

Description

[CostModel] Return an invalid cost for memory ops with unsupported types

Fixes getTypeConversion to return TypeScalarizeScalableVector when a scalable vector
type cannot be legalized by widening/splitting. When this is the method of legalization
found, getTypeLegalizationCost will return an Invalid cost.

The getMemoryOpCost, getMaskedMemoryOpCost & getGatherScatterOpCost functions already call
getTypeLegalizationCost and will now also return an Invalid cost for unsupported types.

Reviewed By: sdesmalen, david-arm

Differential Revision: https://reviews.llvm.org/D102515

Details