Index: src/compiler/pipeline.cc |
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc |
index 801c97aa7c684efd2130c973f51a94b17ec1495a..87907067962849cf7c22696c95fbd6ee22658d73 100644 |
--- a/src/compiler/pipeline.cc |
+++ b/src/compiler/pipeline.cc |
@@ -609,11 +609,16 @@ struct TypedLoweringPhase { |
data->common()); |
LoadElimination load_elimination(&graph_reducer); |
JSBuiltinReducer builtin_reducer(&graph_reducer, data->jsgraph()); |
+ JSTypedLowering::Flags typed_lowering_flags = JSTypedLowering::kNoFlags; |
+ if (data->info()->is_deoptimization_enabled()) { |
+ typed_lowering_flags |= JSTypedLowering::kDeoptimizationEnabled; |
+ } |
+ if (data->info()->shared_info()->HasBytecodeArray()) { |
+ typed_lowering_flags |= JSTypedLowering::kDisableBinaryOpReduction; |
+ } |
JSTypedLowering typed_lowering(&graph_reducer, data->info()->dependencies(), |
- data->info()->is_deoptimization_enabled() |
- ? JSTypedLowering::kDeoptimizationEnabled |
- : JSTypedLowering::kNoFlags, |
- data->jsgraph(), temp_zone); |
+ typed_lowering_flags, data->jsgraph(), |
+ temp_zone); |
JSIntrinsicLowering intrinsic_lowering( |
&graph_reducer, data->jsgraph(), |
data->info()->is_deoptimization_enabled() |