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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
72 Object* value); | 72 Object* value); |
73 | 73 |
74 static Object* ComputeLoadInterceptor(String* name, | 74 static Object* ComputeLoadInterceptor(String* name, |
75 JSObject* receiver, | 75 JSObject* receiver, |
76 JSObject* holder); | 76 JSObject* holder); |
77 | 77 |
78 static Object* ComputeLoadNormal(String* name, JSObject* receiver); | 78 static Object* ComputeLoadNormal(String* name, JSObject* receiver); |
79 | 79 |
80 | 80 |
81 static Object* ComputeLoadGlobal(String* name, | 81 static Object* ComputeLoadGlobal(String* name, |
82 GlobalObject* receiver, | 82 JSObject* receiver, |
| 83 GlobalObject* holder, |
83 JSGlobalPropertyCell* cell, | 84 JSGlobalPropertyCell* cell, |
84 bool is_dont_delete); | 85 bool is_dont_delete); |
85 | 86 |
86 | 87 |
87 // --- | 88 // --- |
88 | 89 |
89 static Object* ComputeKeyedLoadField(String* name, | 90 static Object* ComputeKeyedLoadField(String* name, |
90 JSObject* receiver, | 91 JSObject* receiver, |
91 JSObject* holder, | 92 JSObject* holder, |
92 int field_index); | 93 int field_index); |
(...skipping 64 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
157 JSObject* receiver); | 158 JSObject* receiver); |
158 | 159 |
159 static Object* ComputeCallInterceptor(int argc, | 160 static Object* ComputeCallInterceptor(int argc, |
160 String* name, | 161 String* name, |
161 Object* object, | 162 Object* object, |
162 JSObject* holder); | 163 JSObject* holder); |
163 | 164 |
164 static Object* ComputeCallGlobal(int argc, | 165 static Object* ComputeCallGlobal(int argc, |
165 InLoopFlag in_loop, | 166 InLoopFlag in_loop, |
166 String* name, | 167 String* name, |
167 GlobalObject* receiver, | 168 JSObject* receiver, |
| 169 GlobalObject* holder, |
168 JSGlobalPropertyCell* cell, | 170 JSGlobalPropertyCell* cell, |
169 JSFunction* function); | 171 JSFunction* function); |
170 | 172 |
171 // --- | 173 // --- |
172 | 174 |
173 static Object* ComputeCallInitialize(int argc, InLoopFlag in_loop); | 175 static Object* ComputeCallInitialize(int argc, InLoopFlag in_loop); |
174 static Object* ComputeCallPreMonomorphic(int argc, InLoopFlag in_loop); | 176 static Object* ComputeCallPreMonomorphic(int argc, InLoopFlag in_loop); |
175 static Object* ComputeCallNormal(int argc, InLoopFlag in_loop); | 177 static Object* ComputeCallNormal(int argc, InLoopFlag in_loop); |
176 static Object* ComputeCallMegamorphic(int argc, InLoopFlag in_loop); | 178 static Object* ComputeCallMegamorphic(int argc, InLoopFlag in_loop); |
177 static Object* ComputeCallMiss(int argc); | 179 static Object* ComputeCallMiss(int argc); |
(...skipping 250 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
428 AccessorInfo* callback, | 430 AccessorInfo* callback, |
429 String* name); | 431 String* name); |
430 Object* CompileLoadConstant(JSObject* object, | 432 Object* CompileLoadConstant(JSObject* object, |
431 JSObject* holder, | 433 JSObject* holder, |
432 Object* value, | 434 Object* value, |
433 String* name); | 435 String* name); |
434 Object* CompileLoadInterceptor(JSObject* object, | 436 Object* CompileLoadInterceptor(JSObject* object, |
435 JSObject* holder, | 437 JSObject* holder, |
436 String* name); | 438 String* name); |
437 | 439 |
438 Object* CompileLoadGlobal(GlobalObject* object, | 440 Object* CompileLoadGlobal(JSObject* object, |
| 441 GlobalObject* holder, |
439 JSGlobalPropertyCell* holder, | 442 JSGlobalPropertyCell* holder, |
440 String* name, | 443 String* name, |
441 bool is_dont_delete); | 444 bool is_dont_delete); |
442 | 445 |
443 private: | 446 private: |
444 Object* GetCode(PropertyType type, String* name); | 447 Object* GetCode(PropertyType type, String* name); |
445 }; | 448 }; |
446 | 449 |
447 | 450 |
448 class KeyedLoadStubCompiler: public StubCompiler { | 451 class KeyedLoadStubCompiler: public StubCompiler { |
(...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
512 JSObject* holder, | 515 JSObject* holder, |
513 int index, | 516 int index, |
514 String* name); | 517 String* name); |
515 Object* CompileCallConstant(Object* object, | 518 Object* CompileCallConstant(Object* object, |
516 JSObject* holder, | 519 JSObject* holder, |
517 JSFunction* function, | 520 JSFunction* function, |
518 CheckType check); | 521 CheckType check); |
519 Object* CompileCallInterceptor(Object* object, | 522 Object* CompileCallInterceptor(Object* object, |
520 JSObject* holder, | 523 JSObject* holder, |
521 String* name); | 524 String* name); |
522 Object* CompileCallGlobal(GlobalObject* object, | 525 Object* CompileCallGlobal(JSObject* object, |
| 526 GlobalObject* holder, |
523 JSGlobalPropertyCell* cell, | 527 JSGlobalPropertyCell* cell, |
524 JSFunction* function, | 528 JSFunction* function, |
525 String* name); | 529 String* name); |
526 | 530 |
527 private: | 531 private: |
528 const ParameterCount arguments_; | 532 const ParameterCount arguments_; |
529 const InLoopFlag in_loop_; | 533 const InLoopFlag in_loop_; |
530 | 534 |
531 const ParameterCount& arguments() { return arguments_; } | 535 const ParameterCount& arguments() { return arguments_; } |
532 | 536 |
533 Object* GetCode(PropertyType type, String* name); | 537 Object* GetCode(PropertyType type, String* name); |
534 }; | 538 }; |
535 | 539 |
536 | 540 |
537 } } // namespace v8::internal | 541 } } // namespace v8::internal |
538 | 542 |
539 #endif // V8_STUB_CACHE_H_ | 543 #endif // V8_STUB_CACHE_H_ |
OLD | NEW |