Index: src/hydrogen.cc |
diff --git a/src/hydrogen.cc b/src/hydrogen.cc |
index 50e3b2124df60ddc29331f0d9d4feb8f753c6a54..8bbabe4f48accce2e79640f9a505b354dc10bc32 100644 |
--- a/src/hydrogen.cc |
+++ b/src/hydrogen.cc |
@@ -10499,6 +10499,12 @@ HValue* HGraphBuilder::BuildBinaryOperation( |
HConstant::cast(right)->StringValue()->length() == 0) { |
return left; |
} |
+ if (left->IsConstant() && HConstant::cast(left)->HasStringValue() && |
Vyacheslav Egorov (Google)
2015/02/19 15:14:10
Maybe have
Handle<String> left_string = left->Is
|
+ right->IsConstant() && HConstant::cast(right)->HasStringValue()) { |
+ return AddUncasted<HStringAdd>( |
+ left, right, allocation_mode.GetPretenureMode(), |
+ STRING_ADD_CHECK_NONE, allocation_mode.feedback_site()); |
+ } |
// Register the dependent code with the allocation site. |
if (!allocation_mode.feedback_site().is_null()) { |