| Index: src/compiler.cc
|
| ===================================================================
|
| --- src/compiler.cc (revision 3658)
|
| +++ src/compiler.cc (working copy)
|
| @@ -493,7 +493,8 @@
|
|
|
| // Generate code and return it.
|
| bool is_compiled = false;
|
| - if (FLAG_fast_compiler && literal->try_fast_codegen()) {
|
| + if (FLAG_always_fast_compiler ||
|
| + (FLAG_fast_compiler && literal->try_fast_codegen())) {
|
| CodeGenSelector selector;
|
| CodeGenSelector::CodeGenTag code_gen = selector.Select(literal);
|
| if (code_gen == CodeGenSelector::FAST) {
|
| @@ -703,7 +704,20 @@
|
|
|
|
|
| void CodeGenSelector::VisitForStatement(ForStatement* stmt) {
|
| - BAILOUT("ForStatement");
|
| + if (!FLAG_always_fast_compiler) BAILOUT("ForStatement");
|
| + if (stmt->init() != NULL) {
|
| + Visit(stmt->init());
|
| + CHECK_BAILOUT;
|
| + }
|
| + if (stmt->cond() != NULL) {
|
| + Visit(stmt->cond());
|
| + CHECK_BAILOUT;
|
| + }
|
| + Visit(stmt->body());
|
| + if (stmt->next() != NULL) {
|
| + CHECK_BAILOUT;
|
| + Visit(stmt->next());
|
| + }
|
| }
|
|
|
|
|
|
|