blob: aa6b84605ec6688d64ddb260e58202c1fd84f35b [file] [edit]
// This file is part of Eigen, a lightweight C++ template library
// for linear algebra.
//
// SPDX-FileCopyrightText: The Eigen Authors
// SPDX-License-Identifier: MPL-2.0
#include "main.h"
#include <Eigen/Tensor>
using DynamicDims = DSizes<Index, 3>;
using StaticDims = Sizes<2, 3, 4>;
using IndexTuple = internal::IndexTuple<Index, type2index<3>>;
using DynamicIndexList = IndexList<Index, type2index<3>>;
static_assert(std::is_trivially_destructible<TensorOpCost>::value, "TensorOpCost should have a trivial destructor");
static_assert(std::is_move_constructible<TensorOpCost>::value, "TensorOpCost should be move constructible");
static_assert(std::is_move_constructible<DynamicDims>::value, "DSizes should be move constructible");
static_assert(std::is_trivially_destructible<DynamicDims>::value, "DSizes should have a trivial destructor");
static_assert(std::is_move_constructible<StaticDims>::value, "Sizes should be move constructible");
static_assert(std::is_trivially_destructible<StaticDims>::value, "Sizes should have a trivial destructor");
static_assert(std::is_move_constructible<Pair<int, int>>::value, "Pair should be move constructible");
static_assert(std::is_trivially_destructible<Pair<int, int>>::value, "Pair should have a trivial destructor");
static_assert(std::is_move_constructible<IndexPair<Index>>::value, "IndexPair should be move constructible");
static_assert(std::is_trivially_destructible<IndexPair<Index>>::value, "IndexPair should have a trivial destructor");
static_assert(std::is_move_constructible<IndexTuple>::value, "IndexTuple should be move constructible");
static_assert(std::is_trivially_destructible<IndexTuple>::value, "IndexTuple should have a trivial destructor");
static_assert(std::is_move_constructible<DynamicIndexList>::value, "IndexList should be move constructible");
static_assert(std::is_trivially_destructible<DynamicIndexList>::value, "IndexList should have a trivial destructor");
constexpr TensorOpCost default_cost;
static_assert(default_cost.bytes_loaded() == 0.0, "TensorOpCost default bytes_loaded should be zero");
static_assert(default_cost.bytes_stored() == 0.0, "TensorOpCost default bytes_stored should be zero");
static_assert(default_cost.compute_cycles() == 0.0, "TensorOpCost default compute_cycles should be zero");
EIGEN_DECLARE_TEST(tensor_special_members) {}