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

Unified Diff: runtime/vm/class_finalizer.cc

Issue 10010029: When checking against non-parametrized types use a cache to hold result tuples (class, result). Tha… (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 8 years, 8 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 | « no previous file | runtime/vm/code_generator.cc » ('j') | runtime/vm/code_patcher_arm.cc » ('J')
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/class_finalizer.cc
===================================================================
--- runtime/vm/class_finalizer.cc (revision 6245)
+++ runtime/vm/class_finalizer.cc (working copy)
@@ -1220,16 +1220,27 @@
} else {
OS::Print(" (null library):\n");
}
+ const Type& super_type = Type::Handle(cls.super_type());
+ if (super_type.IsNull()) {
+ OS::Print(" Super: NULL");
+ } else {
+ const String& super_name = String::Handle(super_type.TypeClassName());
regis 2012/04/06 00:44:01 Why not print the super type rather than just the
srdjan 2012/04/06 15:58:34 Done.
+ OS::Print(" Super: %s", super_name.ToCString());
+ }
const Array& interfaces_array = Array::Handle(cls.interfaces());
- AbstractType& interface = AbstractType::Handle();
- intptr_t len = interfaces_array.Length();
- for (intptr_t i = 0; i < len; i++) {
- interface ^= interfaces_array.At(i);
- OS::Print(" %s\n", interface.ToCString());
+ if (interfaces_array.Length() > 0) {
+ OS::Print("; interfaces: ");
+ AbstractType& interface = AbstractType::Handle();
+ intptr_t len = interfaces_array.Length();
+ for (intptr_t i = 0; i < len; i++) {
+ interface ^= interfaces_array.At(i);
+ OS::Print(" %s ", interface.ToCString());
+ }
}
+ OS::Print("\n");
const Array& functions_array = Array::Handle(cls.functions());
Function& function = Function::Handle();
- len = functions_array.Length();
+ intptr_t len = functions_array.Length();
for (intptr_t i = 0; i < len; i++) {
function ^= functions_array.At(i);
OS::Print(" %s\n", function.ToCString());
« no previous file with comments | « no previous file | runtime/vm/code_generator.cc » ('j') | runtime/vm/code_patcher_arm.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698