PSyclone
PSyclone copied to clipboard
dotproduct transformation limitation
The dotproduct transformation only works if the inner dimension of the argument is a ':'. This is too restrictive as it could have bounds as long as they are the full range e.g.
wind(1:3) in DOT_PRODUCT(basis_w1(:,df1,qp1,qp2), wind(1:3)) where wind is an array of size 3
Created branch 1834_dotproduct_trans
dotproduct takes advantage of 'is_full_range', but this just returns true if ':' notation is used, it does not understand a(1:3) where a is declared as a(3).