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

Side by Side Diff: src/heap.h

Issue 23691002: Add OptimizedCodeEntry as a new heap object type. An optimized code entry represents an association… (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 7 years, 3 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/factory.cc ('k') | src/heap.cc » ('j') | src/heap.cc » ('J')
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 45 matching lines...) Expand 10 before | Expand all | Expand 10 after
56 V(Smi, store_buffer_top, StoreBufferTop) \ 56 V(Smi, store_buffer_top, StoreBufferTop) \
57 V(Oddball, undefined_value, UndefinedValue) \ 57 V(Oddball, undefined_value, UndefinedValue) \
58 V(Oddball, the_hole_value, TheHoleValue) \ 58 V(Oddball, the_hole_value, TheHoleValue) \
59 V(Oddball, null_value, NullValue) \ 59 V(Oddball, null_value, NullValue) \
60 V(Oddball, true_value, TrueValue) \ 60 V(Oddball, true_value, TrueValue) \
61 V(Oddball, false_value, FalseValue) \ 61 V(Oddball, false_value, FalseValue) \
62 V(Oddball, uninitialized_value, UninitializedValue) \ 62 V(Oddball, uninitialized_value, UninitializedValue) \
63 V(Map, cell_map, CellMap) \ 63 V(Map, cell_map, CellMap) \
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, optimized_code_entry_map, OptimizedCodeEntryMap) \
66 V(Map, meta_map, MetaMap) \ 67 V(Map, meta_map, MetaMap) \
67 V(Map, heap_number_map, HeapNumberMap) \ 68 V(Map, heap_number_map, HeapNumberMap) \
68 V(Map, native_context_map, NativeContextMap) \ 69 V(Map, native_context_map, NativeContextMap) \
69 V(Map, fixed_array_map, FixedArrayMap) \ 70 V(Map, fixed_array_map, FixedArrayMap) \
70 V(Map, code_map, CodeMap) \ 71 V(Map, code_map, CodeMap) \
71 V(Map, scope_info_map, ScopeInfoMap) \ 72 V(Map, scope_info_map, ScopeInfoMap) \
72 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \ 73 V(Map, fixed_cow_array_map, FixedCOWArrayMap) \
73 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \ 74 V(Map, fixed_double_array_map, FixedDoubleArrayMap) \
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 first 32 roots above this line should be boring from a GC point of */ \ 82 /* The roots above this line should be boring from a GC point of view. */ \
82 /* view. This means they are never in new space and never on a page that */ \ 83 /* This means they are never in new space and never on a page that is */ \
83 /* is being compacted. */ \ 84 /* being compacted. */ \
84 V(FixedArray, number_string_cache, NumberStringCache) \ 85 V(FixedArray, number_string_cache, NumberStringCache) \
85 V(Object, instanceof_cache_function, InstanceofCacheFunction) \ 86 V(Object, instanceof_cache_function, InstanceofCacheFunction) \
86 V(Object, instanceof_cache_map, InstanceofCacheMap) \ 87 V(Object, instanceof_cache_map, InstanceofCacheMap) \
87 V(Object, instanceof_cache_answer, InstanceofCacheAnswer) \ 88 V(Object, instanceof_cache_answer, InstanceofCacheAnswer) \
88 V(FixedArray, single_character_string_cache, SingleCharacterStringCache) \ 89 V(FixedArray, single_character_string_cache, SingleCharacterStringCache) \
89 V(FixedArray, string_split_cache, StringSplitCache) \ 90 V(FixedArray, string_split_cache, StringSplitCache) \
90 V(FixedArray, regexp_multiple_cache, RegExpMultipleCache) \ 91 V(FixedArray, regexp_multiple_cache, RegExpMultipleCache) \
91 V(Object, termination_exception, TerminationException) \ 92 V(Object, termination_exception, TerminationException) \
92 V(Smi, hash_seed, HashSeed) \ 93 V(Smi, hash_seed, HashSeed) \
93 V(Map, symbol_map, SymbolMap) \ 94 V(Map, symbol_map, SymbolMap) \
(...skipping 996 matching lines...) Expand 10 before | Expand all | Expand 10 after
1090 // Please note this does not perform a garbage collection. 1091 // Please note this does not perform a garbage collection.
1091 MUST_USE_RESULT MaybeObject* AllocateForeign( 1092 MUST_USE_RESULT MaybeObject* AllocateForeign(
1092 Address address, PretenureFlag pretenure = NOT_TENURED); 1093 Address address, PretenureFlag pretenure = NOT_TENURED);
1093 1094
1094 // Allocates a new SharedFunctionInfo object. 1095 // Allocates a new SharedFunctionInfo object.
1095 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation 1096 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
1096 // failed. 1097 // failed.
1097 // Please note this does not perform a garbage collection. 1098 // Please note this does not perform a garbage collection.
1098 MUST_USE_RESULT MaybeObject* AllocateSharedFunctionInfo(Object* name); 1099 MUST_USE_RESULT MaybeObject* AllocateSharedFunctionInfo(Object* name);
1099 1100
1101 // Allocates a new OptimizedCodeEntry object.
1102 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
1103 // failed.
1104 // Please note this does not perform a garbage collection.
1105 MUST_USE_RESULT MaybeObject* AllocateOptimizedCodeEntry(
1106 Context* native_context,
1107 JSFunction* function,
1108 Code* code,
1109 FixedArray* literals);
1110
1100 // Allocates a new JSMessageObject object. 1111 // Allocates a new JSMessageObject object.
1101 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation 1112 // Returns Failure::RetryAfterGC(requested_bytes, space) if the allocation
1102 // failed. 1113 // failed.
1103 // Please note that this does not perform a garbage collection. 1114 // Please note that this does not perform a garbage collection.
1104 MUST_USE_RESULT MaybeObject* AllocateJSMessageObject( 1115 MUST_USE_RESULT MaybeObject* AllocateJSMessageObject(
1105 String* type, 1116 String* type,
1106 JSArray* arguments, 1117 JSArray* arguments,
1107 int start_position, 1118 int start_position,
1108 int end_position, 1119 int end_position,
1109 Object* script, 1120 Object* script,
(...skipping 1938 matching lines...) Expand 10 before | Expand all | Expand 10 after
3048 DisallowHeapAllocation no_allocation; // i.e. no gc allowed. 3059 DisallowHeapAllocation no_allocation; // i.e. no gc allowed.
3049 3060
3050 private: 3061 private:
3051 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer); 3062 DISALLOW_IMPLICIT_CONSTRUCTORS(PathTracer);
3052 }; 3063 };
3053 #endif // DEBUG 3064 #endif // DEBUG
3054 3065
3055 } } // namespace v8::internal 3066 } } // namespace v8::internal
3056 3067
3057 #endif // V8_HEAP_H_ 3068 #endif // V8_HEAP_H_
OLDNEW
« no previous file with comments | « src/factory.cc ('k') | src/heap.cc » ('j') | src/heap.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698