Revert "Revert "Upgrade to 5.0.71.48"" DO NOT MERGE
This reverts commit f2e3994fa5148cc3d9946666f0b0596290192b0e,
and updates the x64 makefile properly so it doesn't break that
build.
FPIIM-449
Change-Id: Ib83e35bfbae6af627451c926a9650ec57c045605
(cherry picked from commit 109988c7ccb6f3fd1a58574fa3dfb88beaef6632)
diff --git a/src/factory.h b/src/factory.h
index 01a2f7e..dd107d1 100644
--- a/src/factory.h
+++ b/src/factory.h
@@ -70,7 +70,7 @@
Handle<String> InternalizeUtf8String(const char* str) {
return InternalizeUtf8String(CStrVector(str));
}
- Handle<String> InternalizeString(Handle<String> str);
+
Handle<String> InternalizeOneByteString(Vector<const uint8_t> str);
Handle<String> InternalizeOneByteString(
Handle<SeqOneByteString>, int from, int length);
@@ -80,8 +80,16 @@
template<class StringTableKey>
Handle<String> InternalizeStringWithKey(StringTableKey* key);
- Handle<Name> InternalizeName(Handle<Name> name);
+ // Internalized strings are created in the old generation (data space).
+ Handle<String> InternalizeString(Handle<String> string) {
+ if (string->IsInternalizedString()) return string;
+ return StringTable::LookupString(isolate(), string);
+ }
+ Handle<Name> InternalizeName(Handle<Name> name) {
+ if (name->IsUniqueName()) return name;
+ return StringTable::LookupString(isolate(), Handle<String>::cast(name));
+ }
// String creation functions. Most of the string creation functions take
// a Heap::PretenureFlag argument to optionally request that they be
@@ -262,7 +270,7 @@
Handle<AliasedArgumentsEntry> NewAliasedArgumentsEntry(
int aliased_context_slot);
- Handle<ExecutableAccessorInfo> NewExecutableAccessorInfo();
+ Handle<AccessorInfo> NewAccessorInfo();
Handle<Script> NewScript(Handle<String> source);
@@ -323,6 +331,9 @@
Handle<FixedArray> array, int grow_by,
PretenureFlag pretenure = NOT_TENURED);
+ Handle<FixedArray> CopyFixedArrayUpTo(Handle<FixedArray> array, int new_len,
+ PretenureFlag pretenure = NOT_TENURED);
+
Handle<FixedArray> CopyFixedArray(Handle<FixedArray> array);
// This method expects a COW array in new space, and creates a copy
@@ -395,11 +406,6 @@
// JS arrays are pretenured when allocated by the parser.
- // Create a JSArray with no elements.
- Handle<JSArray> NewJSArray(ElementsKind elements_kind,
- Strength strength = Strength::WEAK,
- PretenureFlag pretenure = NOT_TENURED);
-
// Create a JSArray with a specified length and elements initialized
// according to the specified mode.
Handle<JSArray> NewJSArray(
@@ -474,11 +480,6 @@
Handle<JSMapIterator> NewJSMapIterator();
Handle<JSSetIterator> NewJSSetIterator();
- // Creates a new JSIteratorResult object with the arguments {value} and
- // {done}. Implemented according to ES6 section 7.4.7 CreateIterResultObject.
- Handle<JSIteratorResult> NewJSIteratorResult(Handle<Object> value,
- Handle<Object> done);
-
// Allocates a bound function.
MaybeHandle<JSBoundFunction> NewJSBoundFunction(
Handle<JSReceiver> target_function, Handle<Object> bound_this,
@@ -548,6 +549,8 @@
Handle<Code> CopyCode(Handle<Code> code, Vector<byte> reloc_info);
+ Handle<BytecodeArray> CopyBytecodeArray(Handle<BytecodeArray>);
+
// Interface for creating error objects.
Handle<Object> NewError(Handle<JSFunction> constructor,
Handle<String> message);
@@ -704,6 +707,11 @@
Handle<SharedFunctionInfo> info,
Handle<Context> context,
PretenureFlag pretenure = TENURED);
+
+ // Create a JSArray with no elements and no length.
+ Handle<JSArray> NewJSArray(ElementsKind elements_kind,
+ Strength strength = Strength::WEAK,
+ PretenureFlag pretenure = NOT_TENURED);
};
} // namespace internal