|
7 | 7 | //===----------------------------------------------------------------------===//
|
8 | 8 | //
|
9 | 9 | // This file implements target-independent rewrites and utilities to emulate
|
10 |
| -// narrow types that are not supported by the target hardware, e.g. i4, using |
11 |
| -// wider types, e.g. i8. |
| 10 | +// narrow types that are not supported by the target hardware, e.g. i4 |
| 11 | +// ("emulated type"), using wider types, e.g. i8 ("container type"). |
12 | 12 | //
|
13 | 13 | /// Currently, only power-of-two integer types are supported. These are
|
14 | 14 | /// converted to wider integers that are either 8 bits wide or wider.
|
@@ -2063,19 +2063,19 @@ void vector::populateVectorNarrowTypeRewritePatterns(
|
2063 | 2063 |
|
2064 | 2064 | // Patterns for aligned cases. We set higher priority as they are expected to
|
2065 | 2065 | // generate better performance for aligned cases.
|
2066 |
| - // The emulated type is always i8. |
| 2066 | + // The container type is always i8. |
2067 | 2067 | patterns.add<RewriteAlignedSubByteIntExt<arith::ExtSIOp, /*isSigned=*/true>,
|
2068 | 2068 | RewriteAlignedSubByteIntExt<arith::SIToFPOp, /*isSigned=*/true>,
|
2069 | 2069 | RewriteAlignedSubByteIntTrunc>(patterns.getContext(),
|
2070 | 2070 | benefit.getBenefit() + 1);
|
2071 |
| - // The emulated type is always i8. |
| 2071 | + // The container type is always i8. |
2072 | 2072 | patterns
|
2073 | 2073 | .add<RewriteAlignedSubByteIntExt<arith::ExtUIOp, /*isSigned=*/false>,
|
2074 | 2074 | RewriteAlignedSubByteIntExt<arith::UIToFPOp, /*isSigned=*/false>>(
|
2075 | 2075 | patterns.getContext(), benefit.getBenefit() + 1);
|
2076 | 2076 | }
|
2077 | 2077 |
|
2078 |
| -// The emulated type is always i8. |
| 2078 | +// The container type is always i8. |
2079 | 2079 | void vector::populateVectorTransposeNarrowTypeRewritePatterns(
|
2080 | 2080 | RewritePatternSet &patterns, PatternBenefit benefit) {
|
2081 | 2081 | patterns.add<RewriteVectorTranspose>(patterns.getContext(), benefit);
|
|
0 commit comments