1
1

The END_LOOP structure change the name of one of it's fields.

This commit was SVN r8024.
Этот коммит содержится в:
George Bosilca 2005-11-07 23:18:57 +00:00
родитель f7359e24d6
Коммит 8df200528d

Просмотреть файл

@ -220,7 +220,7 @@ int32_t ompi_ddt_add( ompi_datatype_t* pdtBase, const ompi_datatype_t* pdtAdd,
pLast->elem.extent = pdtAdd->size;
pLast->elem.common.flags = localFlags | DT_FLAG_CONTIGUOUS;
pLast++;
CREATE_LOOP_END( pLast, 2, true_ub, pdtAdd->size, localFlags );
CREATE_LOOP_END( pLast, 2, disp, pdtAdd->size, localFlags );
pdtBase->desc.used += 3;
pdtBase->btypes[DT_LOOP] = 1;
pdtBase->btypes[DT_END_LOOP] = 1;
@ -264,13 +264,18 @@ int32_t ompi_ddt_add( ompi_datatype_t* pdtBase, const ompi_datatype_t* pdtAdd,
for( i = 0; i < pdtAdd->desc.used; i++ ) {
pLast->elem = pdtAdd->desc.desc[i].elem;
pLast->elem.common.flags |= localFlags;
if( DT_FLAG_DATA & pdtAdd->desc.desc[i].elem.common.flags )
if( DT_FLAG_DATA & pLast->elem.common.flags )
pLast->elem.disp += disp;
else if( DT_END_LOOP == pLast->elem.common.type ) {
pLast->end_loop.first_elem_disp += disp;
}
pLast++;
}
pdtBase->desc.used += pdtAdd->desc.used;
if( pLoop != NULL ) {
CREATE_LOOP_END( pLast, pdtAdd->desc.used + 1, true_ub - true_lb,
int index = GET_FIRST_NON_LOOP( pLoop );
assert( pLoop[index].elem.common.flags & DT_FLAG_DATA );
CREATE_LOOP_END( pLast, pdtAdd->desc.used + 1, pLoop[index].elem.disp,
pdtAdd->size, pLoop->loop.common.flags );
}
}