anchor.diff:    SUBROUTINE libxsmm_sblasmm(m, n, k, a, b, c)
       INTEGER(LIBXSMM_INTEGER_TYPE), PARAMETER :: T = LIBXSMM_SINGLE_PRECISION
       INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
  -    REAL(T), INTENT(IN) :: a($SHAPE_AS1,$SHAPE_AS2), b($SHAPE_BS1,$SHAPE_BS2)
  -    REAL(T), INTENT(INOUT) :: c($SHAPE_C1,$SHAPE_C2)
  +    REAL(T), INTENT(IN) :: a(:,:), b(:,:)
  +    REAL(T), INTENT(INOUT) :: c(:,:)
       REAL(T), PARAMETER :: alpha = 1, beta = 1
       IF (0.NE.LIBXSMM_COL_MAJOR) THEN
         CALL sgemm('N', 'N', m, n, k, alpha, a, m, b, k, beta, c, SIZE(c, 1))
  
positive.code:     INTEGER(LIBXSMM_INTEGER_TYPE), PARAMETER :: T = LIBXSMM_SINGLE_PRECISION
      INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
      INTEGER(LIBXSMM_INTEGER_TYPE) :: i, j
      REAL(T), INTENT(IN) :: a($SHAPE_AS1,$SHAPE_AS2), b($SHAPE_BS1,$SHAPE_BS2)
      REAL(T), INTENT(INOUT) :: c($SHAPE_C1,$SHAPE_C2)
      REAL(T) :: x($SHAPE_AT1,$SHAPE_AT2), y($SHAPE_BT1,$SHAPE_BT2)
      IF (0.NE.LIBXSMM_COL_MAJOR) THEN
        !DIR$ OMP SIMD COLLAPSE(2)
        DO j = LBOUND(b, 2), LBOUND(b, 2) + n - 1
  
negative.code:     INTEGER(LIBXSMM_INTEGER_TYPE), PARAMETER :: T = LIBXSMM_DOUBLE_PRECISION
      INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
      INTEGER(LIBXSMM_INTEGER_TYPE) :: i, j
      REAL(T), INTENT(IN), TARGET, CONTIGUOUS :: a(:,:), b(:,:)
      REAL(T), INTENT(INOUT) :: c($SHAPE_C1,$SHAPE_C2)
      REAL(T), POINTER :: x(:,:), y(:,:)
      IF (0.NE.LIBXSMM_COL_MAJOR) THEN
        !DIR$ OMP SIMD COLLAPSE(2)
        DO j = LBOUND(b, 2), LBOUND(b, 2) + n - 1
  