Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(156)

Side by Side Diff: src/hydrogen.h

Issue 947683002: Reimplement Maps and Sets in JS (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Disable one more test Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_HYDROGEN_H_ 5 #ifndef V8_HYDROGEN_H_
6 #define V8_HYDROGEN_H_ 6 #define V8_HYDROGEN_H_
7 7
8 #include "src/v8.h" 8 #include "src/v8.h"
9 9
10 #include "src/accessors.h" 10 #include "src/accessors.h"
(...skipping 1829 matching lines...) Expand 10 before | Expand all | Expand 10 after
1840 1840
1841 HValue* BuildCloneShallowArrayEmpty(HValue* boilerplate, 1841 HValue* BuildCloneShallowArrayEmpty(HValue* boilerplate,
1842 HValue* allocation_site, 1842 HValue* allocation_site,
1843 AllocationSiteMode mode); 1843 AllocationSiteMode mode);
1844 1844
1845 HValue* BuildCloneShallowArrayNonEmpty(HValue* boilerplate, 1845 HValue* BuildCloneShallowArrayNonEmpty(HValue* boilerplate,
1846 HValue* allocation_site, 1846 HValue* allocation_site,
1847 AllocationSiteMode mode, 1847 AllocationSiteMode mode,
1848 ElementsKind kind); 1848 ElementsKind kind);
1849 1849
1850 HValue* BuildElementIndexHash(HValue* index); 1850 HValue* BuildComputeIntegerHash(HValue* value, uint32_t seed);
1851
1852 HValue* BuildElementIndexHash(HValue* index) {
Sven Panne 2015/02/23 09:26:53 When we have %_HashSeed() (for isolate()->heap()->
adamk 2015/02/23 18:43:35 Yeah, I only reused this for expediency, there's n
adamk 2015/03/16 17:35:06 I've now written a JS version of this.
1853 return BuildComputeIntegerHash(index, isolate()->heap()->HashSeed());
1854 }
1851 1855
1852 enum MapEmbedding { kEmbedMapsDirectly, kEmbedMapsViaWeakCells }; 1856 enum MapEmbedding { kEmbedMapsDirectly, kEmbedMapsViaWeakCells };
1853 1857
1854 void BuildCompareNil(HValue* value, Type* type, HIfContinuation* continuation, 1858 void BuildCompareNil(HValue* value, Type* type, HIfContinuation* continuation,
1855 MapEmbedding map_embedding = kEmbedMapsDirectly); 1859 MapEmbedding map_embedding = kEmbedMapsDirectly);
1856 1860
1857 void BuildCreateAllocationMemento(HValue* previous_object, 1861 void BuildCreateAllocationMemento(HValue* previous_object,
1858 HValue* previous_object_size, 1862 HValue* previous_object_size,
1859 HValue* payload); 1863 HValue* payload);
1860 1864
(...skipping 1171 matching lines...) Expand 10 before | Expand all | Expand 10 after
3032 } 3036 }
3033 3037
3034 private: 3038 private:
3035 HGraphBuilder* builder_; 3039 HGraphBuilder* builder_;
3036 }; 3040 };
3037 3041
3038 3042
3039 } } // namespace v8::internal 3043 } } // namespace v8::internal
3040 3044
3041 #endif // V8_HYDROGEN_H_ 3045 #endif // V8_HYDROGEN_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698