Less memory pressure on the "list" bench.

* etc/bench.pl.in (generate_grammar_list): Do not accumulate all
	the values, to limit memory pressure.
This commit is contained in:
Akim Demaille
2008-08-18 20:20:09 +02:00
parent 2873fdf8b1
commit ce6719605b
2 changed files with 13 additions and 7 deletions

View File

@@ -1,3 +1,9 @@
2008-11-11 Akim Demaille <demaille@gostai.com>
Less memory pressure on the "list" bench.
* etc/bench.pl.in (generate_grammar_list): Do not accumulate all
the values, to limit memory pressure.
2008-11-11 Akim Demaille <demaille@gostai.com>
Introduce make_symbol.

View File

@@ -634,12 +634,11 @@ result:
text:
/* nothing */ { /* This will generate an empty string */ }
| text TEXT { std::swap($$,$1); $$.append($2); }
| text TEXT { std::swap ($$, $2); }
| text NUMBER {
std::swap($$,$1);
std::ostringstream ss;
std::ostringstream ss;
ss << ' ' << $2;
$$.append(ss.str());
$$ = ss.str();
}
;
EOF
@@ -663,11 +662,12 @@ result:
text:
/* nothing */ { $$ = new std::string; }
| text TEXT { $$->append(*$2); delete $2; }
| text TEXT { delete $1; $$ = $2; }
| text NUMBER {
std::ostringstream ss;
delete $1;
std::ostringstream ss;
ss << ' ' << $2;
$$->append(ss.str());
$$ = new std::string (ss.str());
}
;
EOF