@@ -392,18 +392,24 @@ void populateVectorNarrowTypeRewritePatterns(RewritePatternSet &patterns,
392392void populateVectorTransposeNarrowTypeRewritePatterns (
393393 RewritePatternSet &patterns, PatternBenefit benefit = 1 );
394394
395- // / Populates patterns for ND vectors (N >= 2) linearization and sets up the
396- // / provided ConversionTarget with the appropriate legality configuration for
397- // / the ops to get converted properly.
398- void populateVectorLinearizeTypeConversionsAndLegality (
399- TypeConverter &typeConverter, RewritePatternSet &patterns,
400- ConversionTarget &target, unsigned targetBitWidth);
401-
402- // / Populates patterns for linearizing ND (N >= 2) vector operations to 1D
403- // / vector shuffle operations.
404- void populateVectorLinearizeShuffleLikeOpsPatterns (
405- const TypeConverter &typeConverter, RewritePatternSet &patterns,
406- ConversionTarget &target, unsigned targetBitWidth);
395+ // / Populate `typeConverter` and `conversionTarget` with the definition of
396+ // / legal types and operations, for the specific case where vectors with
397+ // / trailing dimensions of size greater than `targetBitWidth` are legal.
398+ void populateVectorLinearizeBitWidthTargetAndConverter (
399+ TypeConverter &typeConverter, ConversionTarget &conversionTarget,
400+ unsigned targetBitWidth);
401+
402+ // / Populates `patterns` for ND vector (N >= 2) linearization. Patterns for
403+ // / converting ConstantLike, Vectorizable, and vector::BitCast.
404+ void populateVectorLinearizeBasePatterns (const TypeConverter &,
405+ RewritePatternSet &patterns,
406+ const ConversionTarget &);
407+
408+ // / Populates `patterns` for linearizing ND (N >= 2) vector operations
409+ // / to 1D vector shuffle operations.
410+ void populateVectorLinearizeShuffleLikeOpsPatterns (const TypeConverter &,
411+ RewritePatternSet &patterns,
412+ const ConversionTarget &);
407413
408414} // namespace vector
409415} // namespace mlir
0 commit comments