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

Unified Diff: runtime/vm/isolate.h

Issue 1394673002: Move reusable handles from isolate to thread. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Fix release build Created 5 years, 2 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « runtime/vm/handles.h ('k') | runtime/vm/isolate.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/isolate.h
diff --git a/runtime/vm/isolate.h b/runtime/vm/isolate.h
index 00406ed9352f4e2c4e79bb485b8c10e27c76b847..47a36fbd3b4251964f272155722dbb848383df9f 100644
--- a/runtime/vm/isolate.h
+++ b/runtime/vm/isolate.h
@@ -24,31 +24,20 @@
namespace dart {
// Forward declarations.
-class AbstractType;
class ApiState;
-class Array;
class BackgroundCompiler;
class Capability;
class CHA;
-class Class;
-class Code;
class CodeIndexTable;
class CompilerStats;
class Debugger;
class DeoptContext;
-class Error;
-class ExceptionHandlers;
-class Field;
-class Function;
-class GrowableObjectArray;
class HandleScope;
class HandleVisitor;
class Heap;
class ICData;
-class Instance;
class IsolateProfilerData;
class IsolateSpawnState;
-class Library;
class Log;
class MessageHandler;
class Mutex;
@@ -56,7 +45,6 @@ class Object;
class ObjectIdRing;
class ObjectPointerVisitor;
class ObjectStore;
-class PcDescriptors;
class RawInstance;
class RawArray;
class RawContext;
@@ -78,8 +66,6 @@ class StackZone;
class StoreBuffer;
class StubCode;
class ThreadRegistry;
-class TypeArguments;
-class TypeParameter;
class UserTag;
@@ -94,23 +80,6 @@ class IsolateVisitor {
DISALLOW_COPY_AND_ASSIGN(IsolateVisitor);
};
-#define REUSABLE_HANDLE_LIST(V) \
- V(AbstractType) \
- V(Array) \
- V(Class) \
- V(Code) \
- V(Error) \
- V(ExceptionHandlers) \
- V(Field) \
- V(Function) \
- V(GrowableObjectArray) \
- V(Instance) \
- V(Library) \
- V(Object) \
- V(PcDescriptors) \
- V(String) \
- V(TypeArguments) \
- V(TypeParameter) \
class Isolate : public BaseIsolate {
public:
@@ -730,25 +699,6 @@ class Isolate : public BaseIsolate {
const Instance& closure);
RawInstance* LookupServiceExtensionHandler(const String& name);
-#if defined(DEBUG)
-#define REUSABLE_HANDLE_SCOPE_ACCESSORS(object) \
- void set_reusable_##object##_handle_scope_active(bool value) { \
- reusable_##object##_handle_scope_active_ = value; \
- } \
- bool reusable_##object##_handle_scope_active() const { \
- return reusable_##object##_handle_scope_active_; \
- }
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_ACCESSORS)
-#undef REUSABLE_HANDLE_SCOPE_ACCESSORS
-#endif // defined(DEBUG)
-
-#define REUSABLE_HANDLE(object) \
- object& object##Handle() const { \
- return *object##_handle_; \
- }
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE)
-#undef REUSABLE_HANDLE
-
static void VisitIsolates(IsolateVisitor* visitor);
// Handle service messages until we are told to resume execution.
@@ -829,8 +779,6 @@ class Isolate : public BaseIsolate {
bool IsIsolateOf(Thread* thread);
#endif // DEBUG
- template<class T> T* AllocateReusableHandle();
-
// Accessed from generated code:
uword stack_limit_;
StoreBuffer* store_buffer_;
@@ -942,19 +890,6 @@ class Isolate : public BaseIsolate {
// Used to wake the isolate when it is in the pause event loop.
Monitor* pause_loop_monitor_;
- // Reusable handles support.
-#define REUSABLE_HANDLE_FIELDS(object) \
- object* object##_handle_;
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_FIELDS)
-#undef REUSABLE_HANDLE_FIELDS
-
-#if defined(DEBUG)
-#define REUSABLE_HANDLE_SCOPE_VARIABLE(object) \
- bool reusable_##object##_handle_scope_active_;
- REUSABLE_HANDLE_LIST(REUSABLE_HANDLE_SCOPE_VARIABLE);
-#undef REUSABLE_HANDLE_SCOPE_VARIABLE
-#endif // defined(DEBUG)
-
#define ISOLATE_METRIC_VARIABLE(type, variable, name, unit) \
type metric_##variable##_;
ISOLATE_METRIC_LIST(ISOLATE_METRIC_VARIABLE);
@@ -965,8 +900,6 @@ class Isolate : public BaseIsolate {
ISOLATE_TIMELINE_STREAM_LIST(ISOLATE_TIMELINE_STREAM_VARIABLE)
#undef ISOLATE_TIMELINE_STREAM_VARIABLE
- VMHandles reusable_handles_;
-
static Dart_IsolateCreateCallback create_callback_;
static Dart_IsolateInterruptCallback interrupt_callback_;
static Dart_IsolateUnhandledExceptionCallback unhandled_exception_callback_;
« no previous file with comments | « runtime/vm/handles.h ('k') | runtime/vm/isolate.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698