Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
fix reduce_scatter ompi
[simgrid.git] / src / smpi / colls / reduce_scatter-ompi.c
index c95c017..e188c00 100644 (file)
@@ -96,9 +96,9 @@ smpi_coll_tuned_reduce_scatter_ompi_basic_recursivehalving(void *sbuf,
     if(_xbt_replay_is_active()){
       recv_buf_free = (char*) SMPI_SHARED_MALLOC(buf_size);
     }else
-#else
-      recv_buf_free = (char*) xbt_malloc(buf_size);
 #endif
+      recv_buf_free = (char*) xbt_malloc(buf_size);
+
     recv_buf = recv_buf_free - lb;
     if (NULL == recv_buf_free) {
         err = MPI_ERR_OTHER;
@@ -110,9 +110,9 @@ smpi_coll_tuned_reduce_scatter_ompi_basic_recursivehalving(void *sbuf,
     if(_xbt_replay_is_active()){
       result_buf_free = (char*) SMPI_SHARED_MALLOC(buf_size);
     }else
-#else
-      result_buf_free = (char*) xbt_malloc(buf_size);
 #endif
+      result_buf_free = (char*) xbt_malloc(buf_size);
+
     result_buf = result_buf_free - lb;
    
     /* copy local buffer into the temporary results */
@@ -302,16 +302,14 @@ smpi_coll_tuned_reduce_scatter_ompi_basic_recursivehalving(void *sbuf,
 
  cleanup:
     if (NULL != disps) xbt_free(disps);
-#ifdef WIN32
     if (!_xbt_replay_is_active()){
       if (NULL != recv_buf_free) xbt_free(recv_buf_free);
       if (NULL != result_buf_free) xbt_free(result_buf_free);
-    }else{
-#else
+    }
+#ifndef WIN32
+    else{
       if (NULL != recv_buf_free) SMPI_SHARED_FREE(recv_buf_free);
       if (NULL != result_buf_free) SMPI_SHARED_FREE(result_buf_free);
-#endif
-#ifdef WIN32
     }
 #endif
     return err;