diff options
Diffstat (limited to 'WebKitTools/Scripts/run-sunspider')
-rwxr-xr-x | WebKitTools/Scripts/run-sunspider | 131 |
1 files changed, 0 insertions, 131 deletions
diff --git a/WebKitTools/Scripts/run-sunspider b/WebKitTools/Scripts/run-sunspider deleted file mode 100755 index 2e58418..0000000 --- a/WebKitTools/Scripts/run-sunspider +++ /dev/null @@ -1,131 +0,0 @@ -#!/usr/bin/perl -w - -# Copyright (C) 2007 Apple Inc. All rights reserved. -# Copyright (C) 2007 Eric Seidel <eric@webkit.org> -# -# Redistribution and use in source and binary forms, with or without -# modification, are permitted provided that the following conditions -# are met: -# 1. Redistributions of source code must retain the above copyright -# notice, this list of conditions and the following disclaimer. -# 2. Redistributions in binary form must reproduce the above copyright -# notice, this list of conditions and the following disclaimer in the -# documentation and/or other materials provided with the distribution. -# -# THIS SOFTWARE IS PROVIDED BY APPLE COMPUTER, INC. ``AS IS'' AND ANY -# EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE COMPUTER, INC. OR -# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY -# OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - -use strict; -use FindBin; -use Getopt::Long qw(:config pass_through); -use lib $FindBin::Bin; -use webkitdirs; -use POSIX; - -# determine configuration, but default to "Release" instead of last-used configuration -setConfiguration("Release"); -setConfiguration(); -my $configuration = configuration(); - -my $root; -my $testRuns = 10; # This number may be different from what sunspider defaults to (that's OK) -my $runShark = 0; -my $runShark20 = 0; -my $runSharkCache = 0; -my $ubench = 0; -my $v8 = 0; -my $setBaseline = 0; -my $showHelp = 0; -my $testsPattern; - -my $programName = basename($0); -my $usage = <<EOF; -Usage: $programName [options] [options to pass to build system] - --help Show this help message - --set-baseline Set baseline for future comparisons - --root Path to root tools build - --runs Number of times to run tests (default: $testRuns) - --tests Only run tests matching provided pattern - --shark Sample with the Mac OS X "Shark" performance testing tool (implies --runs=1) - --shark20 Like --shark, but with a 20 microsecond sampling interval - --shark-cache Like --shark, but performs a L2 cache-miss sample instead of time sample - --ubench Use microbenchmark suite instead of regular tests (to check for core execution regressions) - --v8 Use the V8 benchmark suite. -EOF - -GetOptions('root=s' => sub { my ($x, $value) = @_; $root = $value; setConfigurationProductDir(Cwd::abs_path($root)); }, - 'runs=i' => \$testRuns, - 'set-baseline' => \$setBaseline, - 'shark' => \$runShark, - 'shark20' => \$runShark20, - 'shark-cache' => \$runSharkCache, - 'ubench' => \$ubench, - 'v8' => \$v8, - 'tests=s' => \$testsPattern, - 'help' => \$showHelp); - -if ($showHelp) { - print STDERR $usage; - exit 1; -} - -sub buildJSC -{ - if (!defined($root)){ - push(@ARGV, "--" . $configuration); - - chdirWebKit(); - my $buildResult = system "WebKitTools/Scripts/build-jsc", @ARGV; - if ($buildResult) { - print STDERR "Compiling jsc failed!\n"; - exit exitStatus($buildResult); - } - } -} - -sub setupEnvironmentForExecution($) -{ - my ($productDir) = @_; - print "Starting sunspider with DYLD_FRAMEWORK_PATH set to point to built JavaScriptCore in $productDir.\n"; - $ENV{DYLD_FRAMEWORK_PATH} = $productDir; - # FIXME: Other platforms may wish to augment this method to use LD_LIBRARY_PATH, etc. -} - -sub jscPath($) -{ - my ($productDir) = @_; - my $jscName = "jsc"; - $jscName .= "_debug" if (isCygwin() && ($configuration eq "Debug")); - return "$productDir/$jscName"; -} - -buildJSC(); - -chdirWebKit(); -chdir("SunSpider"); - -my $productDir = productDir(); -# FIXME: This hack should be pushed down into productDir() -$productDir .= "/JavaScriptCore" if (isQt() or isGtk()); - -setupEnvironmentForExecution($productDir); -my @args = ("--shell", jscPath($productDir), "--runs", $testRuns); -# This code could be removed if we chose to pass extra args to sunspider instead of Xcode -push @args, "--set-baseline" if $setBaseline; -push @args, "--shark" if $runShark; -push @args, "--shark20" if $runShark20; -push @args, "--shark-cache" if $runSharkCache; -push @args, "--ubench" if $ubench; -push @args, "--v8" if $v8; -push @args, "--tests", $testsPattern if $testsPattern; - -exec "./sunspider", @args; |