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

Side by Side Diff: src/stub-cache.h

Issue 8111006: Allow new-space JSFunction objects as constant-function properties. (Closed) Base URL: http://v8.googlecode.com/svn/branches/bleeding_edge/
Patch Set: rebased Created 9 years 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 2011 the V8 project authors. All rights reserved. 1 // Copyright 2011 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 74 matching lines...) Expand 10 before | Expand all | Expand 10 after
85 int field_index); 85 int field_index);
86 86
87 Handle<Code> ComputeLoadCallback(Handle<String> name, 87 Handle<Code> ComputeLoadCallback(Handle<String> name,
88 Handle<JSObject> receiver, 88 Handle<JSObject> receiver,
89 Handle<JSObject> holder, 89 Handle<JSObject> holder,
90 Handle<AccessorInfo> callback); 90 Handle<AccessorInfo> callback);
91 91
92 Handle<Code> ComputeLoadConstant(Handle<String> name, 92 Handle<Code> ComputeLoadConstant(Handle<String> name,
93 Handle<JSObject> receiver, 93 Handle<JSObject> receiver,
94 Handle<JSObject> holder, 94 Handle<JSObject> holder,
95 Handle<Object> value); 95 Handle<JSFunction> value);
96 96
97 Handle<Code> ComputeLoadInterceptor(Handle<String> name, 97 Handle<Code> ComputeLoadInterceptor(Handle<String> name,
98 Handle<JSObject> receiver, 98 Handle<JSObject> receiver,
99 Handle<JSObject> holder); 99 Handle<JSObject> holder);
100 100
101 Handle<Code> ComputeLoadNormal(); 101 Handle<Code> ComputeLoadNormal();
102 102
103 Handle<Code> ComputeLoadGlobal(Handle<String> name, 103 Handle<Code> ComputeLoadGlobal(Handle<String> name,
104 Handle<JSObject> receiver, 104 Handle<JSObject> receiver,
105 Handle<GlobalObject> holder, 105 Handle<GlobalObject> holder,
106 Handle<JSGlobalPropertyCell> cell, 106 Handle<JSGlobalPropertyCell> cell,
107 bool is_dont_delete); 107 bool is_dont_delete);
108 108
109 // --- 109 // ---
110 110
111 Handle<Code> ComputeKeyedLoadField(Handle<String> name, 111 Handle<Code> ComputeKeyedLoadField(Handle<String> name,
112 Handle<JSObject> receiver, 112 Handle<JSObject> receiver,
113 Handle<JSObject> holder, 113 Handle<JSObject> holder,
114 int field_index); 114 int field_index);
115 115
116 Handle<Code> ComputeKeyedLoadCallback(Handle<String> name, 116 Handle<Code> ComputeKeyedLoadCallback(Handle<String> name,
117 Handle<JSObject> receiver, 117 Handle<JSObject> receiver,
118 Handle<JSObject> holder, 118 Handle<JSObject> holder,
119 Handle<AccessorInfo> callback); 119 Handle<AccessorInfo> callback);
120 120
121 Handle<Code> ComputeKeyedLoadConstant(Handle<String> name, 121 Handle<Code> ComputeKeyedLoadConstant(Handle<String> name,
122 Handle<JSObject> receiver, 122 Handle<JSObject> receiver,
123 Handle<JSObject> holder, 123 Handle<JSObject> holder,
124 Handle<Object> value); 124 Handle<JSFunction> value);
125 125
126 Handle<Code> ComputeKeyedLoadInterceptor(Handle<String> name, 126 Handle<Code> ComputeKeyedLoadInterceptor(Handle<String> name,
127 Handle<JSObject> receiver, 127 Handle<JSObject> receiver,
128 Handle<JSObject> holder); 128 Handle<JSObject> holder);
129 129
130 Handle<Code> ComputeKeyedLoadArrayLength(Handle<String> name, 130 Handle<Code> ComputeKeyedLoadArrayLength(Handle<String> name,
131 Handle<JSArray> receiver); 131 Handle<JSArray> receiver);
132 132
133 Handle<Code> ComputeKeyedLoadStringLength(Handle<String> name, 133 Handle<Code> ComputeKeyedLoadStringLength(Handle<String> name,
134 Handle<String> receiver); 134 Handle<String> receiver);
(...skipping 376 matching lines...) Expand 10 before | Expand all | Expand 10 after
511 Handle<AccessorInfo> callback, 511 Handle<AccessorInfo> callback,
512 Handle<String> name, 512 Handle<String> name,
513 Label* miss); 513 Label* miss);
514 514
515 void GenerateLoadConstant(Handle<JSObject> object, 515 void GenerateLoadConstant(Handle<JSObject> object,
516 Handle<JSObject> holder, 516 Handle<JSObject> holder,
517 Register receiver, 517 Register receiver,
518 Register scratch1, 518 Register scratch1,
519 Register scratch2, 519 Register scratch2,
520 Register scratch3, 520 Register scratch3,
521 Handle<Object> value, 521 Handle<JSFunction> value,
522 Handle<String> name, 522 Handle<String> name,
523 Label* miss); 523 Label* miss);
524 524
525 void GenerateLoadInterceptor(Handle<JSObject> object, 525 void GenerateLoadInterceptor(Handle<JSObject> object,
526 Handle<JSObject> holder, 526 Handle<JSObject> holder,
527 LookupResult* lookup, 527 LookupResult* lookup,
528 Register receiver, 528 Register receiver,
529 Register name_reg, 529 Register name_reg,
530 Register scratch1, 530 Register scratch1,
531 Register scratch2, 531 Register scratch2,
(...skipping 29 matching lines...) Expand all
561 int index, 561 int index,
562 Handle<String> name); 562 Handle<String> name);
563 563
564 Handle<Code> CompileLoadCallback(Handle<String> name, 564 Handle<Code> CompileLoadCallback(Handle<String> name,
565 Handle<JSObject> object, 565 Handle<JSObject> object,
566 Handle<JSObject> holder, 566 Handle<JSObject> holder,
567 Handle<AccessorInfo> callback); 567 Handle<AccessorInfo> callback);
568 568
569 Handle<Code> CompileLoadConstant(Handle<JSObject> object, 569 Handle<Code> CompileLoadConstant(Handle<JSObject> object,
570 Handle<JSObject> holder, 570 Handle<JSObject> holder,
571 Handle<Object> value, 571 Handle<JSFunction> value,
572 Handle<String> name); 572 Handle<String> name);
573 573
574 Handle<Code> CompileLoadInterceptor(Handle<JSObject> object, 574 Handle<Code> CompileLoadInterceptor(Handle<JSObject> object,
575 Handle<JSObject> holder, 575 Handle<JSObject> holder,
576 Handle<String> name); 576 Handle<String> name);
577 577
578 Handle<Code> CompileLoadGlobal(Handle<JSObject> object, 578 Handle<Code> CompileLoadGlobal(Handle<JSObject> object,
579 Handle<GlobalObject> holder, 579 Handle<GlobalObject> holder,
580 Handle<JSGlobalPropertyCell> cell, 580 Handle<JSGlobalPropertyCell> cell,
581 Handle<String> name, 581 Handle<String> name,
(...skipping 14 matching lines...) Expand all
596 int index); 596 int index);
597 597
598 Handle<Code> CompileLoadCallback(Handle<String> name, 598 Handle<Code> CompileLoadCallback(Handle<String> name,
599 Handle<JSObject> object, 599 Handle<JSObject> object,
600 Handle<JSObject> holder, 600 Handle<JSObject> holder,
601 Handle<AccessorInfo> callback); 601 Handle<AccessorInfo> callback);
602 602
603 Handle<Code> CompileLoadConstant(Handle<String> name, 603 Handle<Code> CompileLoadConstant(Handle<String> name,
604 Handle<JSObject> object, 604 Handle<JSObject> object,
605 Handle<JSObject> holder, 605 Handle<JSObject> holder,
606 Handle<Object> value); 606 Handle<JSFunction> value);
607 607
608 Handle<Code> CompileLoadInterceptor(Handle<JSObject> object, 608 Handle<Code> CompileLoadInterceptor(Handle<JSObject> object,
609 Handle<JSObject> holder, 609 Handle<JSObject> holder,
610 Handle<String> name); 610 Handle<String> name);
611 611
612 Handle<Code> CompileLoadArrayLength(Handle<String> name); 612 Handle<Code> CompileLoadArrayLength(Handle<String> name);
613 613
614 Handle<Code> CompileLoadStringLength(Handle<String> name); 614 Handle<Code> CompileLoadStringLength(Handle<String> name);
615 615
616 Handle<Code> CompileLoadFunctionPrototype(Handle<String> name); 616 Handle<Code> CompileLoadFunctionPrototype(Handle<String> name);
(...skipping 240 matching lines...) Expand 10 before | Expand all | Expand 10 after
857 Handle<JSFunction> constant_function_; 857 Handle<JSFunction> constant_function_;
858 bool is_simple_api_call_; 858 bool is_simple_api_call_;
859 Handle<FunctionTemplateInfo> expected_receiver_type_; 859 Handle<FunctionTemplateInfo> expected_receiver_type_;
860 Handle<CallHandlerInfo> api_call_info_; 860 Handle<CallHandlerInfo> api_call_info_;
861 }; 861 };
862 862
863 863
864 } } // namespace v8::internal 864 } } // namespace v8::internal
865 865
866 #endif // V8_STUB_CACHE_H_ 866 #endif // V8_STUB_CACHE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698