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/key-accumulator.h b/src/key-accumulator.h
index 8a4d886..9daee10 100644
--- a/src/key-accumulator.h
+++ b/src/key-accumulator.h
@@ -31,17 +31,16 @@
// are more compact and allow for reasonably fast includes check.
class KeyAccumulator final BASE_EMBEDDED {
public:
- KeyAccumulator(Isolate* isolate, PropertyFilter filter)
- : isolate_(isolate), filter_(filter) {}
+ KeyAccumulator(Isolate* isolate, KeyCollectionType type,
+ PropertyFilter filter)
+ : isolate_(isolate), type_(type), filter_(filter) {}
~KeyAccumulator();
bool AddKey(uint32_t key);
- bool AddKey(Object* key, AddKeyConversion convert = DO_NOT_CONVERT);
- bool AddKey(Handle<Object> key, AddKeyConversion convert = DO_NOT_CONVERT);
- void AddKeys(Handle<FixedArray> array,
- AddKeyConversion convert = DO_NOT_CONVERT);
- void AddKeys(Handle<JSObject> array,
- AddKeyConversion convert = DO_NOT_CONVERT);
+ bool AddKey(Object* key, AddKeyConversion convert);
+ bool AddKey(Handle<Object> key, AddKeyConversion convert);
+ void AddKeys(Handle<FixedArray> array, AddKeyConversion convert);
+ void AddKeys(Handle<JSObject> array, AddKeyConversion convert);
void AddKeysFromProxy(Handle<JSObject> array);
Maybe<bool> AddKeysFromProxy(Handle<JSProxy> proxy, Handle<FixedArray> keys);
void AddElementKeysFromInterceptor(Handle<JSObject> array);
@@ -61,6 +60,7 @@
void SortCurrentElementsListRemoveDuplicates();
Isolate* isolate_;
+ KeyCollectionType type_;
PropertyFilter filter_;
// |elements_| contains the sorted element keys (indices) per level.
std::vector<std::vector<uint32_t>*> elements_;
@@ -73,6 +73,7 @@
// |symbol_properties_| contains the unique Symbol property keys for all
// levels in insertion order per level.
Handle<OrderedHashSet> symbol_properties_;
+ Handle<FixedArray> ownProxyKeys_;
// |length_| keeps track of the total number of all element and property keys.
int length_ = 0;
// |levelLength_| keeps track of the number of String keys in the current