Hi,
I'm using following derived type for an extended number representation:
type :: XNT_TYPE_XNUM !(S)ignificant real(XNT_SK) :: s !(E)xponent integer(XNT_EK) :: e end type XNT_TYPE_XNUM
Somewhere I've declared the two variables:
type(XNT_TYPE_XNUM), target :: ps(2,nl,nm) ... type(XNT_TYPE_XNUM) :: pt(2,nl,3)
When I do the assignment:
pt(:,:,2)=ps(:,:,j)
the vectorization report says:
vector dependence: assumed ANTI dependence between PT line xxxx and line xxxx
When writing instead:
pt(:,:,2)%s=ps(:,:,j)%s pt(:,:,2)%e=ps(:,:,j)%e
then vectorization is possible but inefficient.
Can anybody tell me the reason why the compiler finds a dependence???
Thanks in advance!!