Skip to content

Commit 017ce22

Browse files
fwyzardsmuzaffar
authored andcommitted
Extend support for diagonal matrices on CUDA devices
1 parent 000e000 commit 017ce22

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

Eigen/src/Core/DiagonalMatrix.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -366,6 +366,7 @@ template<> struct AssignmentKind<DenseShape,DiagonalShape> { typedef Diagonal2De
366366
template< typename DstXprType, typename SrcXprType, typename Functor>
367367
struct Assignment<DstXprType, SrcXprType, Functor, Diagonal2Dense>
368368
{
369+
EIGEN_DEVICE_FUNC
369370
static void run(DstXprType &dst, const SrcXprType &src, const internal::assign_op<typename DstXprType::Scalar,typename SrcXprType::Scalar> &/*func*/)
370371
{
371372
Index dstRows = src.rows();
@@ -377,9 +378,11 @@ struct Assignment<DstXprType, SrcXprType, Functor, Diagonal2Dense>
377378
dst.diagonal() = src.diagonal();
378379
}
379380

381+
EIGEN_DEVICE_FUNC
380382
static void run(DstXprType &dst, const SrcXprType &src, const internal::add_assign_op<typename DstXprType::Scalar,typename SrcXprType::Scalar> &/*func*/)
381383
{ dst.diagonal() += src.diagonal(); }
382384

385+
EIGEN_DEVICE_FUNC
383386
static void run(DstXprType &dst, const SrcXprType &src, const internal::sub_assign_op<typename DstXprType::Scalar,typename SrcXprType::Scalar> &/*func*/)
384387
{ dst.diagonal() -= src.diagonal(); }
385388
};

0 commit comments

Comments
 (0)