template <typename Index, int LhsStorageOrder, bool ConjugateLhs, \
int RhsStorageOrder, bool ConjugateRhs, int UpLo> \
struct general_matrix_matrix_triangular_product<Index,Scalar,LhsStorageOrder,ConjugateLhs, \
static
EIGEN_STRONG_INLINE void run(Index size, Index depth,
const Scalar* lhs, Index lhsStride, \
const Scalar*
rhs, Index rhsStride, Scalar* res, Index resStride, Scalar alpha) \
{ \
general_matrix_matrix_rankupdate<Index,Scalar,LhsStorageOrder,ConjugateLhs,ColMajor,UpLo> \
::run(size,depth,lhs,lhsStride,
rhs,rhsStride,res,resStride,alpha); \
} else { \
general_matrix_matrix_triangular_product<Index, \
Scalar, LhsStorageOrder, ConjugateLhs, \
Scalar, RhsStorageOrder, ConjugateRhs,
\ ::run(size,depth,lhs,lhsStride,
rhs,rhsStride,res,resStride,alpha); \
} \
} \
};
#define EIGEN_STRONG_INLINE
void rhs(const real_t *x, real_t *f)