From 738801cc5462c5ee2d57f5f20db848cf24044ec6 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Tue, 11 May 2010 11:55:12 +0200 Subject: [PATCH] scripts: benchmarkskript so modifiziert, dass libc-calls keine probleme machen --- scripts/bench.sh | 15 ++++++++------- scripts/dumpinstr.sh | 6 ++---- 2 files changed, 10 insertions(+), 11 deletions(-) diff --git a/scripts/bench.sh b/scripts/bench.sh index 4973e7b..02738d6 100755 --- a/scripts/bench.sh +++ b/scripts/bench.sh @@ -48,12 +48,6 @@ for i in $TEST/*.0; do # create executable gcc -DCALL=\"${i%.0}.call\" -o $TMPNAME $TMPNAME.s $TESTMAIN $CALLCONV - # count instructions - $DUMPINSTR $TMPNAME call >/dev/null - if [ $? != 0 ]; then - echo "$bi FEHLGESCHLAGEN" - continue - fi # extract the exported symbols from the .s file #LABEL=`grep '.globl' $TMPNAME.s | sed 's/^.*\\.globl *\\([a-zA-Z0-9_]\\+\\).*$/\1/g'` @@ -61,9 +55,16 @@ for i in $TEST/*.0; do # this won't work, we need all actual labels LABEL=`grep '[a-zA-Z0-9_.$]\\+:' $TMPNAME.s | sed 's/^\\(.*[^a-zA-Z0-9_.$]\\)\\?\\([a-zA-Z0-9_.$]\\+\\):.*$/\2/g'` + rm -f $TMPNAME.trace MATCHES=0 for j in $LABEL; do - MATCHES="$MATCHES\\|$j" + MATCHES="$MATCHES\\|$j" + # count instructions + $DUMPINSTR $TMPNAME $j > /dev/null + if [ $? != 0 ]; then + echo "$bi FEHLGESCHLAGEN" + continue + fi done # filter trace diff --git a/scripts/dumpinstr.sh b/scripts/dumpinstr.sh index 0653bcc..0a6850e 100755 --- a/scripts/dumpinstr.sh +++ b/scripts/dumpinstr.sh @@ -50,15 +50,13 @@ quit END -gdb < $EXECFILE.tmp > $EXECFILE.trace 2>/dev/null - -mv $EXECFILE.trace $EXECFILE.output +gdb < $EXECFILE.tmp > $EXECFILE.output 2>/dev/null awk -- '\ /^====BEGIN/ {ll = ("begin " $2);} \ /^==== / {print ll; ll = (" " substr($0, 5));} \ /^====END/ {print "end", $2;} -' $EXECFILE.output > $EXECFILE.trace +' $EXECFILE.output >> $EXECFILE.trace echo instructions: `grep "^ " $EXECFILE.trace | wc -l` echo trace output: $EXECFILE.trace -- 2.25.1