15ec4892aef9cca42940d7d92302abf674365f6b7ager@chromium.org#!/bin/sh
25ec4892aef9cca42940d7d92302abf674365f6b7ager@chromium.org
3c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com# find the name of the log file to process, it must not start with a dash.
4c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comlog_file="v8.log"
5c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comfor arg in "$@"
6c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comdo
7c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  if ! expr "X${arg}" : "^X-" > /dev/null; then
8c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com    log_file=${arg}
9c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  fi
10c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comdone
11c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com
12e2902be65446e26fd63a3b4eab2f14257cf4ebafager@chromium.orgtools_path=`cd $(dirname "$0");pwd`
135aa501ca9fb4dfb30f4191aac135202fe8d80e4aager@chromium.orgif [ ! "$D8_PATH" ]; then
145aa501ca9fb4dfb30f4191aac135202fe8d80e4aager@chromium.org  d8_public=`which d8`
15b6d052d4d08b0de341804f273713741dee560c5everwaest@chromium.org  if [ -x "$d8_public" ]; then D8_PATH=$(dirname "$d8_public"); fi
165aa501ca9fb4dfb30f4191aac135202fe8d80e4aager@chromium.orgfi
17b6d052d4d08b0de341804f273713741dee560c5everwaest@chromium.org[ -n "$D8_PATH" ] || D8_PATH=$tools_path/..
18e2902be65446e26fd63a3b4eab2f14257cf4ebafager@chromium.orgd8_exec=$D8_PATH/d8
195ec4892aef9cca42940d7d92302abf674365f6b7ager@chromium.org
20b6d052d4d08b0de341804f273713741dee560c5everwaest@chromium.orgif [ ! -x "$d8_exec" ]; then
21c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  D8_PATH=`pwd`/out/native
22c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  d8_exec=$D8_PATH/d8
235aa501ca9fb4dfb30f4191aac135202fe8d80e4aager@chromium.orgfi
245ec4892aef9cca42940d7d92302abf674365f6b7ager@chromium.org
25b6d052d4d08b0de341804f273713741dee560c5everwaest@chromium.orgif [ ! -x "$d8_exec" ]; then
26c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  d8_exec=`grep -m 1 -o '".*/d8"' $log_file | sed 's/"//g'`
27c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comfi
28badaffc570baec00166b0ad3bdc96995751a7e13ricow@chromium.org
29b6d052d4d08b0de341804f273713741dee560c5everwaest@chromium.orgif [ ! -x "$d8_exec" ]; then
30c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  echo "d8 shell not found in $D8_PATH"
31c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  echo "To build, execute 'make native' from the V8 directory"
32c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.com  exit 1
33c3b670ff19220959730d7886892bc4beb95d2ebaerik.corry@gmail.comfi
34badaffc570baec00166b0ad3bdc96995751a7e13ricow@chromium.org
3571affb54842da76b24f0bb3184e9f0960523f89dkasperl@chromium.org# nm spits out 'no symbols found' messages to stderr.
365c838251403b0be9a882540f1922577abba4c872ager@chromium.orgcat $log_file | $d8_exec $tools_path/splaytree.js $tools_path/codemap.js \
37e2902be65446e26fd63a3b4eab2f14257cf4ebafager@chromium.org  $tools_path/csvparser.js $tools_path/consarray.js \
38e2902be65446e26fd63a3b4eab2f14257cf4ebafager@chromium.org  $tools_path/profile.js $tools_path/profile_view.js \
39defbd109bb9bd556bb8ece103c3b340d3552155ekasperl@chromium.org  $tools_path/logreader.js $tools_path/tickprocessor.js \
401e8da746019f818a22dfdc6f691dbc0447048cadjkummerow@chromium.org  $tools_path/SourceMap.js \
41defbd109bb9bd556bb8ece103c3b340d3552155ekasperl@chromium.org  $tools_path/tickprocessor-driver.js -- $@ 2>/dev/null
42