diff --git a/src/intel/tools/intel_stub_gpu.in b/src/intel/tools/intel_stub_gpu.in index f8f09e0dd15..068cda91cf7 100755 --- a/src/intel/tools/intel_stub_gpu.in +++ b/src/intel/tools/intel_stub_gpu.in @@ -18,7 +18,8 @@ EOF exit 0 } -gdb="" +gdb= +valgrind= platform="skl" while true; do @@ -31,6 +32,10 @@ while true; do gdb=1 shift ;; + --valgrind) + valgrind=1 + shift + ;; -p) platform=$2 shift 2 @@ -66,8 +71,11 @@ done INTEL_STUB_GPU_PLATFORM=$platform ld_preload="@install_libdir@/libintel_noop_drm_shim.so${LD_PRELOAD:+:$LD_PRELOAD}" -if [ -z $gdb ]; then - LD_PRELOAD=$ld_preload INTEL_STUB_GPU_PLATFORM=$platform exec "$@" -else +if [ -n "$gdb" ]; then gdb -iex "set exec-wrapper env LD_PRELOAD=$ld_preload INTEL_STUB_GPU_PLATFORM=$platform" --args "$@" + LD_PRELOAD=$ld_preload INTEL_STUB_GPU_PLATFORM=$platform exec "$@" +elif [ -n "$valgrind" ]; then + LD_PRELOAD=$ld_preload INTEL_STUB_GPU_PLATFORM=$platform exec valgrind "$@" +else + LD_PRELOAD=$ld_preload INTEL_STUB_GPU_PLATFORM=$platform exec "$@" fi