Mercurial > hg > graal-jvmci-8
comparison src/share/vm/compiler/compileLog.cpp @ 6800:9191895df19d
7200001: failed C1 OSR compile doesn't get recompiled with C2
Reviewed-by: kvn
author | twisti |
---|---|
date | Mon, 24 Sep 2012 17:59:24 -0700 |
parents | da91efe96a93 |
children | c3e799c37717 |
comparison
equal
deleted
inserted
replaced
6799:c92f43386117 | 6800:9191895df19d |
---|---|
123 // Now, print the object's identity once, in detail. | 123 // Now, print the object's identity once, in detail. |
124 if (obj->is_metadata()) { | 124 if (obj->is_metadata()) { |
125 ciMetadata* mobj = obj->as_metadata(); | 125 ciMetadata* mobj = obj->as_metadata(); |
126 if (mobj->is_klass()) { | 126 if (mobj->is_klass()) { |
127 ciKlass* klass = mobj->as_klass(); | 127 ciKlass* klass = mobj->as_klass(); |
128 begin_elem("klass id='%d'", id); | 128 begin_elem("klass id='%d'", id); |
129 name(klass->name()); | 129 name(klass->name()); |
130 if (!klass->is_loaded()) { | 130 if (!klass->is_loaded()) { |
131 print(" unloaded='1'"); | 131 print(" unloaded='1'"); |
132 } else { | 132 } else { |
133 print(" flags='%d'", klass->modifier_flags()); | 133 print(" flags='%d'", klass->modifier_flags()); |
134 } | 134 } |
135 end_elem(); | 135 end_elem(); |
136 } else if (mobj->is_method()) { | 136 } else if (mobj->is_method()) { |
137 ciMethod* method = mobj->as_method(); | 137 ciMethod* method = mobj->as_method(); |
138 ciSignature* sig = method->signature(); | 138 ciSignature* sig = method->signature(); |
139 // Pre-identify items that we will need! | 139 // Pre-identify items that we will need! |
140 identify(sig->return_type()); | 140 identify(sig->return_type()); |
141 for (int i = 0; i < sig->count(); i++) { | |
142 identify(sig->type_at(i)); | |
143 } | |
144 begin_elem("method id='%d' holder='%d'", | |
145 id, identify(method->holder())); | |
146 name(method->name()); | |
147 print(" return='%d'", identify(sig->return_type())); | |
148 if (sig->count() > 0) { | |
149 print(" arguments='"); | |
150 for (int i = 0; i < sig->count(); i++) { | 141 for (int i = 0; i < sig->count(); i++) { |
151 print((i == 0) ? "%d" : " %d", identify(sig->type_at(i))); | 142 identify(sig->type_at(i)); |
152 } | 143 } |
153 print("'"); | 144 begin_elem("method id='%d' holder='%d'", |
154 } | 145 id, identify(method->holder())); |
155 if (!method->is_loaded()) { | 146 name(method->name()); |
156 print(" unloaded='1'"); | 147 print(" return='%d'", identify(sig->return_type())); |
157 } else { | 148 if (sig->count() > 0) { |
158 print(" flags='%d'", (jchar) method->flags().as_int()); | 149 print(" arguments='"); |
159 // output a few metrics | 150 for (int i = 0; i < sig->count(); i++) { |
160 print(" bytes='%d'", method->code_size()); | 151 print((i == 0) ? "%d" : " %d", identify(sig->type_at(i))); |
161 method->log_nmethod_identity(this); | 152 } |
162 //print(" count='%d'", method->invocation_count()); | 153 print("'"); |
163 //int bec = method->backedge_count(); | 154 } |
164 //if (bec != 0) print(" backedge_count='%d'", bec); | 155 if (!method->is_loaded()) { |
165 print(" iicount='%d'", method->interpreter_invocation_count()); | 156 print(" unloaded='1'"); |
166 } | 157 } else { |
167 end_elem(); | 158 print(" flags='%d'", (jchar) method->flags().as_int()); |
159 // output a few metrics | |
160 print(" bytes='%d'", method->code_size()); | |
161 method->log_nmethod_identity(this); | |
162 //print(" count='%d'", method->invocation_count()); | |
163 //int bec = method->backedge_count(); | |
164 //if (bec != 0) print(" backedge_count='%d'", bec); | |
165 print(" iicount='%d'", method->interpreter_invocation_count()); | |
166 } | |
167 end_elem(); | |
168 } else if (mobj->is_type()) { | 168 } else if (mobj->is_type()) { |
169 BasicType type = mobj->as_type()->basic_type(); | 169 BasicType type = mobj->as_type()->basic_type(); |
170 elem("type id='%d' name='%s'", id, type2name(type)); | 170 elem("type id='%d' name='%s'", id, type2name(type)); |
171 } else { | 171 } else { |
172 // Should not happen. | 172 // Should not happen. |