Index: runtime/vm/disassembler.cc |
diff --git a/runtime/vm/disassembler.cc b/runtime/vm/disassembler.cc |
index 9f3d4a3a62725c667e7cb54635108c6d7fb35689..eef90c38ca007b43e667e1b399b015331dd1f852 100644 |
--- a/runtime/vm/disassembler.cc |
+++ b/runtime/vm/disassembler.cc |
@@ -184,12 +184,11 @@ void Disassembler::Disassemble(uword start, |
} |
-void Disassembler::DisassembleCode(const Function& function, bool optimized) { |
- const char* function_fullname = function.ToFullyQualifiedCString(); |
+void Disassembler::DisassembleCodeHelper( |
+ const char* function_fullname, const Code& code, bool optimized) { |
THR_Print("Code for %sfunction '%s' {\n", |
optimized ? "optimized " : "", |
function_fullname); |
- const Code& code = Code::Handle(function.CurrentCode()); |
code.Disassemble(); |
THR_Print("}\n"); |
@@ -328,6 +327,22 @@ void Disassembler::DisassembleCode(const Function& function, bool optimized) { |
} |
} |
+ |
+void Disassembler::DisassembleCode(const Function& function, bool optimized) { |
+ const char* function_fullname = function.ToFullyQualifiedCString(); |
+ const Code& code = Code::Handle(function.CurrentCode()); |
+ DisassembleCodeHelper(function_fullname, code, optimized); |
+} |
+ |
+ |
+void Disassembler::DisassembleCodeUnoptimized( |
+ const Function& function, bool optimized) { |
+ const char* function_fullname = function.ToFullyQualifiedCString(); |
+ const Code& code = Code::Handle(function.unoptimized_code()); |
+ DisassembleCodeHelper(function_fullname, code, optimized); |
+} |
+ |
+ |
#endif // !PRODUCT |
} // namespace dart |