nmpp
Функции

Функции

void vec_Swap (nmreg ar0, nmreg gr0, nmreg ar1, nmreg gr1, nmreg ar4, nmreg gr4, nmreg gr5, nmreg ar6, nmreg gr6)
 

Подробное описание

\~russian Ядро функции mtr_SubVN_Abs(). 
\~english mtr_SubVN_Abs() function core. 
\~

Функция осуществляет два одноыременных копирования:
[ar0++gr0] => [ar4++gr4]
[ar1++gr1] => [ar6++gr6]
если ar6=ar0,gr6=gr0, ar4=ar1,gr4=gr1
то выполняется перестановка двух векторов
Действие функции эквивалентно следующим псевдоинструкциям:

rep N ram =[ar0++gr0];
rep N data=[ar1++gr1] with data;
rep N [ar6++gr6]=afifo with ram;
rep N [ar4++gr4]=afifo;
Аргументы
ar0
указатель на столбец SrcMtr1
gr0SrcMtr1 stride
ar1
указатель на столбец SrcMtr2
gr1SrcMtr2 stride
ar4
указатель на столбец DstMtr1
gr4DstVec1 stride
gr5
Высота матриц N = [0,1,2...31,32,33,...]
ar6
указатель на столбец DstMtr2
gr6DstVec2 stride


Restrictions:
При выходе из функции изменяется содержимое регистров: ar0,ar1,ar4,ar6.