| Index: src/hydrogen-instructions.cc
|
| diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc
|
| index a3bc56ca4306d77c8914da1ce5cc1a1a14f102e8..49916687696b4d6b05cf4caf524bc74ce7e3db25 100644
|
| --- a/src/hydrogen-instructions.cc
|
| +++ b/src/hydrogen-instructions.cc
|
| @@ -3815,7 +3815,9 @@ HInstruction* HStringAdd::New(Zone* zone,
|
| HValue* context,
|
| HValue* left,
|
| HValue* right,
|
| - StringAddFlags flags) {
|
| + PretenureFlag pretenure_flag,
|
| + StringAddFlags flags,
|
| + Handle<AllocationSite> allocation_site) {
|
| if (FLAG_fold_constants && left->IsConstant() && right->IsConstant()) {
|
| HConstant* c_right = HConstant::cast(right);
|
| HConstant* c_left = HConstant::cast(left);
|
| @@ -3825,7 +3827,23 @@ HInstruction* HStringAdd::New(Zone* zone,
|
| return HConstant::New(zone, context, concat);
|
| }
|
| }
|
| - return new(zone) HStringAdd(context, left, right, flags);
|
| + return new(zone) HStringAdd(
|
| + context, left, right, pretenure_flag, flags, allocation_site);
|
| +}
|
| +
|
| +
|
| +void HStringAdd::PrintDataTo(StringStream* stream) {
|
| + if ((flags() & STRING_ADD_CHECK_BOTH) == STRING_ADD_CHECK_BOTH) {
|
| + stream->Add("_CheckBoth");
|
| + } else if ((flags() & STRING_ADD_CHECK_BOTH) == STRING_ADD_CHECK_LEFT) {
|
| + stream->Add("_CheckLeft");
|
| + } else if ((flags() & STRING_ADD_CHECK_BOTH) == STRING_ADD_CHECK_RIGHT) {
|
| + stream->Add("_CheckRight");
|
| + }
|
| + stream->Add(" (");
|
| + if (pretenure_flag() == NOT_TENURED) stream->Add("N");
|
| + else if (pretenure_flag() == TENURED) stream->Add("D");
|
| + stream->Add(")");
|
| }
|
|
|
|
|
|
|