author | Jan Vrany <jan.vrany@fit.cvut.cz> |
Mon, 20 Apr 2015 14:17:58 +0100 | |
changeset 269 | e1872c56d1d0 |
parent 261 | 5b9e93c1135d |
child 271 | c81b238392b5 |
permissions | -rwxr-xr-x |
3 | 1 |
#!/bin/sh |
2 |
||
181
8b5d11633206
Bug fixex in Smalltalk/X scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
127
diff
changeset
|
3 |
TOP=$(dirname $0)/../../../.. |
74 | 4 |
|
3 | 5 |
DEBUGGER= |
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
6 |
CALLGRIND= |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
7 |
SMALLTALK_OPTS= |
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
8 |
CALLGRIND_OPTS= |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
9 |
VM_OPTS= |
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
10 |
VM=$TOP/stx/projects/smalltalk/stx |
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
11 |
|
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
12 |
# On Windows use stx.com rather than stx.exe as exe has co |
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
13 |
# console output |
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
14 |
|
103
3b23cf0c1a88
Fix in benchrmark-runner.sh for Smalltalk/X.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
101
diff
changeset
|
15 |
if [ ! -z "$OS" ]; then |
221
4d5089f4fe81
Fix in benchmark-runner.sh: make it running inder Win-Bash.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
198
diff
changeset
|
16 |
if [ "$OS" = "Windows_NT" ]; then |
103
3b23cf0c1a88
Fix in benchrmark-runner.sh for Smalltalk/X.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
101
diff
changeset
|
17 |
VM=$VM.com |
3b23cf0c1a88
Fix in benchrmark-runner.sh for Smalltalk/X.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
101
diff
changeset
|
18 |
fi |
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
19 |
fi |
3 | 20 |
|
21 |
if [ "$1" = "--help" ] |
|
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
22 |
then |
124
e5582f62aab5
Fixed command line argument handling and error reporting.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
103
diff
changeset
|
23 |
"$VM" -I --execute "$DIR/benchmark-runner.rc" ${1+"$@"} |
3 | 24 |
# ......................... |
25 |
fi |
|
26 |
||
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
27 |
|
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
28 |
while [ ! -z "$1" ]; do |
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
29 |
case "$1" in |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
30 |
--gdb) |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
31 |
DEBUGGER=gdb |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
32 |
;; |
198
ac6fe48a684d
Fixed --cgdb option for Smalltalk/X benchmark-runner.sh.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
181
diff
changeset
|
33 |
--cgdb) |
ac6fe48a684d
Fixed --cgdb option for Smalltalk/X benchmark-runner.sh.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
181
diff
changeset
|
34 |
DEBUGGER=cgdb |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
35 |
;; |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
36 |
--callgrind) |
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
37 |
CALLGRIND="valgrind -v --smc-check=all-non-file --tool=callgrind --instr-atstart=no --collect-jumps=yes --cache-sim=yes --branch-sim=yes" |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
38 |
;; |
269
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
39 |
--stap) |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
40 |
shift |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
41 |
if [ -z "$1" ]; then |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
42 |
echo "--stap requires systemtap script to run" |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
43 |
exit 1 |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
44 |
fi |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
45 |
if [ ! -r "$1" ]; then |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
46 |
echo "$1 is not a readable systemtap script" |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
47 |
echo "--stap requires systemtap script to run" |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
48 |
exit 1 |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
49 |
fi |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
50 |
STAPSCRIPT=$1 |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
51 |
;; |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
52 |
-T*) |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
53 |
VM_OPTS="$VM_OPTS $1" |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
54 |
;; |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
55 |
-M*) |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
56 |
VM_OPTS="$VM_OPTS $1" |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
57 |
;; |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
58 |
*) |
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
59 |
SMALLTALK_OPTS="$SMALLTALK_OPTS $1" |
51
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
60 |
;; |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
61 |
esac |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
62 |
shift |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
63 |
done |
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
64 |
|
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
65 |
|
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
66 |
|
98a888ea3ddb
benchrmark-runner.sh script for Smalltalk/X refactored...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
32
diff
changeset
|
67 |
|
3 | 68 |
DIR=`dirname $0` |
69 |
if [ ! -z "$DEBUGGER" ]; then |
|
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
70 |
exec $DEBUGGER $VM |
269
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
71 |
elif [ ! -z "$CALLGRIND" ]; then |
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
72 |
JITMAP=$(mktemp --suffix=.txt) |
269
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
73 |
$CALLGRIND $VM \ |
261
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
74 |
$VM_OPTS \ |
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
75 |
-I -Xdump-compile-map=$JITMAP \ |
5b9e93c1135d
Added support for -Xdump-compile-map VM option.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
221
diff
changeset
|
76 |
--execute "$DIR/benchmark-runner.rc" \ |
101
b84f72238da1
Fixed benchmark-runner scripts for Smalltalk/X
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
74
diff
changeset
|
77 |
$SMALLTALK_OPTS |
269
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
78 |
echo "JIT map saved to: $JITMAP" |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
79 |
exit $? |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
80 |
elif [ ! -z "$STAPSCRIPT" ]; then |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
81 |
stap \ |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
82 |
--unprivileged $STAPSCRIPT -I "$TOP/stx/hacking/tapset" \ |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
83 |
-c "$VM $VM_OPTS --execute $DIR/benchmark-runner.rc $SMALLTALK_OPTS" |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
84 |
exit $? |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
85 |
else |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
86 |
exec "$VM" \ |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
87 |
$VM_OPTS \ |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
88 |
-I --execute "$DIR/benchmark-runner.rc" \ |
e1872c56d1d0
Added support to run benchmarks under System Tap (on Linux)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
261
diff
changeset
|
89 |
$SMALLTALK_OPTS |
3 | 90 |
fi |