void gemv_impl( matrix_expression<MatA, cpu_tag> const& A, vector_expression<V, cpu_tag> const& x, vector_expression<ResultV, cpu_tag>& result, typename ResultV::value_type alpha, unknown_orientation ) { gemv_impl(A,x,result,alpha,row_major()); }
void gemv( matrix_expression<M> const& A, vector_expression<V> const& x, vector_expression<ResultV>& result, typename ResultV::value_type alpha, boost::mpl::false_ ) { SIZE_CHECK(A().size1()==result().size()); SIZE_CHECK(A().size2()==x().size()); typedef typename M::orientation orientation; gemv_impl(A, x, result, alpha, orientation()); }