valgrind.sh 1.3 KB

1234567891011121314151617181920212223242526272829303132
  1. #!/bin/bash
  2. #
  3. # StarPU --- Runtime system for heterogeneous multicore architectures.
  4. #
  5. # Copyright (C) 2016, 2017 CNRS
  6. #
  7. # StarPU is free software; you can redistribute it and/or modify
  8. # it under the terms of the GNU Lesser General Public License as published by
  9. # the Free Software Foundation; either version 2.1 of the License, or (at
  10. # your option) any later version.
  11. #
  12. # StarPU is distributed in the hope that it will be useful, but
  13. # WITHOUT ANY WARRANTY; without even the implied warranty of
  14. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
  15. #
  16. # See the GNU Lesser General Public License in COPYING.LGPL for more details.
  17. EXEC=$(basename $0 .sh)
  18. if test "$EXEC" == "valgrind"
  19. then
  20. RUN="valgrind --track-origins=yes --show-reachable=yes --leak-check=full --errors-for-leak-kinds=all --show-leak-kinds=all"
  21. elif test "$EXEC" == "valgrind_xml"
  22. then
  23. mkdir -p valgrind
  24. XML_FILE=$(mktemp -p valgrind starpu-valgrind_XXXXXXXXXX.xml)
  25. RUN="valgrind --track-origins=yes --show-reachable=yes --leak-check=full --errors-for-leak-kinds=all --show-leak-kinds=all --xml=yes --xml-file=${XML_FILE}"
  26. else
  27. RUN="valgrind --tool=$EXEC --error-exitcode=42"
  28. fi
  29. SUPPRESSIONS=$(for f in $(dirname $0)/*.suppr ; do echo "--suppressions=$f" ; done)
  30. $RUN --num-callers=42 --gen-suppressions=all $SUPPRESSIONS $*