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

Unified Diff: runtime/vm/object.h

Issue 100103011: Changes to support dprof and Observatory profiler UIs (Closed) Base URL: https://dart.googlecode.com/svn/branches/bleeding_edge/dart
Patch Set: Created 6 years, 12 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
Index: runtime/vm/object.h
diff --git a/runtime/vm/object.h b/runtime/vm/object.h
index 37095628812c3c01f01f40614aecd943bbbda69a..de03494609f2f7264b99ae4206bd9ac1cdf9db74 100644
--- a/runtime/vm/object.h
+++ b/runtime/vm/object.h
@@ -31,6 +31,7 @@ class ArgumentsDescriptor;
class Assembler;
class Closure;
class Code;
+class DisassemblyFormatter;
class DeoptInstr;
class FinalizablePersistentHandle;
class LocalScope;
@@ -891,13 +892,15 @@ class Class : public Object {
void SetFunctions(const Array& value) const;
void AddFunction(const Function& function) const;
intptr_t FindFunctionIndex(const Function& function) const;
+ intptr_t FindImplicitClosureFunctionIndex(const Function& needle) const;
+ intptr_t FindInvocationDispatcherFunctionIndex(const Function& needle) const;
RawGrowableObjectArray* closures() const {
return raw_ptr()->closure_functions_;
}
void AddClosureFunction(const Function& function) const;
RawFunction* LookupClosureFunction(intptr_t token_pos) const;
- intptr_t FindClosureIndex(intptr_t token_pos) const;
+ intptr_t FindClosureIndex(const Function& function) const;
RawFunction* LookupDynamicFunction(const String& name) const;
RawFunction* LookupDynamicFunctionAllowPrivate(const String& name) const;
@@ -994,6 +997,8 @@ class Class : public Object {
RawArray* constants() const;
+ RawFunction* InvocationDispatcherFunctionFromIndex(intptr_t idx) const;
+
RawFunction* GetInvocationDispatcher(const String& target_name,
const Array& args_desc,
RawFunction::Kind kind) const;
@@ -1599,6 +1604,8 @@ class Function : public Object {
return KindBits::decode(raw_ptr()->kind_tag_);
}
+ static const char* KindToCString(RawFunction::Kind kind);
+
bool is_static() const { return StaticBit::decode(raw_ptr()->kind_tag_); }
bool is_const() const { return ConstBit::decode(raw_ptr()->kind_tag_); }
bool is_external() const { return ExternalBit::decode(raw_ptr()->kind_tag_); }
@@ -3243,6 +3250,7 @@ class Code : public Object {
void SetStaticCallTargetCodeAt(uword pc, const Code& code) const;
void Disassemble() const;
+ void Disassemble(DisassemblyFormatter* formatter) const;
class Comments : public ZoneAllocated {
public:

Powered by Google App Engine
This is Rietveld 408576698