diff options
author | jyasskin@chromium.org <jyasskin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-05 19:39:38 +0000 |
---|---|---|
committer | jyasskin@chromium.org <jyasskin@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-03-05 19:39:38 +0000 |
commit | fe215da7c1385d11ccec59f058c8c7ea315fd0c1 (patch) | |
tree | bd9be936b0caa4ed0a740239647ccf5494feccf3 /tools | |
parent | 62b54ebb64ffe105b7c2684ac6b2fca184a022e0 (diff) | |
download | chromium_src-fe215da7c1385d11ccec59f058c8c7ea315fd0c1.zip chromium_src-fe215da7c1385d11ccec59f058c8c7ea315fd0c1.tar.gz chromium_src-fe215da7c1385d11ccec59f058c8c7ea315fd0c1.tar.bz2 |
Have valgrind use a gdb that matches the word width of the binary.
Review URL: https://chromiumcodereview.appspot.com/12385063
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@186230 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'tools')
-rwxr-xr-x | tools/valgrind/valgrind.sh | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/tools/valgrind/valgrind.sh b/tools/valgrind/valgrind.sh index 8e9b8a1..78781b8 100755 --- a/tools/valgrind/valgrind.sh +++ b/tools/valgrind/valgrind.sh @@ -17,10 +17,15 @@ export THISDIR=`dirname $0` setup_memcheck() { RUN_COMMAND="valgrind" - # Prefer a 32-bit gdb if it's available. - GDB="/usr/bin/gdb32"; - if [ ! -x $GDB ]; then - GDB="gdb" + GDB=gdb + EXE_INFO=$(file $1) + if [[ $? -eq 0 ]]; then + # Prefer a gdb that matches the executable if it's available. + if [[ "$EXE_INFO" == *32-bit* && -x /usr/bin/gdb32 ]]; then + GDB="/usr/bin/gdb32"; + elif [[ "$EXE_INFO" == *64-bit* && -x /usr/bin/gdb64 ]]; then + GDB="/usr/bin/gdb64"; + fi fi # Prompt to attach gdb when there was an error detected. @@ -69,7 +74,7 @@ if echo "$@" | grep "\-\-tool" ; then fi case $TOOL_NAME in - memcheck*) setup_memcheck;; + memcheck*) setup_memcheck "$1";; tsan*) setup_tsan;; *) setup_unknown;; esac |