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

Side by Side Diff: src/ic.h

Issue 368833003: --trace-ic: much faster and available in Release mode. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: refactored as requested Created 6 years, 5 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/frames.cc ('k') | src/ic.cc » ('j') | no next file with comments »
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 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef V8_IC_H_ 5 #ifndef V8_IC_H_
6 #define V8_IC_H_ 6 #define V8_IC_H_
7 7
8 #include "src/macro-assembler.h" 8 #include "src/macro-assembler.h"
9 9
10 namespace v8 { 10 namespace v8 {
(...skipping 152 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 void set_target(Code* code) { 163 void set_target(Code* code) {
164 #ifdef VERIFY_HEAP 164 #ifdef VERIFY_HEAP
165 code->VerifyEmbeddedObjectsDependency(); 165 code->VerifyEmbeddedObjectsDependency();
166 #endif 166 #endif
167 SetTargetAtAddress(address(), code, constant_pool()); 167 SetTargetAtAddress(address(), code, constant_pool());
168 target_set_ = true; 168 target_set_ = true;
169 } 169 }
170 170
171 bool is_target_set() { return target_set_; } 171 bool is_target_set() { return target_set_; }
172 172
173 #ifdef DEBUG
174 char TransitionMarkFromState(IC::State state); 173 char TransitionMarkFromState(IC::State state);
175
176 void TraceIC(const char* type, Handle<Object> name); 174 void TraceIC(const char* type, Handle<Object> name);
177 #endif
178 175
179 MaybeHandle<Object> TypeError(const char* type, 176 MaybeHandle<Object> TypeError(const char* type,
180 Handle<Object> object, 177 Handle<Object> object,
181 Handle<Object> key); 178 Handle<Object> key);
182 MaybeHandle<Object> ReferenceError(const char* type, Handle<String> name); 179 MaybeHandle<Object> ReferenceError(const char* type, Handle<String> name);
183 180
184 // Access the target code for the given IC address. 181 // Access the target code for the given IC address.
185 static inline Code* GetTargetAtAddress(Address address, 182 static inline Code* GetTargetAtAddress(Address address,
186 ConstantPoolArray* constant_pool); 183 ConstantPoolArray* constant_pool);
187 static inline void SetTargetAtAddress(Address address, 184 static inline void SetTargetAtAddress(Address address,
(...skipping 838 matching lines...) Expand 10 before | Expand all | Expand 10 after
1026 DECLARE_RUNTIME_FUNCTION(ElementsTransitionAndStoreIC_Miss); 1023 DECLARE_RUNTIME_FUNCTION(ElementsTransitionAndStoreIC_Miss);
1027 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_Miss); 1024 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_Miss);
1028 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_MissWithAllocationSite); 1025 DECLARE_RUNTIME_FUNCTION(BinaryOpIC_MissWithAllocationSite);
1029 DECLARE_RUNTIME_FUNCTION(CompareNilIC_Miss); 1026 DECLARE_RUNTIME_FUNCTION(CompareNilIC_Miss);
1030 DECLARE_RUNTIME_FUNCTION(ToBooleanIC_Miss); 1027 DECLARE_RUNTIME_FUNCTION(ToBooleanIC_Miss);
1031 1028
1032 1029
1033 } } // namespace v8::internal 1030 } } // namespace v8::internal
1034 1031
1035 #endif // V8_IC_H_ 1032 #endif // V8_IC_H_
OLDNEW
« no previous file with comments | « src/frames.cc ('k') | src/ic.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698