[PATCH] D43932: [Polly][GEMM] Include parameter constraints in isMatMulOperandAcc

Theodoros Theodoridis via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 7 06:10:50 PST 2018


ttheodor added a comment.

`gemm.cpp` is:

  /* C := alpha*A*B + beta*C */
  void kernel_gemm(int _PB_NI, int _PB_NJ, int _PB_NK, double alpha, double beta,
                   double *A, double *B, double *C) {
      for (int i = 0; i < _PB_NI; i++)
          for (int j = 0; j < _PB_NJ; j++) {
              C[i * _PB_NJ + j] *= beta;
              for (int k = 0; k < _PB_NK; ++k)
                  C[i * _PB_NJ + j] +=
                      alpha * A[i * _PB_NK + k] * B[k * _PB_NJ + j];
          }
  }

The one I posted in the e-mail is actually wrong (I didn't linearize properly the accesses) but incidentally exhibits the same behavior when it comes to pattern matching.


https://reviews.llvm.org/D43932





More information about the llvm-commits mailing list