anchor.diff:    !DIR$ ATTRIBUTES OFFLOAD:MIC :: libxsmm_dmm_dispatch
     !DIR$ ATTRIBUTES INLINE :: libxsmm_dmm_dispatch
     FUNCTION libxsmm_dmm_dispatch(m, n, k) RESULT(f)
  -    PROCEDURE(LIBXSMM_DMM_FUNCTION), POINTER :: f
  +    PROCEDURE(LIBXSMM_XMM_FUNCTION), POINTER :: f
       INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
       INTERFACE
         !DIR$ ATTRIBUTES OFFLOAD:MIC :: libxsmm_dmm_dispatch_aux
         TYPE(C_FUNPTR) PURE FUNCTION libxsmm_dmm_dispatch_aux(m, n, k) BIND(C, NAME="libxsmm_dmm_dispatch")
  -        USE, INTRINSIC :: ISO_C_BINDING
  -        INTEGER(C_INT), INTENT(IN) :: m, n, k
  +        IMPORT :: C_FUNPTR, C_INT
  +        INTEGER(C_INT), VALUE, INTENT(IN) :: m, n, k
         END FUNCTION
       END INTERFACE
       CALL C_F_PROCPOINTER(libxsmm_dmm_dispatch_aux(m, n, k), f)
  
positive.code:   !DIR$ ATTRIBUTES OFFLOAD:MIC :: libxsmm_smm_dispatch
    !DIR$ ATTRIBUTES INLINE :: libxsmm_smm_dispatch
    FUNCTION libxsmm_smm_dispatch(m, n, k) RESULT(f)
      PROCEDURE(LIBXSMM_SMM_FUNCTION), POINTER :: f
      INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
      INTERFACE
        !DIR$ ATTRIBUTES OFFLOAD:MIC :: libxsmm_smm_dispatch_aux
        TYPE(C_FUNPTR) PURE FUNCTION libxsmm_smm_dispatch_aux(m, n, k) BIND(C, NAME="libxsmm_smm_dispatch")
          USE, INTRINSIC :: ISO_C_BINDING
          INTEGER(C_INT), INTENT(IN) :: m, n, k
        END FUNCTION
      END INTERFACE
      CALL C_F_PROCPOINTER(libxsmm_smm_dispatch_aux(m, n, k), f)
  
negative.code:   !DIR$ ATTRIBUTES INLINE :: libxsmm_dmm
    SUBROUTINE libxsmm_dmm(m, n, k, a, b, c)
      INTEGER(LIBXSMM_INTEGER_TYPE), INTENT(IN) :: m, n, k
      REAL(LIBXSMM_DOUBLE_PRECISION), TARGET, INTENT(IN) :: a($SHAPE_A), b($SHAPE_B)
      REAL(LIBXSMM_DOUBLE_PRECISION), TARGET, INTENT(INOUT) :: c($SHAPE_C)
      PROCEDURE(LIBXSMM_XMM_FUNCTION), POINTER :: xmm
      IF (LIBXSMM_MAX_MNK.GE.(m * n * k)) THEN
        xmm => libxsmm_dmm_dispatch(m, n, k)
        IF (ASSOCIATED(xmm)) THEN
          CALL xmm(C_LOC(a), C_LOC(b), C_LOC(c))
        ELSE
          CALL libxsmm_dimm(m, n, k, a, b, c)
        ENDIF
  