diff options
Diffstat (limited to 'reproduce/software/patches/valgrind-3.15.0-mpi-fix1.patch')
| -rw-r--r-- | reproduce/software/patches/valgrind-3.15.0-mpi-fix1.patch | 37 | 
1 files changed, 37 insertions, 0 deletions
| diff --git a/reproduce/software/patches/valgrind-3.15.0-mpi-fix1.patch b/reproduce/software/patches/valgrind-3.15.0-mpi-fix1.patch new file mode 100644 index 0000000..94dcab5 --- /dev/null +++ b/reproduce/software/patches/valgrind-3.15.0-mpi-fix1.patch @@ -0,0 +1,37 @@ +--- + mpi/libmpiwrap.c |   12 +++++++++++- + 1 file changed, 11 insertions(+), 1 deletion(-) + Patch by Samuel Thibault: + https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=946329;msg=10 + and hacked further by Boud Roukema 2020-05-10. +--- a/mpi/libmpiwrap.c ++++ b/mpi/libmpiwrap.c +@@ -278,8 +278,12 @@ static void showTy ( FILE* f, MPI_Dataty +    else if (ty == MPI_LONG_INT)       fprintf(f,"LONG_INT"); +    else if (ty == MPI_SHORT_INT)      fprintf(f,"SHORT_INT"); +    else if (ty == MPI_2INT)           fprintf(f,"2INT"); ++#  if defined(MPI_UB_ENABLED_IN_MPI1) +    else if (ty == MPI_UB)             fprintf(f,"UB"); ++#  endif ++#  if defined(MPI_LB_ENABLED_IN_MPI1) +    else if (ty == MPI_LB)             fprintf(f,"LB"); ++#  endif + #  if defined(MPI_WCHAR) +    else if (ty == MPI_WCHAR)          fprintf(f,"WCHAR"); + #  endif +@@ -733,8 +737,14 @@ void walk_type ( void(*f)(void*,long), c +          f(base + offsetof(Ty,loc), sizeof(int)); +          return; +       } +-      if (ty == MPI_LB || ty == MPI_UB) ++#if defined(MPI_LB_ENABLED_IN_MPI1) ++      if (ty == MPI_LB) ++         return; /* have zero size, so nothing needs to be done */ ++#endif ++#if defined(MPI_UB_ENABLED_IN_MPI1) ++      if (ty == MPI_UB) +          return; /* have zero size, so nothing needs to be done */ ++#endif +       goto unhandled; +       /*NOTREACHED*/ +    } | 
