[all-commits] [llvm/llvm-project] a7c647: [Passes] Run vector-combine early with -fenable-ma...
Florian Hahn via All-commits
all-commits at lists.llvm.org
Wed Sep 22 04:49:16 PDT 2021
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: a7c6471a85380f5af644e50daf2951b41c82f1b2
https://github.com/llvm/llvm-project/commit/a7c6471a85380f5af644e50daf2951b41c82f1b2
Author: Florian Hahn <flo at fhahn.com>
Date: 2021-09-22 (Wed, 22 Sep 2021)
Changed paths:
M llvm/lib/Passes/PassBuilderPipelines.cpp
M llvm/lib/Transforms/IPO/PassManagerBuilder.cpp
M llvm/test/Other/new-pm-defaults.ll
M llvm/test/Transforms/PhaseOrdering/AArch64/matrix-extract-insert.ll
Log Message:
-----------
[Passes] Run vector-combine early with -fenable-matrix.
IR with matrix intrinsics is likely to also contain large vector
operations, which can benefit from early simplifications.
This is the last step in a series of changes to improve code-gen for
code using matrix subscript operators with the C/C++ matrix extension in
CLang, like
using matrix_t = double __attribute__((matrix_type(15, 15)));
void foo(unsigned i, matrix_t &A, matrix_t &B) {
for (unsigned j = 0; j < 4; ++j)
for (unsigned k = 0; k < i; k++)
B[k][j] -= A[k][j] * B[i][j];
}
https://clang.godbolt.org/z/6dKxK1Ed7
Reviewed By: spatel
Differential Revision: https://reviews.llvm.org/D102496
More information about the All-commits
mailing list