Index: src/interpreter/bytecode-array-builder.cc |
diff --git a/src/interpreter/bytecode-array-builder.cc b/src/interpreter/bytecode-array-builder.cc |
index caa0a78ccef04626e8adcb59427b2ef40173e42c..c377b0e7bc8f0274936fb2f9d02300b7abbc44c6 100644 |
--- a/src/interpreter/bytecode-array-builder.cc |
+++ b/src/interpreter/bytecode-array-builder.cc |
@@ -7,6 +7,7 @@ |
#include "src/compiler.h" |
#include "src/interpreter/bytecode-array-writer.h" |
#include "src/interpreter/bytecode-peephole-optimizer.h" |
+#include "src/interpreter/bytecode-register-optimizer.h" |
#include "src/interpreter/interpreter-intrinsics.h" |
namespace v8 { |
@@ -40,6 +41,12 @@ BytecodeArrayBuilder::BytecodeArrayBuilder(Isolate* isolate, Zone* zone, |
BytecodePeepholeOptimizer(&constant_array_builder_, pipeline_); |
} |
+ if (FLAG_ignition_reo) { |
+ pipeline_ = new (zone) |
+ BytecodeRegisterOptimizer(zone, &temporary_allocator_, parameter_count, |
+ fixed_register_count(), pipeline_); |
+ } |
+ |
return_position_ = |
literal ? std::max(literal->start_position(), literal->end_position() - 1) |
: RelocInfo::kNoPosition; |