| Index: src/hydrogen-instructions.cc
|
| diff --git a/src/hydrogen-instructions.cc b/src/hydrogen-instructions.cc
|
| index e7ad219964b3946b35e81dbd76011d7e8ff2133f..f82d84a4c909772534c997d8dc3c4badd72edbc2 100644
|
| --- a/src/hydrogen-instructions.cc
|
| +++ b/src/hydrogen-instructions.cc
|
| @@ -3808,7 +3808,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);
|
| @@ -3818,7 +3820,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(")");
|
| }
|
|
|
|
|
|
|