X-Git-Url: https://git.saurik.com/bison.git/blobdiff_plain/7172e23e8ffb95b8cafee24c4f36c46ca709507f..4acc22e5cf47432cec8e196f6f1fefb43453f3b5:/etc/bench.pl.in
diff --git a/etc/bench.pl.in b/etc/bench.pl.in
index 39443d0b..4d480d5e 100755
--- a/etc/bench.pl.in
+++ b/etc/bench.pl.in
@@ -1,24 +1,22 @@
#! /usr/bin/perl -w
-# Copyright (C) 2006 Free Software Foundation, Inc.
-#
+# Copyright (C) 2006, 2008-2012 Free Software Foundation, Inc.
+#
# This file is part of Bison, the GNU Compiler Compiler.
-#
-# Bison is free software; you can redistribute it and/or modify
+#
+# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; either version 2, or (at your option)
-# any later version.
-#
-# Bison is distributed in the hope that it will be useful,
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
-#
+#
# You should have received a copy of the GNU General Public License
-# along with autoconf; see the file COPYING. If not, write to
-# the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
-# Boston, MA 02110-1301, USA.
-
+# along with this program. If not, see .
+
use IO::File;
use Benchmark qw (:all);
@@ -136,8 +134,8 @@ sub calc_grammar ($$$)
or die;
print $out <
#include
-
#include
#include
#include
@@ -272,9 +270,7 @@ yylex (void)
/* Skip white space. */
while ((c = get_char ()) == ' ' || c == '\t')
- {
-
- }
+ continue;
/* process numbers */
if (c == '.' || isdigit (c))
@@ -295,9 +291,8 @@ yylex (void)
static int
power (int base, int exponent)
{
+ assert (0 <= exponent);
int res = 1;
- if (exponent < 0)
- exit (3);
for (/* Niente */; exponent; --exponent)
res *= base;
return res;
@@ -345,14 +340,12 @@ sub bench_grammar ($)
my ($gram) = @_;
my %test =
(
- "yacc.c-pull-impure" => '',
- "yacc.c-pull-pure" => '%pure-parser',
- "push.c-pull-impure" => '%skeleton "push.c"',
- "push.c-pull-pure" => '%skeleton "push.c" %pure-parser',
- "push.c-push-impure" => '%skeleton "push.c" %push-pull-parser',
- "push.c-push-pure" => '%skeleton "push.c" %push-pull-parser %pure-parser',
+ "pull-impure" => '',
+ "pull-pure" => '%define api.pure',
+ "push-impure" => '%define api.push-pull "both"',
+ "push-pure" => '%define api.push-pull "both" %define api.pure',
);
-
+
my %bench;
while (my ($name, $directives) = each %test)
{