| Index: src/code-stub-assembler.h
|
| diff --git a/src/code-stub-assembler.h b/src/code-stub-assembler.h
|
| index 65e5cefef96e4f18464183befb1d092b569c8b02..df674a58d68a726911784e7be33636053b957bc6 100644
|
| --- a/src/code-stub-assembler.h
|
| +++ b/src/code-stub-assembler.h
|
| @@ -690,6 +690,8 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
|
| Node* IsSpecialReceiverMap(Node* map);
|
| Node* IsSpecialReceiverInstanceType(Node* instance_type);
|
| Node* IsStringInstanceType(Node* instance_type);
|
| + Node* IsOneByteStringInstanceType(Node* instance_type);
|
| + Node* IsSequentialStringInstanceType(Node* instance_type);
|
| Node* IsString(Node* object);
|
| Node* IsJSObject(Node* object);
|
| Node* IsJSGlobalProxy(Node* object);
|
| @@ -735,6 +737,14 @@ class V8_EXPORT_PRIVATE CodeStubAssembler : public compiler::CodeAssembler {
|
| Node* StringAdd(Node* context, Node* first, Node* second,
|
| AllocationFlags flags = kNone);
|
|
|
| + // Tries to unpack |string| into a pseudo-sequential string. For instance,
|
| + // In addition to the work done by TryDerefExternalString and
|
| + // MaybeDerefIndirectString, this method can also unpack sliced strings into
|
| + // a (string, offset) pair. The same GC restrictions on the returned string
|
| + // value apply as for TryDerefExternalString.
|
| + void TryUnpackString(Variable* var_string, Variable* var_offset,
|
| + Variable* var_instance_type, Label* if_bailout);
|
| +
|
| // Unpack the external string, returning a pointer that (offset-wise) looks
|
| // like a sequential string.
|
| // Note that this pointer is not tagged and does not point to a real
|
|
|