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

Side by Side Diff: src/heap.h

Issue 22601003: Out-of-line constant pool on Arm: Stage 2 - Introduce ConstantPoolArray object. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Rebased Created 7 years, 2 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 | Annotate | Revision Log
« no previous file with comments | « src/globals.h ('k') | src/heap.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2012 the V8 project authors. All rights reserved. 1 // Copyright 2012 the V8 project authors. All rights reserved.
2 // Redistribution and use in source and binary forms, with or without 2 // Redistribution and use in source and binary forms, with or without
3 // modification, are permitted provided that the following conditions are 3 // modification, are permitted provided that the following conditions are
4 // met: 4 // met:
5 // 5 //
6 // * Redistributions of source code must retain the above copyright 6 // * Redistributions of source code must retain the above copyright
7 // notice, this list of conditions and the following disclaimer. 7 // notice, this list of conditions and the following disclaimer.
8 // * Redistributions in binary form must reproduce the above 8 // * Redistributions in binary form must reproduce the above
9 // copyright notice, this list of conditions and the following 9 // copyright notice, this list of conditions and the following
10 // disclaimer in the documentation and/or other materials provided 10 // disclaimer in the documentation and/or other materials provided
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
64 V(Map, global_property_cell_map, GlobalPropertyCellMap) \ 64 V(Map, global_property_cell_map, GlobalPropertyCellMap) \
65 V(Map, shared_function_info_map, SharedFunctionInfoMap) \ 65 V(Map, shared_function_info_map, SharedFunctionInfoMap) \
66 V(Map, meta_map, MetaMap) \ 66 V(Map, meta_map, MetaMap) \
67 V(Map, heap_number_map, HeapNumberMap) \ 67 V(Map, heap_number_map, HeapNumberMap) \
68 V(Map, native_context_map, NativeContextMap) \ 68 V(Map, native_context_map, NativeContextMap) \
69 V(Map, fixed_array_map, FixedArrayMap) \ 69 V(Map, fixed_array_map, FixedArrayMap) \
70 V(Map, code_map, CodeMap) \ 70 V(Map, code_map, CodeMap) \
71 V(Map, scope_info_map, ScopeInfoMap) \ 71 V(Map, scope_info_map, ScopeInfoMap) \
72 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ 72 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \
73 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ 73 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \
74 V(Map, constant_pool_array_map, ConstantPoolArrayMap) \
74 V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \ 75 V(Object, no_interceptor_result_sentinel, NoInterceptorResultSentinel) \
75 V(Map, hash_table_map, HashTableMap) \ 76 V(Map, hash_table_map, HashTableMap) \
76 V(FixedArray, empty_fixed_array, EmptyFixedArray) \ 77 V(FixedArray, empty_fixed_array, EmptyFixedArray) \
77 V(ByteArray, empty_byte_array, EmptyByteArray) \ 78 V(ByteArray, empty_byte_array, EmptyByteArray) \
78 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \ 79 V(DescriptorArray, empty_descriptor_array, EmptyDescriptorArray) \
79 V(Smi, stack_limit, StackLimit) \ 80 V(Smi, stack_limit, StackLimit) \
80 V(Oddball, arguments_marker, ArgumentsMarker) \ 81 V(Oddball, arguments_marker, ArgumentsMarker) \
81 /* The roots above this line should be boring from a GC point of view. */ \ 82 /* The roots above this line should be boring from a GC point of view. */ \
82 /* This means they are never in new space and never on a page that is */ \ 83 /* This means they are never in new space and never on a page that is */ \
83 /* being compacted. */ \ 84 /* being compacted. */ \
(...skipping 852 matching lines...) Expand 10 before | Expand all | Expand 10 after
936 // Make a copy of src and return it. Returns 937 // Make a copy of src and return it. Returns
937 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed. 938 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
938 MUST_USE_RESULT inline MaybeObject* CopyFixedDoubleArray( 939 MUST_USE_RESULT inline MaybeObject* CopyFixedDoubleArray(
939 FixedDoubleArray* src); 940 FixedDoubleArray* src);
940 941
941 // Make a copy of src, set the map, and return the copy. Returns 942 // Make a copy of src, set the map, and return the copy. Returns
942 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed. 943 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
943 MUST_USE_RESULT MaybeObject* CopyFixedDoubleArrayWithMap( 944 MUST_USE_RESULT MaybeObject* CopyFixedDoubleArrayWithMap(
944 FixedDoubleArray* src, Map* map); 945 FixedDoubleArray* src, Map* map);
945 946
947 // Make a copy of src and return it. Returns
948 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
949 MUST_USE_RESULT inline MaybeObject* CopyConstantPoolArray(
950 ConstantPoolArray* src);
951
952 // Make a copy of src, set the map, and return the copy. Returns
953 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
954 MUST_USE_RESULT MaybeObject* CopyConstantPoolArrayWithMap(
955 ConstantPoolArray* src, Map* map);
956
946 // Allocates a fixed array initialized with the hole values. 957 // Allocates a fixed array initialized with the hole values.
947 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation 958 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
948 // failed. 959 // failed.
949 // Please note this does not perform a garbage collection. 960 // Please note this does not perform a garbage collection.
950 MUST_USE_RESULT MaybeObject* AllocateFixedArrayWithHoles( 961 MUST_USE_RESULT MaybeObject* AllocateFixedArrayWithHoles(
951 int length, 962 int length,
952 PretenureFlag pretenure = NOT_TENURED); 963 PretenureFlag pretenure = NOT_TENURED);
953 964
965 MUST_USE_RESULT MaybeObject* AllocateConstantPoolArray(
966 int first_int64_index,
967 int first_ptr_index,
968 int first_int32_index);
969
954 // Allocates a fixed double array with uninitialized values. Returns 970 // Allocates a fixed double array with uninitialized values. Returns
955 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed. 971 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
956 // Please note this does not perform a garbage collection. 972 // Please note this does not perform a garbage collection.
957 MUST_USE_RESULT MaybeObject* AllocateUninitializedFixedDoubleArray( 973 MUST_USE_RESULT MaybeObject* AllocateUninitializedFixedDoubleArray(
958 int length, 974 int length,
959 PretenureFlag pretenure = NOT_TENURED); 975 PretenureFlag pretenure = NOT_TENURED);
960 976
961 // Allocates a fixed double array with hole values. Returns 977 // Allocates a fixed double array with hole values. Returns
962 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed. 978 // Failure::RetryAfterGC(requested_bytes, space) if the allocation failed.
963 // Please note this does not perform a garbage collection. 979 // Please note this does not perform a garbage collection.
(...skipping 2096 matching lines...) Expand 10 before | Expand all | Expand 10 after
3060 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 3076 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
3061 3077
3062 private: 3078 private:
3063 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 3079 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
3064 }; 3080 };
3065 #endif // DEBUG 3081 #endif // DEBUG
3066 3082
3067 } } // namespace v8::internal 3083 } } // namespace v8::internal
3068 3084
3069 #endif // V8_HEAP_H_ 3085 #endif // V8_HEAP_H_
OLDNEW
« no previous file with comments | « src/globals.h ('k') | src/heap.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698