1
1

size_t not int everywhere. Correctly compute with size_t (don't initialize

it to a negative number). Get rid of the multiplication in the critical
path, and keep the functions as simple as possible.

This commit was SVN r26864.
Этот коммит содержится в:
George Bosilca 2012-07-25 12:41:53 +00:00
родитель 8cad1d6481
Коммит b6f4bc9656

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

@ -284,29 +284,30 @@ void mca_pml_ob1_process_pending_rdma(void);
/*
* Compute the total number of bytes on supplied descriptor
*/
static inline size_t mca_pml_ob1_compute_segment_length (size_t seg_size, void *segments, size_t count,
size_t hdrlen) {
static inline size_t
mca_pml_ob1_compute_segment_length(size_t seg_size, void *segments,
size_t count, size_t hdrlen)
{
size_t i, length = 0;
mca_btl_base_segment_t *segment = (mca_btl_base_segment_t*)segments;
for (i = 0; i < count ; ++i) {
length += segment->seg_len;
segment = (mca_btl_base_segment_t *)((char *)segment + seg_size);
}
return (length - hdrlen);
}
static inline size_t
mca_pml_ob1_compute_segment_length_base(mca_btl_base_segment_t *segments,
size_t count, size_t hdrlen)
{
size_t i, length = 0;
for (i = 0; i < count ; ++i) {
mca_btl_base_segment_t *segment =
(mca_btl_base_segment_t *)((char *) segments + i * seg_size);
length += segment->seg_len;
}
length -= hdrlen;
return length;
}
static inline int mca_pml_ob1_compute_segment_length_base (mca_btl_base_segment_t *segments,
size_t count, size_t hdrlen) {
size_t i, length;
for (i = 0, length = -hdrlen ; i < count ; ++i) {
length += segments[i].seg_len;
}
return length;
return (length - hdrlen);
}
/* represent BTL chosen for sending request */