SUNphi  1.0
Todo List
File Filter.hpp
Expand as here https://stackoverflow.com/questions/41723704/how-to-filter-a-stdinteger-sequence
Member FORWARD_IS_ALIASING_TO_PAIR_OF_REFS
enforce cehck only with TensClass
Member FORWARD_IS_ALIASING_TO_REFS
enforce cehck only with TensClass
Member IS_ALIASING_ACCORDING_TO_POINTER (_p)
This is mostly broken
File Memory.hpp
: implement memory pool and cacher
Member NNARY_SMET_GOES_INSIDE (EXT_FUN,NNARY_SMET, INT_FUN)
we need to implement the same check done for CANCEL_DUPLICATED_NNARY_SMET_CALL
Member PROVIDE_MERGEABLE_COMPS_ACCORDING_TO_TWO_REFS
check that this is general enough... probably not
Member PROVIDE_POS_OF_TCS_IN_RES_TK_AND_MERGED_DELIMS_FOR_REF (ID)
Add some more explenation...
File Reference.hpp
This should be the place where the instantiation depending on the cost of the expression is made
Member SMET_GOES_ON_LHS (LHS_FUN,SMET)

why can't we make only const & on rhs?

we need to enforce SmET

Member STATIC_ASSERT_IS_SMET (...)

add costRead

add costEval

add isAliasing

Member SUNphi::_Indexer< IDyn, TensKind< H, Oth... > >::index (const DynSizes< NTotDyn > &dynSizes, const int in, const Head &head, const Tail &...tail)
fix the int types
Member SUNphi::Adder< _Refs >::Tk
Improve, the return type could be decided studying what suits best the computational
Member SUNphi::asMutable (const T &v) noexcept
Check that the "dangling reference forbidding" below, currently not working, is not actually necessary
Member SUNphi::Binder< TG, _Refs >::Binder (SMET &&smet, int id)
add check on SMET
Member SUNphi::DynSizes

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

the array must be replaced with a tuple, whose types must be deduced when instatiating the struct, such that int or long int or whatever is appropriately used!

Member SUNphi::MulAdder< _Refs >::Tk
fixit
Member SUNphi::Reference
add functionality as in Eigen
Member SUNphi::RelBinder< _BoundType, _BoundToType, _Ad, _Refs >::RelBinder (SMET &&smet, _Ad &&adapter)
add check on SMET
Class SUNphi::ScalarWrapper< _Fund, _Refs >
Check what happens if called with a SmET
Member SUNphi::ScalarWrapper< _Fund, _Refs >::ScRef
explain
Class SUNphi::TensKind< T >::_firstVectorizingComp< F, Pos, InVectorizingSize, IsLastCheckable, NextPos, G, Size, OutVectorizingSize, EnoughToVectorize, CompIsVectorizing, FallBack >
Add a lenghty description, this is a complicated piece of code! The scope is not immediate to get
Member SUNphi::TensKind< T >::firstVectorizingComp

Add the possibility that the accumulated size is more than needed, so we can split the outermost component to allow for other kind of optimization

Include a variation of the vectorization according to the kind of SIMD vector

Class SUNphi::TensStor< TK, T >
many things, including considering a static storage if size is small and statically known
Member SUNphi::TensStor< TK, T >::TensStor (const TensStor &oth)
improve memcpy, this could be parallelized in many ways, we have to implement memory manager soon