OLD | NEW |
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 192 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
203 static Code* FindCallInitialize(int argc, | 203 static Code* FindCallInitialize(int argc, |
204 InLoopFlag in_loop, | 204 InLoopFlag in_loop, |
205 Code::Kind kind); | 205 Code::Kind kind); |
206 | 206 |
207 #ifdef ENABLE_DEBUGGER_SUPPORT | 207 #ifdef ENABLE_DEBUGGER_SUPPORT |
208 static Object* ComputeCallDebugBreak(int argc, Code::Kind kind); | 208 static Object* ComputeCallDebugBreak(int argc, Code::Kind kind); |
209 | 209 |
210 static Object* ComputeCallDebugPrepareStepIn(int argc, Code::Kind kind); | 210 static Object* ComputeCallDebugPrepareStepIn(int argc, Code::Kind kind); |
211 #endif | 211 #endif |
212 | 212 |
213 static Object* ComputeLazyCompile(int argc); | |
214 | |
215 | 213 |
216 // Update cache for entry hash(name, map). | 214 // Update cache for entry hash(name, map). |
217 static Code* Set(String* name, Map* map, Code* code); | 215 static Code* Set(String* name, Map* map, Code* code); |
218 | 216 |
219 // Clear the lookup table (@ mark compact collection). | 217 // Clear the lookup table (@ mark compact collection). |
220 static void Clear(); | 218 static void Clear(); |
221 | 219 |
222 // Generate code for probing the stub cache table. | 220 // Generate code for probing the stub cache table. |
223 // If extra != no_reg it might be used as am extra scratch register. | 221 // If extra != no_reg it might be used as am extra scratch register. |
224 static void GenerateProbe(MacroAssembler* masm, | 222 static void GenerateProbe(MacroAssembler* masm, |
(...skipping 125 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
350 | 348 |
351 Object* CompileCallInitialize(Code::Flags flags); | 349 Object* CompileCallInitialize(Code::Flags flags); |
352 Object* CompileCallPreMonomorphic(Code::Flags flags); | 350 Object* CompileCallPreMonomorphic(Code::Flags flags); |
353 Object* CompileCallNormal(Code::Flags flags); | 351 Object* CompileCallNormal(Code::Flags flags); |
354 Object* CompileCallMegamorphic(Code::Flags flags); | 352 Object* CompileCallMegamorphic(Code::Flags flags); |
355 Object* CompileCallMiss(Code::Flags flags); | 353 Object* CompileCallMiss(Code::Flags flags); |
356 #ifdef ENABLE_DEBUGGER_SUPPORT | 354 #ifdef ENABLE_DEBUGGER_SUPPORT |
357 Object* CompileCallDebugBreak(Code::Flags flags); | 355 Object* CompileCallDebugBreak(Code::Flags flags); |
358 Object* CompileCallDebugPrepareStepIn(Code::Flags flags); | 356 Object* CompileCallDebugPrepareStepIn(Code::Flags flags); |
359 #endif | 357 #endif |
360 Object* CompileLazyCompile(Code::Flags flags); | |
361 | 358 |
362 // Static functions for generating parts of stubs. | 359 // Static functions for generating parts of stubs. |
363 static void GenerateLoadGlobalFunctionPrototype(MacroAssembler* masm, | 360 static void GenerateLoadGlobalFunctionPrototype(MacroAssembler* masm, |
364 int index, | 361 int index, |
365 Register prototype); | 362 Register prototype); |
366 | 363 |
367 // Generates prototype loading code that uses the objects from the | 364 // Generates prototype loading code that uses the objects from the |
368 // context we were in when this function was called. This ties the | 365 // context we were in when this function was called. This ties the |
369 // generated code to a particular context and so must not be used in | 366 // generated code to a particular context and so must not be used in |
370 // cases where the generated code is not allowed to have references | 367 // cases where the generated code is not allowed to have references |
(...skipping 374 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
745 | 742 |
746 JSFunction* constant_function_; | 743 JSFunction* constant_function_; |
747 bool is_simple_api_call_; | 744 bool is_simple_api_call_; |
748 FunctionTemplateInfo* expected_receiver_type_; | 745 FunctionTemplateInfo* expected_receiver_type_; |
749 CallHandlerInfo* api_call_info_; | 746 CallHandlerInfo* api_call_info_; |
750 }; | 747 }; |
751 | 748 |
752 } } // namespace v8::internal | 749 } } // namespace v8::internal |
753 | 750 |
754 #endif // V8_STUB_CACHE_H_ | 751 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |