@@ -1313,26 +1313,26 @@ static Value rewriteI2ToI8Ext(PatternRewriter &rewriter, Location loc,
13131313 Value i8Vector = bitcastSubByteVectorToI8 (rewriter, loc, srcValue);
13141314
13151315 // 2. Extract each i2 element
1316- // Element 0 (bits 0-1)
1317- Value elem0 = extFn (rewriter, loc, i8Vector, 0 , 2 );
1318- // Element 1 (bits 2-3)
1319- Value elem1 = extFn (rewriter, loc, i8Vector, 2 , 2 );
1320- // Element 2 (bits 4-5)
1321- Value elem2 = extFn (rewriter, loc, i8Vector, 4 , 2 );
1322- // Element 3 (bits 6-7)
1323- Value elem3 = extFn (rewriter, loc, i8Vector, 6 , 2 );
1316+ // Positon 0 (bits 0-1)
1317+ Value vec0 = extFn (rewriter, loc, i8Vector, 0 , 2 );
1318+ // Position 1 (bits 2-3)
1319+ Value vec1 = extFn (rewriter, loc, i8Vector, 2 , 2 );
1320+ // Position 2 (bits 4-5)
1321+ Value vec2 = extFn (rewriter, loc, i8Vector, 4 , 2 );
1322+ // Position 3 (bits 6-7)
1323+ Value vec3 = extFn (rewriter, loc, i8Vector, 6 , 2 );
13241324
13251325 // 3. Interleave all 4 elements by first interleaving
13261326 // even elements and then odd
1327- // elem0 = [0,0,0,0]
1328- // elem1 = [1,1,1,1]
1329- // elem2 = [2,2,2,2]
1330- // elem3 = [3,3,3,3]
1331- // 02 = [0,2,0,2]
1332- // 13 = [1,3,1,3]
1333- // 0213 = [0,1,2,3]
1334- Value interleave02 = rewriter.create <vector::InterleaveOp>(loc, elem0, elem2 );
1335- Value interleave13 = rewriter.create <vector::InterleaveOp>(loc, elem1, elem3 );
1327+ // vec0 = [0,0,0,0],...
1328+ // vec1 = [1,1,1,1],...
1329+ // vec2 = [2,2,2,2],...
1330+ // vec3 = [3,3,3,3],...
1331+ // 02 = [0,2,0,2,...],...
1332+ // 13 = [1,3,1,3,...],...
1333+ // 0213 = [0,1,2,3,...],...
1334+ Value interleave02 = rewriter.create <vector::InterleaveOp>(loc, vec0, vec2 );
1335+ Value interleave13 = rewriter.create <vector::InterleaveOp>(loc, vec1, vec3 );
13361336 return rewriter.create <vector::InterleaveOp>(loc, interleave02, interleave13);
13371337}
13381338
0 commit comments