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

Side by Side Diff: src/contexts.h

Issue 6677036: Fast path for strict closure creation. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 9 years, 9 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
OLDNEW
1 // Copyright 2006-2008 the V8 project authors. All rights reserved. 1 // Copyright 2006-2008 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 60 matching lines...) Expand 10 before | Expand all | Expand 10 after
71 V(TO_STRING_FUN_INDEX, JSFunction, to_string_fun) \ 71 V(TO_STRING_FUN_INDEX, JSFunction, to_string_fun) \
72 V(TO_DETAIL_STRING_FUN_INDEX, JSFunction, to_detail_string_fun) \ 72 V(TO_DETAIL_STRING_FUN_INDEX, JSFunction, to_detail_string_fun) \
73 V(TO_OBJECT_FUN_INDEX, JSFunction, to_object_fun) \ 73 V(TO_OBJECT_FUN_INDEX, JSFunction, to_object_fun) \
74 V(TO_INTEGER_FUN_INDEX, JSFunction, to_integer_fun) \ 74 V(TO_INTEGER_FUN_INDEX, JSFunction, to_integer_fun) \
75 V(TO_UINT32_FUN_INDEX, JSFunction, to_uint32_fun) \ 75 V(TO_UINT32_FUN_INDEX, JSFunction, to_uint32_fun) \
76 V(TO_INT32_FUN_INDEX, JSFunction, to_int32_fun) \ 76 V(TO_INT32_FUN_INDEX, JSFunction, to_int32_fun) \
77 V(GLOBAL_EVAL_FUN_INDEX, JSFunction, global_eval_fun) \ 77 V(GLOBAL_EVAL_FUN_INDEX, JSFunction, global_eval_fun) \
78 V(INSTANTIATE_FUN_INDEX, JSFunction, instantiate_fun) \ 78 V(INSTANTIATE_FUN_INDEX, JSFunction, instantiate_fun) \
79 V(CONFIGURE_INSTANCE_FUN_INDEX, JSFunction, configure_instance_fun) \ 79 V(CONFIGURE_INSTANCE_FUN_INDEX, JSFunction, configure_instance_fun) \
80 V(FUNCTION_MAP_INDEX, Map, function_map) \ 80 V(FUNCTION_MAP_INDEX, Map, function_map) \
81 V(FUNCTION_MAP_INDEX_STRICT, Map, function_map_strict) \ 81 V(FUNCTION_MAP_STRICT_INDEX, Map, function_map_strict) \
Martin Maly 2011/03/15 03:08:57 Changing the names to end with _INDEX like all the
82 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, function_without_prototype_map) \ 82 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, Map, function_without_prototype_map) \
83 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX_STRICT, Map, \ 83 V(FUNCTION_WITHOUT_PROTOTYPE_MAP_STRICT_INDEX, Map, \
84 function_without_prototype_map_strict) \ 84 function_without_prototype_map_strict) \
85 V(FUNCTION_INSTANCE_MAP_INDEX, Map, function_instance_map) \ 85 V(FUNCTION_INSTANCE_MAP_INDEX, Map, function_instance_map) \
86 V(FUNCTION_INSTANCE_MAP_INDEX_STRICT, Map, function_instance_map_strict) \ 86 V(FUNCTION_INSTANCE_MAP_STRICT_INDEX, Map, function_instance_map_strict) \
87 V(JS_ARRAY_MAP_INDEX, Map, js_array_map)\ 87 V(JS_ARRAY_MAP_INDEX, Map, js_array_map)\
88 V(REGEXP_RESULT_MAP_INDEX, Map, regexp_result_map)\ 88 V(REGEXP_RESULT_MAP_INDEX, Map, regexp_result_map)\
89 V(ARGUMENTS_BOILERPLATE_INDEX, JSObject, arguments_boilerplate) \ 89 V(ARGUMENTS_BOILERPLATE_INDEX, JSObject, arguments_boilerplate) \
90 V(MESSAGE_LISTENERS_INDEX, JSObject, message_listeners) \ 90 V(MESSAGE_LISTENERS_INDEX, JSObject, message_listeners) \
91 V(MAKE_MESSAGE_FUN_INDEX, JSFunction, make_message_fun) \ 91 V(MAKE_MESSAGE_FUN_INDEX, JSFunction, make_message_fun) \
92 V(GET_STACK_TRACE_LINE_INDEX, JSFunction, get_stack_trace_line_fun) \ 92 V(GET_STACK_TRACE_LINE_INDEX, JSFunction, get_stack_trace_line_fun) \
93 V(CONFIGURE_GLOBAL_INDEX, JSFunction, configure_global_fun) \ 93 V(CONFIGURE_GLOBAL_INDEX, JSFunction, configure_global_fun) \
94 V(FUNCTION_CACHE_INDEX, JSObject, function_cache) \ 94 V(FUNCTION_CACHE_INDEX, JSObject, function_cache) \
95 V(JSFUNCTION_RESULT_CACHES_INDEX, FixedArray, jsfunction_result_caches) \ 95 V(JSFUNCTION_RESULT_CACHES_INDEX, FixedArray, jsfunction_result_caches) \
96 V(NORMALIZED_MAP_CACHE_INDEX, NormalizedMapCache, normalized_map_cache) \ 96 V(NORMALIZED_MAP_CACHE_INDEX, NormalizedMapCache, normalized_map_cache) \
(...skipping 85 matching lines...) Expand 10 before | Expand all | Expand 10 after
182 GLOBAL_INDEX, 182 GLOBAL_INDEX,
183 MIN_CONTEXT_SLOTS, 183 MIN_CONTEXT_SLOTS,
184 184
185 // These slots are only in global contexts. 185 // These slots are only in global contexts.
186 GLOBAL_PROXY_INDEX = MIN_CONTEXT_SLOTS, 186 GLOBAL_PROXY_INDEX = MIN_CONTEXT_SLOTS,
187 SECURITY_TOKEN_INDEX, 187 SECURITY_TOKEN_INDEX,
188 ARGUMENTS_BOILERPLATE_INDEX, 188 ARGUMENTS_BOILERPLATE_INDEX,
189 JS_ARRAY_MAP_INDEX, 189 JS_ARRAY_MAP_INDEX,
190 REGEXP_RESULT_MAP_INDEX, 190 REGEXP_RESULT_MAP_INDEX,
191 FUNCTION_MAP_INDEX, 191 FUNCTION_MAP_INDEX,
192 FUNCTION_MAP_INDEX_STRICT, 192 FUNCTION_MAP_STRICT_INDEX,
193 FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX, 193 FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX,
194 FUNCTION_WITHOUT_PROTOTYPE_MAP_INDEX_STRICT, 194 FUNCTION_WITHOUT_PROTOTYPE_MAP_STRICT_INDEX,
195 FUNCTION_INSTANCE_MAP_INDEX, 195 FUNCTION_INSTANCE_MAP_INDEX,
196 FUNCTION_INSTANCE_MAP_INDEX_STRICT, 196 FUNCTION_INSTANCE_MAP_STRICT_INDEX,
197 INITIAL_OBJECT_PROTOTYPE_INDEX, 197 INITIAL_OBJECT_PROTOTYPE_INDEX,
198 BOOLEAN_FUNCTION_INDEX, 198 BOOLEAN_FUNCTION_INDEX,
199 NUMBER_FUNCTION_INDEX, 199 NUMBER_FUNCTION_INDEX,
200 STRING_FUNCTION_INDEX, 200 STRING_FUNCTION_INDEX,
201 STRING_FUNCTION_PROTOTYPE_MAP_INDEX, 201 STRING_FUNCTION_PROTOTYPE_MAP_INDEX,
202 OBJECT_FUNCTION_INDEX, 202 OBJECT_FUNCTION_INDEX,
203 ARRAY_FUNCTION_INDEX, 203 ARRAY_FUNCTION_INDEX,
204 DATE_FUNCTION_INDEX, 204 DATE_FUNCTION_INDEX,
205 JSON_OBJECT_INDEX, 205 JSON_OBJECT_INDEX,
206 REGEXP_FUNCTION_INDEX, 206 REGEXP_FUNCTION_INDEX,
(...skipping 167 matching lines...) Expand 10 before | Expand all | Expand 10 after
374 #ifdef DEBUG 374 #ifdef DEBUG
375 // Bootstrapping-aware type checks. 375 // Bootstrapping-aware type checks.
376 static bool IsBootstrappingOrContext(Object* object); 376 static bool IsBootstrappingOrContext(Object* object);
377 static bool IsBootstrappingOrGlobalObject(Object* object); 377 static bool IsBootstrappingOrGlobalObject(Object* object);
378 #endif 378 #endif
379 }; 379 };
380 380
381 } } // namespace v8::internal 381 } } // namespace v8::internal
382 382
383 #endif // V8_CONTEXTS_H_ 383 #endif // V8_CONTEXTS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698