20 template <
typename Xpr>
23 template <
typename Scalar,
int Rows,
int Cols,
int Options,
int MaxRows,
int MaxCols>
26 template <
typename Scalar,
int Rows,
int Cols,
int Options,
int MaxRows,
int MaxCols>
29 template <
typename Xpr,
int BlockRows,
int BlockCols>
32 template <
typename Xpr,
int BlockRows,
int BlockCols>
34 : std::integral_constant<bool, eigen_fill_helper<Xpr>::value &&
35 (Xpr::IsRowMajor ? (BlockRows == 1) : (BlockCols == 1))> {};
37 template <
typename Xpr,
int Options>
40 template <
typename Xpr,
int Options,
int OuterStr
ide_>
42 : std::integral_constant<bool, eigen_fill_helper<Xpr>::value &&
43 enum_eq_not_dynamic(OuterStride_, Xpr::InnerSizeAtCompileTime)> {};
45 template <
typename Xpr,
int Options,
int OuterStr
ide_>
49 template <
typename Xpr,
int Options,
int InnerStr
ide_>
53 template <
typename Xpr,
int Options,
int OuterStr
ide_>
57 template <
typename Xpr>
62 using Constant =
typename PlainObject::ConstantReturnType;
67 template <
typename SrcXpr>
73 #if EIGEN_COMP_MSVC || defined(EIGEN_GPU_COMPILE_PHASE)
74 template <
typename Xpr>
75 struct eigen_fill_impl<Xpr, true> : eigen_fill_impl<Xpr, false> {};
77 template <
typename Xpr>
82 fill_n(dst.data(), dst.size(),
val);
84 template <
typename SrcXpr>
93 template <
typename Xpr>
98 template <
typename Xpr>
102 using Zero =
typename PlainObject::ZeroReturnType;
104 const Zero src(dst.rows(), dst.cols());
107 template <
typename SrcXpr>
113 template <
typename Xpr>
118 const size_t num_bytes = dst.size() *
sizeof(
Scalar);
119 if (num_bytes == 0)
return;
120 void* dst_ptr =
static_cast<void*
>(dst.data());
121 #ifndef EIGEN_NO_DEBUG
123 eigen_assert((dst_ptr !=
nullptr) &&
"null pointer dereference error!");
126 memset(dst_ptr, 0, num_bytes);
128 template <
typename SrcXpr>
#define EIGEN_USING_STD(FUNC)
Definition: Macros.h:1090
#define EIGEN_DEVICE_FUNC
Definition: Macros.h:892
#define eigen_assert(x)
Definition: Macros.h:910
#define EIGEN_STRONG_INLINE
Definition: Macros.h:834
SCALAR Scalar
Definition: bench_gemm.cpp:45
General-purpose arrays with easy API for coefficient-wise operations.
Definition: Array.h:48
Expression of a fixed-size or dynamic-size block.
Definition: Block.h:110
Convenience specialization of Stride to specify only an inner stride See class Map for some examples.
Definition: Stride.h:93
A matrix or vector expression mapping an existing array of data.
Definition: Map.h:96
The matrix class, also used for vectors and row-vectors.
Definition: Eigen/Eigen/src/Core/Matrix.h:186
Convenience specialization of Stride to specify only an outer stride See class Map for some examples.
Definition: Stride.h:104
Holds strides information for Map.
Definition: Stride.h:55
#define max(a, b)
Definition: datatypes.h:23
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void resize_if_allowed(DstXprType &dst, const SrcXprType &src, const Functor &)
Definition: AssignEvaluator.h:703
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE EIGEN_CONSTEXPR void call_dense_assignment_loop(DstXprType &dst, const SrcXprType &src, const Functor &func)
Definition: AssignEvaluator.h:720
EIGEN_DEVICE_FUNC void throw_std_bad_alloc()
Definition: Memory.h:110
Namespace containing all symbols from the Eigen library.
Definition: bench_norm.cpp:70
auto run(Kernel kernel, Args &&... args) -> decltype(kernel(args...))
Definition: gpu_test_helper.h:414
squared absolute value
Definition: GlobalFunctions.h:87
val
Definition: calibrate.py:119
Definition: Eigen_Colamd.h:49
Template functor for scalar/packet assignment.
Definition: AssignmentFunctors.h:25
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const Scalar &val)
Definition: Fill.h:63
typename Xpr::PlainObject PlainObject
Definition: Fill.h:61
typename PlainObject::ConstantReturnType Constant
Definition: Fill.h:62
typename Xpr::Scalar Scalar
Definition: Fill.h:59
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const SrcXpr &src)
Definition: Fill.h:68
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const SrcXpr &src)
Definition: Fill.h:85
typename Xpr::Scalar Scalar
Definition: Fill.h:79
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const Scalar &val)
Definition: Fill.h:80
Definition: ForwardDeclarations.h:512
static constexpr bool value
Definition: Fill.h:95
typename PlainObject::ZeroReturnType Zero
Definition: Fill.h:102
typename Xpr::PlainObject PlainObject
Definition: Fill.h:101
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const SrcXpr &src)
Definition: Fill.h:108
typename Xpr::Scalar Scalar
Definition: Fill.h:100
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst)
Definition: Fill.h:103
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst, const SrcXpr &src)
Definition: Fill.h:129
static EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE void run(Xpr &dst)
Definition: Fill.h:117
typename Xpr::Scalar Scalar
Definition: Fill.h:115
Definition: ForwardDeclarations.h:516
Definition: NullaryFunctors.h:21