OLD | NEW |
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_CRANKSHAFT_HYDROGEN_H_ | 5 #ifndef V8_CRANKSHAFT_HYDROGEN_H_ |
6 #define V8_CRANKSHAFT_HYDROGEN_H_ | 6 #define V8_CRANKSHAFT_HYDROGEN_H_ |
7 | 7 |
8 #include "src/accessors.h" | 8 #include "src/accessors.h" |
9 #include "src/allocation.h" | 9 #include "src/allocation.h" |
10 #include "src/ast/ast.h" | 10 #include "src/ast/ast.h" |
(...skipping 1819 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1830 HValue* allocation_site, | 1830 HValue* allocation_site, |
1831 AllocationSiteMode mode); | 1831 AllocationSiteMode mode); |
1832 | 1832 |
1833 HValue* BuildCloneShallowArrayNonEmpty(HValue* boilerplate, | 1833 HValue* BuildCloneShallowArrayNonEmpty(HValue* boilerplate, |
1834 HValue* allocation_site, | 1834 HValue* allocation_site, |
1835 AllocationSiteMode mode, | 1835 AllocationSiteMode mode, |
1836 ElementsKind kind); | 1836 ElementsKind kind); |
1837 | 1837 |
1838 HValue* BuildElementIndexHash(HValue* index); | 1838 HValue* BuildElementIndexHash(HValue* index); |
1839 | 1839 |
| 1840 enum MapEmbedding { kEmbedMapsDirectly, kEmbedMapsViaWeakCells }; |
| 1841 |
| 1842 void BuildCompareNil(HValue* value, Type* type, HIfContinuation* continuation, |
| 1843 MapEmbedding map_embedding = kEmbedMapsDirectly); |
| 1844 |
1840 void BuildCreateAllocationMemento(HValue* previous_object, | 1845 void BuildCreateAllocationMemento(HValue* previous_object, |
1841 HValue* previous_object_size, | 1846 HValue* previous_object_size, |
1842 HValue* payload); | 1847 HValue* payload); |
1843 | 1848 |
1844 HInstruction* BuildConstantMapCheck(Handle<JSObject> constant); | 1849 HInstruction* BuildConstantMapCheck(Handle<JSObject> constant); |
1845 HInstruction* BuildCheckPrototypeMaps(Handle<JSObject> prototype, | 1850 HInstruction* BuildCheckPrototypeMaps(Handle<JSObject> prototype, |
1846 Handle<JSObject> holder); | 1851 Handle<JSObject> holder); |
1847 | 1852 |
1848 HInstruction* BuildGetNativeContext(HValue* closure); | 1853 HInstruction* BuildGetNativeContext(HValue* closure); |
1849 HInstruction* BuildGetNativeContext(); | 1854 HInstruction* BuildGetNativeContext(); |
(...skipping 1175 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
3025 | 3030 |
3026 private: | 3031 private: |
3027 HGraphBuilder* builder_; | 3032 HGraphBuilder* builder_; |
3028 }; | 3033 }; |
3029 | 3034 |
3030 | 3035 |
3031 } // namespace internal | 3036 } // namespace internal |
3032 } // namespace v8 | 3037 } // namespace v8 |
3033 | 3038 |
3034 #endif // V8_CRANKSHAFT_HYDROGEN_H_ | 3039 #endif // V8_CRANKSHAFT_HYDROGEN_H_ |
OLD | NEW |