5
5
* reserved.
6
6
* Copyright (c) 2009 Oak Ridge National Labs. All rights reserved.
7
7
* Copyright (c) 2013 Cisco Systems, Inc. All rights reserved.
8
- * Copyright (c) 2017 Research Organization for Information Science
9
- * and Technology (RIST). All rights reserved.
8
+ * Copyright (c) 2017-2018 Research Organization for Information Science
9
+ * and Technology (RIST). All rights reserved.
10
10
* $COPYRIGHT$
11
11
*
12
12
* Additional copyrights may follow
@@ -43,11 +43,11 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
43
43
const opal_datatype_t * pData = pConvertor -> pDesc ;
44
44
dt_stack_t * pStack ; /* pointer to the position on the stack */
45
45
uint32_t pos_desc ; /* actual position in the description of the derived datatype */
46
- uint32_t count_desc ; /* the number of items already done in the actual pos_desc */
46
+ size_t count_desc ; /* the number of items already done in the actual pos_desc */
47
47
dt_elem_desc_t * description , * pElem ;
48
48
unsigned char * source_base ; /* origin of the data */
49
49
size_t raw_data = 0 ; /* sum of raw data lengths in the iov_len fields */
50
- uint32_t index = 0 , i ; /* the iov index and a simple counter */
50
+ uint32_t index = 0 ; /* the iov index and a simple counter */
51
51
52
52
assert ( (* iov_count ) > 0 );
53
53
if ( OPAL_LIKELY (pConvertor -> flags & CONVERTOR_COMPLETED ) ) {
@@ -83,15 +83,15 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
83
83
pStack = pConvertor -> pStack + pConvertor -> stack_pos ;
84
84
pos_desc = pStack -> index ;
85
85
source_base = pConvertor -> pBaseBuf + pStack -> disp ;
86
- count_desc = ( uint32_t ) pStack -> count ;
86
+ count_desc = pStack -> count ;
87
87
pStack -- ;
88
88
pConvertor -> stack_pos -- ;
89
89
pElem = & (description [pos_desc ]);
90
90
source_base += pStack -> disp ;
91
- DO_DEBUG ( opal_output ( 0 , "raw start pos_desc %d count_desc %d disp %ld\n"
92
- "stack_pos %d pos_desc %d count_desc %d disp %ld\n" ,
91
+ DO_DEBUG ( opal_output ( 0 , "raw start pos_desc %d count_desc %" PRIsize_t " disp %ld\n"
92
+ "stack_pos %d pos_desc %d count_desc %" PRIsize_t " disp %ld\n" ,
93
93
pos_desc , count_desc , (long )(source_base - pConvertor -> pBaseBuf ),
94
- pConvertor -> stack_pos , pStack -> index , ( int ) pStack -> count , (long )pStack -> disp ); );
94
+ pConvertor -> stack_pos , pStack -> index , pStack -> count , (long )pStack -> disp ); );
95
95
while ( 1 ) {
96
96
while ( pElem -> elem .common .flags & OPAL_DATATYPE_FLAG_DATA ) {
97
97
size_t blength = opal_datatype_basicDatatypes [pElem -> elem .common .type ]-> size ;
@@ -112,7 +112,7 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
112
112
count_desc = 0 ;
113
113
}
114
114
} else {
115
- for ( i = count_desc ; (i > 0 ) && (index < * iov_count ); i -- , index ++ ) {
115
+ for (size_t i = count_desc ; (i > 0 ) && (index < * iov_count ); i -- , index ++ ) {
116
116
OPAL_DATATYPE_SAFEGUARD_POINTER ( source_base , blength , pConvertor -> pBaseBuf ,
117
117
pConvertor -> pDesc , pConvertor -> count );
118
118
DO_DEBUG ( opal_output ( 0 , "raw 2. iov[%d] = {base %p, length %lu}\n" ,
@@ -134,9 +134,9 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
134
134
goto complete_loop ;
135
135
}
136
136
if ( OPAL_DATATYPE_END_LOOP == pElem -> elem .common .type ) { /* end of the current loop */
137
- DO_DEBUG ( opal_output ( 0 , "raw end_loop count %d stack_pos %d"
137
+ DO_DEBUG ( opal_output ( 0 , "raw end_loop count %" PRIsize_t " stack_pos %d"
138
138
" pos_desc %d disp %ld space %lu\n" ,
139
- ( int ) pStack -> count , pConvertor -> stack_pos ,
139
+ pStack -> count , pConvertor -> stack_pos ,
140
140
pos_desc , (long )pStack -> disp , (unsigned long )raw_data ); );
141
141
if ( -- (pStack -> count ) == 0 ) { /* end of loop */
142
142
if ( pConvertor -> stack_pos == 0 ) {
@@ -160,19 +160,18 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
160
160
}
161
161
source_base = pConvertor -> pBaseBuf + pStack -> disp ;
162
162
UPDATE_INTERNAL_COUNTERS ( description , pos_desc , pElem , count_desc );
163
- DO_DEBUG ( opal_output ( 0 , "raw new_loop count %d stack_pos %d "
163
+ DO_DEBUG ( opal_output ( 0 , "raw new_loop count %" PRIsize_t " stack_pos %d "
164
164
"pos_desc %d disp %ld space %lu\n" ,
165
- ( int ) pStack -> count , pConvertor -> stack_pos ,
165
+ pStack -> count , pConvertor -> stack_pos ,
166
166
pos_desc , (long )pStack -> disp , (unsigned long )raw_data ); );
167
167
}
168
168
if ( OPAL_DATATYPE_LOOP == pElem -> elem .common .type ) {
169
169
ptrdiff_t local_disp = (ptrdiff_t )source_base ;
170
170
ddt_endloop_desc_t * end_loop = (ddt_endloop_desc_t * )(pElem + pElem -> loop .items );
171
171
172
172
if ( pElem -> loop .common .flags & OPAL_DATATYPE_FLAG_CONTIGUOUS ) {
173
- uint32_t i ;
174
173
source_base += end_loop -> first_elem_disp ;
175
- for ( i = count_desc ; (i > 0 ) && (index < * iov_count ); i -- , index ++ ) {
174
+ for (size_t i = count_desc ; (i > 0 ) && (index < * iov_count ); i -- , index ++ ) {
176
175
OPAL_DATATYPE_SAFEGUARD_POINTER ( source_base , end_loop -> size , pConvertor -> pBaseBuf ,
177
176
pConvertor -> pDesc , pConvertor -> count );
178
177
iov [index ].iov_base = (IOVBASE_TYPE * ) source_base ;
@@ -209,7 +208,7 @@ opal_convertor_raw( opal_convertor_t* pConvertor,
209
208
/* I complete an element, next step I should go to the next one */
210
209
PUSH_STACK ( pStack , pConvertor -> stack_pos , pos_desc , OPAL_DATATYPE_UINT1 , count_desc ,
211
210
source_base - pStack -> disp - pConvertor -> pBaseBuf );
212
- DO_DEBUG ( opal_output ( 0 , "raw save stack stack_pos %d pos_desc %d count_desc %d disp %ld\n" ,
213
- pConvertor -> stack_pos , pStack -> index , ( int ) pStack -> count , (long )pStack -> disp ); );
211
+ DO_DEBUG ( opal_output ( 0 , "raw save stack stack_pos %d pos_desc %d count_desc %" PRIsize_t " disp %ld\n" ,
212
+ pConvertor -> stack_pos , pStack -> index , pStack -> count , (long )pStack -> disp ); );
214
213
return 0 ;
215
214
}
0 commit comments