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

Side by Side Diff: runtime/vm/stub_code.h

Issue 395233002: Move some isolate state setup from C++ code to JumpToExceptionHandler stub (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: 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
OLDNEW
1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 #ifndef VM_STUB_CODE_H_ 5 #ifndef VM_STUB_CODE_H_
6 #define VM_STUB_CODE_H_ 6 #define VM_STUB_CODE_H_
7 7
8 #include "vm/allocation.h" 8 #include "vm/allocation.h"
9 #include "vm/assembler.h" 9 #include "vm/assembler.h"
10 10
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
113 static void Init(Isolate* isolate); 113 static void Init(Isolate* isolate);
114 114
115 static void VisitObjectPointers(ObjectPointerVisitor* visitor); 115 static void VisitObjectPointers(ObjectPointerVisitor* visitor);
116 116
117 // Check if specified pc is in the dart invocation stub used for 117 // Check if specified pc is in the dart invocation stub used for
118 // transitioning into dart code. 118 // transitioning into dart code.
119 static bool InInvocationStub(uword pc); 119 static bool InInvocationStub(uword pc);
120 120
121 static bool InInvocationStubForIsolate(Isolate* isolate, uword pc); 121 static bool InInvocationStubForIsolate(Isolate* isolate, uword pc);
122 122
123 // Check if the specified pc is in the jump to exception handler stub.
124 static bool InJumpToExceptionHandlerStub(uword pc);
125
123 // Returns NULL if no stub found. 126 // Returns NULL if no stub found.
124 static const char* NameOfStub(uword entry_point); 127 static const char* NameOfStub(uword entry_point);
125 128
126 // Define the shared stub code accessors. 129 // Define the shared stub code accessors.
127 #define STUB_CODE_ACCESSOR(name) \ 130 #define STUB_CODE_ACCESSOR(name) \
128 static StubEntry* name##_entry() { \ 131 static StubEntry* name##_entry() { \
129 return name##_entry_; \ 132 return name##_entry_; \
130 } \ 133 } \
131 static const ExternalLabel& name##Label() { \ 134 static const ExternalLabel& name##Label() { \
132 return name##_entry()->label(); \ 135 return name##_entry()->label(); \
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after
205 Assembler* assembler, 208 Assembler* assembler,
206 const Register left, 209 const Register left,
207 const Register right, 210 const Register right,
208 const Register temp1 = kNoRegister, 211 const Register temp1 = kNoRegister,
209 const Register temp2 = kNoRegister); 212 const Register temp2 = kNoRegister);
210 }; 213 };
211 214
212 } // namespace dart 215 } // namespace dart
213 216
214 #endif // VM_STUB_CODE_H_ 217 #endif // VM_STUB_CODE_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698