|
From: <sv...@va...> - 2007-01-16 05:35:48
|
Author: sewardj
Date: 2007-01-16 05:35:46 +0000 (Tue, 16 Jan 2007)
New Revision: 6523
Log:
Inline a bunch of helper functions, in an attempt to minimise
extraneous frames in backtraces created by the library.
Modified:
trunk/auxprogs/libmpiwrap.c
Modified: trunk/auxprogs/libmpiwrap.c
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- trunk/auxprogs/libmpiwrap.c 2007-01-15 11:50:08 UTC (rev 6522)
+++ trunk/auxprogs/libmpiwrap.c 2007-01-16 05:35:46 UTC (rev 6523)
@@ -506,7 +506,7 @@
/*--- Unpicking datatypes ---*/
/*------------------------------------------------------------*/
=20
-static=20
+static __inline__
void walk_type_array ( void(*f)(void*,long), char* base,=20
MPI_Datatype ty, long count );
=20
@@ -707,7 +707,7 @@
into a different routine is so it can attempt to optimise the case
where the array elements are contiguous and packed together without
holes. */
-static=20
+static __inline__
void walk_type_array ( void(*f)(void*,long), char* base,=20
MPI_Datatype elemTy, long count )
{
@@ -762,12 +762,11 @@
=20
/* ----------------
Do corresponding checks on memory areas defined using a=20
- straightforward (start, length) description. Not inlined
- so as to make any resulting error tracebacks easier to read.
+ straightforward (start, length) description.
----------------
*/
=20
-static
+static __inline__
void check_mem_is_defined_untyped ( void* buffer, long nbytes )
{
if (nbytes > 0) {
@@ -775,7 +774,7 @@
}
}
=20
-static
+static __inline__
void check_mem_is_addressable_untyped ( void* buffer, long nbytes )
{
if (nbytes > 0) {
@@ -783,7 +782,7 @@
}
}
=20
-static
+static __inline__
void make_mem_defined_if_addressable_untyped ( void* buffer, long nbytes=
)
{
if (nbytes > 0) {
@@ -791,7 +790,7 @@
}
}
=20
-static
+static __inline__
void make_mem_defined_if_addressable_if_success_untyped ( int err,=20
void* buffer, long nbytes )
{
@@ -810,7 +809,7 @@
/* Check that the specified area is both addressible and contains
initialised data, and cause V to complain if not. */
=20
-static
+static __inline__
void check_mem_is_defined ( char* buffer, long count, MPI_Datatype datat=
ype )
{
walk_type_array( check_mem_is_defined_untyped, buffer, datatype, coun=
t );
@@ -821,7 +820,7 @@
complain if not. Doesn't matter whether the data there is
initialised or not. */
=20
-static
+static __inline__
void check_mem_is_addressable ( void *buffer, long count, MPI_Datatype d=
atatype )
{
walk_type_array( check_mem_is_addressable_untyped, buffer, datatype, =
count );
@@ -831,14 +830,14 @@
/* Set the specified area to 'defined for each byte which is
addressible' state. */
=20
-static
+static __inline__
void make_mem_defined_if_addressable ( void *buffer, int count, MPI_Data=
type datatype )
{
walk_type_array( make_mem_defined_if_addressable_untyped,
buffer, datatype, count );
}
=20
-static
+static __inline__
void=20
make_mem_defined_if_addressable_if_success ( int err, void *buffer, int =
count,=20
MPI_Datatype datatype )
@@ -1185,7 +1184,7 @@
/* --- Isend --- */
/* rd: (buf,count,datatype) */
/* wr: *request */
-static
+static __inline__
int generic_Isend(void *buf, int count, MPI_Datatype datatype,=20
int dest, int tag, MPI_Comm comm,=20
MPI_Request* request)
|